This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
k18-ntcs-web-ntc/src/main/java/com/nis/web/controller/configuration/GroupAreaController.java
2018-11-05 15:43:12 +08:00

96 lines
3.6 KiB
Java

package com.nis.web.controller.configuration;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page;
import com.nis.domain.basics.PolicyGroupInfo;
import com.nis.domain.configuration.GroupAreaInfo;
import com.nis.exceptions.CallExternalProceduresException;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.StringUtil;
import com.nis.web.controller.BaseController;
import com.nis.web.service.configuration.GroupAreaService;
/**
* 分组地理信息管理
*
*/
@Controller
@RequestMapping(value = "${adminPath}/cfg/groupArea")
public class GroupAreaController extends BaseController {
@Autowired
private GroupAreaService groupAreaService;
@RequestMapping(value = { "/groupAreaList", "" })
public String policyGroupList(GroupAreaInfo cfg, HttpServletRequest request, HttpServletResponse response,
Model model) {
if (cfg == null)cfg = new GroupAreaInfo();
Page<GroupAreaInfo> pageCondition = new Page<GroupAreaInfo>(request, response, "r");
Page page = groupAreaService.findGroupAreaInfoList(pageCondition, cfg);
// 获取策略分组信息
List<PolicyGroupInfo> policyGroups = policyGroupInfoService.findNatPolicyGroups();
// 获取区域信息
initFormCondition(model);
model.addAttribute("cfg", cfg);
model.addAttribute("page", page);
model.addAttribute("policyGroups", policyGroups);
return "/cfg/manipulation/ipmulitiplex/groupAreaList";
}
@RequestMapping(value={"/groupAreaForm"})
public String form(String ids,Model model,String doAction,RedirectAttributes redirectAttributes) {
GroupAreaInfo groupArea=new GroupAreaInfo();
// 获取未使用的策略分组
List<PolicyGroupInfo> groups = policyGroupInfoService.findNatPolicyGroups();
groups = groupAreaService.getNotUsedPolicyGroups(groups);
if(!StringUtil.isEmpty(ids)){
groupArea=groupAreaService.getInfoById(Integer.parseInt(ids));
groups.add(policyGroupInfoService.getById(groupArea.getGroupId()));
}
// 获取区域信息
initFormCondition(model);
model.addAttribute("_cfg", groupArea);
model.addAttribute("policyGroups", groups);
return "/cfg/manipulation/ipmulitiplex/groupAreaForm";
}
@RequestMapping(value = "saveOrUpdate")
public String saveOrUpdate(GroupAreaInfo cfg,Model model,RedirectAttributes redirectAttributes) {
try {
groupAreaService.saveOrUpdate(cfg);
addMessage(redirectAttributes,"success","save_success");
} catch (Exception e) {
logger.error("新增失败",e);
if(e instanceof MaatConvertException||e instanceof CallExternalProceduresException) {
addMessage(redirectAttributes,"error","request_service_failed");
}else {
addMessage(redirectAttributes,"error","save_failed");
}
}
return "redirect:" + adminPath + "/cfg/groupArea/groupAreaList";
}
@RequestMapping(value={"delete"})
public String delete(RedirectAttributes redirectAttributes, String ids,int isValid) {
try {
groupAreaService.deldete(ids,isValid);
addMessage(redirectAttributes, "delete_success");
} catch (Exception e) {
logger.error("删除失败",e);
addMessage(redirectAttributes, "delete_failed");
}
return "redirect:" + adminPath + "/cfg/groupArea/groupAreaList";
}
}