diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java index e18cd4e..a1d636e 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java @@ -28,7 +28,7 @@ @WebService( serviceName = "MdmService", portName = "MdmWebServiceImplPort", targetNamespace = MdmConst.namespace, - wsdlLocation = "file:/D:/casic/cxf/wsdl.wsdl", +// wsdlLocation = "http://localhost:6909/safe-server/ws/mdmService?wsdl", endpointInterface = "com.casic.missiles.modular.client.huss.MdmService") public class MdmWebServiceImplPortImpl implements MdmService { @@ -56,7 +56,6 @@ */ public String getMq(String mqID) { LOG.info("Executing operation getMq"); - System.out.println(mqID); try { String xml = "" + "\t\n" + @@ -98,7 +97,10 @@ "\t1\n" + "\t\n" + "\t\n"; - String _return =xml; + + String data = "" + + "\t\n"+ "\t\n"; + String _return =data; return _return; } catch (java.lang.Exception ex) { ex.printStackTrace(); diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java index e18cd4e..a1d636e 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java @@ -28,7 +28,7 @@ @WebService( serviceName = "MdmService", portName = "MdmWebServiceImplPort", targetNamespace = MdmConst.namespace, - wsdlLocation = "file:/D:/casic/cxf/wsdl.wsdl", +// wsdlLocation = "http://localhost:6909/safe-server/ws/mdmService?wsdl", endpointInterface = "com.casic.missiles.modular.client.huss.MdmService") public class MdmWebServiceImplPortImpl implements MdmService { @@ -56,7 +56,6 @@ */ public String getMq(String mqID) { LOG.info("Executing operation getMq"); - System.out.println(mqID); try { String xml = "" + "\t\n" + @@ -98,7 +97,10 @@ "\t1\n" + "\t\n" + "\t\n"; - String _return =xml; + + String data = "" + + "\t\n"+ "\t\n"; + String _return =data; return _return; } catch (java.lang.Exception ex) { ex.printStackTrace(); diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java index 224b143..3bef152 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.device.service.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.casic.missiles.core.application.service.AbstractDeptService; @@ -22,6 +23,7 @@ import com.fasterxml.jackson.dataformat.xml.XmlMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -33,12 +35,14 @@ public class SyncServiceImpl implements ISyncService { private final AbstractDeptService deptService; private final AbstractUserService userService; + private final JdbcTemplate jdbcTemplate; @Value("${casic.defaultDeptType:03}") private String defaultDept; - public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService) { + public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService, JdbcTemplate jdbcTemplate) { this.deptService = deptService; this.userService = userService; + this.jdbcTemplate = jdbcTemplate; } @Transactional @@ -58,7 +62,7 @@ } if ("2".equals(orgDTO.getSyncType())) { dept.setDelFlag("1"); - }else{ + } else { dept.setDelFlag("0"); } dept.setSyncPid(orgDTO.getInternalPOrgCode()); @@ -95,7 +99,6 @@ for (UumOperatorDTO mdmPerson : uumOperatorDisps) { String account = mdmPerson.getHID(); User user = null; - if (userMap.containsKey(mdmPerson.getHID())) { user = userMap.get(mdmPerson.getHID()); } else { @@ -130,7 +133,7 @@ if ("2".equals(mdmPerson.getSyncType())) { user.setDelFlag("1"); user.setStatus("3"); - }else{ + } else { user.setStatus("1"); user.setDelFlag("0"); } @@ -138,8 +141,11 @@ //用户数据修改 userService.saveOrUpdate(user); } + //TODO 更新组织数据 + jdbcTemplate.update("update sys_user a set dept_id = (select id from sys_dept b where b.SYNC_ID = a.SYNC_DEPTID ) where a.IS_SYS = 1"); log.info("sync user end....."); } + private static final XmlMapper xmlMapper = new XmlMapper(); @Override @@ -161,9 +167,13 @@ @Override public void saveBaseList(UumBaseList baseList) { //更新组织数据 - saveDeptList(baseList.getUumOrganizationDisp()); + if (CollectionUtil.isNotEmpty(baseList.getUumOrganizationDisp())) { + saveDeptList(baseList.getUumOrganizationDisp()); + } //更新用户数据 - saveUserList(baseList.getUumOperatorDisps()); + if (CollectionUtil.isNotEmpty(baseList.getUumOperatorDisps())) { + saveUserList(baseList.getUumOperatorDisps()); + } } /** diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java index e18cd4e..a1d636e 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java @@ -28,7 +28,7 @@ @WebService( serviceName = "MdmService", portName = "MdmWebServiceImplPort", targetNamespace = MdmConst.namespace, - wsdlLocation = "file:/D:/casic/cxf/wsdl.wsdl", +// wsdlLocation = "http://localhost:6909/safe-server/ws/mdmService?wsdl", endpointInterface = "com.casic.missiles.modular.client.huss.MdmService") public class MdmWebServiceImplPortImpl implements MdmService { @@ -56,7 +56,6 @@ */ public String getMq(String mqID) { LOG.info("Executing operation getMq"); - System.out.println(mqID); try { String xml = "" + "\t\n" + @@ -98,7 +97,10 @@ "\t1\n" + "\t\n" + "\t\n"; - String _return =xml; + + String data = "" + + "\t\n"+ "\t\n"; + String _return =data; return _return; } catch (java.lang.Exception ex) { ex.printStackTrace(); diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java index 224b143..3bef152 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.device.service.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.casic.missiles.core.application.service.AbstractDeptService; @@ -22,6 +23,7 @@ import com.fasterxml.jackson.dataformat.xml.XmlMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -33,12 +35,14 @@ public class SyncServiceImpl implements ISyncService { private final AbstractDeptService deptService; private final AbstractUserService userService; + private final JdbcTemplate jdbcTemplate; @Value("${casic.defaultDeptType:03}") private String defaultDept; - public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService) { + public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService, JdbcTemplate jdbcTemplate) { this.deptService = deptService; this.userService = userService; + this.jdbcTemplate = jdbcTemplate; } @Transactional @@ -58,7 +62,7 @@ } if ("2".equals(orgDTO.getSyncType())) { dept.setDelFlag("1"); - }else{ + } else { dept.setDelFlag("0"); } dept.setSyncPid(orgDTO.getInternalPOrgCode()); @@ -95,7 +99,6 @@ for (UumOperatorDTO mdmPerson : uumOperatorDisps) { String account = mdmPerson.getHID(); User user = null; - if (userMap.containsKey(mdmPerson.getHID())) { user = userMap.get(mdmPerson.getHID()); } else { @@ -130,7 +133,7 @@ if ("2".equals(mdmPerson.getSyncType())) { user.setDelFlag("1"); user.setStatus("3"); - }else{ + } else { user.setStatus("1"); user.setDelFlag("0"); } @@ -138,8 +141,11 @@ //用户数据修改 userService.saveOrUpdate(user); } + //TODO 更新组织数据 + jdbcTemplate.update("update sys_user a set dept_id = (select id from sys_dept b where b.SYNC_ID = a.SYNC_DEPTID ) where a.IS_SYS = 1"); log.info("sync user end....."); } + private static final XmlMapper xmlMapper = new XmlMapper(); @Override @@ -161,9 +167,13 @@ @Override public void saveBaseList(UumBaseList baseList) { //更新组织数据 - saveDeptList(baseList.getUumOrganizationDisp()); + if (CollectionUtil.isNotEmpty(baseList.getUumOrganizationDisp())) { + saveDeptList(baseList.getUumOrganizationDisp()); + } //更新用户数据 - saveUserList(baseList.getUumOperatorDisps()); + if (CollectionUtil.isNotEmpty(baseList.getUumOperatorDisps())) { + saveUserList(baseList.getUumOperatorDisps()); + } } /** diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java index 77ed3ed..b1fa819 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.task; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.client.huss.Exception_Exception; import com.casic.missiles.modular.client.huss.MdmService; @@ -36,7 +37,7 @@ @Resource private ISyncService syncService; - @Scheduled(cron = "0 */2 * * * *") + @Scheduled(cron = "${casic.mdm.corn:0 */2 * * * *}") public void sync() { String disid = null; MdmService port = null; @@ -44,18 +45,27 @@ MdmService_Service ss = new MdmService_Service(getWsdlURL(wsdl), getServiceName(MdmConst.namespace)); port = ss.getMdmWebServiceImplPort(); - log.info("Invoking getMq..."); - String xml = port.getMq(mqId); - log.info("getMq.result={}", xml); - UumBaseList uumBaseList = syncService.getUumBaseList(xml); - disid = uumBaseList.getDisid(); - syncService.saveBaseList(uumBaseList); + boolean isEnd = false; - log.info("data sync success"); - if (StrUtil.isNotEmpty(disid)) { - port.updateDistributeState(getSuccess(disid)); + //返回结果为空时则结束该任务 + while (!isEnd) { + log.info("Invoking getMq..."); + String xml = port.getMq(mqId); + log.info("getMq.result={}", xml); + UumBaseList uumBaseList = syncService.getUumBaseList(xml); + disid = uumBaseList.getDisid(); + log.info("data sync success"); + if(CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())&&CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())){ + isEnd = true; + }else{ + syncService.saveBaseList(uumBaseList); + } + if (StrUtil.isNotEmpty(disid)) { + port.updateDistributeState(getSuccess(disid)); + } } + } catch (Exception exception) { log.error(exception.getMessage(), exception); if (StrUtil.isNotEmpty(disid) && port != null) { diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java index e18cd4e..a1d636e 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java @@ -28,7 +28,7 @@ @WebService( serviceName = "MdmService", portName = "MdmWebServiceImplPort", targetNamespace = MdmConst.namespace, - wsdlLocation = "file:/D:/casic/cxf/wsdl.wsdl", +// wsdlLocation = "http://localhost:6909/safe-server/ws/mdmService?wsdl", endpointInterface = "com.casic.missiles.modular.client.huss.MdmService") public class MdmWebServiceImplPortImpl implements MdmService { @@ -56,7 +56,6 @@ */ public String getMq(String mqID) { LOG.info("Executing operation getMq"); - System.out.println(mqID); try { String xml = "" + "\t\n" + @@ -98,7 +97,10 @@ "\t1\n" + "\t\n" + "\t\n"; - String _return =xml; + + String data = "" + + "\t\n"+ "\t\n"; + String _return =data; return _return; } catch (java.lang.Exception ex) { ex.printStackTrace(); diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java index 224b143..3bef152 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.device.service.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.casic.missiles.core.application.service.AbstractDeptService; @@ -22,6 +23,7 @@ import com.fasterxml.jackson.dataformat.xml.XmlMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -33,12 +35,14 @@ public class SyncServiceImpl implements ISyncService { private final AbstractDeptService deptService; private final AbstractUserService userService; + private final JdbcTemplate jdbcTemplate; @Value("${casic.defaultDeptType:03}") private String defaultDept; - public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService) { + public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService, JdbcTemplate jdbcTemplate) { this.deptService = deptService; this.userService = userService; + this.jdbcTemplate = jdbcTemplate; } @Transactional @@ -58,7 +62,7 @@ } if ("2".equals(orgDTO.getSyncType())) { dept.setDelFlag("1"); - }else{ + } else { dept.setDelFlag("0"); } dept.setSyncPid(orgDTO.getInternalPOrgCode()); @@ -95,7 +99,6 @@ for (UumOperatorDTO mdmPerson : uumOperatorDisps) { String account = mdmPerson.getHID(); User user = null; - if (userMap.containsKey(mdmPerson.getHID())) { user = userMap.get(mdmPerson.getHID()); } else { @@ -130,7 +133,7 @@ if ("2".equals(mdmPerson.getSyncType())) { user.setDelFlag("1"); user.setStatus("3"); - }else{ + } else { user.setStatus("1"); user.setDelFlag("0"); } @@ -138,8 +141,11 @@ //用户数据修改 userService.saveOrUpdate(user); } + //TODO 更新组织数据 + jdbcTemplate.update("update sys_user a set dept_id = (select id from sys_dept b where b.SYNC_ID = a.SYNC_DEPTID ) where a.IS_SYS = 1"); log.info("sync user end....."); } + private static final XmlMapper xmlMapper = new XmlMapper(); @Override @@ -161,9 +167,13 @@ @Override public void saveBaseList(UumBaseList baseList) { //更新组织数据 - saveDeptList(baseList.getUumOrganizationDisp()); + if (CollectionUtil.isNotEmpty(baseList.getUumOrganizationDisp())) { + saveDeptList(baseList.getUumOrganizationDisp()); + } //更新用户数据 - saveUserList(baseList.getUumOperatorDisps()); + if (CollectionUtil.isNotEmpty(baseList.getUumOperatorDisps())) { + saveUserList(baseList.getUumOperatorDisps()); + } } /** diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java index 77ed3ed..b1fa819 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.task; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.client.huss.Exception_Exception; import com.casic.missiles.modular.client.huss.MdmService; @@ -36,7 +37,7 @@ @Resource private ISyncService syncService; - @Scheduled(cron = "0 */2 * * * *") + @Scheduled(cron = "${casic.mdm.corn:0 */2 * * * *}") public void sync() { String disid = null; MdmService port = null; @@ -44,18 +45,27 @@ MdmService_Service ss = new MdmService_Service(getWsdlURL(wsdl), getServiceName(MdmConst.namespace)); port = ss.getMdmWebServiceImplPort(); - log.info("Invoking getMq..."); - String xml = port.getMq(mqId); - log.info("getMq.result={}", xml); - UumBaseList uumBaseList = syncService.getUumBaseList(xml); - disid = uumBaseList.getDisid(); - syncService.saveBaseList(uumBaseList); + boolean isEnd = false; - log.info("data sync success"); - if (StrUtil.isNotEmpty(disid)) { - port.updateDistributeState(getSuccess(disid)); + //返回结果为空时则结束该任务 + while (!isEnd) { + log.info("Invoking getMq..."); + String xml = port.getMq(mqId); + log.info("getMq.result={}", xml); + UumBaseList uumBaseList = syncService.getUumBaseList(xml); + disid = uumBaseList.getDisid(); + log.info("data sync success"); + if(CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())&&CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())){ + isEnd = true; + }else{ + syncService.saveBaseList(uumBaseList); + } + if (StrUtil.isNotEmpty(disid)) { + port.updateDistributeState(getSuccess(disid)); + } } + } catch (Exception exception) { log.error(exception.getMessage(), exception); if (StrUtil.isNotEmpty(disid) && port != null) { diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java index 615211f..94ae947 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 相机树 @@ -57,6 +58,7 @@ @Override public void setChildrenNodes(List childrenNodes) { children.addAll(childrenNodes); + children = children.stream().distinct().collect(Collectors.toList()); } } diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java index e18cd4e..a1d636e 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java @@ -28,7 +28,7 @@ @WebService( serviceName = "MdmService", portName = "MdmWebServiceImplPort", targetNamespace = MdmConst.namespace, - wsdlLocation = "file:/D:/casic/cxf/wsdl.wsdl", +// wsdlLocation = "http://localhost:6909/safe-server/ws/mdmService?wsdl", endpointInterface = "com.casic.missiles.modular.client.huss.MdmService") public class MdmWebServiceImplPortImpl implements MdmService { @@ -56,7 +56,6 @@ */ public String getMq(String mqID) { LOG.info("Executing operation getMq"); - System.out.println(mqID); try { String xml = "" + "\t\n" + @@ -98,7 +97,10 @@ "\t1\n" + "\t\n" + "\t\n"; - String _return =xml; + + String data = "" + + "\t\n"+ "\t\n"; + String _return =data; return _return; } catch (java.lang.Exception ex) { ex.printStackTrace(); diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java index 224b143..3bef152 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.device.service.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.casic.missiles.core.application.service.AbstractDeptService; @@ -22,6 +23,7 @@ import com.fasterxml.jackson.dataformat.xml.XmlMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -33,12 +35,14 @@ public class SyncServiceImpl implements ISyncService { private final AbstractDeptService deptService; private final AbstractUserService userService; + private final JdbcTemplate jdbcTemplate; @Value("${casic.defaultDeptType:03}") private String defaultDept; - public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService) { + public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService, JdbcTemplate jdbcTemplate) { this.deptService = deptService; this.userService = userService; + this.jdbcTemplate = jdbcTemplate; } @Transactional @@ -58,7 +62,7 @@ } if ("2".equals(orgDTO.getSyncType())) { dept.setDelFlag("1"); - }else{ + } else { dept.setDelFlag("0"); } dept.setSyncPid(orgDTO.getInternalPOrgCode()); @@ -95,7 +99,6 @@ for (UumOperatorDTO mdmPerson : uumOperatorDisps) { String account = mdmPerson.getHID(); User user = null; - if (userMap.containsKey(mdmPerson.getHID())) { user = userMap.get(mdmPerson.getHID()); } else { @@ -130,7 +133,7 @@ if ("2".equals(mdmPerson.getSyncType())) { user.setDelFlag("1"); user.setStatus("3"); - }else{ + } else { user.setStatus("1"); user.setDelFlag("0"); } @@ -138,8 +141,11 @@ //用户数据修改 userService.saveOrUpdate(user); } + //TODO 更新组织数据 + jdbcTemplate.update("update sys_user a set dept_id = (select id from sys_dept b where b.SYNC_ID = a.SYNC_DEPTID ) where a.IS_SYS = 1"); log.info("sync user end....."); } + private static final XmlMapper xmlMapper = new XmlMapper(); @Override @@ -161,9 +167,13 @@ @Override public void saveBaseList(UumBaseList baseList) { //更新组织数据 - saveDeptList(baseList.getUumOrganizationDisp()); + if (CollectionUtil.isNotEmpty(baseList.getUumOrganizationDisp())) { + saveDeptList(baseList.getUumOrganizationDisp()); + } //更新用户数据 - saveUserList(baseList.getUumOperatorDisps()); + if (CollectionUtil.isNotEmpty(baseList.getUumOperatorDisps())) { + saveUserList(baseList.getUumOperatorDisps()); + } } /** diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java index 77ed3ed..b1fa819 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.task; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.client.huss.Exception_Exception; import com.casic.missiles.modular.client.huss.MdmService; @@ -36,7 +37,7 @@ @Resource private ISyncService syncService; - @Scheduled(cron = "0 */2 * * * *") + @Scheduled(cron = "${casic.mdm.corn:0 */2 * * * *}") public void sync() { String disid = null; MdmService port = null; @@ -44,18 +45,27 @@ MdmService_Service ss = new MdmService_Service(getWsdlURL(wsdl), getServiceName(MdmConst.namespace)); port = ss.getMdmWebServiceImplPort(); - log.info("Invoking getMq..."); - String xml = port.getMq(mqId); - log.info("getMq.result={}", xml); - UumBaseList uumBaseList = syncService.getUumBaseList(xml); - disid = uumBaseList.getDisid(); - syncService.saveBaseList(uumBaseList); + boolean isEnd = false; - log.info("data sync success"); - if (StrUtil.isNotEmpty(disid)) { - port.updateDistributeState(getSuccess(disid)); + //返回结果为空时则结束该任务 + while (!isEnd) { + log.info("Invoking getMq..."); + String xml = port.getMq(mqId); + log.info("getMq.result={}", xml); + UumBaseList uumBaseList = syncService.getUumBaseList(xml); + disid = uumBaseList.getDisid(); + log.info("data sync success"); + if(CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())&&CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())){ + isEnd = true; + }else{ + syncService.saveBaseList(uumBaseList); + } + if (StrUtil.isNotEmpty(disid)) { + port.updateDistributeState(getSuccess(disid)); + } } + } catch (Exception exception) { log.error(exception.getMessage(), exception); if (StrUtil.isNotEmpty(disid) && port != null) { diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java index 615211f..94ae947 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 相机树 @@ -57,6 +58,7 @@ @Override public void setChildrenNodes(List childrenNodes) { children.addAll(childrenNodes); + children = children.stream().distinct().collect(Collectors.toList()); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java index 848eaae..b87a553 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java @@ -7,7 +7,7 @@ import java.util.ArrayList; import java.util.List; -public class DeptDefaultTreeBuildFactory extends DefaultTreeBuildFactory { +public class DeptDefaultTreeBuildFactory extends StayDefaultTreeBuildFactory { private String rootId; @Override protected List afterBuild(List nodes) { diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java index e18cd4e..a1d636e 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java @@ -28,7 +28,7 @@ @WebService( serviceName = "MdmService", portName = "MdmWebServiceImplPort", targetNamespace = MdmConst.namespace, - wsdlLocation = "file:/D:/casic/cxf/wsdl.wsdl", +// wsdlLocation = "http://localhost:6909/safe-server/ws/mdmService?wsdl", endpointInterface = "com.casic.missiles.modular.client.huss.MdmService") public class MdmWebServiceImplPortImpl implements MdmService { @@ -56,7 +56,6 @@ */ public String getMq(String mqID) { LOG.info("Executing operation getMq"); - System.out.println(mqID); try { String xml = "" + "\t\n" + @@ -98,7 +97,10 @@ "\t1\n" + "\t\n" + "\t\n"; - String _return =xml; + + String data = "" + + "\t\n"+ "\t\n"; + String _return =data; return _return; } catch (java.lang.Exception ex) { ex.printStackTrace(); diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java index 224b143..3bef152 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.device.service.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.casic.missiles.core.application.service.AbstractDeptService; @@ -22,6 +23,7 @@ import com.fasterxml.jackson.dataformat.xml.XmlMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -33,12 +35,14 @@ public class SyncServiceImpl implements ISyncService { private final AbstractDeptService deptService; private final AbstractUserService userService; + private final JdbcTemplate jdbcTemplate; @Value("${casic.defaultDeptType:03}") private String defaultDept; - public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService) { + public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService, JdbcTemplate jdbcTemplate) { this.deptService = deptService; this.userService = userService; + this.jdbcTemplate = jdbcTemplate; } @Transactional @@ -58,7 +62,7 @@ } if ("2".equals(orgDTO.getSyncType())) { dept.setDelFlag("1"); - }else{ + } else { dept.setDelFlag("0"); } dept.setSyncPid(orgDTO.getInternalPOrgCode()); @@ -95,7 +99,6 @@ for (UumOperatorDTO mdmPerson : uumOperatorDisps) { String account = mdmPerson.getHID(); User user = null; - if (userMap.containsKey(mdmPerson.getHID())) { user = userMap.get(mdmPerson.getHID()); } else { @@ -130,7 +133,7 @@ if ("2".equals(mdmPerson.getSyncType())) { user.setDelFlag("1"); user.setStatus("3"); - }else{ + } else { user.setStatus("1"); user.setDelFlag("0"); } @@ -138,8 +141,11 @@ //用户数据修改 userService.saveOrUpdate(user); } + //TODO 更新组织数据 + jdbcTemplate.update("update sys_user a set dept_id = (select id from sys_dept b where b.SYNC_ID = a.SYNC_DEPTID ) where a.IS_SYS = 1"); log.info("sync user end....."); } + private static final XmlMapper xmlMapper = new XmlMapper(); @Override @@ -161,9 +167,13 @@ @Override public void saveBaseList(UumBaseList baseList) { //更新组织数据 - saveDeptList(baseList.getUumOrganizationDisp()); + if (CollectionUtil.isNotEmpty(baseList.getUumOrganizationDisp())) { + saveDeptList(baseList.getUumOrganizationDisp()); + } //更新用户数据 - saveUserList(baseList.getUumOperatorDisps()); + if (CollectionUtil.isNotEmpty(baseList.getUumOperatorDisps())) { + saveUserList(baseList.getUumOperatorDisps()); + } } /** diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java index 77ed3ed..b1fa819 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.task; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.client.huss.Exception_Exception; import com.casic.missiles.modular.client.huss.MdmService; @@ -36,7 +37,7 @@ @Resource private ISyncService syncService; - @Scheduled(cron = "0 */2 * * * *") + @Scheduled(cron = "${casic.mdm.corn:0 */2 * * * *}") public void sync() { String disid = null; MdmService port = null; @@ -44,18 +45,27 @@ MdmService_Service ss = new MdmService_Service(getWsdlURL(wsdl), getServiceName(MdmConst.namespace)); port = ss.getMdmWebServiceImplPort(); - log.info("Invoking getMq..."); - String xml = port.getMq(mqId); - log.info("getMq.result={}", xml); - UumBaseList uumBaseList = syncService.getUumBaseList(xml); - disid = uumBaseList.getDisid(); - syncService.saveBaseList(uumBaseList); + boolean isEnd = false; - log.info("data sync success"); - if (StrUtil.isNotEmpty(disid)) { - port.updateDistributeState(getSuccess(disid)); + //返回结果为空时则结束该任务 + while (!isEnd) { + log.info("Invoking getMq..."); + String xml = port.getMq(mqId); + log.info("getMq.result={}", xml); + UumBaseList uumBaseList = syncService.getUumBaseList(xml); + disid = uumBaseList.getDisid(); + log.info("data sync success"); + if(CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())&&CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())){ + isEnd = true; + }else{ + syncService.saveBaseList(uumBaseList); + } + if (StrUtil.isNotEmpty(disid)) { + port.updateDistributeState(getSuccess(disid)); + } } + } catch (Exception exception) { log.error(exception.getMessage(), exception); if (StrUtil.isNotEmpty(disid) && port != null) { diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java index 615211f..94ae947 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 相机树 @@ -57,6 +58,7 @@ @Override public void setChildrenNodes(List childrenNodes) { children.addAll(childrenNodes); + children = children.stream().distinct().collect(Collectors.toList()); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java index 848eaae..b87a553 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java @@ -7,7 +7,7 @@ import java.util.ArrayList; import java.util.List; -public class DeptDefaultTreeBuildFactory extends DefaultTreeBuildFactory { +public class DeptDefaultTreeBuildFactory extends StayDefaultTreeBuildFactory { private String rootId; @Override protected List afterBuild(List nodes) { diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java new file mode 100644 index 0000000..fbd0c37 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java @@ -0,0 +1,87 @@ +package com.casic.missiles.modular.device.tree; + +import com.casic.missiles.core.treebuild.abst.AbstractTreeBuildFactory; +import com.casic.missiles.model.tree.Tree; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +@Data +public class StayDefaultTreeBuildFactory extends AbstractTreeBuildFactory { + + /** + * 顶级节点的父节点id(默认-1) + */ + private String rootParentId = "-1"; + + /** + * 查询子节点的集合 + * + * @param totalNodes 所有节点的集合 + * @param node 被查询节点的id + * @param childNodeLists 被查询节点的子节点集合 + */ + private void buildChildNodes(List totalNodes, T node, List childNodeLists) { + if (totalNodes == null || node == null) { + return; + } + + List nodeSubLists = getSubChildsLevelOne(totalNodes, node); + + if (nodeSubLists.size() == 0) { + + } else { + for (T nodeSubList : nodeSubLists) { + buildChildNodes(totalNodes, nodeSubList, new ArrayList<>()); + } + } + + childNodeLists.addAll(nodeSubLists); + node.setChildrenNodes(childNodeLists); + } + + /** + * 获取子一级节点的集合 + * + * @param list 所有节点的集合 + * @param node 被查询节点的model + * @author fengshuonan + */ + private List getSubChildsLevelOne(List list, T node) { + List nodeList = new ArrayList<>(); + for (T nodeItem : list) { + if (nodeItem.getNodeParentId().equals(node.getNodeId())) { + nodeList.add(nodeItem); + } + } + return nodeList; + } + + @Override + protected List beforeBuild(List nodes) { + //默认不进行前置处理,直接返回 + return nodes; + } + + @Override + protected List executeBuilding(List nodes) { + for (T treeNode : nodes) { + this.buildChildNodes(nodes, treeNode, new ArrayList<>()); + } + return nodes; + } + + @Override + protected List afterBuild(List nodes) { + //去掉所有的二级节点 + ArrayList results = new ArrayList<>(); + for (T node : nodes) { + if (node.getNodeParentId().equals(rootParentId)) { + results.add(node); + } + } + return results; + } +} \ No newline at end of file diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java index e18cd4e..a1d636e 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java @@ -28,7 +28,7 @@ @WebService( serviceName = "MdmService", portName = "MdmWebServiceImplPort", targetNamespace = MdmConst.namespace, - wsdlLocation = "file:/D:/casic/cxf/wsdl.wsdl", +// wsdlLocation = "http://localhost:6909/safe-server/ws/mdmService?wsdl", endpointInterface = "com.casic.missiles.modular.client.huss.MdmService") public class MdmWebServiceImplPortImpl implements MdmService { @@ -56,7 +56,6 @@ */ public String getMq(String mqID) { LOG.info("Executing operation getMq"); - System.out.println(mqID); try { String xml = "" + "\t\n" + @@ -98,7 +97,10 @@ "\t1\n" + "\t\n" + "\t\n"; - String _return =xml; + + String data = "" + + "\t\n"+ "\t\n"; + String _return =data; return _return; } catch (java.lang.Exception ex) { ex.printStackTrace(); diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java index 224b143..3bef152 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.device.service.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.casic.missiles.core.application.service.AbstractDeptService; @@ -22,6 +23,7 @@ import com.fasterxml.jackson.dataformat.xml.XmlMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -33,12 +35,14 @@ public class SyncServiceImpl implements ISyncService { private final AbstractDeptService deptService; private final AbstractUserService userService; + private final JdbcTemplate jdbcTemplate; @Value("${casic.defaultDeptType:03}") private String defaultDept; - public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService) { + public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService, JdbcTemplate jdbcTemplate) { this.deptService = deptService; this.userService = userService; + this.jdbcTemplate = jdbcTemplate; } @Transactional @@ -58,7 +62,7 @@ } if ("2".equals(orgDTO.getSyncType())) { dept.setDelFlag("1"); - }else{ + } else { dept.setDelFlag("0"); } dept.setSyncPid(orgDTO.getInternalPOrgCode()); @@ -95,7 +99,6 @@ for (UumOperatorDTO mdmPerson : uumOperatorDisps) { String account = mdmPerson.getHID(); User user = null; - if (userMap.containsKey(mdmPerson.getHID())) { user = userMap.get(mdmPerson.getHID()); } else { @@ -130,7 +133,7 @@ if ("2".equals(mdmPerson.getSyncType())) { user.setDelFlag("1"); user.setStatus("3"); - }else{ + } else { user.setStatus("1"); user.setDelFlag("0"); } @@ -138,8 +141,11 @@ //用户数据修改 userService.saveOrUpdate(user); } + //TODO 更新组织数据 + jdbcTemplate.update("update sys_user a set dept_id = (select id from sys_dept b where b.SYNC_ID = a.SYNC_DEPTID ) where a.IS_SYS = 1"); log.info("sync user end....."); } + private static final XmlMapper xmlMapper = new XmlMapper(); @Override @@ -161,9 +167,13 @@ @Override public void saveBaseList(UumBaseList baseList) { //更新组织数据 - saveDeptList(baseList.getUumOrganizationDisp()); + if (CollectionUtil.isNotEmpty(baseList.getUumOrganizationDisp())) { + saveDeptList(baseList.getUumOrganizationDisp()); + } //更新用户数据 - saveUserList(baseList.getUumOperatorDisps()); + if (CollectionUtil.isNotEmpty(baseList.getUumOperatorDisps())) { + saveUserList(baseList.getUumOperatorDisps()); + } } /** diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java index 77ed3ed..b1fa819 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.task; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.client.huss.Exception_Exception; import com.casic.missiles.modular.client.huss.MdmService; @@ -36,7 +37,7 @@ @Resource private ISyncService syncService; - @Scheduled(cron = "0 */2 * * * *") + @Scheduled(cron = "${casic.mdm.corn:0 */2 * * * *}") public void sync() { String disid = null; MdmService port = null; @@ -44,18 +45,27 @@ MdmService_Service ss = new MdmService_Service(getWsdlURL(wsdl), getServiceName(MdmConst.namespace)); port = ss.getMdmWebServiceImplPort(); - log.info("Invoking getMq..."); - String xml = port.getMq(mqId); - log.info("getMq.result={}", xml); - UumBaseList uumBaseList = syncService.getUumBaseList(xml); - disid = uumBaseList.getDisid(); - syncService.saveBaseList(uumBaseList); + boolean isEnd = false; - log.info("data sync success"); - if (StrUtil.isNotEmpty(disid)) { - port.updateDistributeState(getSuccess(disid)); + //返回结果为空时则结束该任务 + while (!isEnd) { + log.info("Invoking getMq..."); + String xml = port.getMq(mqId); + log.info("getMq.result={}", xml); + UumBaseList uumBaseList = syncService.getUumBaseList(xml); + disid = uumBaseList.getDisid(); + log.info("data sync success"); + if(CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())&&CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())){ + isEnd = true; + }else{ + syncService.saveBaseList(uumBaseList); + } + if (StrUtil.isNotEmpty(disid)) { + port.updateDistributeState(getSuccess(disid)); + } } + } catch (Exception exception) { log.error(exception.getMessage(), exception); if (StrUtil.isNotEmpty(disid) && port != null) { diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java index 615211f..94ae947 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 相机树 @@ -57,6 +58,7 @@ @Override public void setChildrenNodes(List childrenNodes) { children.addAll(childrenNodes); + children = children.stream().distinct().collect(Collectors.toList()); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java index 848eaae..b87a553 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java @@ -7,7 +7,7 @@ import java.util.ArrayList; import java.util.List; -public class DeptDefaultTreeBuildFactory extends DefaultTreeBuildFactory { +public class DeptDefaultTreeBuildFactory extends StayDefaultTreeBuildFactory { private String rootId; @Override protected List afterBuild(List nodes) { diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java new file mode 100644 index 0000000..fbd0c37 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java @@ -0,0 +1,87 @@ +package com.casic.missiles.modular.device.tree; + +import com.casic.missiles.core.treebuild.abst.AbstractTreeBuildFactory; +import com.casic.missiles.model.tree.Tree; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +@Data +public class StayDefaultTreeBuildFactory extends AbstractTreeBuildFactory { + + /** + * 顶级节点的父节点id(默认-1) + */ + private String rootParentId = "-1"; + + /** + * 查询子节点的集合 + * + * @param totalNodes 所有节点的集合 + * @param node 被查询节点的id + * @param childNodeLists 被查询节点的子节点集合 + */ + private void buildChildNodes(List totalNodes, T node, List childNodeLists) { + if (totalNodes == null || node == null) { + return; + } + + List nodeSubLists = getSubChildsLevelOne(totalNodes, node); + + if (nodeSubLists.size() == 0) { + + } else { + for (T nodeSubList : nodeSubLists) { + buildChildNodes(totalNodes, nodeSubList, new ArrayList<>()); + } + } + + childNodeLists.addAll(nodeSubLists); + node.setChildrenNodes(childNodeLists); + } + + /** + * 获取子一级节点的集合 + * + * @param list 所有节点的集合 + * @param node 被查询节点的model + * @author fengshuonan + */ + private List getSubChildsLevelOne(List list, T node) { + List nodeList = new ArrayList<>(); + for (T nodeItem : list) { + if (nodeItem.getNodeParentId().equals(node.getNodeId())) { + nodeList.add(nodeItem); + } + } + return nodeList; + } + + @Override + protected List beforeBuild(List nodes) { + //默认不进行前置处理,直接返回 + return nodes; + } + + @Override + protected List executeBuilding(List nodes) { + for (T treeNode : nodes) { + this.buildChildNodes(nodes, treeNode, new ArrayList<>()); + } + return nodes; + } + + @Override + protected List afterBuild(List nodes) { + //去掉所有的二级节点 + ArrayList results = new ArrayList<>(); + for (T node : nodes) { + if (node.getNodeParentId().equals(rootParentId)) { + results.add(node); + } + } + return results; + } +} \ No newline at end of file diff --git a/casic-web/src/main/resources/config/application-test42.yml b/casic-web/src/main/resources/config/application-test42.yml new file mode 100644 index 0000000..e688bdf --- /dev/null +++ b/casic-web/src/main/resources/config/application-test42.yml @@ -0,0 +1,46 @@ +server: + port: 6909 +################### spring配置 ################### +spring: + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://192.168.83.42:3306/casic-production-safety?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true +# url: mysql + username: root + password: casic203 + druid: + max-active: 50 + min-idle: 20 + web: + resources: + static-locations: /opt/stay/data/tmp/ +jms: + pub-sub-domain: true +# session: +# store-type: redis +# redis: +# host: 111.198.10.15 +# port: 11412 +# password: ew5T4K3#203lwh +# serializer: org.springframework.data.redis.serializer.StringRedisSerializer +# redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer +casic: + #kaptcha-open: false #是否开启登录时验证码 (true/false) + no-login-urls: ${casic.sysUrl}/user/login,${casic.sysUrl}/user/appLogin,${casic.sysUrl}/kaptcha/base64,${casic.sysUrl}/config/baseConfig,/route/mockToken,/websocket/*,/webjars/**,/v2/api-docs,/v2/api-docs-ext,/doc.html,/v2/api-docs/swagger-ui.html,/swagger-resources,/ws/*,/gate/login + db: + init: + enable: false + hikSdk: /casic/hiklib/HCNetSDK.dll + hikPlay: /casic/hiklib/PlayCtrl.dll + file: + uploadPath: /opt/stay/data/tmp/ + stay: + picPath: /opt/stay/data/stay/ + log: #百万日志存储量 + total: 1000000 +logging: + level.root: info + level.com.casic: debug + level.com.casic.missiles.netty: error + level.com.casic.missiles.modular.neutron: error + level.org.springframework.web: info \ No newline at end of file diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java index 312d6ab..b2be068 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmService_Service.java @@ -27,7 +27,7 @@ static { URL url = null; try { - url = new URL("file:/D:/casic/cxf/wsdl.wsdl"); + url = new URL("http://localhost:6909/safe-server/ws/mdmService?wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(MdmService_Service.class.getName()) .log(java.util.logging.Level.INFO, diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java index e18cd4e..a1d636e 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/client/huss/MdmWebServiceImplPortImpl.java @@ -28,7 +28,7 @@ @WebService( serviceName = "MdmService", portName = "MdmWebServiceImplPort", targetNamespace = MdmConst.namespace, - wsdlLocation = "file:/D:/casic/cxf/wsdl.wsdl", +// wsdlLocation = "http://localhost:6909/safe-server/ws/mdmService?wsdl", endpointInterface = "com.casic.missiles.modular.client.huss.MdmService") public class MdmWebServiceImplPortImpl implements MdmService { @@ -56,7 +56,6 @@ */ public String getMq(String mqID) { LOG.info("Executing operation getMq"); - System.out.println(mqID); try { String xml = "" + "\t\n" + @@ -98,7 +97,10 @@ "\t1\n" + "\t\n" + "\t\n"; - String _return =xml; + + String data = "" + + "\t\n"+ "\t\n"; + String _return =data; return _return; } catch (java.lang.Exception ex) { ex.printStackTrace(); diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java index 224b143..3bef152 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/device/service/impl/SyncServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.device.service.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.casic.missiles.core.application.service.AbstractDeptService; @@ -22,6 +23,7 @@ import com.fasterxml.jackson.dataformat.xml.XmlMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; @@ -33,12 +35,14 @@ public class SyncServiceImpl implements ISyncService { private final AbstractDeptService deptService; private final AbstractUserService userService; + private final JdbcTemplate jdbcTemplate; @Value("${casic.defaultDeptType:03}") private String defaultDept; - public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService) { + public SyncServiceImpl(AbstractDeptService deptService, AbstractUserService userService, JdbcTemplate jdbcTemplate) { this.deptService = deptService; this.userService = userService; + this.jdbcTemplate = jdbcTemplate; } @Transactional @@ -58,7 +62,7 @@ } if ("2".equals(orgDTO.getSyncType())) { dept.setDelFlag("1"); - }else{ + } else { dept.setDelFlag("0"); } dept.setSyncPid(orgDTO.getInternalPOrgCode()); @@ -95,7 +99,6 @@ for (UumOperatorDTO mdmPerson : uumOperatorDisps) { String account = mdmPerson.getHID(); User user = null; - if (userMap.containsKey(mdmPerson.getHID())) { user = userMap.get(mdmPerson.getHID()); } else { @@ -130,7 +133,7 @@ if ("2".equals(mdmPerson.getSyncType())) { user.setDelFlag("1"); user.setStatus("3"); - }else{ + } else { user.setStatus("1"); user.setDelFlag("0"); } @@ -138,8 +141,11 @@ //用户数据修改 userService.saveOrUpdate(user); } + //TODO 更新组织数据 + jdbcTemplate.update("update sys_user a set dept_id = (select id from sys_dept b where b.SYNC_ID = a.SYNC_DEPTID ) where a.IS_SYS = 1"); log.info("sync user end....."); } + private static final XmlMapper xmlMapper = new XmlMapper(); @Override @@ -161,9 +167,13 @@ @Override public void saveBaseList(UumBaseList baseList) { //更新组织数据 - saveDeptList(baseList.getUumOrganizationDisp()); + if (CollectionUtil.isNotEmpty(baseList.getUumOrganizationDisp())) { + saveDeptList(baseList.getUumOrganizationDisp()); + } //更新用户数据 - saveUserList(baseList.getUumOperatorDisps()); + if (CollectionUtil.isNotEmpty(baseList.getUumOperatorDisps())) { + saveUserList(baseList.getUumOperatorDisps()); + } } /** diff --git a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java index 77ed3ed..b1fa819 100644 --- a/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java +++ b/casic-server-sync/src/main/java/com/casic/missiles/modular/task/MdmSyncTask.java @@ -1,5 +1,6 @@ package com.casic.missiles.modular.task; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.casic.missiles.modular.client.huss.Exception_Exception; import com.casic.missiles.modular.client.huss.MdmService; @@ -36,7 +37,7 @@ @Resource private ISyncService syncService; - @Scheduled(cron = "0 */2 * * * *") + @Scheduled(cron = "${casic.mdm.corn:0 */2 * * * *}") public void sync() { String disid = null; MdmService port = null; @@ -44,18 +45,27 @@ MdmService_Service ss = new MdmService_Service(getWsdlURL(wsdl), getServiceName(MdmConst.namespace)); port = ss.getMdmWebServiceImplPort(); - log.info("Invoking getMq..."); - String xml = port.getMq(mqId); - log.info("getMq.result={}", xml); - UumBaseList uumBaseList = syncService.getUumBaseList(xml); - disid = uumBaseList.getDisid(); - syncService.saveBaseList(uumBaseList); + boolean isEnd = false; - log.info("data sync success"); - if (StrUtil.isNotEmpty(disid)) { - port.updateDistributeState(getSuccess(disid)); + //返回结果为空时则结束该任务 + while (!isEnd) { + log.info("Invoking getMq..."); + String xml = port.getMq(mqId); + log.info("getMq.result={}", xml); + UumBaseList uumBaseList = syncService.getUumBaseList(xml); + disid = uumBaseList.getDisid(); + log.info("data sync success"); + if(CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())&&CollectionUtil.isEmpty(uumBaseList.getUumOperatorDisps())){ + isEnd = true; + }else{ + syncService.saveBaseList(uumBaseList); + } + if (StrUtil.isNotEmpty(disid)) { + port.updateDistributeState(getSuccess(disid)); + } } + } catch (Exception exception) { log.error(exception.getMessage(), exception); if (StrUtil.isNotEmpty(disid) && port != null) { diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java index 615211f..94ae947 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/dto/DeptDTO.java @@ -7,6 +7,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * 相机树 @@ -57,6 +58,7 @@ @Override public void setChildrenNodes(List childrenNodes) { children.addAll(childrenNodes); + children = children.stream().distinct().collect(Collectors.toList()); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java index 848eaae..b87a553 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/DeptDefaultTreeBuildFactory.java @@ -7,7 +7,7 @@ import java.util.ArrayList; import java.util.List; -public class DeptDefaultTreeBuildFactory extends DefaultTreeBuildFactory { +public class DeptDefaultTreeBuildFactory extends StayDefaultTreeBuildFactory { private String rootId; @Override protected List afterBuild(List nodes) { diff --git a/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java new file mode 100644 index 0000000..fbd0c37 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/device/tree/StayDefaultTreeBuildFactory.java @@ -0,0 +1,87 @@ +package com.casic.missiles.modular.device.tree; + +import com.casic.missiles.core.treebuild.abst.AbstractTreeBuildFactory; +import com.casic.missiles.model.tree.Tree; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +@Data +public class StayDefaultTreeBuildFactory extends AbstractTreeBuildFactory { + + /** + * 顶级节点的父节点id(默认-1) + */ + private String rootParentId = "-1"; + + /** + * 查询子节点的集合 + * + * @param totalNodes 所有节点的集合 + * @param node 被查询节点的id + * @param childNodeLists 被查询节点的子节点集合 + */ + private void buildChildNodes(List totalNodes, T node, List childNodeLists) { + if (totalNodes == null || node == null) { + return; + } + + List nodeSubLists = getSubChildsLevelOne(totalNodes, node); + + if (nodeSubLists.size() == 0) { + + } else { + for (T nodeSubList : nodeSubLists) { + buildChildNodes(totalNodes, nodeSubList, new ArrayList<>()); + } + } + + childNodeLists.addAll(nodeSubLists); + node.setChildrenNodes(childNodeLists); + } + + /** + * 获取子一级节点的集合 + * + * @param list 所有节点的集合 + * @param node 被查询节点的model + * @author fengshuonan + */ + private List getSubChildsLevelOne(List list, T node) { + List nodeList = new ArrayList<>(); + for (T nodeItem : list) { + if (nodeItem.getNodeParentId().equals(node.getNodeId())) { + nodeList.add(nodeItem); + } + } + return nodeList; + } + + @Override + protected List beforeBuild(List nodes) { + //默认不进行前置处理,直接返回 + return nodes; + } + + @Override + protected List executeBuilding(List nodes) { + for (T treeNode : nodes) { + this.buildChildNodes(nodes, treeNode, new ArrayList<>()); + } + return nodes; + } + + @Override + protected List afterBuild(List nodes) { + //去掉所有的二级节点 + ArrayList results = new ArrayList<>(); + for (T node : nodes) { + if (node.getNodeParentId().equals(rootParentId)) { + results.add(node); + } + } + return results; + } +} \ No newline at end of file diff --git a/casic-web/src/main/resources/config/application-test42.yml b/casic-web/src/main/resources/config/application-test42.yml new file mode 100644 index 0000000..e688bdf --- /dev/null +++ b/casic-web/src/main/resources/config/application-test42.yml @@ -0,0 +1,46 @@ +server: + port: 6909 +################### spring配置 ################### +spring: + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + url: jdbc:mysql://192.168.83.42:3306/casic-production-safety?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true +# url: mysql + username: root + password: casic203 + druid: + max-active: 50 + min-idle: 20 + web: + resources: + static-locations: /opt/stay/data/tmp/ +jms: + pub-sub-domain: true +# session: +# store-type: redis +# redis: +# host: 111.198.10.15 +# port: 11412 +# password: ew5T4K3#203lwh +# serializer: org.springframework.data.redis.serializer.StringRedisSerializer +# redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer +casic: + #kaptcha-open: false #是否开启登录时验证码 (true/false) + no-login-urls: ${casic.sysUrl}/user/login,${casic.sysUrl}/user/appLogin,${casic.sysUrl}/kaptcha/base64,${casic.sysUrl}/config/baseConfig,/route/mockToken,/websocket/*,/webjars/**,/v2/api-docs,/v2/api-docs-ext,/doc.html,/v2/api-docs/swagger-ui.html,/swagger-resources,/ws/*,/gate/login + db: + init: + enable: false + hikSdk: /casic/hiklib/HCNetSDK.dll + hikPlay: /casic/hiklib/PlayCtrl.dll + file: + uploadPath: /opt/stay/data/tmp/ + stay: + picPath: /opt/stay/data/stay/ + log: #百万日志存储量 + total: 1000000 +logging: + level.root: info + level.com.casic: debug + level.com.casic.missiles.netty: error + level.com.casic.missiles.modular.neutron: error + level.org.springframework.web: info \ No newline at end of file diff --git a/casic-web/src/main/resources/config/application.yml b/casic-web/src/main/resources/config/application.yml index 26faa63..45190f5 100644 --- a/casic-web/src/main/resources/config/application.yml +++ b/casic-web/src/main/resources/config/application.yml @@ -3,7 +3,7 @@ ########################################################## spring: profiles: - active: test + active: test42 servlet: multipart: max-file-size: 50MB @@ -44,8 +44,9 @@ uploadPath: C:\casic\tmp\ mdm: wsdl: http://localhost:6909/safe-server/ws/mdmService?wsdl - mqId: 123456 + mqId: 123456 #h后缀需添加 -UUM open: true + corn: 0 */2 * * * * video: admin: role: administrator #安全管理员角色标识 安全管理员可看未定密数据