解决冲突 提交本地
This commit is contained in:
@@ -39,6 +39,8 @@ import com.nis.web.service.configuration.SslCfgService;
|
||||
import com.nis.web.service.configuration.StringCfgService;
|
||||
import com.nis.web.service.configuration.TunnelCfgService;
|
||||
import com.nis.web.service.configuration.WebCfgService;
|
||||
import com.nis.web.service.specific.SpecificServiceCfgService;
|
||||
import com.nis.web.service.specific.SpecificServiceHostCfgService;
|
||||
import com.nis.web.service.systemService.ServiceConfigInfoService;
|
||||
import com.nis.web.service.systemService.SystemServiceService;
|
||||
|
||||
@@ -117,6 +119,10 @@ public class BaseController {
|
||||
protected NumCfgService numCfgService;
|
||||
@Autowired
|
||||
protected ComplexStringCfgService complexStringCfgService;
|
||||
@Autowired
|
||||
protected SpecificServiceCfgService specificServiceCfgService;
|
||||
@Autowired
|
||||
protected SpecificServiceHostCfgService specificServiceHostCfgService;
|
||||
/**
|
||||
* 管理基础路径
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,282 @@
|
||||
package com.nis.web.controller.specific;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.specific.SpecificServiceCfg;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.util.StringUtils;
|
||||
import com.nis.web.controller.BaseController;
|
||||
|
||||
@Controller
|
||||
@RequestMapping(value = "${adminPath}/specific/specificServiceCfg")
|
||||
public class SpecificServiceCfgController extends BaseController {
|
||||
|
||||
/* @ModelAttribute
|
||||
public SpecificServiceCfg get(@RequestParam(required=false)Integer specServiceId) {
|
||||
if (!StringUtil.isEmpty(specServiceId)) {
|
||||
SpecificServiceCfg ss = specificServiceCfgService.getBySpecServiceId(specServiceId);
|
||||
return ss==null?new SpecificServiceCfg():ss;
|
||||
} else {
|
||||
return new SpecificServiceCfg();
|
||||
}
|
||||
}*/
|
||||
|
||||
/**
|
||||
* 查出分页列表
|
||||
*
|
||||
* @param specificServiceCfg
|
||||
* @param request
|
||||
* @param response
|
||||
* @param model
|
||||
* @return
|
||||
*/
|
||||
@RequiresPermissions("sys:dict:view")
|
||||
@RequestMapping(value = "list")
|
||||
public String list(SpecificServiceCfg specificServiceCfg, HttpServletRequest request, HttpServletResponse response,
|
||||
Model model) {
|
||||
String searchType = null;
|
||||
String searchContent = null;
|
||||
if(specificServiceCfg.getSpecServiceId()!=null){
|
||||
searchType = "specServiceId";
|
||||
searchContent = specificServiceCfg.getSpecServiceId().toString();
|
||||
}
|
||||
if(!StringUtils.isBlank(specificServiceCfg.getSpecServiceName())){
|
||||
searchType = "specServiceName";
|
||||
searchContent = specificServiceCfg.getSpecServiceName();
|
||||
}
|
||||
model.addAttribute("searchType", searchType);
|
||||
model.addAttribute("searchContent", searchContent);
|
||||
|
||||
// 取出所有符合条件的数据
|
||||
List<SpecificServiceCfg> allList = specificServiceCfgService.findAllSpecificServiceCfg(specificServiceCfg);
|
||||
model.addAttribute("showTotalCount", allList.size());
|
||||
// 取出所有符合条件的顶层分页
|
||||
Page<SpecificServiceCfg> page = specificServiceCfgService
|
||||
.findTopPage(new Page<SpecificServiceCfg>(request, response), specificServiceCfg);
|
||||
// 植入序号
|
||||
for (int i = 0; i < page.getList().size(); i++) {
|
||||
page.getList().get(i).setShowSequence("" + (i + 1 + ((page.getPageNo() - 1) * page.getPageSize())));
|
||||
}
|
||||
model.addAttribute("page", page);
|
||||
// 删除顶层数据、取出id 优化处理
|
||||
List<Integer> intList = Lists.newArrayList();
|
||||
for (SpecificServiceCfg tempSS : page.getList()) {
|
||||
if (tempSS != null) {
|
||||
intList.add(tempSS.getSpecServiceId());
|
||||
}
|
||||
}
|
||||
for (int i = allList.size() - 1; i >= 0; i--) {
|
||||
SpecificServiceCfg ss = allList.get(i);
|
||||
if ((ss != null && intList.contains(ss.getSpecServiceId())) || (ss != null && ss.getSpecServiceId() == 0)) {
|
||||
allList.remove(ss);
|
||||
}
|
||||
}
|
||||
|
||||
allList.addAll(page.getList());
|
||||
List<SpecificServiceCfg> list = Lists.newArrayList();
|
||||
SpecificServiceCfg.sortList(list, allList, 0, true);
|
||||
//处理下级序号
|
||||
SpecificServiceCfg.addChildrenSeq(list, 0);
|
||||
|
||||
model.addAttribute("list", list);
|
||||
|
||||
return "/specific/specificServiceCfgList";
|
||||
}
|
||||
|
||||
/**
|
||||
* 进入查看或新增、修改页面
|
||||
*
|
||||
* @param specificServiceCfg
|
||||
* @param model
|
||||
* @param doAction
|
||||
* @param mulitId
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = { "form" })
|
||||
public String form(SpecificServiceCfg specificServiceCfg, Model model, String doAction, String mulitId) {
|
||||
|
||||
Integer id = 0;
|
||||
if (mulitId != null) {
|
||||
String[] ids = mulitId.split(",");
|
||||
id = Integer.valueOf(ids[0]);
|
||||
}
|
||||
if (id != 0) {
|
||||
specificServiceCfg = specificServiceCfgService.getBySpecServiceId(id);
|
||||
}
|
||||
if (specificServiceCfg == null || specificServiceCfg.getParent() == null
|
||||
|| specificServiceCfg.getParent().getSpecServiceId() == 0) {
|
||||
SpecificServiceCfg parent = new SpecificServiceCfg();
|
||||
parent.setSpecServiceId(0);
|
||||
parent.setSpecServiceName("根节点");
|
||||
specificServiceCfg.setParent(parent);
|
||||
}
|
||||
model.addAttribute("specificServiceCfg", specificServiceCfg);
|
||||
if (doAction != null && doAction.equals("0")) {
|
||||
return "/specific/specificServiceCfgInfo";
|
||||
}
|
||||
return "/specific/specificServiceCfgForm";
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增或保存
|
||||
* @param specificServiceCfg
|
||||
* @param model
|
||||
* @param redirectAttributes
|
||||
* @return
|
||||
*/
|
||||
@RequiresPermissions("sys:dict:edit")
|
||||
@RequestMapping(value="saveOrUpdate")
|
||||
public String saveOrUpdate(SpecificServiceCfg specificServiceCfg, Model model,
|
||||
RedirectAttributes redirectAttributes,Integer oldId) {
|
||||
try {
|
||||
specificServiceCfgService.saveOrUpdate(specificServiceCfg,oldId);
|
||||
addMessage(redirectAttributes, "保存成功");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
addMessage(redirectAttributes, "保存失败!");
|
||||
}
|
||||
return "redirect:" + adminPath + "/specific/specificServiceCfg/list";
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
* @param specificServiceCfg
|
||||
* @param redirectAttributes
|
||||
* @param mulitId
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value="delete")
|
||||
public String delete(SpecificServiceCfg specificServiceCfg, RedirectAttributes redirectAttributes, String mulitId){
|
||||
try{
|
||||
specificServiceCfgService.delete(mulitId);
|
||||
addMessage(redirectAttributes,"删除成功");
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
addMessage(redirectAttributes,"删除失败");
|
||||
}
|
||||
|
||||
return "redirect:"+adminPath+"/specific/specificServiceCfg/list";
|
||||
}
|
||||
|
||||
/**
|
||||
* 父节点选择树形结构
|
||||
* @param extId
|
||||
* @param isShowHide
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequiresPermissions("user")
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "treeData")
|
||||
public List<Map<String, Object>> treeData(@RequestParam(required=false) String extId,@RequestParam(required=false) String isShowHide, HttpServletResponse response){
|
||||
List<Map<String, Object>> mapList = Lists.newArrayList();
|
||||
Map<String, Object> map2 = Maps.newHashMap();
|
||||
map2.put("id", 0);
|
||||
map2.put("pId", 0);
|
||||
map2.put("name","根节点");
|
||||
//map2.put("placeholder","0");
|
||||
mapList.add(map2);
|
||||
List<SpecificServiceCfg> list = specificServiceCfgService.findAllSpecificServiceCfg(new SpecificServiceCfg());
|
||||
for (int i=0; i<list.size(); i++){
|
||||
SpecificServiceCfg specificServiceCfg = list.get(i);
|
||||
if(StringUtils.isBlank(extId)||(extId!=null&&!extId.equals(specificServiceCfg.getSpecServiceId().toString()))){
|
||||
if(specificServiceCfg.getIsValid()==0){
|
||||
continue;
|
||||
}
|
||||
Map<String, Object> map = Maps.newHashMap();
|
||||
map.put("id", specificServiceCfg.getSpecServiceId());
|
||||
map.put("pId", specificServiceCfg.getParent().getSpecServiceId());
|
||||
map.put("name",specificServiceCfg.getSpecServiceName());
|
||||
mapList.add(map);
|
||||
}
|
||||
}
|
||||
return mapList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验协议id是否重复
|
||||
* @param specServiceId
|
||||
* @param oldId
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "isIdRepeat")
|
||||
public boolean isIdRepeat(String specServiceId,String oldId){
|
||||
System.out.println(specServiceId +"--"+specServiceId);
|
||||
System.out.println(oldId.trim().equals(specServiceId));
|
||||
if(oldId.trim().equals(specServiceId)){
|
||||
return true;
|
||||
}
|
||||
if(specServiceId!=null){
|
||||
SpecificServiceCfg ss = specificServiceCfgService.getBySpecServiceId(Integer.valueOf(specServiceId));
|
||||
if(ss==null){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 校验叶子节点无上级不得选为叶子节点
|
||||
* @param specServiceId
|
||||
* @param oldId
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "ajaxLeafHasTree")
|
||||
public boolean ajaxLeafHasTree(Integer parentId, Integer newIsLeaf){
|
||||
if(parentId==null||parentId==0){
|
||||
if(newIsLeaf==0){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if(parentId!=null&parentId!=0){
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 校验叶子节点有下级不得更改为叶子节点
|
||||
* @param parent
|
||||
* @param newIsLeaf
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "ajaxLeafChange")
|
||||
public boolean ajaxLeafChange(Integer parent,Integer newIsLeaf){
|
||||
if(parent==null){
|
||||
return true;
|
||||
}
|
||||
List<SpecificServiceCfg> list = specificServiceCfgService.getChildrenById(parent);
|
||||
if(list==null||list.size()>0){
|
||||
return true;
|
||||
}else{
|
||||
if(newIsLeaf==0){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,130 @@
|
||||
package com.nis.web.controller.specific;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.specific.SpecificServiceHostCfg;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.web.controller.BaseController;
|
||||
|
||||
@Controller
|
||||
@RequestMapping(value = "${adminPath}/specific/specificServiceHostCfg")
|
||||
public class SpecificServiceHostCfgController extends BaseController {
|
||||
|
||||
|
||||
@ModelAttribute
|
||||
public SpecificServiceHostCfg get(@RequestParam(required=false) Integer hostId) {
|
||||
if (!StringUtil.isEmpty(hostId)){
|
||||
return specificServiceHostCfgService.getDictByHostId(hostId);
|
||||
}else{
|
||||
return new SpecificServiceHostCfg();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
* @param specificServiceHostCfg
|
||||
* @param request
|
||||
* @param response
|
||||
* @param model
|
||||
* @return
|
||||
*/
|
||||
@RequiresPermissions("sys:dict:view")
|
||||
@RequestMapping(value = "list")
|
||||
public String list(SpecificServiceHostCfg specificServiceHostCfg, HttpServletRequest request, HttpServletResponse response,
|
||||
Model model) {
|
||||
|
||||
//查出分页数据
|
||||
Page<SpecificServiceHostCfg> page = specificServiceHostCfgService.findSpecHostList(new Page<SpecificServiceHostCfg>(request, response), specificServiceHostCfg);
|
||||
model.addAttribute("page", page);
|
||||
//查出所有
|
||||
List<SpecificServiceHostCfg> list = specificServiceHostCfgService.getAll();
|
||||
List<Integer> listSpecServiceId = Lists.newArrayList();
|
||||
List<String> listSrcIp = Lists.newArrayList();
|
||||
List<String> listDstIp = Lists.newArrayList();
|
||||
for(SpecificServiceHostCfg ssh:list){
|
||||
if(ssh!=null&ssh.getSpecServiceId()!=null){
|
||||
listSpecServiceId.add(ssh.getSpecServiceId());
|
||||
}
|
||||
if(ssh!=null&ssh.getSrcIp()!=null){
|
||||
listSrcIp.add(ssh.getSrcIp());
|
||||
}
|
||||
if(ssh!=null&ssh.getDstIp()!=null){
|
||||
listDstIp.add(ssh.getDstIp());
|
||||
}
|
||||
}
|
||||
model.addAttribute("listSpecServiceId", listSpecServiceId);
|
||||
model.addAttribute("listSrcIp", listSrcIp);
|
||||
model.addAttribute("listDstIp", listDstIp);
|
||||
return "/specific/specificServiceHostCfgList";
|
||||
}
|
||||
|
||||
/**
|
||||
* 进入查看、修改或新增页面
|
||||
* @param specificServiceHostCfg
|
||||
* @param request
|
||||
* @param response
|
||||
* @param model
|
||||
* @return
|
||||
*/
|
||||
@RequiresPermissions("sys:dict:view")
|
||||
@RequestMapping(value = "form")
|
||||
public String form(SpecificServiceHostCfg specificServiceHostCfg, HttpServletRequest request, HttpServletResponse response, Model model) {
|
||||
|
||||
return "/specific/specificServiceHostCfgForm";
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增或修改
|
||||
* @param specificServiceHostCfg
|
||||
* @param model
|
||||
* @param redirectAttributes
|
||||
* @param mulitId
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "saveOrUpdate")
|
||||
public String saveOrUpdate(SpecificServiceHostCfg specificServiceHostCfg,Model model,RedirectAttributes redirectAttributes){
|
||||
try {
|
||||
specificServiceHostCfgService.saveOrUpdate(specificServiceHostCfg);
|
||||
addMessage(redirectAttributes, "保存成功");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
addMessage(redirectAttributes, "保存失败!");
|
||||
}
|
||||
return "redirect:"+adminPath+"/specific/specificServiceHostCfgList";
|
||||
}
|
||||
/**
|
||||
* 删除
|
||||
* @param specificServiceHostCfg
|
||||
* @param redirectAttributes
|
||||
* @param mulitId
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value="delete")
|
||||
public String delete(SpecificServiceHostCfg specificServiceHostCfg, RedirectAttributes redirectAttributes, String mulitId){
|
||||
try{
|
||||
specificServiceHostCfgService.delete(mulitId);
|
||||
addMessage(redirectAttributes,"删除成功");
|
||||
}catch (Exception e){
|
||||
e.printStackTrace();
|
||||
addMessage(redirectAttributes,"删除失败");
|
||||
}
|
||||
|
||||
return "redirect:"+adminPath+"/specific/specificServiceHostCfg/list";
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.nis.web.dao.specific;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import com.nis.domain.specific.SpecificServiceCfg;
|
||||
import com.nis.web.dao.CrudDao;
|
||||
import com.nis.web.dao.MyBatisDao;
|
||||
|
||||
@MyBatisDao
|
||||
public interface SpecificServiceCfgDao extends CrudDao<SpecificServiceCfg> {
|
||||
|
||||
/**
|
||||
* 根据id查出对象
|
||||
* @param specServiceId
|
||||
* @return
|
||||
*/
|
||||
SpecificServiceCfg getBySpecServiceId(Integer specServiceId);
|
||||
/**
|
||||
* 查询所有符合条件顶层分页列表
|
||||
* @param specificServiceCfg
|
||||
*/
|
||||
List<SpecificServiceCfg> findTopPage(SpecificServiceCfg specificServiceCfg);
|
||||
/**
|
||||
* 查询所有符合条件的数据
|
||||
* @param specificServiceCfg
|
||||
* @return
|
||||
*/
|
||||
List<SpecificServiceCfg> findAllSpecificServiceCfg(SpecificServiceCfg specificServiceCfg);
|
||||
/**
|
||||
* 修改配置信息
|
||||
* @param specificServiceCfg
|
||||
* @param oldId
|
||||
*/
|
||||
void update(@Param("specificServiceCfg")SpecificServiceCfg specificServiceCfg, @Param("oldId")Integer oldId);
|
||||
/**
|
||||
* 根据specServiceId查询所有下级
|
||||
* @param specServiceId
|
||||
* @return
|
||||
*/
|
||||
List<SpecificServiceCfg> getChildrenById(Integer specServiceId);
|
||||
|
||||
|
||||
|
||||
}
|
||||
142
src/main/java/com/nis/web/dao/specific/SpecificServiceCfgDao.xml
Normal file
142
src/main/java/com/nis/web/dao/specific/SpecificServiceCfgDao.xml
Normal file
@@ -0,0 +1,142 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.nis.web.dao.specific.SpecificServiceCfgDao" >
|
||||
|
||||
<resultMap id="CFGResultMap" type="com.nis.domain.specific.SpecificServiceCfg" >
|
||||
<id column="spec_service_id" property="specServiceId" jdbcType="INTEGER" />
|
||||
<result column="spec_service_name" property="specServiceName" jdbcType="VARCHAR" />
|
||||
<result column="spec_service_desc" property="specServiceDesc" jdbcType="VARCHAR" />
|
||||
<result column="is_valid" property="isValid" jdbcType="INTEGER" />
|
||||
<result column="op_time" property="opTime" jdbcType="TIMESTAMP" />
|
||||
<result column="is_leaf" property="isLeaf" jdbcType="INTEGER" />
|
||||
<result column="group_id" property="groupId" jdbcType="INTEGER" />
|
||||
<!-- 父id -->
|
||||
<association property="parent" javaType="com.nis.domain.specific.SpecificServiceCfg">
|
||||
<id column="parent_id" property="specServiceId" jdbcType="INTEGER" />
|
||||
</association>
|
||||
</resultMap>
|
||||
|
||||
<sql id="specificServiceCfgColumns">
|
||||
s.spec_service_id AS specServiceId,
|
||||
s.spec_service_name AS specServiceName,
|
||||
s.spec_service_desc AS specServiceDesc,
|
||||
s.is_valid AS isValid,
|
||||
s.op_time AS opTime,
|
||||
s.parent_id AS "parent.specServiceId",
|
||||
s.is_leaf AS isLeaf,
|
||||
s.group_id AS groupId
|
||||
</sql>
|
||||
|
||||
|
||||
<!-- 根据id查出对象 -->
|
||||
<select id="getBySpecServiceId" resultType="com.nis.domain.specific.SpecificServiceCfg" parameterType="java.lang.Integer">
|
||||
select <include refid="specificServiceCfgColumns" />
|
||||
from specific_service_cfg s where s.spec_service_id = #{specServiceId}
|
||||
</select>
|
||||
|
||||
<!-- 查出所有符合条件的顶层数据 -->
|
||||
|
||||
<select id="findTopPage" resultMap="CFGResultMap" parameterType="com.nis.domain.specific.SpecificServiceCfg">
|
||||
SELECT * FROM specific_service_cfg s WHERE s.is_valid=1
|
||||
|
||||
<if test="specServiceId != null">
|
||||
AND s.spec_service_id like '%${specServiceId}%'
|
||||
</if>
|
||||
<if test="specServiceName != null and specServiceName != '' ">
|
||||
AND s.spec_service_name like '%${specServiceName}%'
|
||||
</if>
|
||||
<if test="specServiceDesc != null and specServiceDesc != '' ">
|
||||
AND s.spec_service_desc like '%${specServiceDesc}%'
|
||||
</if>
|
||||
<if test="beginDate != null" >
|
||||
AND s.op_time >= #{beginDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
<if test="endDate != null" >
|
||||
AND s.op_time <= #{endDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
AND s.parent_id not in (
|
||||
SELECT s2.spec_service_id FROM specific_service_cfg s2 WHERE s2.is_valid=1
|
||||
<if test="specServiceId != null">
|
||||
AND s2.spec_service_id like '%${specServiceId}%'
|
||||
</if>
|
||||
<if test="specServiceName != null and specServiceName != '' ">
|
||||
AND s2.spec_service_name like '%${specServiceName}%'
|
||||
</if>
|
||||
<if test="specServiceDesc != null and specServiceDesc != '' ">
|
||||
AND s2.spec_service_desc like '%${specServiceDesc}%'
|
||||
</if>
|
||||
<if test="beginDate != null" >
|
||||
AND s2.op_time >= #{beginDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
<if test="endDate != null" >
|
||||
AND s2.op_time <= #{endDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
)
|
||||
<choose>
|
||||
<when test="page != null and page.orderBy != null and page.orderBy != ''">
|
||||
ORDER BY s.${page.orderBy}
|
||||
</when>
|
||||
<otherwise>
|
||||
ORDER BY s.op_time desc
|
||||
</otherwise>
|
||||
</choose>
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 查询符合条件的所有数据 -->
|
||||
<select id="findAllSpecificServiceCfg" resultMap="CFGResultMap" parameterType="com.nis.domain.specific.SpecificServiceCfg">
|
||||
SELECT * from specific_service_cfg where is_valid = 1
|
||||
<if test="specServiceId != null">
|
||||
AND spec_service_id like '%${specServiceId}%'
|
||||
</if>
|
||||
<if test="specServiceName != null and specServiceName != '' ">
|
||||
AND spec_service_name like '%${specServiceName}%'
|
||||
</if>
|
||||
<if test="specServiceDesc != null and specServiceDesc != '' ">
|
||||
AND spec_service_desc like '%${specServiceDesc}%'
|
||||
</if>
|
||||
<if test="beginDate != null">
|
||||
AND op_time > #{beginDate}
|
||||
</if>
|
||||
<if test="endDate != null" >
|
||||
AND op_time < #{endDate}
|
||||
</if>
|
||||
<choose>
|
||||
<when test="page != null and page.orderBy != null and page.orderBy != '' ">
|
||||
ORDER BY ${page.orderBy}
|
||||
</when>
|
||||
<otherwise>
|
||||
ORDER BY op_time desc
|
||||
</otherwise>
|
||||
</choose>
|
||||
</select>
|
||||
|
||||
<!-- 新增 -->
|
||||
<insert id="insert" parameterType="com.nis.domain.specific.SpecificServiceCfg" useGeneratedKeys="true">
|
||||
insert into specific_service_cfg (spec_service_id,spec_service_name,spec_service_desc,is_valid, op_time, parent_id,is_leaf,group_id)
|
||||
values(#{specServiceId},#{specServiceName},#{specServiceDesc},#{isValid},#{opTime},#{parent.specServiceId},#{isLeaf},#{groupId})
|
||||
</insert>
|
||||
|
||||
<!-- 修改 -->
|
||||
<update id="update" parameterType="com.nis.domain.specific.SpecificServiceCfg">
|
||||
UPDATE specific_service_cfg s SET
|
||||
s.spec_service_id = #{specificServiceCfg.specServiceId},
|
||||
s.spec_service_name = #{specificServiceCfg.specServiceName},
|
||||
s.spec_service_desc = #{specificServiceCfg.specServiceDesc},
|
||||
s.is_valid = #{specificServiceCfg.isValid},
|
||||
s.op_time = #{specificServiceCfg.opTime},
|
||||
s.parent_id = #{specificServiceCfg.parent.specServiceId},
|
||||
s.is_leaf = #{specificServiceCfg.isLeaf},
|
||||
s.group_id = #{specificServiceCfg.groupId}
|
||||
WHERE s.spec_service_id = #{oldId}
|
||||
</update>
|
||||
|
||||
<!-- 删除 -->
|
||||
<update id="delete" parameterType="com.nis.domain.specific.SpecificServiceCfg">
|
||||
UPDATE specific_service_cfg s set s.is_valid = #{isValid} where s.spec_service_id = #{specServiceId}
|
||||
</update>
|
||||
<!-- getChildrenById -->
|
||||
<select id="getChildrenById" resultMap="CFGResultMap" parameterType="java.lang.Integer">
|
||||
SELECT * FROM specific_service_cfg s WHERE s.is_valid = 1 and s.parent_id = #{specServiceId}
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.nis.web.dao.specific;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.nis.domain.specific.SpecificServiceHostCfg;
|
||||
import com.nis.web.dao.CrudDao;
|
||||
import com.nis.web.dao.MyBatisDao;
|
||||
|
||||
|
||||
@MyBatisDao
|
||||
public interface SpecificServiceHostCfgDao extends CrudDao<SpecificServiceHostCfg> {
|
||||
|
||||
/**
|
||||
* 根据主键查询数据对象
|
||||
* @param hostId
|
||||
* @return
|
||||
*/
|
||||
SpecificServiceHostCfg getByHostId(Integer hostId);
|
||||
|
||||
/**
|
||||
* 查询分页
|
||||
* @param specificServiceHostCfg
|
||||
* @return
|
||||
*/
|
||||
List<SpecificServiceHostCfg> findSpecHostList(SpecificServiceHostCfg specificServiceHostCfg);
|
||||
|
||||
/**
|
||||
* 查出所有
|
||||
* @return
|
||||
*/
|
||||
List<SpecificServiceHostCfg> getAll();
|
||||
|
||||
/**
|
||||
* 删除
|
||||
* @param hostId
|
||||
*/
|
||||
void delete(Integer hostId);
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,157 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.nis.web.dao.specific.SpecificServiceHostCfgDao">
|
||||
|
||||
<resultMap id="specificServiceHostCfgResultMap"
|
||||
type="com.nis.domain.specific.SpecificServiceHostCfg">
|
||||
<id column="host_id" property="hostId" jdbcType="INTEGER" />
|
||||
<result column="spec_service_id" property="specServiceId"
|
||||
jdbcType="INTEGER" />
|
||||
<result column="src_ip" property="srcIp" jdbcType="VARCHAR" />
|
||||
<result column="src_ip_mask" property="srcIpMask" jdbcType="VARCHAR" />
|
||||
<result column="src_port" property="srcPort" jdbcType="VARCHAR" />
|
||||
<result column="src_port_mask" property="srcPortMask" jdbcType="VARCHAR" />
|
||||
<result column="dst_ip" property="dstIp" jdbcType="VARCHAR" />
|
||||
<result column="dst_ip_mask" property="dstIpMask" jdbcType="VARCHAR" />
|
||||
<result column="dst_port" property="dstPort" jdbcType="VARCHAR" />
|
||||
<result column="dst_port_mask" property="dstPortMask" jdbcType="VARCHAR" />
|
||||
<result column="direction" property="direction" jdbcType="INTEGER" />
|
||||
<result column="protocol" property="protocol" jdbcType="INTEGER" />
|
||||
<result column="is_valid" property="isValid" jdbcType="INTEGER" />
|
||||
<result column="is_audit" property="isAudit" jdbcType="INTEGER" />
|
||||
<result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
|
||||
<result column="edit_time" property="editTime" jdbcType="TIMESTAMP" />
|
||||
<result column="audit_time" property="auditTime" jdbcType="TIMESTAMP" />
|
||||
<!-- 创建人员 -->
|
||||
<association property="creator" javaType="com.nis.domain.SysUser">
|
||||
<id property="id" column="creator_id" />
|
||||
</association>
|
||||
<!-- 修改人员 -->
|
||||
<association property="editor" javaType="com.nis.domain.SysUser">
|
||||
<id property="id" column="editor_id" />
|
||||
</association>
|
||||
<!-- 审核人员 -->
|
||||
<association property="auditor" javaType="com.nis.domain.SysUser">
|
||||
<id property="id" column="auditor_id" />
|
||||
</association>
|
||||
</resultMap>
|
||||
|
||||
<sql id="specificServiceHostCfgColumns">
|
||||
s.host_id AS hostId,
|
||||
s.spec_service_id AS specServiceId,
|
||||
s.src_ip AS srcIp,
|
||||
s.src_ip_mask AS srcIpMask,
|
||||
s.src_port AS srcPort,
|
||||
s.src_port_mask AS srcPortMask,
|
||||
s.dst_ip AS dstIp,
|
||||
s.dst_ip_mask AS dstIpMask,
|
||||
s.dst_port AS dstPort,
|
||||
s.dst_port_mask AS dstPortMask,
|
||||
s.direction AS direction,
|
||||
s.protocol AS protocol,
|
||||
s.is_valid AS isValid,
|
||||
s.is_audit AS isAudit,
|
||||
s.creator_id AS "creator.id",
|
||||
s.create_time AS createTime,
|
||||
s.editor_id AS "editor.id",
|
||||
s.edit_time AS editTime,
|
||||
s.auditor_id AS "auditor.id",
|
||||
s.audit_time AS auditTime
|
||||
</sql>
|
||||
|
||||
|
||||
<!-- 根据id查出对象 -->
|
||||
<select id="getByHostId" resultType="com.nis.domain.specific.SpecificServiceHostCfg"
|
||||
parameterType="java.lang.Integer">
|
||||
select
|
||||
<include refid="specificServiceHostCfgColumns" />
|
||||
from specific_service_host_cfg s where s.host_id = #{hostId}
|
||||
</select>
|
||||
|
||||
<!-- 查询分页 -->
|
||||
<select id="findSpecHostList" resultMap="specificServiceHostCfgResultMap" parameterType="com.nis.domain.specific.SpecificServiceHostCfg">
|
||||
select * from specific_service_host_cfg where 1 = 1
|
||||
<if test="isAudit !=null" >
|
||||
AND is_audit = #{isAudit}
|
||||
</if>
|
||||
<if test="specServiceId !=null" >
|
||||
AND spec_service_id = #{specServiceId}
|
||||
</if>
|
||||
<if test="protocol !=null" >
|
||||
AND protocol = #{protocol}
|
||||
</if>
|
||||
<if test="direction !=null" >
|
||||
AND direction = #{direction}
|
||||
</if>
|
||||
<if test="beginDate !=null" >
|
||||
AND create_time >= #{beginDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
<if test="endDate !=null" >
|
||||
AND create_time <= #{endDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
<if test="editBeginDate !=null" >
|
||||
AND edit_time >= #{editBeginDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
<if test="editEndDate !=null" >
|
||||
AND edit_time <= #{editEndDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
<if test="auditBeginDate !=null" >
|
||||
AND audit_time >= #{auditBeginDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
<if test="auditEndDate !=null" >
|
||||
AND audit_time <= #{auditEndDate,jdbcType=TIMESTAMP}
|
||||
</if>
|
||||
<choose>
|
||||
<when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
||||
ORDER BY ${page.orderBy}
|
||||
</when>
|
||||
<otherwise>
|
||||
ORDER BY create_time desc
|
||||
</otherwise>
|
||||
</choose>
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 查询所有 -->
|
||||
<select id="getAll" resultMap="specificServiceHostCfgResultMap">
|
||||
select * from specific_service_host_cfg
|
||||
</select>
|
||||
|
||||
<!-- 新增 -->
|
||||
<insert id="insert" parameterType="com.nis.domain.specific.SpecificServiceHostCfg">
|
||||
insert into specific_service_host_cfg (spec_service_id,src_ip,src_ip_mask,src_port,src_port_mask,dst_ip,dst_ip_mask,dst_port,dst_port_mask,direction,protocol,is_valid,is_audit,creator_id,create_time,editor_id,edit_time,auditor_id,audit_time)
|
||||
values(#{specServiceId},#{srcIp},#{srcIpMask},#{srcPort},#{srcPortMask},#{dstIp},#{dstIpMask},#{dstPort},#{dstPortMask},#{direction},#{protocol},#{isValid},#{isAudit},#{creator.id},#{createTime},#{editor.id},#{editTime},#{auditor.id},#{auditTime})
|
||||
</insert>
|
||||
<!-- 修改 -->
|
||||
<update id="update" parameterType="com.nis.domain.specific.SpecificServiceHostCfg">
|
||||
update specific_service_host_cfg s set
|
||||
s.spec_service_id = #{specServiceId},
|
||||
s.src_ip = #{srcIp},
|
||||
s.src_ip_mask = #{srcIpMask},
|
||||
s.src_port = #{srcPort},
|
||||
s.src_port_mask = #{srcPortMask},
|
||||
s.dst_ip = #{dstIp},
|
||||
s.dst_ip_mask = #{dstIpMask},
|
||||
s.dst_port = #{dstPort},
|
||||
s.dst_port_mask = #{dstPortMask},
|
||||
s.direction = #{direction},
|
||||
s.protocol = #{protocol},
|
||||
s.is_valid = #{isValid},
|
||||
s.is_audit = #{isAudit},
|
||||
s.creator_id = #{creator.id},
|
||||
s.create_time = #{createTime},
|
||||
s.editor_id = #{editor.id},
|
||||
s.edit_time = #{editTime},
|
||||
s.auditor_id = #{auditor.id},
|
||||
s.audit_time = #{auditTime}
|
||||
where s.host_id = #{hostId}
|
||||
</update>
|
||||
<!-- 删除 -->
|
||||
<update id="delete" parameterType="java.lang.Integer">
|
||||
update specific_service_host_cfg s set
|
||||
s.is_valid = 0
|
||||
where s.host_id = #{hostId}
|
||||
</update>
|
||||
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,119 @@
|
||||
package com.nis.web.service.specific;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.beust.jcommander.internal.Lists;
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.specific.SpecificServiceCfg;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.web.dao.specific.SpecificServiceCfgDao;
|
||||
import com.nis.web.service.BaseService;
|
||||
|
||||
@Service
|
||||
public class SpecificServiceCfgService extends BaseService{
|
||||
|
||||
@Autowired
|
||||
private SpecificServiceCfgDao specificServiceCfgDao;
|
||||
|
||||
/**
|
||||
* 根据id查询对象
|
||||
* @param specServiceId
|
||||
* @return
|
||||
*/
|
||||
public SpecificServiceCfg getBySpecServiceId(Integer specServiceId) {
|
||||
return specificServiceCfgDao.getBySpecServiceId(specServiceId);
|
||||
}
|
||||
/**
|
||||
* 查询所有符合条件的顶层分页
|
||||
* @param page
|
||||
* @param specificServiceCfg
|
||||
* @return
|
||||
*/
|
||||
public Page<SpecificServiceCfg> findTopPage(Page<SpecificServiceCfg> page, SpecificServiceCfg specificServiceCfg){
|
||||
// 设置分页参数
|
||||
specificServiceCfg.setPage(page);
|
||||
// 执行分页查询
|
||||
List<SpecificServiceCfg> list = Lists.newArrayList();
|
||||
list = specificServiceCfgDao.findTopPage(specificServiceCfg);
|
||||
SpecificServiceCfg ss = new SpecificServiceCfg();
|
||||
ss.setSpecServiceId(0);
|
||||
for(SpecificServiceCfg ssc:list){
|
||||
ssc.setParent(ss);
|
||||
}
|
||||
page.setList(list);
|
||||
return page;
|
||||
}
|
||||
/**
|
||||
* 查询所有符合条件的数据
|
||||
* @param specificServiceCfg
|
||||
* @return
|
||||
*/
|
||||
public List<SpecificServiceCfg> findAllSpecificServiceCfg(SpecificServiceCfg specificServiceCfg) {
|
||||
return specificServiceCfgDao.findAllSpecificServiceCfg(specificServiceCfg);
|
||||
}
|
||||
/**
|
||||
* 保存或修改
|
||||
* @param specificServiceCfg
|
||||
*/
|
||||
public void saveOrUpdate(SpecificServiceCfg specificServiceCfg, Integer oldId) {
|
||||
if(oldId==null){//新增
|
||||
specificServiceCfg.setIsValid(1);
|
||||
specificServiceCfg.setOpTime(new Date());
|
||||
specificServiceCfgDao.insert(specificServiceCfg);
|
||||
}else{//修改
|
||||
specificServiceCfg.setOpTime(new Date());
|
||||
//修改id则将其子类的parent_id一并修改
|
||||
if(oldId!=specificServiceCfg.getSpecServiceId()){
|
||||
//找出所有子类
|
||||
List<SpecificServiceCfg> list = specificServiceCfgDao.getChildrenById(oldId);
|
||||
SpecificServiceCfg se =new SpecificServiceCfg();
|
||||
se.setSpecServiceId(specificServiceCfg.getSpecServiceId());
|
||||
for(SpecificServiceCfg ss:list){
|
||||
if(ss!=null){
|
||||
ss.setParent(se);
|
||||
specificServiceCfgDao.update(ss,ss.getSpecServiceId());
|
||||
}
|
||||
}
|
||||
}
|
||||
specificServiceCfgDao.update(specificServiceCfg,oldId);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 删除
|
||||
* @param specificServiceCfg
|
||||
*/
|
||||
public void delete(String mulitId) {
|
||||
String[] ids = mulitId.split(",");
|
||||
for(String id:ids){
|
||||
if (!id.equals("")) {
|
||||
SpecificServiceCfg specificServiceCfg = specificServiceCfgDao.getBySpecServiceId(Integer.valueOf(id));
|
||||
List<SpecificServiceCfg> list = Lists.newArrayList();
|
||||
//找出所有下级
|
||||
if(specificServiceCfg!=null){
|
||||
SpecificServiceCfg.sortList(list, specificServiceCfgDao.findAllSpecificServiceCfg(new SpecificServiceCfg()), specificServiceCfg.getSpecServiceId(), true);
|
||||
list.add(specificServiceCfg);
|
||||
for(SpecificServiceCfg ss:list){
|
||||
ss.setIsValid(0);
|
||||
specificServiceCfgDao.delete(ss);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据specServiceId查询所有下级
|
||||
* @param specServiceId
|
||||
* @return
|
||||
*/
|
||||
public List<SpecificServiceCfg> getChildrenById(Integer specServiceId) {
|
||||
return specificServiceCfgDao.getChildrenById(specServiceId);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
package com.nis.web.service.specific;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.SysUser;
|
||||
import com.nis.domain.specific.SpecificServiceHostCfg;
|
||||
import com.nis.web.dao.specific.SpecificServiceHostCfgDao;
|
||||
import com.nis.web.security.UserUtils;
|
||||
import com.nis.web.service.BaseService;
|
||||
|
||||
@Service
|
||||
public class SpecificServiceHostCfgService extends BaseService{
|
||||
|
||||
@Autowired
|
||||
private SpecificServiceHostCfgDao specificServiceHostCfgDao;
|
||||
|
||||
/**
|
||||
* 根据主键查询数据对象
|
||||
* @param hostId
|
||||
* @return
|
||||
*/
|
||||
public SpecificServiceHostCfg getDictByHostId(Integer hostId) {
|
||||
return specificServiceHostCfgDao.getByHostId(hostId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查出分页
|
||||
* @param page
|
||||
* @param specificServiceHostCfg
|
||||
* @return
|
||||
*/
|
||||
public Page<SpecificServiceHostCfg> findSpecHostList(Page<SpecificServiceHostCfg> page,
|
||||
SpecificServiceHostCfg specificServiceHostCfg) {
|
||||
specificServiceHostCfg.setPage(page);
|
||||
page.setList(specificServiceHostCfgDao.findSpecHostList(specificServiceHostCfg));
|
||||
return page;
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增或修改
|
||||
* @param specificServiceHostCfg
|
||||
*/
|
||||
public void saveOrUpdate(SpecificServiceHostCfg specificServiceHostCfg) {
|
||||
SysUser user = UserUtils.getUser();
|
||||
Date date = new Date();
|
||||
if(specificServiceHostCfg.getHostId()==null){//新增
|
||||
specificServiceHostCfg.setIsValid(1);
|
||||
specificServiceHostCfg.setCreator(user);
|
||||
specificServiceHostCfg.setCreateTime(date);
|
||||
specificServiceHostCfg.setEditor(user);
|
||||
specificServiceHostCfg.setEditTime(date);
|
||||
specificServiceHostCfgDao.insert(specificServiceHostCfg);
|
||||
}else{//修改
|
||||
//是否进行了审核操作
|
||||
SpecificServiceHostCfg ssh = specificServiceHostCfgDao.getByHostId(specificServiceHostCfg.getHostId());
|
||||
if(ssh.getIsAudit()!=specificServiceHostCfg.getIsAudit()){
|
||||
specificServiceHostCfg.setAuditor(user);
|
||||
specificServiceHostCfg.setAuditTime(date);
|
||||
}
|
||||
specificServiceHostCfg.setEditor(user);
|
||||
specificServiceHostCfg.setEditTime(date);
|
||||
specificServiceHostCfgDao.update(specificServiceHostCfg);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 查出所有
|
||||
* @return
|
||||
*/
|
||||
public List<SpecificServiceHostCfg> getAll() {
|
||||
|
||||
return specificServiceHostCfgDao.getAll();
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
* @param mulitId
|
||||
*/
|
||||
public void delete(String mulitId) {
|
||||
String[] ids = mulitId.split(",");
|
||||
for(String hostId:ids){
|
||||
if (!StringUtils.isEmpty(hostId)) {
|
||||
specificServiceHostCfgDao.delete(Integer.valueOf(hostId));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user