From 3db4903b0af0b4f8d4271037947b7474ccd4402b Mon Sep 17 00:00:00 2001 From: zyd Date: Tue, 30 Aug 2022 22:56:24 +0800 Subject: [PATCH 1/2] =?UTF-8?q?add:=20=E9=A2=84=E8=AD=A6=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=8F=AA=E9=A2=84=E8=AD=A6=E6=9C=80=E6=96=B0=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E7=9A=84=E5=88=86=E8=A7=A3=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/adc/da/scheduled/ScheduledJob.java | 83 +++++++++++++++++-- .../scheduled/dao/SarStandardWarningDao.java | 4 + .../sarStandWarning/entity/WarningDate.java | 2 + .../sarStandWarning/SarStandardWarningDao.xml | 41 +++++---- 4 files changed, 105 insertions(+), 25 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledJob.java b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledJob.java index 9bf24da5..ce35933c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledJob.java +++ b/adc-da-slrs/src/main/java/com/adc/da/scheduled/ScheduledJob.java @@ -19,6 +19,7 @@ import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; import com.adc.da.slrs.sarUpdLog.service.ISarUpdLogService; import com.adc.da.sys.service.IDicTypeEOService; import com.adc.da.util.UUIDUtils; +import com.adc.da.utils.util.InitStandAttrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.extern.slf4j.Slf4j; import net.sf.json.JSONObject; @@ -159,8 +160,33 @@ public class ScheduledJob { } } }); - - + //此处开始处理条款中的预警数据 + //查询符合预警期限的标准 多个 + List warningDateOfItems = sarStandardWarningDao.getWarningDateOfItems(term); + warningDateOfItems.forEach(item -> { + for (String s : item.getSSRQ().split(",")) { + String pattern = term.getTermStr(); + Pattern r = Pattern.compile(pattern); + Matcher m = r.matcher(s); + //判断是否是日期格式 + if (m.matches()) { + //此处判断当前条款的数据是否是最新状态的 + String lawsId = item.getLawId(); + String fileType =item.getFileType(); + String textState = sarStandardWarningDao.getStandTextStateByStandId(lawsId); + if(StringUtils.isNotBlank(textState)){ + String convertFileType = convertTextStateToItemType(textState); + if(StringUtils.isNotBlank(convertFileType) && fileType.equals(convertFileType)){ + WarningDate warningDate = new WarningDate(); + BeanUtils.copyProperties(item, warningDate); + warningDate.setId(UUIDUtils.randomUUID20()); + warningDate.setSSRQ(s); + data.add(warningDate); + } + } + } + } + }); //清空标准的日期子表 iWarningDateService.remove(null); // 保存进入标准的日期子表 保存标准的实施日期 新车型实施日期 在产车实施日期 多个 @@ -184,6 +210,52 @@ public class ScheduledJob { } } + /** + * 将文本状态转换成文件类型 + * @param textState + * @return + */ + private String convertTextStateToItemType(String textState){ + String fileType =""; + switch (textState){ + case "DRAFT"://草稿 + fileType="CA"; + break; + case "ADVICE"://征求意见稿 + fileType="ZQYJG"; + break; + case "RADYSUBMIT"://报批稿 + fileType="BPG"; + break; + case "SUBMIT"://送审稿 + fileType="SSG"; + break; + case "FJNVYX9Q7J"://发布稿 + fileType="FBGBJBD"; + break; + case "ZTJJSS"://修订中 + fileType=null; + break; + case "TOVOID"://已作废 + fileType=null; + break; + case "ZTXXYX"://计划修订 + fileType=null; + break; + case "5E5Z3CELX6"://已实施 + fileType="FBGBJBD"; + break; + case "N5KLTFLNRC"://已修订 + fileType=null; + break; + default: + fileType=null; + break; + } + return fileType; + } + + @Autowired private ISarUpdLogService sarUpdLogEOService; @@ -285,17 +357,10 @@ public class ScheduledJob { replaceIdCountMap.put(standId.get(0), 1); } } - - } - - } } - }); - - //一个被代替标准号时,文本状态更新为废止状态,两个及以上时更新为被代替状态 for (String key : replaceIdCountMap.keySet()) { SarStandardsInfo sarStandardsInfo = new SarStandardsInfo(); diff --git a/adc-da-slrs/src/main/java/com/adc/da/scheduled/dao/SarStandardWarningDao.java b/adc-da-slrs/src/main/java/com/adc/da/scheduled/dao/SarStandardWarningDao.java index 196b8046..65f2b77f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/scheduled/dao/SarStandardWarningDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/scheduled/dao/SarStandardWarningDao.java @@ -23,4 +23,8 @@ public interface SarStandardWarningDao extends BaseMapper { public List getWarningDate(TermDTO term); + public List getWarningDateOfItems(TermDTO term); + + public String getStandTextStateByStandId(String standId); + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandWarning/entity/WarningDate.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandWarning/entity/WarningDate.java index c03ad937..156f0da3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandWarning/entity/WarningDate.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandWarning/entity/WarningDate.java @@ -22,4 +22,6 @@ public class WarningDate { @TableField("time_Name") private String timeName; + + private String fileType; } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandWarning/SarStandardWarningDao.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandWarning/SarStandardWarningDao.xml index 0d3990fc..b696d004 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandWarning/SarStandardWarningDao.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandWarning/SarStandardWarningDao.xml @@ -91,22 +91,6 @@ select A.* from from sar_stand_attr_info attr WHERE ZCCSSRQ REGEXP #{termStr} - - - - UNION All - select item.STAND_ID as lawId,item.ID as itemId,'ZCCSSRQ' as timeName, - ZCCSSRQ as SSRQ - from sar_stand_items item - WHERE - ZCCSSRQ REGEXP #{termStr} - - UNION All - select item.STAND_ID as lawId,item.ID as itemId,'XCXSSRQ' as timeName, - XCXSSRQ as SSRQ - from sar_stand_items item - WHERE - XCXSSRQ REGEXP #{termStr} ) AS A left join sar_standards_info as sarInfo on sarInfo.id=A.lawId @@ -115,5 +99,30 @@ select A.* from + + + + + From 206c1bccf3cc468c6e038b2cba511678864fe0ac Mon Sep 17 00:00:00 2001 From: zyd Date: Wed, 31 Aug 2022 00:00:35 +0800 Subject: [PATCH 2/2] =?UTF-8?q?add:=E6=9C=BA=E6=9E=84=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A0=B9=E6=8D=AE=E9=83=A8=E9=97=A8=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E9=85=8D=E7=BD=AE=E5=B2=97=E4=BD=8D=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scheduled/dao/SarStandardWarningDao.java | 2 +- .../sarUser/controller/TsUserController.java | 7 ++ .../adc/da/slrs/sarUser/dao/TsUserDao.java | 2 + .../sarUser/entity/UserPositionBatchVO.java | 3 + .../slrs/sarUser/service/ITsUserService.java | 2 + .../service/impl/TsUserServiceImpl.java | 65 +++++++++++++++++++ .../sarStandWarning/SarStandardWarningDao.xml | 2 +- .../mybatis/mapper/sarUser/TsUserMapper.xml | 25 +++++++ 8 files changed, 106 insertions(+), 2 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/scheduled/dao/SarStandardWarningDao.java b/adc-da-slrs/src/main/java/com/adc/da/scheduled/dao/SarStandardWarningDao.java index 65f2b77f..2cc741f2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/scheduled/dao/SarStandardWarningDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/scheduled/dao/SarStandardWarningDao.java @@ -25,6 +25,6 @@ public interface SarStandardWarningDao extends BaseMapper { public List getWarningDateOfItems(TermDTO term); - public String getStandTextStateByStandId(String standId); + public String getStandTextStateByStandId(@Param(value = "standId") String standId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java index 6ca4d2aa..a58e9ba2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/controller/TsUserController.java @@ -65,6 +65,13 @@ public class TsUserController extends BaseController { return tsUserService.setPositionBatch(userPositionVO); } + @ApiOperation("配置岗位") + @PostMapping("/positionBatchByOrgId") + public ResponseMessage setPositionBatchByOrgId(@Valid @RequestBody UserPositionBatchVO userPositionVO){ + return tsUserService.setPositionBatchByOrgId(userPositionVO); + } + + @ApiOperation("查询当前登录用户权限") @GetMapping("/menu") public ResponseMessage> getMenu(){ diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java index 89c0a4c7..c2628318 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/dao/TsUserDao.java @@ -51,6 +51,8 @@ public interface TsUserDao extends BaseMapper { List userUnderInstitution(@Param("start")Integer start, @Param("end")Integer end,@Param("TsUser") TsUser tsUser,@Param("ids") List ids); + List getUserUnderInstitutionAll(@Param("ids") List ids); + Integer getUserAndPositionCount(@Param("TsUser") TsUser tsUser); Integer userUnderInstitutionCount(@Param("TsUser") TsUser tsUser,@Param("ids") List ids); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/UserPositionBatchVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/UserPositionBatchVO.java index 336a011e..baecbceb 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/UserPositionBatchVO.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/entity/UserPositionBatchVO.java @@ -11,4 +11,7 @@ public class UserPositionBatchVO { private List userId; @NotNull(message = "positionIds不能为空") private List positionIds; + @NotNull(message = "orgId不能为空") + private String orgId; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java index 7cc78866..d850a34a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/ITsUserService.java @@ -47,6 +47,8 @@ public interface ITsUserService extends IService { ResponseMessage setPositionBatch(UserPositionBatchVO userPositionVO); + ResponseMessage setPositionBatchByOrgId(UserPositionBatchVO userPositionVO); + /** * 查询当前登录的用户权限 * @return List diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java index 58692e30..e1c7977b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarUser/service/impl/TsUserServiceImpl.java @@ -194,6 +194,71 @@ public class TsUserServiceImpl extends ServiceImpl implements } } + /** + * 配置岗位 + * @param userPositionVO2:用户、岗位ID + * @return ResponseMessage + */ + @Override + @Transactional + public ResponseMessage setPositionBatchByOrgId(UserPositionBatchVO userPositionVO2) { + + boolean flag=true; + //首先将所有用户查出来 + List orgIds=new ArrayList<>(); + orgIds.add(userPositionVO2.getOrgId()); + List middle=new ArrayList<>(); + middle.addAll(orgIds); + boolean Orgflag=true; + while (Orgflag){ + QueryWrapper queryWrapper=new QueryWrapper<>(); + queryWrapper.in("parent_id",middle); + List tsmiddle=tsInstitutionService.list(queryWrapper); + if (tsmiddle.size()>0){ + tsmiddle.forEach(tsInstitution -> { + middle.add(tsInstitution.getId()); + }); + middle.removeAll(orgIds); + orgIds.addAll(middle); + }else { + tsmiddle.forEach(tsInstitution -> { + middle.add(tsInstitution.getId()); + }); + middle.removeAll(orgIds); + orgIds.addAll(middle); + Orgflag=false; + } + } + orgIds.removeIf(s -> null==s); + List allUsers = tsUserDao.getUserUnderInstitutionAll(orgIds); + + for (TsUser user : allUsers) { + String userId = user.getUserId(); + UserPositionVO userPositionVO=new UserPositionVO(); + userPositionVO.setUserId(userId); + userPositionVO.setPositionIds(userPositionVO2.getPositionIds()); + TsUser tsUser=tsUserDao.selectById(userPositionVO.getUserId()); + if(tsUser==null){ + continue; + } + List oldPositionIds=tsUserDao.selectPositionIds(userPositionVO.getUserId()); + Map> ids= ListUtil.difList(userPositionVO.getPositionIds(),oldPositionIds); + List insertIds=ids.get("insert"); + List deleteIds=ids.get("delete"); + if(insertIds!=null&&insertIds.size()>0){ + for(String positionId:insertIds){ + tsUserDao.addPosition(userPositionVO.getUserId(),positionId); + } + } + if(deleteIds!=null&&deleteIds.size()>0){ + for(String positionId:deleteIds){ + tsUserDao.delPosition(userPositionVO.getUserId(),positionId); + } + } + } + return Result.success(); + } + /** * 查询当前登录的用户权限 * @return List diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandWarning/SarStandardWarningDao.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandWarning/SarStandardWarningDao.xml index b696d004..fd9e9371 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandWarning/SarStandardWarningDao.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandWarning/SarStandardWarningDao.xml @@ -121,7 +121,7 @@ select A.* from diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml index 601a5bd3..c1f47fad 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarUser/TsUserMapper.xml @@ -48,6 +48,31 @@ limit #{start},#{end} + + +