From 9687fbcd19b2140fc0234077e5b6e17dd445ea80 Mon Sep 17 00:00:00 2001 From: zhangyanduan Date: Thu, 26 May 2022 19:12:51 +0800 Subject: [PATCH 01/14] =?UTF-8?q?fix;=20=E8=A1=A5=E5=85=85=E6=95=B0?= =?UTF-8?q?=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/sql/20220526_基础数据表添加数据.sql | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 doc/sql/20220526_基础数据表添加数据.sql diff --git a/doc/sql/20220526_基础数据表添加数据.sql b/doc/sql/20220526_基础数据表添加数据.sql new file mode 100644 index 00000000..fdafae38 --- /dev/null +++ b/doc/sql/20220526_基础数据表添加数据.sql @@ -0,0 +1,3 @@ +INSERT INTO `ts_dictype`(`ID`, `DIC_ID`, `DIC_TYPE_NAME`, `DIC_TYPE_CODE`, `DESCRIBES`, `SHOW_INDEX`, `PARENT_ID`, `TREE_PID`, `OTHERS`, `CREATION_USER`, `VALID_FLAG`, `CREATION_TIME`, `MODIFY_TIME`) VALUES ('q6h0m329utvyzjp2ci4m', 'DNDYWNSJKH4H8LYTV2CJ', '全国安全防范报警系统标准化技术委员会(SAC/TC 100)', '3jurxfza8n', '全国安全防范报警系统标准化技术委员会(SAC/TC 100)', 2, NULL, NULL, NULL, 'admin', '0', '2022-05-26 08:01:33', '2022-05-26 08:01:33'); +INSERT INTO `ts_dictype`(`ID`, `DIC_ID`, `DIC_TYPE_NAME`, `DIC_TYPE_CODE`, `DESCRIBES`, `SHOW_INDEX`, `PARENT_ID`, `TREE_PID`, `OTHERS`, `CREATION_USER`, `VALID_FLAG`, `CREATION_TIME`, `MODIFY_TIME`) VALUES ('vaqx4d6ggrg0tfoayqxs', 'DNDYWNSJKH4H8LYTV2CJ', '全国汽车标准化技术委员会挂车分技术委员会(SAC/TC 114/SC 13)', 'scloaolgv2', '全国汽车标准化技术委员会挂车分技术委员会(SAC/TC 114/SC 13)', 2, NULL, NULL, NULL, 'admin', '0', '2022-05-26 08:01:21', '2022-05-26 08:01:21'); +INSERT INTO `ts_dictype`(`ID`, `DIC_ID`, `DIC_TYPE_NAME`, `DIC_TYPE_CODE`, `DESCRIBES`, `SHOW_INDEX`, `PARENT_ID`, `TREE_PID`, `OTHERS`, `CREATION_USER`, `VALID_FLAG`, `CREATION_TIME`, `MODIFY_TIME`) VALUES ('cp9ln5c7q3l8zow2vc5s', 'DNDYWNSJKH4H8LYTV2CJ', '生态环境部', '2wtg9whgmd', '生态环境部', 2, NULL, NULL, NULL, 'admin', '0', '2022-05-26 07:57:30', '2022-05-26 07:57:30'); From 577c6c5a829f72f71f604a634f52f8631e0e44d1 Mon Sep 17 00:00:00 2001 From: zhangyanduan Date: Thu, 2 Jun 2022 14:08:09 +0800 Subject: [PATCH 02/14] =?UTF-8?q?fix:=20=E5=9F=BA=E7=A1=80=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=9B=B4=E6=96=B0=E5=A2=9E=E5=8A=A0=E4=BA=8B=E5=8A=A1?= =?UTF-8?q?=E6=8E=A7=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/scheduled/ScheduledSync.java | 2 +- .../DataSync/service/IDataSyncService.java | 4 +- .../service/impl/DataSyncServiceImpl.java | 244 +++++++++++------- 3 files changed, 148 insertions(+), 102 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java index 14248747..97f81da3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java +++ b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java @@ -27,7 +27,7 @@ public class ScheduledSync { @Scheduled(cron="0 0 2 * * ?") @Async - public void syncSchedulingTasks() throws Exception { + public void syncSchedulingTasks() { iDataSyncService.orgDataSync(); //时间短 iDataSyncService.dataSync(); //时间长 } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/IDataSyncService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/IDataSyncService.java index 555eb715..986f24ed 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/IDataSyncService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/IDataSyncService.java @@ -2,7 +2,7 @@ package com.adc.da.slrs.DataSync.service; public interface IDataSyncService { - public String dataSync() throws Exception; + public String dataSync(); - public String orgDataSync() throws Exception; + public String orgDataSync(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java index 74c1c951..b945c3da 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java @@ -1,5 +1,6 @@ package com.adc.da.slrs.DataSync.service.impl; +import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.DataSync.service.IDataSyncService; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; @@ -12,8 +13,13 @@ import com.adc.da.sys.entity.UserOrgEO; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; +import lombok.extern.log4j.Log4j; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; import java.sql.Timestamp; import java.util.*; @@ -29,77 +35,80 @@ public class DataSyncServiceImpl implements IDataSyncService { @Autowired ITsInstitutionService tsInstitutionService; + private static Logger logger = LoggerFactory.getLogger(DataSyncServiceImpl.class); + @Transactional(rollbackFor = {RuntimeException.class,Exception.class}) @Override - public String dataSync() throws Exception { - SyncUserService syncUserService = new SyncUserService(); - List res = syncUserService.syncFotonUser(); - //存放岗位信息 - Map positionMap = new HashMap<>(); - Map useDistinct = new HashMap<>(); - TsPosition position = new TsPosition(); - position.setCurrent(1); - position.setPageSize(100000); - IPage iPage = tsPositionService.getPosition(position); - List positions=iPage.getRecords(); - if (!positions.isEmpty()) { - positions.forEach(tsPosition -> { - positionMap.put(tsPosition.getName(), tsPosition.getId()); - }); - } + public String dataSync(){ + try{ + SyncUserService syncUserService = new SyncUserService(); + List res = syncUserService.syncFotonUser(); + //存放岗位信息 + Map positionMap = new HashMap<>(); + Map useDistinct = new HashMap<>(); + TsPosition position = new TsPosition(); + position.setCurrent(1); + position.setPageSize(100000); + IPage iPage = tsPositionService.getPosition(position); + List positions=iPage.getRecords(); + if (!positions.isEmpty()) { + positions.forEach(tsPosition -> { + positionMap.put(tsPosition.getName(), tsPosition.getId()); + }); + } - /** - * 得到数据时,删除系统表中所有用户信息 - */ - if (res.size()>0){ - tsUserService.deleteUser(); - } - for (String s : res) { - //获取到所有用户数据 - List tsUsers = new ArrayList<>(); + /** + * 得到数据时,删除系统表中所有用户信息 + */ + if (res.size()>0){ + tsUserService.deleteUser(); + } + for (String s : res) { + //获取到所有用户数据 + List tsUsers = new ArrayList<>(); - JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results")); - jsonArray.forEach(object -> { - JSONObject jsonObject = JSONObject.parseObject(object.toString()); - //先获取岗位以及岗位id - TsUser tsUser = new TsUser(); - UserOrgEO userOrgEO = new UserOrgEO(); - //设置岗位 - if (null != jsonObject.getString("title")) { - //通过岗位名称查询系统表中是否有岗位,有则设定用户的岗位为系统中的岗位,否则新增 - if (null == positionMap.get(jsonObject.getString("title"))) { - TsPosition tsPosition = new TsPosition(); - tsPosition.setId(String.valueOf(UUID.randomUUID())); - tsPosition.setName(jsonObject.getString("title")); - tsPositionService.addPosition(tsPosition); - //放入岗位的map集合中 - positionMap.put(tsPosition.getName(), tsPosition.getId()); - //放入类中 - tsUser.setPositionName(tsPosition.getName()); - tsUser.setPositionId(tsPosition.getId()); - } else { - tsUser.setPositionName(jsonObject.getString("title").trim()); - tsUser.setPositionId(positionMap.get(jsonObject.getString("title").trim())); + JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results")); + jsonArray.forEach(object -> { + JSONObject jsonObject = JSONObject.parseObject(object.toString()); + //先获取岗位以及岗位id + TsUser tsUser = new TsUser(); + UserOrgEO userOrgEO = new UserOrgEO(); + //设置岗位 + if (null != jsonObject.getString("title")) { + //通过岗位名称查询系统表中是否有岗位,有则设定用户的岗位为系统中的岗位,否则新增 + if (null == positionMap.get(jsonObject.getString("title"))) { + TsPosition tsPosition = new TsPosition(); + tsPosition.setId(String.valueOf(UUID.randomUUID())); + tsPosition.setName(jsonObject.getString("title")); + tsPositionService.addPosition(tsPosition); + //放入岗位的map集合中 + positionMap.put(tsPosition.getName(), tsPosition.getId()); + //放入类中 + tsUser.setPositionName(tsPosition.getName()); + tsUser.setPositionId(tsPosition.getId()); + } else { + tsUser.setPositionName(jsonObject.getString("title").trim()); + tsUser.setPositionId(positionMap.get(jsonObject.getString("title").trim())); + } } - } - //设置其他数据 - Timestamp createTime = new Timestamp(new Date().getTime()); - tsUser.setState(jsonObject.getString("userStatus")); - tsUser.setUname(null!=jsonObject.getString("name")?jsonObject.getString("name"):""); - tsUser.setValidFlag("0"); - tsUser.setDisableFlag("0"); - tsUser.setCreationTime(createTime); - tsUser.setUserId(jsonObject.getString("userid")); - tsUser.setAccount(jsonObject.getString("userid")); - tsUser.setInstitutionId(null!=jsonObject.getString("orgNumber")?jsonObject.getString("orgNumber"):"" ); - tsUser.setInstitutionName(null!=jsonObject.getString("orgName")?jsonObject.getString("orgName"):"" ); - //2022-05-23:用户同步增加状态标识,将停用的用户过滤掉 - if (null == useDistinct.get(jsonObject.getString("userid")) && "1".equals(jsonObject.getString("userStatus"))) { - tsUsers.add(tsUser); + //设置其他数据 + Timestamp createTime = new Timestamp(new Date().getTime()); + tsUser.setState(jsonObject.getString("userStatus")); + tsUser.setUname(null!=jsonObject.getString("name")?jsonObject.getString("name"):""); + tsUser.setValidFlag("0"); + tsUser.setDisableFlag("0"); + tsUser.setCreationTime(createTime); + tsUser.setUserId(jsonObject.getString("userid")); + tsUser.setAccount(jsonObject.getString("userid")); + tsUser.setInstitutionId(null!=jsonObject.getString("orgNumber")?jsonObject.getString("orgNumber"):"" ); + tsUser.setInstitutionName(null!=jsonObject.getString("orgName")?jsonObject.getString("orgName"):"" ); + //2022-05-23:用户同步增加状态标识,将停用的用户过滤掉 + if (null == useDistinct.get(jsonObject.getString("userid")) && "1".equals(jsonObject.getString("userStatus"))) { + tsUsers.add(tsUser); - } + } // //测试数据删除 // if (! "anbin".equals(jsonObject.getString("userid"))){ @@ -113,12 +122,12 @@ public class DataSyncServiceImpl implements IDataSyncService { // // } // } - useDistinct.put(tsUser.getUserId(),tsUser.getUserId()); - }); - tsUserService.saveBatch(tsUsers); - } + useDistinct.put(tsUser.getUserId(),tsUser.getUserId()); + }); + tsUserService.saveBatch(tsUsers); + } - //测试数据添加 + //测试数据添加 // TsUser addUser = new TsUser(); // addUser.setState("FFFFFFF"); // addUser.setUname("zhaokaiyao"); @@ -132,42 +141,79 @@ public class DataSyncServiceImpl implements IDataSyncService { // // List addUserList = Arrays.asList(addUser); // tsUserService.saveBatch(addUserList); + + }catch(Exception e){ + logger.error(e.getMessage(),e); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } return "1"; + } - - public String orgDataSync() throws Exception { - SyncUserService syncUserService = new SyncUserService(); - List res = syncUserService.syncFotonOrg(); - - //获取到所有用户数据 - List strings=new ArrayList<>(); - - tsInstitutionService.clearData(); - for (String s : res) { - JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results")); - jsonArray.forEach(object -> { - JSONObject jsonObject = JSONObject.parseObject(object.toString()); - strings.add(jsonObject.getString("parentOrgNumber")); - }); - } - for (String s : res) { - List tsInstitutions = new ArrayList<>(); - JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results")); - jsonArray.forEach(object -> { - JSONObject jsonObject = JSONObject.parseObject(object.toString()); - TsInstitution tsInstitution=new TsInstitution(); - tsInstitution.setId(jsonObject.getString("orgNumber")); - tsInstitution.setName(jsonObject.getString("orgName")); - tsInstitution.setHasChild(strings.contains(jsonObject.getString("orgNumber"))?"1":"0"); - tsInstitution.setParentId(jsonObject.getString("parentOrgNumber")); - //部门为"null"的数据不保存 - if (!"null".equals(jsonObject.getString("orgName"))){ - tsInstitutions.add(tsInstitution); + @Transactional(rollbackFor = {RuntimeException.class,Exception.class}) + public String orgDataSync(){ + try{ + SyncUserService syncUserService = new SyncUserService(); + List res = syncUserService.syncFotonOrg(); + //获取到所有用户数据 + List strings=new ArrayList<>(); + //tsInstitutionService.clearData(); + for (String s : res) { + JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results")); + jsonArray.forEach(object -> { + JSONObject jsonObject = JSONObject.parseObject(object.toString()); + strings.add(jsonObject.getString("parentOrgNumber")); + }); + } + List allTsInstitutionList = tsInstitutionService.list(); + for (String s : res) { + List addTsInstitutionList = new ArrayList<>(); + List updateTsInstitutionList = new ArrayList<>(); + List delTsInstitutionList = new ArrayList<>(); + Set syncAllIdList = new HashSet<>(); + JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results")); + jsonArray.forEach(object -> { + JSONObject jsonObject = JSONObject.parseObject(object.toString()); + TsInstitution tsInstitution=new TsInstitution(); + tsInstitution.setId(jsonObject.getString("orgNumber")); + tsInstitution.setName(jsonObject.getString("orgName")); + tsInstitution.setHasChild(strings.contains(jsonObject.getString("orgNumber"))?"1":"0"); + tsInstitution.setParentId(jsonObject.getString("parentOrgNumber")); + //部门为"null"的数据不保存 + if (!"null".equals(jsonObject.getString("orgName"))){ + TsInstitution institution = tsInstitutionService.getById(tsInstitution.getId()); + if(institution!=null){ + updateTsInstitutionList.add(tsInstitution); + }else{ + addTsInstitutionList.add(tsInstitution); + } + syncAllIdList.add(tsInstitution.getId()); + } + }); + //遍历出来需要删除的数据 + for(TsInstitution data :allTsInstitutionList){ + if(!syncAllIdList.contains(data.getId())){ + delTsInstitutionList.add(data); + } } - }); - tsInstitutionService.saveBatch(tsInstitutions); + //需要新增的数据 + if(!addTsInstitutionList.isEmpty()){ + tsInstitutionService.saveBatch(addTsInstitutionList); + } + //需要更新的数据 + if(!updateTsInstitutionList.isEmpty()){ + tsInstitutionService.updateBatchById(updateTsInstitutionList); + } + //需要删除的数据 + if(!delTsInstitutionList.isEmpty()){ + tsInstitutionService.updateBatchById(delTsInstitutionList); + } + + } + }catch(Exception e){ + logger.error(e.getMessage(),e); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); } return "1"; } From 692907904dd907b55d9125b886d4d0401f6b32dd Mon Sep 17 00:00:00 2001 From: zhangyanduan Date: Thu, 2 Jun 2022 14:10:01 +0800 Subject: [PATCH 03/14] =?UTF-8?q?mybatisPlus=20=E5=A2=9E=E5=8A=A0=E4=B9=90?= =?UTF-8?q?=E8=A7=82=E9=94=81=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/main/config/MybatisPlusConfig.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/adc-da-main/src/main/java/com/adc/da/main/config/MybatisPlusConfig.java b/adc-da-main/src/main/java/com/adc/da/main/config/MybatisPlusConfig.java index 0ca71a89..58a5bb65 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/config/MybatisPlusConfig.java +++ b/adc-da-main/src/main/java/com/adc/da/main/config/MybatisPlusConfig.java @@ -1,5 +1,6 @@ package com.adc.da.main.config; +import com.baomidou.mybatisplus.extension.plugins.OptimisticLockerInterceptor; import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.Bean; @@ -19,4 +20,14 @@ public class MybatisPlusConfig { return new PaginationInterceptor(); } + /*** + * 增加乐观锁机制 + * @return + */ + @Bean + public OptimisticLockerInterceptor optimisticLockerInterceptor(){ + return new OptimisticLockerInterceptor(); + } + + } From d7da01a447a3d01677c21ff4137968b7aabaf6b5 Mon Sep 17 00:00:00 2001 From: zhangyanduan Date: Thu, 2 Jun 2022 14:53:11 +0800 Subject: [PATCH 04/14] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8DBUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DataSyncServiceImpl.java | 77 ++++++++++--------- .../SarMenuStandardNewServiceNewImpl.java | 2 +- .../service/impl/TsResourceServiceImpl.java | 2 +- 3 files changed, 41 insertions(+), 40 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java index b945c3da..1ad2f235 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java @@ -167,49 +167,50 @@ public class DataSyncServiceImpl implements IDataSyncService { }); } List allTsInstitutionList = tsInstitutionService.list(); + List addTsInstitutionList = new ArrayList<>(); + List updateTsInstitutionList = new ArrayList<>(); + List delTsInstitutionList = new ArrayList<>(); + Set syncAllIdList = new HashSet<>(); for (String s : res) { - List addTsInstitutionList = new ArrayList<>(); - List updateTsInstitutionList = new ArrayList<>(); - List delTsInstitutionList = new ArrayList<>(); - Set syncAllIdList = new HashSet<>(); JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results")); - jsonArray.forEach(object -> { - JSONObject jsonObject = JSONObject.parseObject(object.toString()); - TsInstitution tsInstitution=new TsInstitution(); - tsInstitution.setId(jsonObject.getString("orgNumber")); - tsInstitution.setName(jsonObject.getString("orgName")); - tsInstitution.setHasChild(strings.contains(jsonObject.getString("orgNumber"))?"1":"0"); - tsInstitution.setParentId(jsonObject.getString("parentOrgNumber")); - //部门为"null"的数据不保存 - if (!"null".equals(jsonObject.getString("orgName"))){ - TsInstitution institution = tsInstitutionService.getById(tsInstitution.getId()); - if(institution!=null){ - updateTsInstitutionList.add(tsInstitution); - }else{ - addTsInstitutionList.add(tsInstitution); + if(jsonArray!=null){ + jsonArray.forEach(object -> { + JSONObject jsonObject = JSONObject.parseObject(object.toString()); + TsInstitution tsInstitution=new TsInstitution(); + tsInstitution.setId(jsonObject.getString("orgNumber")); + tsInstitution.setName(jsonObject.getString("orgName")); + tsInstitution.setHasChild(strings.contains(jsonObject.getString("orgNumber"))?"1":"0"); + tsInstitution.setParentId(jsonObject.getString("parentOrgNumber")); + //部门为"null"的数据不保存 + if (!"null".equals(jsonObject.getString("orgName"))){ + TsInstitution institution = tsInstitutionService.getById(tsInstitution.getId()); + if(institution!=null){ + updateTsInstitutionList.add(tsInstitution); + }else{ + addTsInstitutionList.add(tsInstitution); + } + syncAllIdList.add(tsInstitution.getId()); } - syncAllIdList.add(tsInstitution.getId()); - } - }); - //遍历出来需要删除的数据 - for(TsInstitution data :allTsInstitutionList){ - if(!syncAllIdList.contains(data.getId())){ - delTsInstitutionList.add(data); - } + }); } - //需要新增的数据 - if(!addTsInstitutionList.isEmpty()){ - tsInstitutionService.saveBatch(addTsInstitutionList); + } + //遍历出来需要删除的数据 + for(TsInstitution data :allTsInstitutionList){ + if(!syncAllIdList.contains(data.getId())){ + delTsInstitutionList.add(data); } - //需要更新的数据 - if(!updateTsInstitutionList.isEmpty()){ - tsInstitutionService.updateBatchById(updateTsInstitutionList); - } - //需要删除的数据 - if(!delTsInstitutionList.isEmpty()){ - tsInstitutionService.updateBatchById(delTsInstitutionList); - } - + } + //需要新增的数据 + if(!addTsInstitutionList.isEmpty()){ + tsInstitutionService.saveBatch(addTsInstitutionList); + } + //需要更新的数据 + if(!updateTsInstitutionList.isEmpty()){ + tsInstitutionService.updateBatchById(updateTsInstitutionList); + } + //需要删除的数据 + if(!delTsInstitutionList.isEmpty()){ + tsInstitutionService.updateBatchById(delTsInstitutionList); } }catch(Exception e){ logger.error(e.getMessage(),e); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenuStandard/service/impl/SarMenuStandardNewServiceNewImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenuStandard/service/impl/SarMenuStandardNewServiceNewImpl.java index d287cb43..175233dd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenuStandard/service/impl/SarMenuStandardNewServiceNewImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarMenuStandard/service/impl/SarMenuStandardNewServiceNewImpl.java @@ -47,7 +47,7 @@ public class SarMenuStandardNewServiceNewImpl extends ServiceImpl Date: Tue, 7 Jun 2022 17:22:27 +0800 Subject: [PATCH 05/14] =?UTF-8?q?insert:=E6=B7=BB=E5=8A=A0=E6=A0=87?= =?UTF-8?q?=E5=87=86=E9=97=AE=E7=AD=94=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/adc/da/common/ConvertMqEO.java | 9 + .../controller/AskQuestionsController.java | 211 +++++++++++++++++ .../controller/AskUserController.java | 37 +++ .../controller/ReplyController.java | 61 +++++ .../controller/SubscriptionController.java | 44 ++++ .../slrs/StandardQA/dao/AskQuestionsDao.java | 40 ++++ .../da/slrs/StandardQA/dao/AskUserDao.java | 15 ++ .../adc/da/slrs/StandardQA/dao/ReplyDao.java | 15 ++ .../slrs/StandardQA/dao/SubscriptionDao.java | 15 ++ .../slrs/StandardQA/entity/AskQuestions.java | 104 +++++++++ .../da/slrs/StandardQA/entity/AskUser.java | 32 +++ .../adc/da/slrs/StandardQA/entity/Reply.java | 71 ++++++ .../slrs/StandardQA/entity/Subscription.java | 31 +++ .../service/AskQuestionsService.java | 31 +++ .../StandardQA/service/AskUserService.java | 13 ++ .../service/Impl/AskQuestionsServiceImpl.java | 79 +++++++ .../service/Impl/AskUserServiceImpl.java | 22 ++ .../service/Impl/ReplyServiceImpl.java | 19 ++ .../service/Impl/SubscriptionServiceImpl.java | 20 ++ .../slrs/StandardQA/service/ReplyService.java | 13 ++ .../service/SubscriptionService.java | 13 ++ .../askQuestions/AskQuestionsMapper.xml | 219 ++++++++++++++++++ 22 files changed, 1114 insertions(+) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskUserController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/SubscriptionController.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskQuestionsDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskUserDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/ReplyDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/SubscriptionDao.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestions.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskUser.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Reply.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Subscription.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskUserService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/AskQuestionsServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/AskUserServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/ReplyServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/SubscriptionServiceImpl.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/ReplyService.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/SubscriptionService.java create mode 100644 adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml diff --git a/adc-da-slrs/src/main/java/com/adc/da/common/ConvertMqEO.java b/adc-da-slrs/src/main/java/com/adc/da/common/ConvertMqEO.java index d502d72f..65db4f60 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/common/ConvertMqEO.java +++ b/adc-da-slrs/src/main/java/com/adc/da/common/ConvertMqEO.java @@ -26,6 +26,7 @@ public class ConvertMqEO extends BaseEntity { private String mqCode; private String id; private String addOrUp; + private String name; //向文件表添加信息 private String lawsId; @@ -220,4 +221,12 @@ public class ConvertMqEO extends BaseEntity { public void setLawsFileClassify(String lawsFileClassify) { this.lawsFileClassify = lawsFileClassify; } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java new file mode 100644 index 00000000..6bef0f92 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java @@ -0,0 +1,211 @@ +package com.adc.da.slrs.StandardQA.controller; + +import com.adc.da.base.web.BaseController; +import com.adc.da.slrs.NewsFeed.entity.NewsFeed; +import com.adc.da.slrs.StandardQA.dao.AskQuestionsDao; +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.AskUser; +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.slrs.StandardQA.entity.Subscription; +import com.adc.da.slrs.StandardQA.service.Impl.AskQuestionsServiceImpl; +import com.adc.da.slrs.StandardQA.service.Impl.AskUserServiceImpl; +import com.adc.da.util.UUIDUtils; +import com.adc.da.util.http.ResponseMessage; +import com.adc.da.util.http.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 9:18 + * @Version 1.0 + */ +@RestController +@RequestMapping("/${restPath}/lawss/AskQuestions") +@Api(description = "|AskQuestions|") +public class AskQuestionsController extends BaseController { + + @Autowired + private AskQuestionsServiceImpl askQuestionsService; + @Autowired + private AskQuestionsDao askQuestionsDao; + @Autowired + private AskUserServiceImpl askUserService; + + /** + * 查询问题列表 + * @return + */ + @GetMapping("/getAskQuestions") + public ResponseMessage getAskQuestions(){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.orderByDesc("QUESTION_TIME"); + List askQuestionsList=askQuestionsService.list(queryWrapper); + return Result.success(askQuestionsList); + } + + /** + * 查看我的问题详情 + * @param askQuestions + * @return + */ + @GetMapping("/getAskQuestionsDetails") + public ResponseMessage getAskQuestionsDetails(AskQuestions askQuestions){ + List askQuestionsList = askQuestionsService.getAskQuestions(askQuestions); + return Result.success(askQuestionsList); + } + + /** + * 查看我回答的问题 + * @param askQuestions + * @return + */ + @GetMapping("/getReplyDetails") + public ResponseMessage getReplyDetails(AskQuestions askQuestions){ + List askQuestionsList = askQuestionsService.getReplyDetails(askQuestions); + return Result.success(askQuestionsList); + } + + /** + * 根据标准查询问题 + * @param askQuestions + * @return + */ + @GetMapping("/getReplyDetailsByStandId") + public ResponseMessage getReplyDetailsByStandId(AskQuestions askQuestions){ + List askQuestionsList = askQuestionsService.getReplyDetailsByStandId(askQuestions); + return Result.success(askQuestionsList); + } + + /** + * 根据标准编号查询我的回答 + * @param standardId + * @return + */ + @GetMapping("/getAskQuestionsByStandardId") + public ResponseMessage getAskQuestionsByStandardId(String standardId){ + List askQuestionsList = askQuestionsService.getAskQuestionsByStandardId(standardId); + return Result.success(askQuestionsList); + } + + /** + * 根据问题ID查询回答*** + * @param id + * @return + */ + @GetMapping("/getAskQuestionsByakId") + public ResponseMessage getAskQuestionsByakId(String id){ + List askQuestionsList = askQuestionsService.getAskQuestionsByakId(id); + return Result.success(askQuestionsList); + } + + /** + * 添加问题 + * @param askQuestions + * @return + */ + @PostMapping("/insertAskQuestions") + public ResponseMessage insertAskQuestions(@RequestBody AskQuestions askQuestions){ + askQuestions.setId(UUIDUtils.randomUUID20()); + askQuestions.setAppendixId(askQuestions.getFileList().get(0).getAttId()); + askQuestions.setAppendixName(askQuestions.getFileList().get(0).getName()); + askQuestions.setQuestionTime(new Date()); + List uId = askQuestionsDao.getUId(); + List askUserList = new ArrayList<>(); + for (String id:uId) { + AskUser askUser = new AskUser(); + askUser.setAsdId(askQuestions.getId()); + askUser.setUsid(id); + askUserList.add(askUser); + } + //添加问题分配人员 + askUserService.saveBatch(askUserList); + if(askQuestionsService.save(askQuestions)){ + return Result.success("200","添加成功"); + }else { + return Result.error("-1","添加失败"); + } + } + + + /** + * 查询订阅问题 + * @param askQuestions + * @return + */ + @GetMapping("/getAskQuestionsBySubscription") + public ResponseMessage getAskQuestionsBySubscription(AskQuestions askQuestions){ + List askQuestionsList = askQuestionsService.getAskQuestionsBySubscription(askQuestions); + return Result.success(askQuestionsList); + } + + + + /** + * 根据标准id查询订阅 + * @param askQuestions + * @return + */ + @GetMapping("/getSubscriptionByStandId") + public ResponseMessage getSubscriptionByStandId(AskQuestions askQuestions){ + List askQuestionsList = askQuestionsService.getSubscriptionByStandId(askQuestions); + return Result.success(askQuestionsList); + } + + /** + * 相似查询 + * @param problemDescription + * @return + */ + @GetMapping("/resemblance") + public ResponseMessage resemblance(String problemDescription){ + List askQuestions = Arrays.asList(problemDescription.split("")); + List askQuestionsList = askQuestionsService.resemblance(askQuestions); + return Result.success(askQuestionsList); + } + + /** + * 根据分类查询问题 + * @param classification + * @return + */ + @GetMapping("/getAskQuestionsReply") + public ResponseMessage getAskQuestionsReply(String classification){ + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.select("DISTINCT STANDARD_ID"); + queryWrapper.select("STANDARD_NAME"); + queryWrapper.select("STANDARD_ENCDOING"); + queryWrapper.eq("CLASSIFICATION",classification); + List askQuestionsList = askQuestionsService.list(queryWrapper); + return Result.success(askQuestionsList); + } + + /** + * 问答库的根据标准ID查询问题 + * @param id + * @return + */ + @GetMapping("/getSubscription") + public ResponseMessage getArchiveAskQuestions(String id){ + List askQuestionsList = askQuestionsService.getArchiveAskQuestions(id); + return Result.success(askQuestionsList); + } + + @GetMapping("/retrieve") + public ResponseMessage retrieve(AskQuestions askQuestions){ + List askQuestionsList = askQuestionsService.retrieve(askQuestions); + return Result.success(askQuestionsList); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskUserController.java new file mode 100644 index 00000000..05452cf4 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskUserController.java @@ -0,0 +1,37 @@ +package com.adc.da.slrs.StandardQA.controller; + +import com.adc.da.base.web.BaseController; +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.AskUser; +import com.adc.da.slrs.StandardQA.service.Impl.AskQuestionsServiceImpl; +import com.adc.da.slrs.StandardQA.service.Impl.AskUserServiceImpl; +import com.adc.da.util.http.ResponseMessage; +import com.adc.da.util.http.Result; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Author: qk + * @Date: 2022/6/2 0002 8:44 + * @Version 1.0 + */ +@RestController +@RequestMapping("/${restPath}/lawss/AskUser") +@Api(description = "|AskUser|") +public class AskUserController extends BaseController { + @Autowired + private AskUserServiceImpl askUserService; + @PostMapping("/insertAskUser") + public ResponseMessage insertAskUser(@RequestBody AskUser askUser){ + if(askUserService.save(askUser)){ + return Result.success("200","邀请成功"); + }else { + return Result.error("-1","添加失败"); + } + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java new file mode 100644 index 00000000..890b2373 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java @@ -0,0 +1,61 @@ +package com.adc.da.slrs.StandardQA.controller; + +import com.adc.da.base.web.BaseController; +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.slrs.StandardQA.service.Impl.ReplyServiceImpl; +import com.adc.da.util.UUIDUtils; +import com.adc.da.util.http.ResponseMessage; +import com.adc.da.util.http.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 10:55 + * @Version 1.0 + */ +@RestController +@RequestMapping("/${restPath}/lawss/Reply") +@Api(description = "| Reply|") +public class ReplyController extends BaseController { + + @Autowired + private ReplyServiceImpl replyService; + + @PostMapping("/insertReply") + public ResponseMessage insertReply(@RequestBody Reply reply){ + reply.setAppendixId(reply.getFileList().get(0).getAttId()); + reply.setAppendixName(reply.getFileList().get(0).getName()); + reply.setReplyTime(new Date()); + reply.setId(UUIDUtils.randomUUID20()); + if(replyService.save(reply)){ + return Result.success("200","添加成功"); + }else { + return Result.error("200","添加失败"); + } + } + @PostMapping("/updateReply") + public ResponseMessage updateReply(String id){ + List list = Arrays.asList(id.split(",")); + for (String s: list) { + UpdateWrapper updateWrapper = new UpdateWrapper(); + updateWrapper.set("STATE","yes"); + updateWrapper.eq("ID",s); + replyService.update(updateWrapper); + } + return Result.success("200","归档成功"); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/SubscriptionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/SubscriptionController.java new file mode 100644 index 00000000..20582c59 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/SubscriptionController.java @@ -0,0 +1,44 @@ +package com.adc.da.slrs.StandardQA.controller; + + +import com.adc.da.base.web.BaseController; +import com.adc.da.slrs.StandardQA.entity.Subscription; +import com.adc.da.slrs.StandardQA.service.Impl.SubscriptionServiceImpl; +import com.adc.da.util.http.ResponseMessage; +import com.adc.da.util.http.Result; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Author: qk + * @Date: 2022/6/7 0007 11:18 + * @Version 1.0 + */ +@RestController +@RequestMapping("/${restPath}/lawss/Subscription") +@Api(description = "|Subscription|") +public class SubscriptionController extends BaseController { + @Autowired + private SubscriptionServiceImpl subscriptionService; + + @PostMapping("/insertSubscription") + public ResponseMessage updateReply(@RequestBody Subscription subscription){ + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.eq("ASK_ID",subscription.getAskId()); + queryWrapper.eq("USID",subscription.getUsId()); + int number = subscriptionService.count(queryWrapper); + if(number>0){ + return Result.success("200","此问题已订阅"); + } + if(subscriptionService.save(subscription)){ + return Result.success("200","订阅成功"); + }else { + return Result.success("-1","订阅失败"); + } + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskQuestionsDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskQuestionsDao.java new file mode 100644 index 00000000..d0c0d413 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskQuestionsDao.java @@ -0,0 +1,40 @@ +package com.adc.da.slrs.StandardQA.dao; + +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Repository; + +import java.util.List; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 9:26 + * @Version 1.0 + */ +@Repository +public interface AskQuestionsDao extends BaseMapper { + + List getAskQuestions (@Param("askQuestions") AskQuestions askQuestions); + + List getReplyDetails (@Param("askQuestions") AskQuestions askQuestions); + + List getReplyDetailsByStandId (@Param("askQuestions") AskQuestions askQuestions); + + List getAskQuestionsBySubscription (@Param("askQuestions") AskQuestions askQuestions); + + List retrieve (@Param("askQuestions") AskQuestions askQuestions); + + List getSubscriptionByStandId (@Param("askQuestions") AskQuestions askQuestions); + + List resemblance (@Param("chars") List askQuestions); + + List getAskQuestionsByStandardId (String standardId); + + List getArchiveAskQuestions (String id); + + List getAskQuestionsByakId (String id); + + List getUId(); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskUserDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskUserDao.java new file mode 100644 index 00000000..69c6040a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskUserDao.java @@ -0,0 +1,15 @@ +package com.adc.da.slrs.StandardQA.dao; + +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.AskUser; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +/** + * @Author: qk + * @Date: 2022/6/2 0002 8:47 + * @Version 1.0 + */ +@Repository +public interface AskUserDao extends BaseMapper { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/ReplyDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/ReplyDao.java new file mode 100644 index 00000000..1456168d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/ReplyDao.java @@ -0,0 +1,15 @@ +package com.adc.da.slrs.StandardQA.dao; + +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 11:02 + * @Version 1.0 + */ +@Repository +public interface ReplyDao extends BaseMapper { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/SubscriptionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/SubscriptionDao.java new file mode 100644 index 00000000..4d4cef1d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/SubscriptionDao.java @@ -0,0 +1,15 @@ +package com.adc.da.slrs.StandardQA.dao; + +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.slrs.StandardQA.entity.Subscription; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +/** + * @Author: qk + * @Date: 2022/6/7 0007 11:19 + * @Version 1.0 + */ +@Repository +public interface SubscriptionDao extends BaseMapper { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestions.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestions.java new file mode 100644 index 00000000..84cf8afc --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestions.java @@ -0,0 +1,104 @@ +package com.adc.da.slrs.StandardQA.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.adc.da.common.ConvertMqEO; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; +import java.util.List; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 9:19 + * @Version 1.0 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="AskQuestions对象", description="") +public class AskQuestions extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @TableId + @ApiModelProperty(value = "主键") + private String id; + + @TableField("CLASSIFICATION") + @ApiModelProperty(value = "分类") + private String classification; + + @TableField("PROBLEM_DESCRIPTION") + @ApiModelProperty(value = "问题描述") + private String problemDescription; + + @TableField("QUESTIONER") + @ApiModelProperty(value = "提问人") + private String questioner; + + @TableField("QUESTION_TIME") + @ApiModelProperty(value = "提问时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date questionTime; + + @TableField("STANDARD_ENCDOING") + @ApiModelProperty(value = "标准编号") + private String standardEncdoing; + + @TableField("STANDARD_NAME") + @ApiModelProperty(value = "标准名称") + private String standardName; + + @TableField("STANDARD_ID") + @ApiModelProperty(value = "标准ID") + private String standardId; + + @TableField("APPENDIX_ID") + @ApiModelProperty(value = "标准ID") + private String appendixId; + + @TableField("APPENDIX_NAME") + @ApiModelProperty(value = "标准ID") + private String appendixName; + + /** + * 回答人 + */ + @TableField(exist = false) + private String answerer; + /** + * 回答 + */ + @TableField(exist = false) + private String reply; + /** + * 回答时间 + */ + @TableField(exist = false) + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date replyTime; + + /** + *附件路径 + */ + @TableField(exist = false) + private String appendix; + + @TableField(exist = false) + private List fileList; + + @TableField(exist = false) + private String type; + + @TableField(exist = false) + private String subscription; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskUser.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskUser.java new file mode 100644 index 00000000..f8289058 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskUser.java @@ -0,0 +1,32 @@ +package com.adc.da.slrs.StandardQA.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Author: qk + * @Date: 2022/6/2 0002 8:44 + * @Version 1.0 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="AskUser对象", description="") +public class AskUser extends BaseEntity { + + + @TableField("ASK_ID") + @ApiModelProperty(value = "问题ID") + private String asdId; + + + @TableField("USID") + @ApiModelProperty(value = "用户ID") + private String usid; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Reply.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Reply.java new file mode 100644 index 00000000..ddab429d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Reply.java @@ -0,0 +1,71 @@ +package com.adc.da.slrs.StandardQA.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.adc.da.common.ConvertMqEO; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; +import java.util.List; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 9:20 + * @Version 1.0 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="Reply对象", description="") +public class Reply extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @TableId + @ApiModelProperty(value = "主键") + private String id; + + @TableField("REPLY") + @ApiModelProperty(value = "回答") + private String reply; + + @TableField("STATE") + @ApiModelProperty(value = "状态(0:显示,1:不显示)") + private String state; + + @TableField("REPLY_TIME") + @ApiModelProperty(value = "回答时间") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date replyTime; + + @TableField("APPENDIX") + @ApiModelProperty(value = "附件") + private String appendix; + + @TableField("ANSWERER") + @ApiModelProperty(value = "回答人") + private String answerer; + + @TableField("ASK_ID") + @ApiModelProperty(value = "问题ID") + private String askId; + + @TableField("APPENDIX_ID") + @ApiModelProperty(value = "附件ID") + private String appendixId; + + @TableField("APPENDIX_NAME") + @ApiModelProperty(value = "附件名称") + private String appendixName; + + @TableField(exist = false) + private List fileList; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Subscription.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Subscription.java new file mode 100644 index 00000000..47c1169e --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Subscription.java @@ -0,0 +1,31 @@ +package com.adc.da.slrs.StandardQA.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Author: qk + * @Date: 2022/6/7 0007 11:16 + * @Version 1.0 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="Subscription对象", description="") +public class Subscription extends BaseEntity { + + + @TableField("ASK_ID") + @ApiModelProperty(value = "问题ID") + private String askId; + + @TableField("USID") + @ApiModelProperty(value = "用户ID") + private String usId; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java new file mode 100644 index 00000000..1506a461 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java @@ -0,0 +1,31 @@ +package com.adc.da.slrs.StandardQA.service; + +import com.adc.da.slrs.NewsFeed.entity.NewsFeed; +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 9:22 + * @Version 1.0 + */ +public interface AskQuestionsService extends IService { + + List getAskQuestions(AskQuestions askQuestions); + + List getReplyDetails(AskQuestions askQuestions); + List getReplyDetailsByStandId(AskQuestions askQuestions); + List getAskQuestionsBySubscription(AskQuestions askQuestions); + List retrieve(AskQuestions askQuestions); + List getSubscriptionByStandId(AskQuestions askQuestions); + List resemblance(List askQuestions); + + List getAskQuestionsByStandardId(String standardId); + List getArchiveAskQuestions(String id); + List getAskQuestionsByakId(String id); + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskUserService.java new file mode 100644 index 00000000..2a41dac3 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskUserService.java @@ -0,0 +1,13 @@ +package com.adc.da.slrs.StandardQA.service; + +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.AskUser; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Author: qk + * @Date: 2022/6/2 0002 8:47 + * @Version 1.0 + */ +public interface AskUserService extends IService { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/AskQuestionsServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/AskQuestionsServiceImpl.java new file mode 100644 index 00000000..6faa3749 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/AskQuestionsServiceImpl.java @@ -0,0 +1,79 @@ +package com.adc.da.slrs.StandardQA.service.Impl; + + +import com.adc.da.slrs.StandardQA.dao.AskQuestionsDao; +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.slrs.StandardQA.service.AskQuestionsService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 9:23 + * @Version 1.0 + */ +@Service +@Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class) +public class AskQuestionsServiceImpl extends ServiceImpl implements AskQuestionsService { + + @Autowired + private AskQuestionsDao askQuestionsDao; + + @Override + public List getAskQuestions(AskQuestions askQuestions) { + return askQuestionsDao.getAskQuestions(askQuestions); + } + + @Override + public List getReplyDetails(AskQuestions askQuestions) { + return askQuestionsDao.getReplyDetails(askQuestions); + } + + @Override + public List getReplyDetailsByStandId(AskQuestions askQuestions) { + return askQuestionsDao.getReplyDetailsByStandId(askQuestions); + } + + @Override + public List getAskQuestionsBySubscription(AskQuestions askQuestions) { + return askQuestionsDao.getAskQuestionsBySubscription(askQuestions); + } + + @Override + public List retrieve(AskQuestions askQuestions) { + return askQuestionsDao.retrieve(askQuestions); + } + + @Override + public List getSubscriptionByStandId(AskQuestions askQuestions) { + return askQuestionsDao.getSubscriptionByStandId(askQuestions); + } + + @Override + public List resemblance(List askQuestions) { + return askQuestionsDao.resemblance(askQuestions); + } + + @Override + public List getAskQuestionsByStandardId(String standardId) { + return askQuestionsDao.getAskQuestionsByStandardId(standardId); + } + + @Override + public List getArchiveAskQuestions(String id) { + return askQuestionsDao.getArchiveAskQuestions(id); + } + + @Override + public List getAskQuestionsByakId(String id) { + return askQuestionsDao.getAskQuestionsByakId(id); + } + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/AskUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/AskUserServiceImpl.java new file mode 100644 index 00000000..a79ec413 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/AskUserServiceImpl.java @@ -0,0 +1,22 @@ +package com.adc.da.slrs.StandardQA.service.Impl; + + +import com.adc.da.slrs.StandardQA.dao.AskUserDao; +import com.adc.da.slrs.StandardQA.entity.AskUser; +import com.adc.da.slrs.StandardQA.service.AskUserService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +/** + * @Author: qk + * @Date: 2022/6/2 0002 8:47 + * @Version 1.0 + */ + +@Service +@Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class) +public class AskUserServiceImpl extends ServiceImpl implements AskUserService { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/ReplyServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/ReplyServiceImpl.java new file mode 100644 index 00000000..bda80319 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/ReplyServiceImpl.java @@ -0,0 +1,19 @@ +package com.adc.da.slrs.StandardQA.service.Impl; + +import com.adc.da.slrs.StandardQA.dao.ReplyDao; +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.slrs.StandardQA.service.ReplyService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 11:03 + * @Version 1.0 + */ +@Service +@Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class) +public class ReplyServiceImpl extends ServiceImpl implements ReplyService { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/SubscriptionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/SubscriptionServiceImpl.java new file mode 100644 index 00000000..61bf6d64 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/Impl/SubscriptionServiceImpl.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.StandardQA.service.Impl; + + +import com.adc.da.slrs.StandardQA.dao.SubscriptionDao; +import com.adc.da.slrs.StandardQA.entity.Subscription; +import com.adc.da.slrs.StandardQA.service.SubscriptionService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +/** + * @Author: qk + * @Date: 2022/6/7 0007 11:20 + * @Version 1.0 + */ +@Service +@Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class) +public class SubscriptionServiceImpl extends ServiceImpl implements SubscriptionService { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/ReplyService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/ReplyService.java new file mode 100644 index 00000000..9372a377 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/ReplyService.java @@ -0,0 +1,13 @@ +package com.adc.da.slrs.StandardQA.service; + +import com.adc.da.slrs.StandardQA.entity.AskQuestions; +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Author: qk + * @Date: 2022/5/31 0031 11:02 + * @Version 1.0 + */ +public interface ReplyService extends IService { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/SubscriptionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/SubscriptionService.java new file mode 100644 index 00000000..ba4359ef --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/SubscriptionService.java @@ -0,0 +1,13 @@ +package com.adc.da.slrs.StandardQA.service; + +import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.slrs.StandardQA.entity.Subscription; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Author: qk + * @Date: 2022/6/7 0007 11:20 + * @Version 1.0 + */ +public interface SubscriptionService extends IService { +} diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml new file mode 100644 index 00000000..de6fc060 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml @@ -0,0 +1,219 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + From fb72b31b43ef440e0202b9ae4013e53830550d7d Mon Sep 17 00:00:00 2001 From: zyd Date: Wed, 8 Jun 2022 10:25:55 +0800 Subject: [PATCH 06/14] =?UTF-8?q?fix:=20=E9=87=8D=E6=9E=84=E5=BA=95?= =?UTF-8?q?=E5=B1=82=E5=9F=BA=E7=A1=80=E6=95=B0=E6=8D=AE=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E7=9A=84=E4=BB=A3=E7=A0=81=E9=80=BB=E8=BE=91=EF=BC=8C=E5=8E=BB?= =?UTF-8?q?=E6=8E=89=E6=B8=85=E7=A9=BA=E8=A1=A8=E6=95=B0=E6=8D=AE=E7=9A=84?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=EF=BC=8C=E6=9B=B4=E6=8D=A2=E4=B8=BA=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E6=88=96=E6=B7=BB=E5=8A=A0=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DataSyncServiceImpl.java | 153 ++++++++---------- .../adc/da/sync/service/SyncUserService.java | 28 ++-- 2 files changed, 80 insertions(+), 101 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java index 1ad2f235..9b301948 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java @@ -9,11 +9,14 @@ import com.adc.da.slrs.sarPosition.service.ITsPositionService; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.sync.service.SyncUserService; +import com.adc.da.sys.constant.ValidFlagEnum; import com.adc.da.sys.entity.UserOrgEO; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import lombok.extern.log4j.Log4j; +import org.apache.ibatis.jdbc.Null; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -40,14 +43,12 @@ public class DataSyncServiceImpl implements IDataSyncService { @Transactional(rollbackFor = {RuntimeException.class,Exception.class}) - @Override public String dataSync(){ try{ SyncUserService syncUserService = new SyncUserService(); List res = syncUserService.syncFotonUser(); //存放岗位信息 Map positionMap = new HashMap<>(); - Map useDistinct = new HashMap<>(); TsPosition position = new TsPosition(); position.setCurrent(1); position.setPageSize(100000); @@ -58,90 +59,76 @@ public class DataSyncServiceImpl implements IDataSyncService { positionMap.put(tsPosition.getName(), tsPosition.getId()); }); } - - /** - * 得到数据时,删除系统表中所有用户信息 - */ - if (res.size()>0){ - tsUserService.deleteUser(); - } + List addUserList = new ArrayList<>(); + List upUserList = new ArrayList<>(); for (String s : res) { - //获取到所有用户数据 - List tsUsers = new ArrayList<>(); - - JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results")); - jsonArray.forEach(object -> { - JSONObject jsonObject = JSONObject.parseObject(object.toString()); - //先获取岗位以及岗位id - TsUser tsUser = new TsUser(); - UserOrgEO userOrgEO = new UserOrgEO(); - //设置岗位 - if (null != jsonObject.getString("title")) { - //通过岗位名称查询系统表中是否有岗位,有则设定用户的岗位为系统中的岗位,否则新增 - if (null == positionMap.get(jsonObject.getString("title"))) { - TsPosition tsPosition = new TsPosition(); - tsPosition.setId(String.valueOf(UUID.randomUUID())); - tsPosition.setName(jsonObject.getString("title")); - tsPositionService.addPosition(tsPosition); - //放入岗位的map集合中 - positionMap.put(tsPosition.getName(), tsPosition.getId()); - //放入类中 - tsUser.setPositionName(tsPosition.getName()); - tsUser.setPositionId(tsPosition.getId()); - } else { - tsUser.setPositionName(jsonObject.getString("title").trim()); - tsUser.setPositionId(positionMap.get(jsonObject.getString("title").trim())); + JSONObject userData = JSONObject.parseObject(s); + if(userData.containsKey("results")){ + JSONArray jsonArray = userData.getJSONArray("results"); + jsonArray.forEach(object -> { + JSONObject jsonObject = JSONObject.parseObject(object.toString()); + String userid = jsonObject.getString("userid"); + TsUser userEO = tsUserService.getById(userid); + String userState = ""; + if(userEO != null){ + userState = "UPDATE"; + }else{ + userState = "ADD"; + userEO = new TsUser(); } - } - //设置其他数据 - Timestamp createTime = new Timestamp(new Date().getTime()); - tsUser.setState(jsonObject.getString("userStatus")); - tsUser.setUname(null!=jsonObject.getString("name")?jsonObject.getString("name"):""); - tsUser.setValidFlag("0"); - tsUser.setDisableFlag("0"); - tsUser.setCreationTime(createTime); - tsUser.setUserId(jsonObject.getString("userid")); - tsUser.setAccount(jsonObject.getString("userid")); - tsUser.setInstitutionId(null!=jsonObject.getString("orgNumber")?jsonObject.getString("orgNumber"):"" ); - tsUser.setInstitutionName(null!=jsonObject.getString("orgName")?jsonObject.getString("orgName"):"" ); - //2022-05-23:用户同步增加状态标识,将停用的用户过滤掉 - if (null == useDistinct.get(jsonObject.getString("userid")) && "1".equals(jsonObject.getString("userStatus"))) { - tsUsers.add(tsUser); - - } - -// //测试数据删除 -// if (! "anbin".equals(jsonObject.getString("userid"))){ -// -// //测试数据修改 -// if ("anbing".equals(jsonObject.getString("userid"))){ -// tsUser.setUname("DDDDDD"); -// tsUsers.add(tsUser); -// } else if (null == useDistinct.get(jsonObject.getString("userid"))) { -// tsUsers.add(tsUser); -// -// } -// } - useDistinct.put(tsUser.getUserId(),tsUser.getUserId()); - }); - tsUserService.saveBatch(tsUsers); + //先获取岗位以及岗位id + //设置岗位 + if (null != jsonObject.getString("title")) { + //通过岗位名称查询系统表中是否有岗位,有则设定用户的岗位为系统中的岗位,否则新增 + if (null == positionMap.get(jsonObject.getString("title"))) { + TsPosition tsPosition = new TsPosition(); + tsPosition.setId(String.valueOf(UUID.randomUUID())); + tsPosition.setName(jsonObject.getString("title")); + tsPositionService.addPosition(tsPosition); + //放入岗位的map集合中 + positionMap.put(tsPosition.getName(), tsPosition.getId()); + //放入类中 + userEO.setPositionName(tsPosition.getName()); + userEO.setPositionId(tsPosition.getId()); + } else { + userEO.setPositionName(jsonObject.getString("title").trim()); + userEO.setPositionId(positionMap.get(jsonObject.getString("title").trim())); + } + }else{ + userEO.setPositionId(null); + userEO.setPositionName(null); + } + //设置其他数据 + Timestamp createTime = new Timestamp(new Date().getTime()); + userEO.setState(jsonObject.getString("userStatus")); + userEO.setUname(null!=jsonObject.getString("name")?jsonObject.getString("name"):""); + userEO.setCreationTime(createTime); + userEO.setUserId(jsonObject.getString("userid")); + userEO.setAccount(jsonObject.getString("userid")); + userEO.setInstitutionId(null!=jsonObject.getString("orgNumber")?jsonObject.getString("orgNumber"):"" ); + userEO.setInstitutionName(null!=jsonObject.getString("orgName")?jsonObject.getString("orgName"):"" ); + //2022-05-23:用户同步增加状态标识,将停用的用户过滤掉 + if("1".equals(jsonObject.getString("userStatus"))){ + userEO.setValidFlag(ValidFlagEnum.VALID_FALSE.getValue()+""); + userEO.setDisableFlag(ValidFlagEnum.VALID_FALSE.getValue()+""); + }else{ + userEO.setValidFlag(ValidFlagEnum.VALID_TRUE.getValue()+""); + userEO.setDisableFlag(ValidFlagEnum.VALID_TRUE.getValue()+""); + } + if("ADD".equals(userState)){ + addUserList.add(userEO); + }else { + upUserList.add(userEO); + } + }); + } + } + if(!addUserList.isEmpty()){ + tsUserService.saveBatch(addUserList); + } + if(!upUserList.isEmpty()){ + tsUserService.updateBatchById(upUserList); } - - //测试数据添加 -// TsUser addUser = new TsUser(); -// addUser.setState("FFFFFFF"); -// addUser.setUname("zhaokaiyao"); -// addUser.setValidFlag("0"); -// addUser.setDisableFlag("0"); -// addUser.setCreationTime(new Timestamp(new Date().getTime())); -// addUser.setUserId("FFFFFFF"); -// addUser.setAccount("zhaokaiyao"); -// addUser.setInstitutionId("10022745"); -// addUser.setInstitutionName("福田营销其他"); -// -// List addUserList = Arrays.asList(addUser); -// tsUserService.saveBatch(addUserList); - }catch(Exception e){ logger.error(e.getMessage(),e); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); diff --git a/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java b/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java index 673dd50c..5927b3e0 100644 --- a/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java +++ b/adc-da-sys/src/main/java/com/adc/da/sync/service/SyncUserService.java @@ -19,10 +19,6 @@ import java.util.Map; @Slf4j public class SyncUserService { - public static void main(String[] args) throws Exception { - SyncUserService syncUserService=new SyncUserService(); - syncUserService.syncFotonUser(); - } /** * 同步福田IDM数据 @@ -46,12 +42,11 @@ public class SyncUserService { System.out.println("RequestBody:" + params.toString()); // 用户测试 String rs = util.getResponseFromServer("http://idmsync.foton.com.cn/rest/users/getUserList", params); - - json.add(rs); - + log.debug(rs); JSONObject responseStr = JSON.parseObject(rs); - System.out.println(rs); - log.info(rs); + if(responseStr.containsKey("status") && responseStr.getBoolean("status")){ + json.add(rs); + } if (responseStr.containsKey("cookie")) { try { JSONArray entries = responseStr.getJSONArray("cookie"); @@ -63,6 +58,7 @@ public class SyncUserService { cookie[i] = (byte) entries.getByte(i); } } catch (Exception e) { + log.error(e.getMessage(),e); if (e.getMessage().contains("is not a JSONArray")) { cookie = null; } @@ -92,13 +88,11 @@ public class SyncUserService { params.put("basedn", "ou=Organizations,o=foton.com.cn,o=isp"); // 组织测试 String rs = util.getResponseFromServer("http://idmsync.foton.com.cn/rest/orgs/getOrgList", params); - json.add(rs); - - - JSONObject responseStr = JSONObject.parseObject(rs); - - System.out.println(responseStr); log.info(rs); + JSONObject responseStr = JSONObject.parseObject(rs); + if(responseStr.containsKey("status") && responseStr.getBoolean("status")){ + json.add(rs); + } if (responseStr.containsKey("cookie")) { try { JSONArray entries = responseStr.getJSONArray("cookie"); @@ -110,14 +104,12 @@ public class SyncUserService { cookie[i] = (byte) entries.getByte(i); } } catch (Exception e) { - System.out.println(e); - e.printStackTrace(); + log.error(e.getMessage(),e); if (e.getMessage().contains("is not a JSONArray")) { cookie = null; } } } - } while (cookie != null); return json; } From 8d65415ae25c7d2650f9d1898b3dde6adf33e6a2 Mon Sep 17 00:00:00 2001 From: zyd Date: Wed, 8 Jun 2022 10:36:34 +0800 Subject: [PATCH 07/14] =?UTF-8?q?fix:=20=E5=9F=BA=E7=A1=80=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=90=8C=E6=AD=A5=E5=A2=9E=E5=8A=A0=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E8=BE=93=E5=87=BA=EF=BC=8C=E5=AF=B9=E8=BF=87=E7=A8=8B=E8=BF=9B?= =?UTF-8?q?=E8=A1=8C=E8=BF=BD=E8=B8=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/adc/da/scheduled/ScheduledSync.java | 2 ++ .../DataSync/service/impl/DataSyncServiceImpl.java | 11 ++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java index 97f81da3..14b4736b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java +++ b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java @@ -28,7 +28,9 @@ public class ScheduledSync { @Async public void syncSchedulingTasks() { + log.info("======================================开始同步基础数据========================================"); iDataSyncService.orgDataSync(); //时间短 iDataSyncService.dataSync(); //时间长 + log.info("======================================结束同步基础数据========================================"); } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java index 9b301948..d52ad7ae 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java @@ -124,9 +124,11 @@ public class DataSyncServiceImpl implements IDataSyncService { } } if(!addUserList.isEmpty()){ + logger.debug("本次新增的用户为:"+JSONObject.toJSONString(addUserList)); tsUserService.saveBatch(addUserList); } if(!upUserList.isEmpty()){ + logger.debug("本次更新的用户为:"+JSONObject.toJSONString(upUserList)); tsUserService.updateBatchById(upUserList); } }catch(Exception e){ @@ -189,15 +191,22 @@ public class DataSyncServiceImpl implements IDataSyncService { } //需要新增的数据 if(!addTsInstitutionList.isEmpty()){ + logger.debug("本次新增的组织机构为:"+JSONObject.toJSONString(addTsInstitutionList)); tsInstitutionService.saveBatch(addTsInstitutionList); } //需要更新的数据 if(!updateTsInstitutionList.isEmpty()){ + logger.debug("本次更新的组织机构为:"+JSONObject.toJSONString(updateTsInstitutionList)); tsInstitutionService.updateBatchById(updateTsInstitutionList); } //需要删除的数据 if(!delTsInstitutionList.isEmpty()){ - tsInstitutionService.updateBatchById(delTsInstitutionList); + logger.debug("本次删除的组织机构为:"+JSONObject.toJSONString(delTsInstitutionList)); + List delIdList = new ArrayList<>(); + for(TsInstitution data : delTsInstitutionList){ + delIdList.add(data.getId()); + } + tsInstitutionService.removeByIds(delIdList); } }catch(Exception e){ logger.error(e.getMessage(),e); From 43a31db7ca446f0e9348ef2ca992dc6a738fc1f7 Mon Sep 17 00:00:00 2001 From: zyd Date: Wed, 8 Jun 2022 11:34:44 +0800 Subject: [PATCH 08/14] =?UTF-8?q?fix:=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=AE=A1=E6=8E=A7=E6=B3=A8=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/adc/da/Timer/ProcessTimer.java | 151 ++++++++++-------- .../com/adc/da/scheduled/ScheduledSync.java | 18 ++- 2 files changed, 95 insertions(+), 74 deletions(-) diff --git a/adc-da-activiti/src/main/java/com/adc/da/Timer/ProcessTimer.java b/adc-da-activiti/src/main/java/com/adc/da/Timer/ProcessTimer.java index 398b9319..9846d4f2 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/Timer/ProcessTimer.java +++ b/adc-da-activiti/src/main/java/com/adc/da/Timer/ProcessTimer.java @@ -16,6 +16,7 @@ import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @@ -48,6 +49,13 @@ public class ProcessTimer { @Autowired private WorkFlowController workFlowController; + /** + * 根据配置文件设置是否开启定时器 + */ + + @Value("${isNotScheduled}") + private boolean isNotScheduled; //是否开启定时器 + /*** * @Description: 自动催办,任务截至时间前3天开始每天催办 * @Author: yangxuenan @@ -59,44 +67,48 @@ public class ProcessTimer { // @Scheduled(cron = "*/5 * * * * ?")//每5秒执行一次 // @Scheduled(cron = "0/20 * * * * ?") public void urging() { - List busProcessNames = workFlowFeignClient.queryBusProcessNameForEnd(null); - if (null != busProcessNames && 0 < busProcessNames.size()) { - for (BusProcessName busProcessName : busProcessNames) { - String type = busProcessName.getPrcType(); - Integer typeInt = 99; - if (StringUtils.isNotEmpty(type)) { - typeInt = Integer.valueOf(type); - } - type = chooseType(typeInt, type); + if(isNotScheduled){ + log.info("=================================自动催办定时任务启动====================================="); + List busProcessNames = workFlowFeignClient.queryBusProcessNameForEnd(null); + if (null != busProcessNames && 0 < busProcessNames.size()) { + for (BusProcessName busProcessName : busProcessNames) { + String type = busProcessName.getPrcType(); + Integer typeInt = 99; + if (StringUtils.isNotEmpty(type)) { + typeInt = Integer.valueOf(type); + } + type = chooseType(typeInt, type); - UserEO userEO = userEOService.selectByPrimaryKey(busProcessName.getCreatUserName()); - String[] array = userEO.getEmail().split(","); - String overTime = busProcessName.getOverTime(); - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); - Date dateTime = null; - Integer num = 3; - try { - dateTime = simpleDateFormat.parse(overTime); - Date now = new Date(); - long daysBetween = (dateTime.getTime() - now.getTime() + 1000000) / (60 * 60 * 24 * 1000); - num = Integer.valueOf(String.valueOf(daysBetween)); - } catch (ParseException e) { - SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); + UserEO userEO = userEOService.selectByPrimaryKey(busProcessName.getCreatUserName()); + String[] array = userEO.getEmail().split(","); + String overTime = busProcessName.getOverTime(); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + Date dateTime = null; + Integer num = 3; try { - dateTime = simpleDateFormat1.parse(overTime); + dateTime = simpleDateFormat.parse(overTime); Date now = new Date(); long daysBetween = (dateTime.getTime() - now.getTime() + 1000000) / (60 * 60 * 24 * 1000); num = Integer.valueOf(String.valueOf(daysBetween)); - } catch (ParseException e1) { - e.getMessage(); + } catch (ParseException e) { + SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'"); + try { + dateTime = simpleDateFormat1.parse(overTime); + Date now = new Date(); + long daysBetween = (dateTime.getTime() - now.getTime() + 1000000) / (60 * 60 * 24 * 1000); + num = Integer.valueOf(String.valueOf(daysBetween)); + } catch (ParseException e1) { + e.getMessage(); + } } - } - String msg = "您好,[" + busProcessName.getPrcNum() + "]-[" + busProcessName.getPrcName() + "] 您有待办任务未及时办理,距离截至日期还有[" + String.valueOf(num) + "]天 请及时办理,请登录全球标准法规管理系统 ( http://39.98.140.126:10005/#/login ) 办理:链接 ( http://39.98.140.126:10005/#/processCenter?tabsName=ProcessCenter ) 。\n" + - " ——来自 全球标准法规管理系统"; - String title = "GSRM——【待办任务】[" + type + "] 您有未完成的待办任务"; - mailUtil.sendMsgFeign(array, title, msg); + String msg = "您好,[" + busProcessName.getPrcNum() + "]-[" + busProcessName.getPrcName() + "] 您有待办任务未及时办理,距离截至日期还有[" + String.valueOf(num) + "]天 请及时办理,请登录全球标准法规管理系统 ( http://39.98.140.126:10005/#/login ) 办理:链接 ( http://39.98.140.126:10005/#/processCenter?tabsName=ProcessCenter ) 。\n" + + " ——来自 全球标准法规管理系统"; + String title = "GSRM——【待办任务】[" + type + "] 您有未完成的待办任务"; + mailUtil.sendMsgFeign(array, title, msg); + } } + log.info("=================================自动催办定时任务结束====================================="); } } @@ -169,20 +181,24 @@ public class ProcessTimer { @Scheduled(cron = "0 0 10 * * ? ")//每天十点执行 // @Scheduled(cron = "*/20 * * * * ? ")//每天十点执行 public void everyDayTenOlockScan() { - List busProcessNews=new ArrayList<>(); - busProcessNews=workFlowFeignClient.everyDayTenOlock(); - if (!busProcessNews.isEmpty()){ - for (BusProcessNew bus:busProcessNews) { - JSONObject jsonObject= JSON.parseObject(bus.getMesg()); - jsonObject.put("auto","1"); - ResponseMessage responseMessage = workFlowController.startProcessNew("19",jsonObject.getString("revisionId"),null); - BusMes busMes=new BusMes(); - busMes.setTaskIds(String.valueOf(responseMessage.getData())); - busMes.setJson(jsonObject.toJSONString()); - busMes.setUserId(jsonObject.getString("revisionId")); - Wrapper wrapper=workFlowFeignClient.completeTaskByUserId(busMes); - log.info("政策课题组会后流程已发起"); + if(isNotScheduled){ + log.info("=================================政策课题组会后流程定时任务启动====================================="); + List busProcessNews=new ArrayList<>(); + busProcessNews=workFlowFeignClient.everyDayTenOlock(); + if (!busProcessNews.isEmpty()){ + for (BusProcessNew bus:busProcessNews) { + JSONObject jsonObject= JSON.parseObject(bus.getMesg()); + jsonObject.put("auto","1"); + ResponseMessage responseMessage = workFlowController.startProcessNew("19",jsonObject.getString("revisionId"),null); + BusMes busMes=new BusMes(); + busMes.setTaskIds(String.valueOf(responseMessage.getData())); + busMes.setJson(jsonObject.toJSONString()); + busMes.setUserId(jsonObject.getString("revisionId")); + Wrapper wrapper=workFlowFeignClient.completeTaskByUserId(busMes); + log.info("政策课题组会后流程已发起"); + } } + log.info("=================================政策课题组会后流程定时任务启动====================================="); } } @@ -190,36 +206,33 @@ public class ProcessTimer { // @Scheduled(cron = "0 0 0/1 * * ? ")//每天十点执行 // @Scheduled(cron = "*/40 * * * * ? ")//20s public void everyDayTenOlockScanSAM() { - List busProcessNews=new ArrayList<>(); - busProcessNews=workFlowFeignClient.everyDayTenOlockSAM(); - if (!busProcessNews.isEmpty()){ - for (BusProcessNew bus:busProcessNews) { - JSONObject jsonObject= JSON.parseObject(bus.getMesg()); - String taskInfo = bus.getTaskInfo(); - String result = jsonObject.getJSONObject("roleList").getString("dockUser"); - result = result.split(",")[0]; - jsonObject.put("member",result); - if(taskInfo.equals("标准化活动参会流程-流程结束")){ - jsonObject.put("auto","1"); - ResponseMessage responseMessage = workFlowController.startProcessNew("22",result,null); - BusMes busMes=new BusMes(); - busMes.setTaskIds(String.valueOf(responseMessage.getData())); - busMes.setJson(jsonObject.toJSONString()); - busMes.setUserId(result); + if(isNotScheduled){ + log.info("=================================标准化活动参会流程定时任务启动====================================="); + List busProcessNews=new ArrayList<>(); + busProcessNews=workFlowFeignClient.everyDayTenOlockSAM(); + if (!busProcessNews.isEmpty()){ + for (BusProcessNew bus:busProcessNews) { + JSONObject jsonObject= JSON.parseObject(bus.getMesg()); + String taskInfo = bus.getTaskInfo(); + String result = jsonObject.getJSONObject("roleList").getString("dockUser"); + result = result.split(",")[0]; + jsonObject.put("member",result); + if(taskInfo.equals("标准化活动参会流程-流程结束")){ + jsonObject.put("auto","1"); + ResponseMessage responseMessage = workFlowController.startProcessNew("22",result,null); + BusMes busMes=new BusMes(); + busMes.setTaskIds(String.valueOf(responseMessage.getData())); + busMes.setJson(jsonObject.toJSONString()); + busMes.setUserId(result); + + Wrapper wrapper=workFlowFeignClient.completeTaskByUserId(busMes); + System.out.println("标准化活动会后流程自动发起"); + } - Wrapper wrapper=workFlowFeignClient.completeTaskByUserId(busMes); - System.out.println("标准化活动会后流程自动发起"); } - } + log.info("=================================标准化活动参会流程定时任务启动====================================="); } } - - public static void main(String[]args){ - ProcessTimer processTimer = new ProcessTimer(); - processTimer.everyDayTenOlockScan(); - processTimer.everyDayTenOlockScanSAM(); - } - } diff --git a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java index 14b4736b..276d5349 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java +++ b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledSync.java @@ -5,6 +5,7 @@ import com.adc.da.slrs.DataSync.service.IDataSyncService; import com.sun.org.apache.bcel.internal.generic.NEW; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.Scheduled; @@ -22,15 +23,22 @@ public class ScheduledSync { @Autowired private IDataSyncService iDataSyncService; + /** + * 根据配置文件设置是否开启定时器 + */ + + @Value("${isNotScheduled}") + private boolean isNotScheduled; //是否开启定时器 //每天凌晨两点执行 @Scheduled(cron="0 0 2 * * ?") - @Async public void syncSchedulingTasks() { - log.info("======================================开始同步基础数据========================================"); - iDataSyncService.orgDataSync(); //时间短 - iDataSyncService.dataSync(); //时间长 - log.info("======================================结束同步基础数据========================================"); + if(isNotScheduled){ + log.info("======================================开始同步基础数据========================================"); + iDataSyncService.orgDataSync(); //时间短 + iDataSyncService.dataSync(); //时间长 + log.info("======================================结束同步基础数据========================================"); + } } } From 8372b5f4159273858edbc20fa57b17568f7b0720 Mon Sep 17 00:00:00 2001 From: zyd Date: Wed, 8 Jun 2022 13:37:51 +0800 Subject: [PATCH 09/14] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=B4=A6?= =?UTF-8?q?=E5=8F=B7=E7=8A=B6=E6=80=81=E6=9B=B4=E6=96=B0=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E7=9A=84BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/slrs/DataSync/service/impl/DataSyncServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java index d52ad7ae..fd69cea1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/DataSync/service/impl/DataSyncServiceImpl.java @@ -109,11 +109,11 @@ public class DataSyncServiceImpl implements IDataSyncService { userEO.setInstitutionName(null!=jsonObject.getString("orgName")?jsonObject.getString("orgName"):"" ); //2022-05-23:用户同步增加状态标识,将停用的用户过滤掉 if("1".equals(jsonObject.getString("userStatus"))){ - userEO.setValidFlag(ValidFlagEnum.VALID_FALSE.getValue()+""); - userEO.setDisableFlag(ValidFlagEnum.VALID_FALSE.getValue()+""); - }else{ userEO.setValidFlag(ValidFlagEnum.VALID_TRUE.getValue()+""); userEO.setDisableFlag(ValidFlagEnum.VALID_TRUE.getValue()+""); + }else{ + userEO.setValidFlag(ValidFlagEnum.VALID_FALSE.getValue()+""); + userEO.setDisableFlag(ValidFlagEnum.VALID_FALSE.getValue()+""); } if("ADD".equals(userState)){ addUserList.add(userEO); From 4029ea18e2b3268b15a66961d03b7a9022db303c Mon Sep 17 00:00:00 2001 From: zhangyanduan Date: Wed, 8 Jun 2022 17:56:00 +0800 Subject: [PATCH 10/14] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=BD=93?= =?UTF-8?q?=E7=B3=BB=E6=95=B0=E6=8D=AE=E6=96=B0=E5=A2=9E=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E7=88=B6=E7=BA=A7ID=E9=9B=86=E5=90=88=E4=B8=AD=E7=BC=BA?= =?UTF-8?q?=E5=B0=91=E5=89=8D=E5=90=8E=E9=80=97=E5=8F=B7=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=B8=8D=E5=87=BA=E6=9D=A5=E7=9A=84BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/TsResourceServiceImpl.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java index a33ee6c0..f4448a6c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java @@ -322,6 +322,16 @@ public class TsResourceServiceImpl extends ServiceImpl map = new HashMap<>(); From 0508232730819989e644873ee3b217dc622ada76 Mon Sep 17 00:00:00 2001 From: qk <1005180704@qq。com> Date: Thu, 9 Jun 2022 14:03:21 +0800 Subject: [PATCH 11/14] =?UTF-8?q?update:=E4=BF=AE=E6=94=B9=E6=A0=87?= =?UTF-8?q?=E5=87=86=E9=97=AE=E7=AD=94bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ReplyController.java | 17 +++++++++++++---- .../askQuestions/AskQuestionsMapper.xml | 19 +++++++++++-------- 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java index 890b2373..cb0f083f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java @@ -10,6 +10,7 @@ import com.adc.da.util.http.Result; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import io.swagger.annotations.Api; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -37,18 +38,26 @@ public class ReplyController extends BaseController { @PostMapping("/insertReply") public ResponseMessage insertReply(@RequestBody Reply reply){ - reply.setAppendixId(reply.getFileList().get(0).getAttId()); - reply.setAppendixName(reply.getFileList().get(0).getName()); + if(StringUtils.isEmpty(reply.getReply())){ + return Result.error("-1","请输入回答内容"); + } + if(reply.getFileList().size() >0) { + reply.setAppendixId(reply.getFileList().get(0).getAttId()); + reply.setAppendixName(reply.getFileList().get(0).getName()); + } reply.setReplyTime(new Date()); reply.setId(UUIDUtils.randomUUID20()); if(replyService.save(reply)){ - return Result.success("200","添加成功"); + return Result.success("200","提交成功"); }else { - return Result.error("200","添加失败"); + return Result.error("-1","添加失败"); } } @PostMapping("/updateReply") public ResponseMessage updateReply(String id){ + if(StringUtils.isEmpty(id)){ + return Result.error("-1","请选择要归档的回答"); + } List list = Arrays.asList(id.split(",")); for (String s: list) { UpdateWrapper updateWrapper = new UpdateWrapper(); diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml index de6fc060..b3165110 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml @@ -68,17 +68,20 @@ SELECT reply.ID, reply.REPLY,reply.REPLY_TIME,t2.UNAME ANSWERER,reply.APPENDIX_ID,APPENDIX_NAME FROM reply LEFT JOIN ts_user t2 ON t2.USID = reply.ANSWERER - - - AND reply.ASK_ID = #{id} - - + + + AND reply.ASK_ID = #{id} + + + order by reply.REPLY_TIME +