diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java index 8174a1084..af7f1621f 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java @@ -105,243 +105,242 @@ import static com.jero.modules.split.util.ExcelUtil.checkObjAllFieldsIsNull; /** * @Description: 参数项收集清单 * @Author: jero-boot - * @Date: 2022-05-05 + * @Date: 2022-05-05 * @Version: V1.0 */ @Service @Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class) public class ParamsCollectManifestEOServiceImpl extends ServiceImpl implements IParamsCollectManifestEOService { - @Autowired - private ParamsCollectManifestEOMapper paramsCollectManifestEOMapper; - @Autowired - private OnlCgformFieldServiceImpl onlCgformFieldService; - @Autowired - private IParamsConfigEOService paramsConfigEOService; - @Autowired - private IParamsConfigDataEOService paramsConfigDataEOService; - @Autowired - private ISysDictItemService sysDictItemService; - @Autowired - private IOSSFileService ossFileService; - @Autowired - private IParamsInfoPublishEOService paramsInfoPublishEOService; - @Autowired - private ICertCategoryParamsInfoPublishEOService certCategoryParamsInfoPublishEOService; - @Autowired - private IProjectRelatedPersonnelService projectRelatedPersonnelService; - @Autowired - private ISysUserService sysUserService; - @Autowired - private IFeishuService feishuService; - @Autowired - private ISysAnnouncementService sysAnnouncementService; - @Autowired - private IParamsReportEOService paramsReportEOService; - @Autowired - private IParamsReportDetailEOService paramsReportDetailEOService; - @Autowired - private IParamsReportConfigEOService paramsReportConfigEOService; - @Autowired - private IParamsReportConfigDataEOService paramsReportConfigDataEOService; - @Autowired - private IParamsManifestEOService paramsManifestEOService; - @Autowired - private IReportCertCategoryParamsInfoEOService reportCertCategoryParamsInfoEOService; - @Autowired - private ISysUserRoleService sysUserRoleService; - @Autowired - private ProjectLibraryBaseMapper projectLibraryBaseMapper; - @Autowired - private IProjectLibraryBaseService projectLibraryBaseService; - @Autowired - private IParamsCollectManifestLogEOService paramsCollectManifestLogEOService; - @Autowired - private SysDictItemServiceImpl sysDictItemServiceImpl; - @Autowired - private WebSocketServer webSocketServer; // 同步上报库时变更清单状态时使用 - @Autowired - private IProjectUserPermissionService projectUserPermissionService; - @Resource - private WebSocket webSocket; // 消息专用 + @Autowired + private ParamsCollectManifestEOMapper paramsCollectManifestEOMapper; + @Autowired + private OnlCgformFieldServiceImpl onlCgformFieldService; + @Autowired + private IParamsConfigEOService paramsConfigEOService; + @Autowired + private IParamsConfigDataEOService paramsConfigDataEOService; + @Autowired + private ISysDictItemService sysDictItemService; + @Autowired + private IOSSFileService ossFileService; + @Autowired + private IParamsInfoPublishEOService paramsInfoPublishEOService; + @Autowired + private ICertCategoryParamsInfoPublishEOService certCategoryParamsInfoPublishEOService; + @Autowired + private IProjectRelatedPersonnelService projectRelatedPersonnelService; + @Autowired + private ISysUserService sysUserService; + @Autowired + private IFeishuService feishuService; + @Autowired + private ISysAnnouncementService sysAnnouncementService; + @Autowired + private IParamsReportEOService paramsReportEOService; + @Autowired + private IParamsReportDetailEOService paramsReportDetailEOService; + @Autowired + private IParamsReportConfigEOService paramsReportConfigEOService; + @Autowired + private IParamsReportConfigDataEOService paramsReportConfigDataEOService; + @Autowired + private IParamsManifestEOService paramsManifestEOService; + @Autowired + private IReportCertCategoryParamsInfoEOService reportCertCategoryParamsInfoEOService; + @Autowired + private ISysUserRoleService sysUserRoleService; + @Autowired + private ProjectLibraryBaseMapper projectLibraryBaseMapper; + @Autowired + private IProjectLibraryBaseService projectLibraryBaseService; + @Autowired + private IParamsCollectManifestLogEOService paramsCollectManifestLogEOService; + @Autowired + private SysDictItemServiceImpl sysDictItemServiceImpl; + @Autowired + private WebSocketServer webSocketServer; // 同步上报库时变更清单状态时使用 + @Autowired + private IProjectUserPermissionService projectUserPermissionService; + @Resource + private WebSocket webSocket; // 消息专用 - @Value(value = "${jero.path.upload}") - private String uploadpath; + @Value(value = "${jero.path.upload}") + private String uploadpath; - - @Value(value = "${jero.backUrl}") - private String backUrl; + @Value(value = "${jero.backUrl}") + private String backUrl; @Autowired private IProjectUserDutyTerritoryService projectUserDutyTerritoryService; - /** - * 保存 - * - * @param paramsCollectManifestVO - * @return - */ - @Override + /** + * 保存 + * + * @param paramsCollectManifestVO + * @return + */ + @Override public boolean add(ParamsCollectManifestVO paramsCollectManifestVO) { - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String projectId = paramsCollectManifestVO.getProjectId(); - List paramsInfoPublishEOList = paramsCollectManifestVO.getParamsInfoPublishEOList(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String projectId = paramsCollectManifestVO.getProjectId(); + List paramsInfoPublishEOList = paramsCollectManifestVO.getParamsInfoPublishEOList(); - LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); - // 复制参数项 - List paramsCollectManifestEOList = new ArrayList<>(); - for (ParamsInfoPublishEO source : paramsInfoPublishEOList) { - ParamsCollectManifestEO target = new ParamsCollectManifestEO(); - BeanUtils.copyProperties(source, target); - target.setId(UUID.randomUUID().toString().replace("-","")); - target.setParamsManifestId(paramsManifestId); - target.setState(CollectManifestStateEnum.WAIT_COLLECT.getValue()); - target.setDelFlag(CollectManifestChangeFlagEnum.DELETE_BEFORE.getValue()); // 设置删除标识 - target.setAddFlag(CollectManifestChangeFlagEnum.ADD_AFTER.getValue()); // 设置添加标识 - target.setChangeFlag(CollectManifestChangeFlagEnum.CHANGE_BEFORE.getValue()); // 设置变更标识 - target.setVersion(1); // 设置参数项初始版本为 1 + // 复制参数项 + List paramsCollectManifestEOList = new ArrayList<>(); + for (ParamsInfoPublishEO source : paramsInfoPublishEOList) { + ParamsCollectManifestEO target = new ParamsCollectManifestEO(); + BeanUtils.copyProperties(source, target); + target.setId(UUID.randomUUID().toString().replace("-", "")); + target.setParamsManifestId(paramsManifestId); + target.setState(CollectManifestStateEnum.WAIT_COLLECT.getValue()); + target.setDelFlag(CollectManifestChangeFlagEnum.DELETE_BEFORE.getValue()); // 设置删除标识 + target.setAddFlag(CollectManifestChangeFlagEnum.ADD_AFTER.getValue()); // 设置添加标识 + target.setChangeFlag(CollectManifestChangeFlagEnum.CHANGE_BEFORE.getValue()); // 设置变更标识 + target.setVersion(1); // 设置参数项初始版本为 1 - Date date = new Date(); - target.setCreateBy(user.getUsername()); - target.setCreateTime(date); - target.setUpdateBy(user.getUsername()); - target.setUpdateTime(date); + Date date = new Date(); + target.setCreateBy(user.getUsername()); + target.setCreateTime(date); + target.setUpdateBy(user.getUsername()); + target.setUpdateTime(date); - // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 - ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectVersionId(), source.getDutyTerritory()); - if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { - String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); - if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 - SysUser sysUser = sysUserService.getById(sdtId); - if (ObjectUtil.isNotEmpty(sysUser)) { - target.setSdt(sysUser.getUsername()); - } - } - } + // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 + ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectVersionId(), source.getDutyTerritory()); + if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { + String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); + if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 + SysUser sysUser = sysUserService.getById(sdtId); + if (ObjectUtil.isNotEmpty(sysUser)) { + target.setSdt(sysUser.getUsername()); + } + } + } - paramsCollectManifestEOList.add(target); - } + paramsCollectManifestEOList.add(target); + } - // 判断清单状态是否为已完成,若是,更改为收集中 - if (ManifestStateEnum.FINISHED.getValue().equals(paramsManifestEO.getState())) { - // 更新清单状态和完成时间 - ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO(); - updateParamsManifestEO.setId(paramsManifestId); - updateParamsManifestEO.setState(ManifestStateEnum.COLLECTING.getValue()); - updateParamsManifestEO.setFinishTime(null); - paramsManifestEOService.updateById(updateParamsManifestEO); - } + // 判断清单状态是否为已完成,若是,更改为收集中 + if (ManifestStateEnum.FINISHED.getValue().equals(paramsManifestEO.getState())) { + // 更新清单状态和完成时间 + ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO(); + updateParamsManifestEO.setId(paramsManifestId); + updateParamsManifestEO.setState(ManifestStateEnum.COLLECTING.getValue()); + updateParamsManifestEO.setFinishTime(null); + paramsManifestEOService.updateById(updateParamsManifestEO); + } - return saveBatch(paramsCollectManifestEOList); + return saveBatch(paramsCollectManifestEOList); } - /** - * 更新 - * - * @param paramsCollectManifestEO - * @return - */ - @Override + /** + * 更新 + * + * @param paramsCollectManifestEO + * @return + */ + @Override public void editById(ParamsCollectManifestEO paramsCollectManifestEO) { - Date now = new Date(); + Date now = new Date(); paramsCollectManifestEO.setUpdateTime(now); - saveOrUpdate(paramsCollectManifestEO); + saveOrUpdate(paramsCollectManifestEO); } - /** - * 通过id删除 - * - * @param id - * @return - */ - @Override + /** + * 通过id删除 + * + * @param id + * @return + */ + @Override public void deleteById(String id) { removeById(id); } - /** - * 批量删除-参数清单页面级 - * - * @param ids - * @return - */ - @Override + /** + * 批量删除-参数清单页面级 + * + * @param ids + * @return + */ + @Override public boolean deleteByIds(List ids) { - // 关联删除配置数据 - paramsConfigDataEOService.deleteByParamsCollectManifestIdList(ids); + // 关联删除配置数据 + paramsConfigDataEOService.deleteByParamsCollectManifestIdList(ids); return removeByIds(ids); } - /** - * 批量删除-参数项收集页面级 - * - * @param paramsCollectManifestVO - * @return - */ - @Override + /** + * 批量删除-参数项收集页面级 + * + * @param paramsCollectManifestVO + * @return + */ + @Override public boolean deleteBatch(ParamsCollectManifestVO paramsCollectManifestVO) { - List ids = Arrays.asList(paramsCollectManifestVO.getIds().split(",")); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + List ids = Arrays.asList(paramsCollectManifestVO.getIds().split(",")); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - // 删除参数项 - boolean isSuccess = removeByIds(ids); - // 关联删除配置数据 - paramsConfigDataEOService.deleteByParamsCollectManifestIdList(ids); + // 删除参数项 + boolean isSuccess = removeByIds(ids); + // 关联删除配置数据 + paramsConfigDataEOService.deleteByParamsCollectManifestIdList(ids); - // 判断清单收集状态 - Map map = isCollectFinished(paramsManifestId); - Boolean finish = (Boolean) map.get("finish"); - Date time = (Date) map.get("time"); - if (finish) { - // 更新清单状态和完成时间 - ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO(); - updateParamsManifestEO.setId(paramsManifestId); - updateParamsManifestEO.setState(ManifestStateEnum.FINISHED.getValue()); - updateParamsManifestEO.setFinishTime(time); - boolean isSuccess2 = paramsManifestEOService.updateById(updateParamsManifestEO); - if (isSuccess2) { - webSocketServer.sendMessage(); - } - } + // 判断清单收集状态 + Map map = isCollectFinished(paramsManifestId); + Boolean finish = (Boolean) map.get("finish"); + Date time = (Date) map.get("time"); + if (finish) { + // 更新清单状态和完成时间 + ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO(); + updateParamsManifestEO.setId(paramsManifestId); + updateParamsManifestEO.setState(ManifestStateEnum.FINISHED.getValue()); + updateParamsManifestEO.setFinishTime(time); + boolean isSuccess2 = paramsManifestEOService.updateById(updateParamsManifestEO); + if (isSuccess2) { + webSocketServer.sendMessage(); + } + } return isSuccess; } - /** - * 通过id查询 - * - * @param id - * @return - */ - @Override + /** + * 通过id查询 + * + * @param id + * @return + */ + @Override public ParamsCollectManifestEO queryById(String id) { return getById(id); } - private ParamsConfigDataEO getConfigDataEOByConfigIdAndCollectManifestId(String configId, String collectManifestId, List paramsConfigDataEOList) { - List configDataEOList = paramsConfigDataEOList.stream().filter(e-> configId.equals(e.getParamsConfigId()) && collectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(configDataEOList)) { - return configDataEOList.get(0); - } - return null; - } + private ParamsConfigDataEO getConfigDataEOByConfigIdAndCollectManifestId(String configId, String collectManifestId, List paramsConfigDataEOList) { + List configDataEOList = paramsConfigDataEOList.stream().filter(e -> configId.equals(e.getParamsConfigId()) && collectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(configDataEOList)) { + return configDataEOList.get(0); + } + return null; + } - private List getConfigDataEOListByConfigIdAndCollectManifestId(String configId, String collectManifestId, List paramsConfigDataEOList) { - List configDataEOList = paramsConfigDataEOList.stream().filter(e-> configId.equals(e.getParamsConfigId()) && collectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(configDataEOList)) { - return configDataEOList; - } - return null; - } + private List getConfigDataEOListByConfigIdAndCollectManifestId(String configId, String collectManifestId, List paramsConfigDataEOList) { + List configDataEOList = paramsConfigDataEOList.stream().filter(e -> configId.equals(e.getParamsConfigId()) && collectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(configDataEOList)) { + return configDataEOList; + } + return null; + } /** - * 列表查询 - * - * @return - */ + * 列表查询 + * + * @return + */ /*@Override public IPage queryList(IPage page, ParamsCollectManifestVO paramsCollectManifestVO, String cut, HttpServletRequest req) { ParamsCollectManifestVO queryEO = new ParamsCollectManifestVO(); @@ -529,1481 +528,1488 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl paramsConfigDataVOList = getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 configMap.put("controlType", controlType); configMap.put("list", paramsConfigDataVOList); - manifestMap.put(paramsConfigEO.getId(), configMap);*/ - - Map paramsConfigDataVO = new HashMap<>(); - Map configMap = new HashMap<>(); - String paramsConfigId = paramsConfigEO.getId(); - List paramsConfigDatas = this.getConfigDataEOListByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId, paramsConfigDataEOList); // 参数配置数据 - if(CollectionUtils.isNotEmpty(paramsConfigDatas)){ - // 匿名比较器排序 - Collections.sort(paramsConfigDatas, new Comparator() { - @Override - public int compare(ParamsConfigDataEO p1, ParamsConfigDataEO p2) { - if(p2.getOrderNum() == null || p1.getOrderNum() == null){ - return 0; - } - return p1.getOrderNum().compareTo(p2.getOrderNum()); - } - }); - for (ParamsConfigDataEO paramsConfigDataEO : paramsConfigDatas) { - List paramsConfigDataVOList = this.getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 - paramsConfigDataVO.put(paramsConfigDataEO.getId(),paramsConfigDataVOList); - } - }else { - ParamsConfigDataEO paramsConfigDataEO = this.getConfigDataEOByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId, paramsConfigDataEOList); // 参数配置数据 - List paramsConfigDataVOList = this.getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 - String key = UUID.randomUUID().toString().replaceAll("-",""); - paramsConfigDataVO.put(key,paramsConfigDataVOList); - } - configMap.put("controlType", controlType); - configMap.put("paramsConfigData", paramsConfigDataVO); - configMap.put("configId",paramsConfigEO.getId()); manifestMap.put(paramsConfigEO.getId(), configMap); - configIdList.add(paramsConfigEO.getId()); - }); - } + Map paramsConfigDataVO = new HashMap<>(); + Map configMap = new HashMap<>(); + String paramsConfigId = paramsConfigEO.getId(); + List paramsConfigDatas = this.getConfigDataEOListByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId, paramsConfigDataEOList); // 参数配置数据 + if(CollectionUtils.isNotEmpty(paramsConfigDatas)) - // 处理负责领域 - Map dutyTerritoryMap = new HashMap<>(); - dutyTerritoryMap.put("id", collectManifestEO.getId()); - dutyTerritoryMap.put("state", collectManifestEO.getState()); - dutyTerritoryMap.put("dataValue", collectManifestEO.getDutyTerritory()); - manifestMap.put("dutyTerritory", dutyTerritoryMap); + { + // 匿名比较器排序 + Collections.sort(paramsConfigDatas, new Comparator() { + @Override + public int compare(ParamsConfigDataEO p1, ParamsConfigDataEO p2) { + if (p2.getOrderNum() == null || p1.getOrderNum() == null) { + return 0; + } + return p1.getOrderNum().compareTo(p2.getOrderNum()); + } + }); + for (ParamsConfigDataEO paramsConfigDataEO : paramsConfigDatas) { + List paramsConfigDataVOList = this.getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 + paramsConfigDataVO.put(paramsConfigDataEO.getId(), paramsConfigDataVOList); + } + }else - // 处理工程接口人 - Map sdtMap = new HashMap<>(); - sdtMap.put("id", collectManifestEO.getId()); - sdtMap.put("state", collectManifestEO.getState()); - sdtMap.put("dutyTerritory", StringUtils.join(dutyTerritory, ",")); - if (StringUtils.isNotBlank(collectManifestEO.getSdt())) { - sdtMap.put("dataValue", collectManifestEO.getSdt()); - } else { - sdtMap.put("dataValue", null); - } - manifestMap.put("sdt", sdtMap); + { + ParamsConfigDataEO paramsConfigDataEO = this.getConfigDataEOByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId, paramsConfigDataEOList); // 参数配置数据 + List paramsConfigDataVOList = this.getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 + String key = UUID.randomUUID().toString().replaceAll("-", ""); + paramsConfigDataVO.put(key, paramsConfigDataVOList); + } + configMap.put("controlType",controlType); + configMap.put("paramsConfigData",paramsConfigDataVO); + configMap.put("configId",paramsConfigEO.getId()); + manifestMap.put(paramsConfigEO.getId(),configMap); - // 配置列名数组 - manifestMap.put("configIds", configIdList); + configIdList.add(paramsConfigEO.getId()); + }); + } - listMap.add(manifestMap); - }); + // 处理负责领域 + Map dutyTerritoryMap=new HashMap<>(); + dutyTerritoryMap.put("id",collectManifestEO.getId()); + dutyTerritoryMap.put("state",collectManifestEO.getState()); + dutyTerritoryMap.put("dataValue",collectManifestEO.getDutyTerritory()); + manifestMap.put("dutyTerritory",dutyTerritoryMap); - pageInfo.setRecords(listMap); + // 处理工程接口人 + Map sdtMap=new HashMap<>(); + sdtMap.put("id",collectManifestEO.getId()); + sdtMap.put("state",collectManifestEO.getState()); + sdtMap.put("dutyTerritory",StringUtils.join(dutyTerritory,",")); + if(StringUtils.isNotBlank(collectManifestEO.getSdt())){ + sdtMap.put("dataValue",collectManifestEO.getSdt()); + }else{ + sdtMap.put("dataValue",null); + } + manifestMap.put("sdt",sdtMap); + + // 配置列名数组 + manifestMap.put("configIds",configIdList); + + listMap.add(manifestMap); + }); + + pageInfo.setRecords(listMap); return pageInfo; - }*/ + }*/ - /** - * 列表查询 - * - * @return - */ - @Override - public IPage queryList(IPage page, ParamsCollectManifestVO paramsCollectManifestVO, String cut) { - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); + /** + * 列表查询 + * + * @return + */ + @Override + public IPage queryList(IPage page, ParamsCollectManifestVO paramsCollectManifestVO, String cut) { + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); - String userTypes = paramsCollectManifestVO.getUserTypes(); - if (StringUtils.isBlank(userTypes)) { - if (CutEnum.CN.getValue().equals(cut)) { - throw new JeroBootException("用户类型参数不能为空!"); - } else { - throw new JeroBootException("User type can not be null!"); - } - } - if (!CollectManifestUserTypeEnum.doesValueExist(userTypes)) { - if (CutEnum.CN.getValue().equals(cut)) { - throw new JeroBootException("用户类型不存在!"); - } else { - throw new JeroBootException("User type is not exist!"); - } - } + String userTypes = paramsCollectManifestVO.getUserTypes(); + if (StringUtils.isBlank(userTypes)) { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("用户类型参数不能为空!"); + } else { + throw new JeroBootException("User type can not be null!"); + } + } + if (!CollectManifestUserTypeEnum.doesValueExist(userTypes)) { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("用户类型不存在!"); + } else { + throw new JeroBootException("User type is not exist!"); + } + } - StringBuilder sqlJoinSb = new StringBuilder(); - sqlJoinSb.append("where control_type not in ").append("('").append(ControlTypeEnum.Title.getValue()).append("')"); + StringBuilder sqlJoinSb = new StringBuilder(); + sqlJoinSb.append("where control_type not in ").append("('").append(ControlTypeEnum.Title.getValue()).append("')"); - LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录用户 - if ("sdt".equals(userTypes)) { - sqlJoinSb.append(" and sdt = '").append(loginUser.getUsername()).append("'"); - sqlJoinSb.append(" and state in ('2','4','5','6','7','8')"); - } else if ("dre".equals(userTypes)) { - sqlJoinSb.append(" and dre = '").append(loginUser.getUsername()).append("'"); - sqlJoinSb.append(" and state in ('4','6','7','8')"); - } else if ("guest".equals(userTypes)) { - return page; - } else if (CollectManifestUserTypeEnum.VIEWER.getValue().equals(userTypes)) { - List dutyTerritoryList = projectUserDutyTerritoryService.queryDutyTerritoryByUserId(loginUser.getId()); - StringBuilder dutyTerritorySb = new StringBuilder(); - for (int i = 0; i < dutyTerritoryList.size(); i++) { - dutyTerritorySb.append("'").append(dutyTerritoryList.get(i)).append("'"); - // 如果还有下一条 - if(i+1 < dutyTerritoryList.size()){ - dutyTerritorySb.append(","); - } - } + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录用户 + if ("sdt".equals(userTypes)) { + sqlJoinSb.append(" and sdt = '").append(loginUser.getUsername()).append("'"); + sqlJoinSb.append(" and state in ('2','4','5','6','7','8')"); + } else if ("dre".equals(userTypes)) { + sqlJoinSb.append(" and dre = '").append(loginUser.getUsername()).append("'"); + sqlJoinSb.append(" and state in ('4','6','7','8')"); + } else if ("guest".equals(userTypes)) { + return page; + } else if (CollectManifestUserTypeEnum.VIEWER.getValue().equals(userTypes)) { + List dutyTerritoryList = projectUserDutyTerritoryService.queryDutyTerritoryByUserId(loginUser.getId()); + StringBuilder dutyTerritorySb = new StringBuilder(); + for (int i = 0; i < dutyTerritoryList.size(); i++) { + dutyTerritorySb.append("'").append(dutyTerritoryList.get(i)).append("'"); + // 如果还有下一条 + if (i + 1 < dutyTerritoryList.size()) { + dutyTerritorySb.append(","); + } + } - sqlJoinSb.append(" and (").append("sdt = '").append(loginUser.getUsername()).append("'") - .append(" or dre = '").append(loginUser.getUsername()).append("'") - .append(" or duty_territory in (").append(dutyTerritorySb.toString()).append(")") - .append(")"); - } - // 搜索NIO编号或认证类别编号 精确搜索 - if (StringUtils.isNotEmpty(paramsCollectManifestVO.getAllNumber())) { - paramsCollectManifestVO.setAllNumber(paramsCollectManifestVO.getAllNumber().replaceAll("'","\'")); - sqlJoinSb.append(" and (").append("nio_number = '").append(paramsCollectManifestVO.getAllNumber()).append("'"); - sqlJoinSb.append(" or nio_number in (") - .append("select nio_number from cert_category_params_info_publish where params_number = '").append(paramsCollectManifestVO.getAllNumber()).append("'") - .append(")"); - sqlJoinSb.append(")"); - } - if (StringUtils.isNotEmpty(paramsCollectManifestVO.getDutyTerritory())) { - List dutyTerritoryList = Arrays.asList(paramsCollectManifestVO.getDutyTerritory().split(",")); - StringBuilder dutyTerritoryListSb = new StringBuilder(); - for (int i = 0; i < dutyTerritoryList.size(); i++) { - dutyTerritoryListSb.append("'").append(dutyTerritoryList.get(i)).append("'"); - if(i+1 < dutyTerritoryList.size()){ - dutyTerritoryListSb.append(","); - } - } + sqlJoinSb.append(" and (").append("sdt = '").append(loginUser.getUsername()).append("'") + .append(" or dre = '").append(loginUser.getUsername()).append("'") + .append(" or duty_territory in (").append(dutyTerritorySb.toString()).append(")") + .append(")"); + } + // 搜索NIO编号或认证类别编号 精确搜索 + if (StringUtils.isNotEmpty(paramsCollectManifestVO.getAllNumber())) { + paramsCollectManifestVO.setAllNumber(paramsCollectManifestVO.getAllNumber().replaceAll("'", "\'")); + sqlJoinSb.append(" and (").append("nio_number = '").append(paramsCollectManifestVO.getAllNumber()).append("'"); + sqlJoinSb.append(" or nio_number in (") + .append("select nio_number from cert_category_params_info_publish where params_number = '").append(paramsCollectManifestVO.getAllNumber()).append("'") + .append(")"); + sqlJoinSb.append(")"); + } + if (StringUtils.isNotEmpty(paramsCollectManifestVO.getDutyTerritory())) { + List dutyTerritoryList = Arrays.asList(paramsCollectManifestVO.getDutyTerritory().split(",")); + StringBuilder dutyTerritoryListSb = new StringBuilder(); + for (int i = 0; i < dutyTerritoryList.size(); i++) { + dutyTerritoryListSb.append("'").append(dutyTerritoryList.get(i)).append("'"); + if (i + 1 < dutyTerritoryList.size()) { + dutyTerritoryListSb.append(","); + } + } - sqlJoinSb.append(" and duty_territory in (").append(dutyTerritoryListSb.toString()).append(")"); - } + sqlJoinSb.append(" and duty_territory in (").append(dutyTerritoryListSb.toString()).append(")"); + } - if (StringUtils.isNotEmpty(paramsCollectManifestVO.getParamsName())) { - paramsCollectManifestVO.setParamsName(paramsCollectManifestVO.getParamsName().replaceAll("'","\'")); - sqlJoinSb.append(" and params_name like '%").append(paramsCollectManifestVO.getParamsName()).append("%'"); - } + if (StringUtils.isNotEmpty(paramsCollectManifestVO.getParamsName())) { + paramsCollectManifestVO.setParamsName(paramsCollectManifestVO.getParamsName().replaceAll("'", "\'")); + sqlJoinSb.append(" and params_name like '%").append(paramsCollectManifestVO.getParamsName()).append("%'"); + } - if (StringUtils.isNotEmpty(paramsCollectManifestVO.getSdt())) { - paramsCollectManifestVO.setSdt(paramsCollectManifestVO.getSdt().replaceAll("'","\'")); - sqlJoinSb.append(" and sdt like '%").append(paramsCollectManifestVO.getSdt()).append("%'"); - } + if (StringUtils.isNotEmpty(paramsCollectManifestVO.getSdt())) { + paramsCollectManifestVO.setSdt(paramsCollectManifestVO.getSdt().replaceAll("'", "\'")); + sqlJoinSb.append(" and sdt like '%").append(paramsCollectManifestVO.getSdt()).append("%'"); + } - if (StringUtils.isNotEmpty(paramsCollectManifestVO.getDre())) { - paramsCollectManifestVO.setDre(paramsCollectManifestVO.getDre().replaceAll("'","\'")); - sqlJoinSb.append(" and dre like '%").append(paramsCollectManifestVO.getDre()).append("%'"); - } + if (StringUtils.isNotEmpty(paramsCollectManifestVO.getDre())) { + paramsCollectManifestVO.setDre(paramsCollectManifestVO.getDre().replaceAll("'", "\'")); + sqlJoinSb.append(" and dre like '%").append(paramsCollectManifestVO.getDre()).append("%'"); + } - // 如果高级查询条件不为空,拼接参数 - if(StringUtils.isNotEmpty(paramsCollectManifestVO.getQueryConditionVOListStr())){ - List queryConditionVOList = JSONObject.parseArray(paramsCollectManifestVO.getQueryConditionVOListStr(), QueryConditionVO.class); - this.createAdvanceedSearchCondition(queryConditionVOList,sqlJoinSb); - } + // 如果高级查询条件不为空,拼接参数 + if (StringUtils.isNotEmpty(paramsCollectManifestVO.getQueryConditionVOListStr())) { + List queryConditionVOList = JSONObject.parseArray(paramsCollectManifestVO.getQueryConditionVOListStr(), QueryConditionVO.class); + this.createAdvanceedSearchCondition(queryConditionVOList, sqlJoinSb); + } - if(StringUtils.isEmpty(paramsCollectManifestVO.getOrderByField())){ - sqlJoinSb.append(" ORDER BY del_flag DESC") - .append(", add_flag DESC") - .append(", change_flag DESC") - .append(", nio_number ASC"); - }else { - // 拼接动态排序字段 - sqlJoinSb.append(" ORDER BY ").append(paramsCollectManifestVO.getOrderByField()); - // 拼接排序方式 - if(StringUtils.equals(paramsCollectManifestVO.getOrderBy(),"1")){ - sqlJoinSb.append(" ASC"); - }else { - sqlJoinSb.append(" DESC"); - } - } + if (StringUtils.isEmpty(paramsCollectManifestVO.getOrderByField())) { + sqlJoinSb.append(" ORDER BY del_flag DESC") + .append(", add_flag DESC") + .append(", change_flag DESC") + .append(", nio_number ASC"); + } else { + // 拼接动态排序字段 + sqlJoinSb.append(" ORDER BY ").append(paramsCollectManifestVO.getOrderByField()); + // 拼接排序方式 + if (StringUtils.equals(paramsCollectManifestVO.getOrderBy(), "1")) { + sqlJoinSb.append(" ASC"); + } else { + sqlJoinSb.append(" DESC"); + } + } - IPage pageInfo = paramsCollectManifestEOMapper.selectpage(page, sqlJoinSb.toString(),paramsManifestEO); // 查询固定列 - List list = pageInfo.getRecords(); // 查询固定列 - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询配置列 - List paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); - List paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据 + IPage pageInfo = paramsCollectManifestEOMapper.selectpage(page, sqlJoinSb.toString(), paramsManifestEO); // 查询固定列 + List list = pageInfo.getRecords(); // 查询固定列 + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询配置列 + List paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); + List paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据 - // 普通数据字典 - List dictItemList = new ArrayList<>(); - List dictCodeList = new ArrayList<>(); - dictCodeList.add("duty_territory"); - dictCodeList.add("cert_category"); - for (String dictCode : dictCodeList) { - List dictItems = sysDictItemService.selectItemsByDictCode(dictCode); - dictItemList.addAll(dictItems); - } + // 普通数据字典 + List dictItemList = new ArrayList<>(); + List dictCodeList = new ArrayList<>(); + dictCodeList.add("duty_territory"); + dictCodeList.add("cert_category"); + for (String dictCode : dictCodeList) { + List dictItems = sysDictItemService.selectItemsByDictCode(dictCode); + dictItemList.addAll(dictItems); + } - List> listMap = new ArrayList<>(); - list.forEach(collectManifestEO -> { // 参数收集清单 - // 处理数据字典字段 中英文切换 认证类型,责任领域 - List certCategory = Arrays.asList(collectManifestEO.getCertCategory().split(",")); - List dutyTerritory = Arrays.asList(collectManifestEO.getDutyTerritory().split(",")); // 单选 - String certCategoryName = ""; - String dutyTerritoryName = ""; - if (CutEnum.CN.getValue().equals(cut)) { - certCategoryName = dictItemList.stream() - .filter(e -> certCategory.contains(e.getItemValue())) - .map(SysDictItem::getItemText) - .collect(Collectors.joining(",")); + List> listMap = new ArrayList<>(); + list.forEach(collectManifestEO -> { // 参数收集清单 + // 处理数据字典字段 中英文切换 认证类型,责任领域 + List certCategory = Arrays.asList(collectManifestEO.getCertCategory().split(",")); + List dutyTerritory = Arrays.asList(collectManifestEO.getDutyTerritory().split(",")); // 单选 + String certCategoryName = ""; + String dutyTerritoryName = ""; + if (CutEnum.CN.getValue().equals(cut)) { + certCategoryName = dictItemList.stream() + .filter(e -> certCategory.contains(e.getItemValue())) + .map(SysDictItem::getItemText) + .collect(Collectors.joining(",")); - dutyTerritoryName = dictItemList.stream() - .filter(e -> dutyTerritory.contains(e.getItemValue())) - .map(SysDictItem::getItemText) - .collect(Collectors.joining(",")); + dutyTerritoryName = dictItemList.stream() + .filter(e -> dutyTerritory.contains(e.getItemValue())) + .map(SysDictItem::getItemText) + .collect(Collectors.joining(",")); - } else if (CutEnum.EN.getValue().equals(cut)) { - certCategoryName = dictItemList.stream() - .filter(e -> certCategory.contains(e.getItemValue())) - .map(SysDictItem::getEnName) - .collect(Collectors.joining(",")); + } else if (CutEnum.EN.getValue().equals(cut)) { + certCategoryName = dictItemList.stream() + .filter(e -> certCategory.contains(e.getItemValue())) + .map(SysDictItem::getEnName) + .collect(Collectors.joining(",")); - dutyTerritoryName = dictItemList.stream() - .filter(e -> dutyTerritory.contains(e.getItemValue())) - .map(SysDictItem::getEnName) - .collect(Collectors.joining(",")); + dutyTerritoryName = dictItemList.stream() + .filter(e -> dutyTerritory.contains(e.getItemValue())) + .map(SysDictItem::getEnName) + .collect(Collectors.joining(",")); - } + } - collectManifestEO.setCertCategory(certCategoryName); - collectManifestEO.setDutyTerritory(dutyTerritoryName); + collectManifestEO.setCertCategory(certCategoryName); + collectManifestEO.setDutyTerritory(dutyTerritoryName); - // 处理状态字段 - Map collectManifestStateMap = CollectManifestStateEnum.toMap(cut); - String stateName = collectManifestStateMap.get(collectManifestEO.getState()); - collectManifestEO.setState(stateName); + // 处理状态字段 + Map collectManifestStateMap = CollectManifestStateEnum.toMap(cut); + String stateName = collectManifestStateMap.get(collectManifestEO.getState()); + collectManifestEO.setState(stateName); - List configIdList = new ArrayList<>(); // 配置列名 + List configIdList = new ArrayList<>(); // 配置列名 - Map manifestMap = objectToMap(collectManifestEO); // 对象转map - String controlType = collectManifestEO.getControlType(); - String paramsCollectManifestId = collectManifestEO.getId(); + Map manifestMap = objectToMap(collectManifestEO); // 对象转map + String controlType = collectManifestEO.getControlType(); + String paramsCollectManifestId = collectManifestEO.getId(); - if (StringUtils.isNotEmpty(paramsManifestEO.getReferencesColName())) { - Map referencesColMap = new HashMap<>(); - String referencesCol = collectManifestEO.getReferencesCol(); - if (StringUtils.isNotBlank(referencesCol)) { - List referencesColVOList = getReferencesColList(controlType, referencesCol, collectManifestEO, userTypes); // 重新组合配置数据 - referencesColMap.put("controlType", controlType); - referencesColMap.put("list", referencesColVOList); - manifestMap.put("referencesCol", referencesColMap); - } else { - List referencesColVOList = getReferencesColList(controlType, " # # #", collectManifestEO, userTypes); // 重新组合配置数据 - referencesColMap.put("controlType", controlType); - referencesColMap.put("list", referencesColVOList); - manifestMap.put("referencesCol", referencesColMap); - } - } + if (StringUtils.isNotEmpty(paramsManifestEO.getReferencesColName())) { + Map referencesColMap = new HashMap<>(); + String referencesCol = collectManifestEO.getReferencesCol(); + if (StringUtils.isNotBlank(referencesCol)) { + List referencesColVOList = getReferencesColList(controlType, referencesCol, collectManifestEO, userTypes); // 重新组合配置数据 + referencesColMap.put("controlType", controlType); + referencesColMap.put("list", referencesColVOList); + manifestMap.put("referencesCol", referencesColMap); + } else { + List referencesColVOList = getReferencesColList(controlType, " # # #", collectManifestEO, userTypes); // 重新组合配置数据 + referencesColMap.put("controlType", controlType); + referencesColMap.put("list", referencesColVOList); + manifestMap.put("referencesCol", referencesColMap); + } + } - if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { - paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置 - Map configMap = new HashMap<>(); - String paramsConfigId = paramsConfigEO.getId(); - ParamsConfigDataEO paramsConfigDataEO = getConfigDataEOByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId, paramsConfigDataEOList); // 参数配置数据 - List paramsConfigDataVOList = getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 - configMap.put("controlType", controlType); - configMap.put("list", paramsConfigDataVOList); - manifestMap.put(paramsConfigEO.getId(), configMap); + if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { + paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置 + Map configMap = new HashMap<>(); + String paramsConfigId = paramsConfigEO.getId(); + ParamsConfigDataEO paramsConfigDataEO = getConfigDataEOByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId, paramsConfigDataEOList); // 参数配置数据 + List paramsConfigDataVOList = getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 + configMap.put("controlType", controlType); + configMap.put("list", paramsConfigDataVOList); + manifestMap.put(paramsConfigEO.getId(), configMap); - configIdList.add(paramsConfigEO.getId()); - }); - } + configIdList.add(paramsConfigEO.getId()); + }); + } - // 处理负责领域 - Map dutyTerritoryMap = new HashMap<>(); - dutyTerritoryMap.put("id", collectManifestEO.getId()); - dutyTerritoryMap.put("state", collectManifestEO.getState()); - dutyTerritoryMap.put("dataValue", collectManifestEO.getDutyTerritory()); - manifestMap.put("dutyTerritory", dutyTerritoryMap); + // 处理负责领域 + Map dutyTerritoryMap = new HashMap<>(); + dutyTerritoryMap.put("id", collectManifestEO.getId()); + dutyTerritoryMap.put("state", collectManifestEO.getState()); + dutyTerritoryMap.put("dataValue", collectManifestEO.getDutyTerritory()); + manifestMap.put("dutyTerritory", dutyTerritoryMap); - // 处理工程接口人 - Map sdtMap = new HashMap<>(); - sdtMap.put("id", collectManifestEO.getId()); - sdtMap.put("state", collectManifestEO.getState()); - sdtMap.put("dutyTerritory", StringUtils.join(dutyTerritory, ",")); - if (StringUtils.isNotBlank(collectManifestEO.getSdt())) { - sdtMap.put("dataValue", collectManifestEO.getSdt()); - } else { - sdtMap.put("dataValue", null); - } - manifestMap.put("sdt", sdtMap); + // 处理工程接口人 + Map sdtMap = new HashMap<>(); + sdtMap.put("id", collectManifestEO.getId()); + sdtMap.put("state", collectManifestEO.getState()); + sdtMap.put("dutyTerritory", StringUtils.join(dutyTerritory, ",")); + if (StringUtils.isNotBlank(collectManifestEO.getSdt())) { + sdtMap.put("dataValue", collectManifestEO.getSdt()); + } else { + sdtMap.put("dataValue", null); + } + manifestMap.put("sdt", sdtMap); - // 配置列名数组 - manifestMap.put("configIds", configIdList); + // 配置列名数组 + manifestMap.put("configIds", configIdList); - listMap.add(manifestMap); - }); + listMap.add(manifestMap); + }); - pageInfo.setRecords(listMap); - return pageInfo; - } + pageInfo.setRecords(listMap); + return pageInfo; + } - /** - * 重新组装配置数据 用于返回前端 - * @param controlType - * @param paramsConfigDataEO - * @param paramsCollectManifestEO - * @return - */ + /** + * 重新组装配置数据 用于返回前端 + * + * @param controlType + * @param paramsConfigDataEO + * @param paramsCollectManifestEO + * @return + */ private List getConfigDataVOList(String controlType, ParamsConfigEO paramsConfigEO, ParamsConfigDataEO paramsConfigDataEO, ParamsCollectManifestEO paramsCollectManifestEO) { - List paramsConfigDataVOList = new ArrayList<>(); - String templateId = null; - String templateName = null; - if (StringUtils.isNotEmpty(paramsCollectManifestEO.getFileTemplateConnectId())) { - List ossFiles = ossFileService.getFileInfosByConnectId(paramsCollectManifestEO.getFileTemplateConnectId()); + List paramsConfigDataVOList = new ArrayList<>(); + String templateId = null; + String templateName = null; + if (StringUtils.isNotEmpty(paramsCollectManifestEO.getFileTemplateConnectId())) { + List ossFiles = ossFileService.getFileInfosByConnectId(paramsCollectManifestEO.getFileTemplateConnectId()); - if (CollectionUtil.isNotEmpty(ossFiles)) { - templateId = ossFiles.get(0).getId(); - templateName = ossFiles.get(0).getFileName(); - } - } - if (ControlTypeEnum.TEXT.getValue().equals(controlType)) { + if (CollectionUtil.isNotEmpty(ossFiles)) { + templateId = ossFiles.get(0).getId(); + templateName = ossFiles.get(0).getFileName(); + } + } + if (ControlTypeEnum.TEXT.getValue().equals(controlType)) { - ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); - configDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); - configDataVO.setIsLock(paramsConfigEO.getIsLock()); - configDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - configDataVO.setDataValue(paramsConfigDataEO.getTextData()); - } - paramsConfigDataVOList.add(configDataVO); + ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); + configDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); + configDataVO.setIsLock(paramsConfigEO.getIsLock()); + configDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + configDataVO.setDataValue(paramsConfigDataEO.getTextData()); + } + paramsConfigDataVOList.add(configDataVO); - } else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType)) { - ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); - configDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); - configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); - configDataVO.setIsLock(paramsConfigEO.getIsLock()); - configDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - configDataVO.setDataValue(paramsConfigDataEO.getPullData()); - } - paramsConfigDataVOList.add(configDataVO); + ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); + configDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); + configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); + configDataVO.setIsLock(paramsConfigEO.getIsLock()); + configDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataVO.setDataValue(paramsConfigDataEO.getPullData()); + } + paramsConfigDataVOList.add(configDataVO); - } else if (ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) { - ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); - configDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); - configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); - configDataVO.setIsLock(paramsConfigEO.getIsLock()); - configDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - configDataVO.setDataValue(paramsConfigDataEO.getPullData()); - } - paramsConfigDataVOList.add(configDataVO); + ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); + configDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); + configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); + configDataVO.setIsLock(paramsConfigEO.getIsLock()); + configDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataVO.setDataValue(paramsConfigDataEO.getPullData()); + } + paramsConfigDataVOList.add(configDataVO); - } else if (ControlTypeEnum.FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.FILE.getValue().equals(controlType)) { - ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); - configDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); - configDataVO.setIsLock(paramsConfigEO.getIsLock()); - configDataVO.setTemplateId(templateId); - configDataVO.setTemplateName(templateName); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - configDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); - } - paramsConfigDataVOList.add(configDataVO); + ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); + configDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); + configDataVO.setIsLock(paramsConfigEO.getIsLock()); + configDataVO.setTemplateId(templateId); + configDataVO.setTemplateName(templateName); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + configDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); + } + paramsConfigDataVOList.add(configDataVO); - } else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) { - ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - textConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData()); - } + textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + textConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData()); + } - pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); - pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); - } + pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); + pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); + } - paramsConfigDataVOList.add(pullConfigDataVO); - paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(pullConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); - } else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { - ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - textConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData()); - } + textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + textConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData()); + } - pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); - pullMoreConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); - } + pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); + pullMoreConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); + } - paramsConfigDataVOList.add(pullMoreConfigDataVO); - paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(pullMoreConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); - } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { - ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - textConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + textConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - textConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData()); - } + textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + textConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData()); + } - fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - fileConfigDataVO.setTemplateId(templateId); - fileConfigDataVO.setTemplateName(templateName); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); - } + fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + fileConfigDataVO.setTemplateId(templateId); + fileConfigDataVO.setTemplateName(templateName); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); + } - paramsConfigDataVOList.add(textConfigDataVO); - paramsConfigDataVOList.add(fileConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); - } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) { - ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); - pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); - } + pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); + pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); + } - fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - fileConfigDataVO.setTemplateId(templateId); - fileConfigDataVO.setTemplateName(templateName); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); - } + fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + fileConfigDataVO.setTemplateId(templateId); + fileConfigDataVO.setTemplateName(templateName); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); + } - paramsConfigDataVOList.add(pullConfigDataVO); - paramsConfigDataVOList.add(fileConfigDataVO); + paramsConfigDataVOList.add(pullConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); - } else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { - ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); - pullMoreConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); - } + pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); + pullMoreConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); + } - fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - fileConfigDataVO.setTemplateId(templateId); - fileConfigDataVO.setTemplateName(templateName); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); - } + fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + fileConfigDataVO.setTemplateId(templateId); + fileConfigDataVO.setTemplateName(templateName); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); + } - paramsConfigDataVOList.add(pullMoreConfigDataVO); - paramsConfigDataVOList.add(fileConfigDataVO); + paramsConfigDataVOList.add(pullMoreConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); - } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { - ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - textConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData()); - } + textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + textConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData()); + } - pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); - pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); - } + pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); + pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData()); + } - fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); - fileConfigDataVO.setTemplateId(templateId); - fileConfigDataVO.setTemplateName(templateName); - if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); - } + fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock()); + fileConfigDataVO.setTemplateId(templateId); + fileConfigDataVO.setTemplateName(templateName); + if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId()); + } - paramsConfigDataVOList.add(pullConfigDataVO); - paramsConfigDataVOList.add(textConfigDataVO); - paramsConfigDataVOList.add(fileConfigDataVO); + paramsConfigDataVOList.add(pullConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); - } - return paramsConfigDataVOList; - } + } + return paramsConfigDataVOList; + } - /** - * 重新组装配置数据 用于返回前端 - * @param controlType - * @param referencesCol - * @param paramsCollectManifestEO - * @return - */ + /** + * 重新组装配置数据 用于返回前端 + * + * @param controlType + * @param referencesCol + * @param paramsCollectManifestEO + * @return + */ private List getReferencesColList(String controlType, String referencesCol, ParamsCollectManifestEO paramsCollectManifestEO, String userTypes) { - List referencesColList = Arrays.asList(referencesCol.split("#")); - List paramsConfigDataVOList = new ArrayList<>(); - String templateId = null; - String templateName = null; - if (StringUtils.isNotEmpty(paramsCollectManifestEO.getFileTemplateConnectId())) { - List ossFiles = ossFileService.getFileInfosByConnectId(paramsCollectManifestEO.getFileTemplateConnectId()); + List referencesColList = Arrays.asList(referencesCol.split("#")); + List paramsConfigDataVOList = new ArrayList<>(); + String templateId = null; + String templateName = null; + if (StringUtils.isNotEmpty(paramsCollectManifestEO.getFileTemplateConnectId())) { + List ossFiles = ossFileService.getFileInfosByConnectId(paramsCollectManifestEO.getFileTemplateConnectId()); - if (CollectionUtil.isNotEmpty(ossFiles)) { - templateId = ossFiles.get(0).getId(); - templateName = ossFiles.get(0).getFileName(); - } - } + if (CollectionUtil.isNotEmpty(ossFiles)) { + templateId = ossFiles.get(0).getId(); + templateName = ossFiles.get(0).getFileName(); + } + } - String lockFlag = ConfigLockEnum.YES.getValue(); - if (CollectManifestUserTypeEnum.HOMO.getValue().equals(userTypes)) { - lockFlag = ConfigLockEnum.NO.getValue(); - } - if (ControlTypeEnum.TEXT.getValue().equals(controlType)) { + String lockFlag = ConfigLockEnum.YES.getValue(); + if (CollectManifestUserTypeEnum.HOMO.getValue().equals(userTypes)) { + lockFlag = ConfigLockEnum.NO.getValue(); + } + if (ControlTypeEnum.TEXT.getValue().equals(controlType)) { - ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); - configDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); - configDataVO.setIsLock(lockFlag); - configDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (StringUtils.isNotBlank(referencesColList.get(0))) { - configDataVO.setDataValue(referencesColList.get(0)); - } - paramsConfigDataVOList.add(configDataVO); + ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); + configDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); + configDataVO.setIsLock(lockFlag); + configDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (StringUtils.isNotBlank(referencesColList.get(0))) { + configDataVO.setDataValue(referencesColList.get(0)); + } + paramsConfigDataVOList.add(configDataVO); - } else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType)) { - ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); - configDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); - configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); - configDataVO.setIsLock(lockFlag); - configDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (StringUtils.isNotBlank(referencesColList.get(1))) { - configDataVO.setDataValue(referencesColList.get(1)); - } - paramsConfigDataVOList.add(configDataVO); + ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); + configDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); + configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); + configDataVO.setIsLock(lockFlag); + configDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (StringUtils.isNotBlank(referencesColList.get(1))) { + configDataVO.setDataValue(referencesColList.get(1)); + } + paramsConfigDataVOList.add(configDataVO); - } else if (ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) { - ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); - configDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); - configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); - configDataVO.setIsLock(lockFlag); - configDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (StringUtils.isNotBlank(referencesColList.get(1))) { - configDataVO.setDataValue(referencesColList.get(1)); - } - paramsConfigDataVOList.add(configDataVO); + ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); + configDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); + configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); + configDataVO.setIsLock(lockFlag); + configDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (StringUtils.isNotBlank(referencesColList.get(1))) { + configDataVO.setDataValue(referencesColList.get(1)); + } + paramsConfigDataVOList.add(configDataVO); - } else if (ControlTypeEnum.FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.FILE.getValue().equals(controlType)) { - ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); - configDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); - configDataVO.setIsLock(lockFlag); - configDataVO.setTemplateId(templateId); - configDataVO.setTemplateName(templateName); - if (StringUtils.isNotBlank(referencesColList.get(2))) { - configDataVO.setDataValue(referencesColList.get(2)); - } - paramsConfigDataVOList.add(configDataVO); + ParamsConfigDataVO configDataVO = new ParamsConfigDataVO(); + configDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); + configDataVO.setIsLock(lockFlag); + configDataVO.setTemplateId(templateId); + configDataVO.setTemplateName(templateName); + if (StringUtils.isNotBlank(referencesColList.get(2))) { + configDataVO.setDataValue(referencesColList.get(2)); + } + paramsConfigDataVOList.add(configDataVO); - } else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) { - ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - textConfigDataVO.setIsLock(lockFlag); - textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (StringUtils.isNotBlank(referencesColList.get(0))) { - textConfigDataVO.setDataValue(referencesColList.get(0)); - } + textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + textConfigDataVO.setIsLock(lockFlag); + textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (StringUtils.isNotBlank(referencesColList.get(0))) { + textConfigDataVO.setDataValue(referencesColList.get(0)); + } - pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); - pullConfigDataVO.setIsLock(lockFlag); - pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (StringUtils.isNotBlank(referencesColList.get(1))) { - pullConfigDataVO.setDataValue(referencesColList.get(1)); - } + pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); + pullConfigDataVO.setIsLock(lockFlag); + pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (StringUtils.isNotBlank(referencesColList.get(1))) { + pullConfigDataVO.setDataValue(referencesColList.get(1)); + } - paramsConfigDataVOList.add(pullConfigDataVO); - paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(pullConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); - } else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { - ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - textConfigDataVO.setIsLock(lockFlag); - textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (StringUtils.isNotBlank(referencesColList.get(0))) { - textConfigDataVO.setDataValue(referencesColList.get(0)); - } + textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + textConfigDataVO.setIsLock(lockFlag); + textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (StringUtils.isNotBlank(referencesColList.get(0))) { + textConfigDataVO.setDataValue(referencesColList.get(0)); + } - pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); - pullMoreConfigDataVO.setIsLock(lockFlag); - pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (StringUtils.isNotBlank(referencesColList.get(1))) { - pullMoreConfigDataVO.setDataValue(referencesColList.get(1)); - } + pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); + pullMoreConfigDataVO.setIsLock(lockFlag); + pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (StringUtils.isNotBlank(referencesColList.get(1))) { + pullMoreConfigDataVO.setDataValue(referencesColList.get(1)); + } - paramsConfigDataVOList.add(pullMoreConfigDataVO); - paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(pullMoreConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); - } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { - ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - textConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + textConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - textConfigDataVO.setIsLock(lockFlag); - textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (StringUtils.isNotBlank(referencesColList.get(0))) { - textConfigDataVO.setDataValue(referencesColList.get(0)); - } + textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + textConfigDataVO.setIsLock(lockFlag); + textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (StringUtils.isNotBlank(referencesColList.get(0))) { + textConfigDataVO.setDataValue(referencesColList.get(0)); + } - fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - fileConfigDataVO.setIsLock(lockFlag); - fileConfigDataVO.setTemplateId(templateId); - fileConfigDataVO.setTemplateName(templateName); - if (StringUtils.isNotBlank(referencesColList.get(2))) { - fileConfigDataVO.setDataValue(referencesColList.get(2)); - } + fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + fileConfigDataVO.setIsLock(lockFlag); + fileConfigDataVO.setTemplateId(templateId); + fileConfigDataVO.setTemplateName(templateName); + if (StringUtils.isNotBlank(referencesColList.get(2))) { + fileConfigDataVO.setDataValue(referencesColList.get(2)); + } - paramsConfigDataVOList.add(textConfigDataVO); - paramsConfigDataVOList.add(fileConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); - } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) { - ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); - pullConfigDataVO.setIsLock(lockFlag); - pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (StringUtils.isNotBlank(referencesColList.get(1))) { - pullConfigDataVO.setDataValue(referencesColList.get(1)); - } + pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); + pullConfigDataVO.setIsLock(lockFlag); + pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (StringUtils.isNotBlank(referencesColList.get(1))) { + pullConfigDataVO.setDataValue(referencesColList.get(1)); + } - fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - fileConfigDataVO.setIsLock(lockFlag); - fileConfigDataVO.setTemplateId(templateId); - fileConfigDataVO.setTemplateName(templateName); - if (StringUtils.isNotBlank(referencesColList.get(2))) { - fileConfigDataVO.setDataValue(referencesColList.get(2)); - } + fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + fileConfigDataVO.setIsLock(lockFlag); + fileConfigDataVO.setTemplateId(templateId); + fileConfigDataVO.setTemplateName(templateName); + if (StringUtils.isNotBlank(referencesColList.get(2))) { + fileConfigDataVO.setDataValue(referencesColList.get(2)); + } - paramsConfigDataVOList.add(pullConfigDataVO); - paramsConfigDataVOList.add(fileConfigDataVO); + paramsConfigDataVOList.add(pullConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); - } else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { - ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); - pullMoreConfigDataVO.setIsLock(lockFlag); - pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (StringUtils.isNotBlank(referencesColList.get(1))) { - pullMoreConfigDataVO.setDataValue(referencesColList.get(1)); - } + pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue()); + pullMoreConfigDataVO.setIsLock(lockFlag); + pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (StringUtils.isNotBlank(referencesColList.get(1))) { + pullMoreConfigDataVO.setDataValue(referencesColList.get(1)); + } - fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - fileConfigDataVO.setIsLock(lockFlag); - fileConfigDataVO.setTemplateId(templateId); - fileConfigDataVO.setTemplateName(templateName); - if (StringUtils.isNotBlank(referencesColList.get(2))) { - fileConfigDataVO.setDataValue(referencesColList.get(2)); - } + fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + fileConfigDataVO.setIsLock(lockFlag); + fileConfigDataVO.setTemplateId(templateId); + fileConfigDataVO.setTemplateName(templateName); + if (StringUtils.isNotBlank(referencesColList.get(2))) { + fileConfigDataVO.setDataValue(referencesColList.get(2)); + } - paramsConfigDataVOList.add(pullMoreConfigDataVO); - paramsConfigDataVOList.add(fileConfigDataVO); + paramsConfigDataVOList.add(pullMoreConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); - } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { - ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); - ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO(); + ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO(); - if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } else { - pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); - } + if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } else { + pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue()); + } - textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); - textConfigDataVO.setIsLock(lockFlag); - textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); - if (StringUtils.isNotBlank(referencesColList.get(0))) { - textConfigDataVO.setDataValue(referencesColList.get(0)); - } + textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); + textConfigDataVO.setIsLock(lockFlag); + textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify()); + if (StringUtils.isNotBlank(referencesColList.get(0))) { + textConfigDataVO.setDataValue(referencesColList.get(0)); + } - pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); - pullConfigDataVO.setIsLock(lockFlag); - pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); - if (StringUtils.isNotBlank(referencesColList.get(1))) { - pullConfigDataVO.setDataValue(referencesColList.get(1)); - } + pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue()); + pullConfigDataVO.setIsLock(lockFlag); + pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues())); + if (StringUtils.isNotBlank(referencesColList.get(1))) { + pullConfigDataVO.setDataValue(referencesColList.get(1)); + } - fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); - fileConfigDataVO.setIsLock(lockFlag); - fileConfigDataVO.setTemplateId(templateId); - fileConfigDataVO.setTemplateName(templateName); - if (StringUtils.isNotBlank(referencesColList.get(2))) { - fileConfigDataVO.setDataValue(referencesColList.get(2)); - } + fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue()); + fileConfigDataVO.setIsLock(lockFlag); + fileConfigDataVO.setTemplateId(templateId); + fileConfigDataVO.setTemplateName(templateName); + if (StringUtils.isNotBlank(referencesColList.get(2))) { + fileConfigDataVO.setDataValue(referencesColList.get(2)); + } - paramsConfigDataVOList.add(pullConfigDataVO); - paramsConfigDataVOList.add(textConfigDataVO); - paramsConfigDataVOList.add(fileConfigDataVO); + paramsConfigDataVOList.add(pullConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); - } - return paramsConfigDataVOList; - } + } + return paramsConfigDataVOList; + } - private List> getControlValueMapList(String controlValue) { - List> controlValueMapList = new ArrayList<>(); - if (StringUtils.isNotEmpty(controlValue)) { - controlValue = controlValue.replace(",", ","); - String[] controlValueStr = controlValue.split(","); - for (int i = 0; i < controlValueStr.length; i++) { - if (StringUtils.isBlank(controlValueStr[i])) { // 选项中的空字符串,不作为备选值 - continue; - } - Map controlValueMap = new HashMap<>(); - controlValueMap.put("label", controlValueStr[i]); - controlValueMap.put("value", controlValueStr[i]); - controlValueMapList.add(controlValueMap); - } - } - return controlValueMapList; - } + private List> getControlValueMapList(String controlValue) { + List> controlValueMapList = new ArrayList<>(); + if (StringUtils.isNotEmpty(controlValue)) { + controlValue = controlValue.replace(",", ","); + String[] controlValueStr = controlValue.split(","); + for (int i = 0; i < controlValueStr.length; i++) { + if (StringUtils.isBlank(controlValueStr[i])) { // 选项中的空字符串,不作为备选值 + continue; + } + Map controlValueMap = new HashMap<>(); + controlValueMap.put("label", controlValueStr[i]); + controlValueMap.put("value", controlValueStr[i]); + controlValueMapList.add(controlValueMap); + } + } + return controlValueMapList; + } - /** - * 列表表头中英文切换 - * - * @return - */ - @Override - public List> getHeader(String paramsManifestId, String flag, String cut, String projectName) { - List fieldList = onlCgformFieldService.getFieldList(flag); // flag--->7 - if (fieldList.size() != 0) { - //过滤列表字段(is_show_list-->列表是否显示0否 1是) - fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowList()))).collect(Collectors.toList()); - } - ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); - List> listConfig = new LinkedList<>(); - for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { - Map map = new HashMap<>(); - map.put("db_field_name", paramsConfigEO.getId()); - map.put("db_field_txt", paramsConfigEO.getConfigName()); - map.put("type", true); //配置列 标识 - map.put("isLock", paramsConfigEO.getIsLock()); //配置列 冻结标识 - listConfig.add(map); - } + /** + * 列表表头中英文切换 + * + * @return + */ + @Override + public List> getHeader(String paramsManifestId, String flag, String cut, String projectName) { + List fieldList = onlCgformFieldService.getFieldList(flag); // flag--->7 + if (fieldList.size() != 0) { + //过滤列表字段(is_show_list-->列表是否显示0否 1是) + fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowList()))).collect(Collectors.toList()); + } + ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); + List> listConfig = new LinkedList<>(); + for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { + Map map = new HashMap<>(); + map.put("db_field_name", paramsConfigEO.getId()); + map.put("db_field_txt", paramsConfigEO.getConfigName()); + map.put("type", true); //配置列 标识 + map.put("isLock", paramsConfigEO.getIsLock()); //配置列 冻结标识 + listConfig.add(map); + } - List> list = new LinkedList<>(); - int indexOfDescription = 1; // 参数说明的位置 - for (int i = 0; i < fieldList.size(); i++) { - OnlCgformField onlCgformField = fieldList.get(i); - Map map = new HashMap<>(); - String dbFieldName = onlCgformField.getDbFieldName(); - if ("nio_number".equals(dbFieldName) || "params_name".equals(dbFieldName)) { - map.put("click5", true); - if("nio_number".equals(dbFieldName)) { - map.put("click4", true); - } else { - map.put("click3", true); - } - } - if ("description".equals(dbFieldName)) { - map.put("click2", true); - } - if ("duty_territory".equals(dbFieldName)) { - map.put("click1", true); - } - if ("sdt".equals(dbFieldName)) { - map.put("click", true); - } + List> list = new LinkedList<>(); + int indexOfDescription = 1; // 参数说明的位置 + for (int i = 0; i < fieldList.size(); i++) { + OnlCgformField onlCgformField = fieldList.get(i); + Map map = new HashMap<>(); + String dbFieldName = onlCgformField.getDbFieldName(); + if ("nio_number".equals(dbFieldName) || "params_name".equals(dbFieldName)) { + map.put("click5", true); + if ("nio_number".equals(dbFieldName)) { + map.put("click4", true); + } else { + map.put("click3", true); + } + } + if ("description".equals(dbFieldName)) { + map.put("click2", true); + } + if ("duty_territory".equals(dbFieldName)) { + map.put("click1", true); + } + if ("sdt".equals(dbFieldName)) { + map.put("click", true); + } - if ("description".equals(dbFieldName) && StringUtils.isBlank(paramsManifestEO.getReferencesColName())) { - indexOfDescription = i; - } else if ("references_col".equals(dbFieldName) && StringUtils.isNotBlank(paramsManifestEO.getReferencesColName())) { - indexOfDescription = i; - } + if ("description".equals(dbFieldName) && StringUtils.isBlank(paramsManifestEO.getReferencesColName())) { + indexOfDescription = i; + } else if ("references_col".equals(dbFieldName) && StringUtils.isNotBlank(paramsManifestEO.getReferencesColName())) { + indexOfDescription = i; + } - if (!"references_col".equals(dbFieldName)) { - map.put("db_field_name", LineHumpUtil.lineToHump(dbFieldName)); - } - if(CutEnum.CN.getValue().equals(cut)){ - if ("references_col".equals(dbFieldName)) { - if (StringUtils.isNotBlank(paramsManifestEO.getReferencesColName())) { - map.put("type", true); // 标识 - map.put("flag", true); // 标识 - map.put("db_field_name", LineHumpUtil.lineToHump(dbFieldName)); - String[] references = projectName.split("-"); - // map.put("db_field_txt", references[0] + "-" + references[1] + "-" + paramsManifestEO.getReferencesColName() + " " + onlCgformField.getDbFieldTxt());//字段中文名 - map.put("db_field_txt", projectName + "-" + paramsManifestEO.getReferencesColName() + " " + onlCgformField.getDbFieldTxt());//字段中文名 - map.put("db_field_id", paramsManifestEO.getReferencesColId()); - map.put("references_col", true); - } else { - continue; - } - } else { - map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名 - } - }else { - if ("references_col".equals(dbFieldName)) { - if ( StringUtils.isNotBlank(paramsManifestEO.getReferencesColName())) { - map.put("type", true); // 标识 - map.put("flag", true); // 标识 - map.put("db_field_name", LineHumpUtil.lineToHump(dbFieldName)); - String[] references = projectName.split("-"); - // map.put("db_field_txt", references[0] + "-" + references[1] + "-" + paramsManifestEO.getReferencesColName() + " " + onlCgformField.getDbFieldEnName());//字段中文名 - map.put("db_field_txt", projectName + "-" + paramsManifestEO.getReferencesColName() + " " + onlCgformField.getDbFieldEnName());//字段中文名 - map.put("db_field_id", paramsManifestEO.getReferencesColId()); - map.put("references_col", true); + if (!"references_col".equals(dbFieldName)) { + map.put("db_field_name", LineHumpUtil.lineToHump(dbFieldName)); + } + if (CutEnum.CN.getValue().equals(cut)) { + if ("references_col".equals(dbFieldName)) { + if (StringUtils.isNotBlank(paramsManifestEO.getReferencesColName())) { + map.put("type", true); // 标识 + map.put("flag", true); // 标识 + map.put("db_field_name", LineHumpUtil.lineToHump(dbFieldName)); + String[] references = projectName.split("-"); + // map.put("db_field_txt", references[0] + "-" + references[1] + "-" + paramsManifestEO.getReferencesColName() + " " + onlCgformField.getDbFieldTxt());//字段中文名 + map.put("db_field_txt", projectName + "-" + paramsManifestEO.getReferencesColName() + " " + onlCgformField.getDbFieldTxt());//字段中文名 + map.put("db_field_id", paramsManifestEO.getReferencesColId()); + map.put("references_col", true); + } else { + continue; + } + } else { + map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名 + } + } else { + if ("references_col".equals(dbFieldName)) { + if (StringUtils.isNotBlank(paramsManifestEO.getReferencesColName())) { + map.put("type", true); // 标识 + map.put("flag", true); // 标识 + map.put("db_field_name", LineHumpUtil.lineToHump(dbFieldName)); + String[] references = projectName.split("-"); + // map.put("db_field_txt", references[0] + "-" + references[1] + "-" + paramsManifestEO.getReferencesColName() + " " + onlCgformField.getDbFieldEnName());//字段中文名 + map.put("db_field_txt", projectName + "-" + paramsManifestEO.getReferencesColName() + " " + onlCgformField.getDbFieldEnName());//字段中文名 + map.put("db_field_id", paramsManifestEO.getReferencesColId()); + map.put("references_col", true); - } else { - continue; - } - } else { - map.put("db_field_txt", onlCgformField.getDbFieldEnName());//字段英文名 - } - } - if(StringUtils.equals(dbFieldName,"nio_number") - || StringUtils.equals(dbFieldName,"duty_territory") - || StringUtils.equals(dbFieldName,"sdt") - || StringUtils.equals(dbFieldName,"dre") - || StringUtils.equals(dbFieldName,"deadline") - || StringUtils.equals(dbFieldName,"report_time") - || StringUtils.equals(dbFieldName,"state") - ){ - map.put("sort", "true"); - } - list.add(map); - } + } else { + continue; + } + } else { + map.put("db_field_txt", onlCgformField.getDbFieldEnName());//字段英文名 + } + } + if (StringUtils.equals(dbFieldName, "nio_number") + || StringUtils.equals(dbFieldName, "duty_territory") + || StringUtils.equals(dbFieldName, "sdt") + || StringUtils.equals(dbFieldName, "dre") + || StringUtils.equals(dbFieldName, "deadline") + || StringUtils.equals(dbFieldName, "report_time") + || StringUtils.equals(dbFieldName, "state") + ) { + map.put("sort", "true"); + } + list.add(map); + } - Map operatorMap = new HashMap<>(); - if(CutEnum.CN.getValue().equals(cut)){ - operatorMap.put("db_field_txt","操作"); - }else{ - operatorMap.put("db_field_txt","Operator"); - } - operatorMap.put("click6", true); - list.add(operatorMap); + Map operatorMap = new HashMap<>(); + if (CutEnum.CN.getValue().equals(cut)) { + operatorMap.put("db_field_txt", "操作"); + } else { + operatorMap.put("db_field_txt", "Operator"); + } + operatorMap.put("click6", true); + list.add(operatorMap); - list.addAll(indexOfDescription+1, listConfig); - return list; - } + list.addAll(indexOfDescription + 1, listConfig); + return list; + } - @Override - public boolean submit(List> configDataList) { - List newConfigDataEOList = new ArrayList<>(); + @Override + public boolean submit(List> configDataList) { + List newConfigDataEOList = new ArrayList<>(); - List updateCollectManifestEOList = new ArrayList<>(); - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - List paramsCollectManifestLogEOList = new ArrayList<>(); + List updateCollectManifestEOList = new ArrayList<>(); + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + List paramsCollectManifestLogEOList = new ArrayList<>(); - // 处理数据 - for (Map map : configDataList) { - String paramsCollectManifestId = (String) map.get("id"); - ParamsCollectManifestEO paramsCollectManifestEO = this.paramsCollectManifestEOMapper.selectById(paramsCollectManifestId); + // 处理数据 + for (Map map : configDataList) { + String paramsCollectManifestId = (String) map.get("id"); + ParamsCollectManifestEO paramsCollectManifestEO = this.paramsCollectManifestEOMapper.selectById(paramsCollectManifestId); - // 修改参数项状态 - ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO(); - updateCollectManifestEO.setId(paramsCollectManifestId); - updateCollectManifestEO.setState(CollectManifestStateEnum.SUBMIT.getValue()); - updateCollectManifestEOList.add(updateCollectManifestEO); + // 修改参数项状态 + ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO(); + updateCollectManifestEO.setId(paramsCollectManifestId); + updateCollectManifestEO.setState(CollectManifestStateEnum.SUBMIT.getValue()); + updateCollectManifestEOList.add(updateCollectManifestEO); - StringBuilder logCnContentSb = new StringBuilder(); - logCnContentSb.append("填写人").append("\"").append(currentUser.getUsername()).append("\"").append("提交"); - StringBuilder logEnContentSb = new StringBuilder(); - logEnContentSb.append("\"").append(currentUser.getUsername()).append("\"").append(" submits "); + StringBuilder logCnContentSb = new StringBuilder(); + logCnContentSb.append("填写人").append("\"").append(currentUser.getUsername()).append("\"").append("提交"); + StringBuilder logEnContentSb = new StringBuilder(); + logEnContentSb.append("\"").append(currentUser.getUsername()).append("\"").append(" submits "); - // 添加配置数据 - for (Map.Entry entry : map.entrySet()) { - if ("id".equals(entry.getKey())) { - continue; - } + // 添加配置数据 + for (Map.Entry entry : map.entrySet()) { + if ("id".equals(entry.getKey())) { + continue; + } - // 取值 - String paramsConfigEOId = entry.getKey(); - Map paramsConfigDataMap = (Map) entry.getValue(); - // 无法转ParamsConfigDataVO(遍历会出现该异常 : LinkedHashMap cannot be cast to ParamsConfigDataVO) + // 取值 + String paramsConfigEOId = entry.getKey(); + Map paramsConfigDataMap = (Map) entry.getValue(); + // 无法转ParamsConfigDataVO(遍历会出现该异常 : LinkedHashMap cannot be cast to ParamsConfigDataVO) // List> paramsConfigDataVOList = (List>) paramsConfigDataMap.get("list"); - Map paramsConfigDataVOMap = (Map) paramsConfigDataMap.get("paramsConfigData"); + Map paramsConfigDataVOMap = (Map) paramsConfigDataMap.get("paramsConfigData"); - // 判断是新增还是修改 - // ParamsConfigDataEO oldConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(paramsConfigEOId, paramsCollectManifestId); - List oldConfigDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(paramsConfigEOId, paramsCollectManifestId); + // 判断是新增还是修改 + // ParamsConfigDataEO oldConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(paramsConfigEOId, paramsCollectManifestId); + List oldConfigDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(paramsConfigEOId, paramsCollectManifestId); - ParamsConfigEO paramsConfigEO = this.paramsConfigEOService.queryById(paramsConfigEOId); - if(Objects.isNull(paramsConfigEO)){ - continue; - } + ParamsConfigEO paramsConfigEO = this.paramsConfigEOService.queryById(paramsConfigEOId); + if (Objects.isNull(paramsConfigEO)) { + continue; + } - // 拼接历史记录信息 - for (Map.Entry configDataMap : paramsConfigDataVOMap.entrySet()) { - List> paramsConfigDataVOList = (List>)configDataMap.getValue(); + // 拼接历史记录信息 + for (Map.Entry configDataMap : paramsConfigDataVOMap.entrySet()) { + List> paramsConfigDataVOList = (List>) configDataMap.getValue(); - if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { + if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { - ParamsConfigDataEO paramsConfigDataEO = new ParamsConfigDataEO(); - if(CollectionUtils.isNotEmpty(oldConfigDataEOList)){ - List oldConfigDataEOs = oldConfigDataEOList.stream().filter(configData -> { - boolean flag = false; - if (StringUtils.equals(configDataMap.getKey(), configData.getId())) { - flag = true; - } - return flag; - }).collect(Collectors.toList()); + ParamsConfigDataEO paramsConfigDataEO = new ParamsConfigDataEO(); + if (CollectionUtils.isNotEmpty(oldConfigDataEOList)) { + List oldConfigDataEOs = oldConfigDataEOList.stream().filter(configData -> { + boolean flag = false; + if (StringUtils.equals(configDataMap.getKey(), configData.getId())) { + flag = true; + } + return flag; + }).collect(Collectors.toList()); - if(CollectionUtils.isNotEmpty(oldConfigDataEOs)){ - paramsConfigDataEO.setId(oldConfigDataEOs.get(0).getId()); - } - } + if (CollectionUtils.isNotEmpty(oldConfigDataEOs)) { + paramsConfigDataEO.setId(oldConfigDataEOs.get(0).getId()); + } + } - paramsConfigDataEO.setParamsCollectManifestId(paramsCollectManifestId); - paramsConfigDataEO.setParamsConfigId(paramsConfigEOId); + paramsConfigDataEO.setParamsCollectManifestId(paramsCollectManifestId); + paramsConfigDataEO.setParamsConfigId(paramsConfigEOId); - boolean appendFlag = false; // 拼接标识 - for (Map paramsConfigDataVO : paramsConfigDataVOList) { - String dataValue = (String) paramsConfigDataVO.get("dataValue"); - // 只要其中有一个值就可以进行拼接 - if(StringUtils.isNotEmpty(dataValue)){ - appendFlag = true; - break; - } - } - if(appendFlag){ - logCnContentSb.append(paramsConfigEO.getConfigName()).append("为"); - logEnContentSb.append(" configuration ").append(paramsConfigEO.getConfigName()).append(" as "); - } - for (Map paramsConfigDataVO : paramsConfigDataVOList) { - String type = (String) paramsConfigDataVO.get("type"); - String dataValue = (String) paramsConfigDataVO.get("dataValue"); + boolean appendFlag = false; // 拼接标识 + for (Map paramsConfigDataVO : paramsConfigDataVOList) { + String dataValue = (String) paramsConfigDataVO.get("dataValue"); + // 只要其中有一个值就可以进行拼接 + if (StringUtils.isNotEmpty(dataValue)) { + appendFlag = true; + break; + } + } + if (appendFlag) { + logCnContentSb.append(paramsConfigEO.getConfigName()).append("为"); + logEnContentSb.append(" configuration ").append(paramsConfigEO.getConfigName()).append(" as "); + } + for (Map paramsConfigDataVO : paramsConfigDataVOList) { + String type = (String) paramsConfigDataVO.get("type"); + String dataValue = (String) paramsConfigDataVO.get("dataValue"); - if (type.equals(ConfigDataTypeEnum.TEXT.getValue())) { - paramsConfigDataEO.setTextData(dataValue); - if (StringUtils.isNotEmpty(dataValue)) { - logCnContentSb.append("\"").append(dataValue).append("\""); - logEnContentSb.append("\"").append(dataValue).append("\""); - } + if (type.equals(ConfigDataTypeEnum.TEXT.getValue())) { + paramsConfigDataEO.setTextData(dataValue); + if (StringUtils.isNotEmpty(dataValue)) { + logCnContentSb.append("\"").append(dataValue).append("\""); + logEnContentSb.append("\"").append(dataValue).append("\""); + } - } else if (type.equals(ConfigDataTypeEnum.PULL.getValue()) - || type.equals(ConfigDataTypeEnum.PULL_MORE.getValue())) { - paramsConfigDataEO.setPullData(dataValue); - if (StringUtils.isNotEmpty(dataValue)) { - logCnContentSb.append("\"").append(dataValue).append("\""); - logEnContentSb.append("\"").append(dataValue).append("\""); - } + } else if (type.equals(ConfigDataTypeEnum.PULL.getValue()) + || type.equals(ConfigDataTypeEnum.PULL_MORE.getValue())) { + paramsConfigDataEO.setPullData(dataValue); + if (StringUtils.isNotEmpty(dataValue)) { + logCnContentSb.append("\"").append(dataValue).append("\""); + logEnContentSb.append("\"").append(dataValue).append("\""); + } - } else if (type.equals(ConfigDataTypeEnum.FILE.getValue())) { - if (StringUtils.isNotEmpty(dataValue) && dataValue.contains(",")) { // 新加多个文件 - // 处理文件connectId - String[] fileIdList = dataValue.split(","); - String connectId = UUID.randomUUID().toString().replace("-", ""); - List updateFileList = new ArrayList<>(); - for (int i = 0; i < fileIdList.length; i++) { - OSSFile ossFile = new OSSFile(); - ossFile.setId(fileIdList[i]); - ossFile.setConnectId(connectId); - updateFileList.add(ossFile); - } - ossFileService.updateBatchById(updateFileList); - dataValue = connectId; - } else if (StringUtils.isNotEmpty(dataValue) && !dataValue.contains(",")) { - List ossFiles = ossFileService.getFileInfosByConnectId(dataValue); - if(CollectionUtil.isEmpty(ossFiles)){ // 新加了一个文件 - String connectId = UUID.randomUUID().toString().replace("-", ""); - //修改文件表关联信息connect_id - List oSSFileList = new ArrayList<>(); - for (String fileId : dataValue.split(",")) { - OSSFile ossFile = new OSSFile(); - ossFile.setId(fileId); - ossFile.setConnectId(connectId); - oSSFileList.add(ossFile); - } - ossFileService.updateFileInfo(oSSFileList); - dataValue = connectId; - } - } - paramsConfigDataEO.setFileConnectId(dataValue); + } else if (type.equals(ConfigDataTypeEnum.FILE.getValue())) { + if (StringUtils.isNotEmpty(dataValue) && dataValue.contains(",")) { // 新加多个文件 + // 处理文件connectId + String[] fileIdList = dataValue.split(","); + String connectId = UUID.randomUUID().toString().replace("-", ""); + List updateFileList = new ArrayList<>(); + for (int i = 0; i < fileIdList.length; i++) { + OSSFile ossFile = new OSSFile(); + ossFile.setId(fileIdList[i]); + ossFile.setConnectId(connectId); + updateFileList.add(ossFile); + } + ossFileService.updateBatchById(updateFileList); + dataValue = connectId; + } else if (StringUtils.isNotEmpty(dataValue) && !dataValue.contains(",")) { + List ossFiles = ossFileService.getFileInfosByConnectId(dataValue); + if (CollectionUtil.isEmpty(ossFiles)) { // 新加了一个文件 + String connectId = UUID.randomUUID().toString().replace("-", ""); + //修改文件表关联信息connect_id + List oSSFileList = new ArrayList<>(); + for (String fileId : dataValue.split(",")) { + OSSFile ossFile = new OSSFile(); + ossFile.setId(fileId); + ossFile.setConnectId(connectId); + oSSFileList.add(ossFile); + } + ossFileService.updateFileInfo(oSSFileList); + dataValue = connectId; + } + } + paramsConfigDataEO.setFileConnectId(dataValue); - List fileInfos = ossFileService.getFileInfos(dataValue); - String fileNames = fileInfos.stream().map(OSSFile::getFileName).distinct().collect(Collectors.joining(",")); - if (StringUtils.isNotEmpty(fileNames)) { - logCnContentSb.append("\"").append(fileNames).append("\""); - logEnContentSb.append("\"").append(fileNames).append("\""); - } - } - newConfigDataEOList.add(paramsConfigDataEO); - } + List fileInfos = ossFileService.getFileInfos(dataValue); + String fileNames = fileInfos.stream().map(OSSFile::getFileName).distinct().collect(Collectors.joining(",")); + if (StringUtils.isNotEmpty(fileNames)) { + logCnContentSb.append("\"").append(fileNames).append("\""); + logEnContentSb.append("\"").append(fileNames).append("\""); + } + } + newConfigDataEOList.add(paramsConfigDataEO); + } - if(appendFlag){ - logCnContentSb.append(","); - logEnContentSb.append(" and "); - } - } - } - } + if (appendFlag) { + logCnContentSb.append(","); + logEnContentSb.append(" and "); + } + } + } + } - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent(logCnContentSb.toString().substring(0,logCnContentSb.toString().length()-1)); - paramsCollectManifestLogEO.setLogEnContent(logEnContentSb.toString().substring(0,logEnContentSb.toString().length()-5)); - paramsCollectManifestLogEO.setParamsManifestId(paramsCollectManifestEO.getParamsManifestId()); - paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - } + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent(logCnContentSb.toString().substring(0, logCnContentSb.toString().length() - 1)); + paramsCollectManifestLogEO.setLogEnContent(logEnContentSb.toString().substring(0, logEnContentSb.toString().length() - 5)); + paramsCollectManifestLogEO.setParamsManifestId(paramsCollectManifestEO.getParamsManifestId()); + paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + } - // 批量更新 - paramsConfigDataEOService.saveOrUpdateBatch(newConfigDataEOList); + // 批量更新 + paramsConfigDataEOService.saveOrUpdateBatch(newConfigDataEOList); - if(CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)){ - this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); - } - return updateBatchById(updateCollectManifestEOList); - } + if (CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)) { + this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); + } + return updateBatchById(updateCollectManifestEOList); + } - @Override - public boolean save(List> configDataList, String paramsManifestId) { - List newConfigDataEOList = new ArrayList<>(); - List paramsCollectManifestIdList = new ArrayList<>(); + @Override + public boolean save(List> configDataList, String paramsManifestId) { + List newConfigDataEOList = new ArrayList<>(); + List paramsCollectManifestIdList = new ArrayList<>(); - // 处理数据 - for (Map map : configDataList) { - String paramsCollectManifestId = (String) map.get("id"); + // 处理数据 + for (Map map : configDataList) { + String paramsCollectManifestId = (String) map.get("id"); - // 添加配置数据 - for (Map.Entry entry : map.entrySet()) { + // 添加配置数据 + for (Map.Entry entry : map.entrySet()) { - if ("id".equals(entry.getKey())) { - continue; - } + if ("id".equals(entry.getKey())) { + continue; + } - // 取值 - String paramsConfigEOId = entry.getKey(); - Map paramsConfigDataMap = (Map) entry.getValue(); - // 无法转ParamsConfigDataVO(遍历会出现该异常 : LinkedHashMap cannot be cast to ParamsConfigDataVO) - // List> paramsConfigDataVOList = (List>) paramsConfigDataMap.get("list"); - Map paramsConfigDataVOMap = (Map) paramsConfigDataMap.get("paramsConfigData"); + // 取值 + String paramsConfigEOId = entry.getKey(); + Map paramsConfigDataMap = (Map) entry.getValue(); + // 无法转ParamsConfigDataVO(遍历会出现该异常 : LinkedHashMap cannot be cast to ParamsConfigDataVO) + // List> paramsConfigDataVOList = (List>) paramsConfigDataMap.get("list"); + Map paramsConfigDataVOMap = (Map) paramsConfigDataMap.get("paramsConfigData"); - for (Map.Entry configDataMap : paramsConfigDataVOMap.entrySet()) { - List> paramsConfigDataVOList = (List>)configDataMap.getValue(); - Integer orderNum = (Integer) paramsConfigDataVOList.get(0).get("orderNum"); - if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { - ParamsConfigDataEO paramsConfigDataEO = new ParamsConfigDataEO(); + for (Map.Entry configDataMap : paramsConfigDataVOMap.entrySet()) { + List> paramsConfigDataVOList = (List>) configDataMap.getValue(); + Integer orderNum = (Integer) paramsConfigDataVOList.get(0).get("orderNum"); + if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { + ParamsConfigDataEO paramsConfigDataEO = new ParamsConfigDataEO(); - for (Map paramsConfigDataVO : paramsConfigDataVOList) { + for (Map paramsConfigDataVO : paramsConfigDataVOList) { - String type = (String) paramsConfigDataVO.get("type"); - String dataValue = (String) paramsConfigDataVO.get("dataValue"); + String type = (String) paramsConfigDataVO.get("type"); + String dataValue = (String) paramsConfigDataVO.get("dataValue"); - if (type.equals(ConfigDataTypeEnum.TEXT.getValue())) { - paramsConfigDataEO.setTextData(dataValue); + if (type.equals(ConfigDataTypeEnum.TEXT.getValue())) { + paramsConfigDataEO.setTextData(dataValue); - } else if (type.equals(ConfigDataTypeEnum.PULL.getValue()) - || type.equals(ConfigDataTypeEnum.PULL_MORE.getValue())) { - paramsConfigDataEO.setPullData(dataValue); + } else if (type.equals(ConfigDataTypeEnum.PULL.getValue()) + || type.equals(ConfigDataTypeEnum.PULL_MORE.getValue())) { + paramsConfigDataEO.setPullData(dataValue); - } else if (type.equals(ConfigDataTypeEnum.FILE.getValue())) { - if (StringUtils.isNotEmpty(dataValue) && dataValue.contains(",")) { // 新加多个文件 - // 处理文件connectId - String[] fileIdList = dataValue.split(","); - String connectId = UUID.randomUUID().toString().replace("-", ""); - List updateFileList = new ArrayList<>(); - for (int i = 0; i < fileIdList.length; i++) { - OSSFile ossFile = new OSSFile(); - ossFile.setId(fileIdList[i]); - ossFile.setConnectId(connectId); - updateFileList.add(ossFile); - } - ossFileService.updateBatchById(updateFileList); - dataValue = connectId; - } else if (StringUtils.isNotEmpty(dataValue) && !dataValue.contains(",")) { - List ossFiles = ossFileService.getFileInfosByConnectId(dataValue); - if(CollectionUtil.isEmpty(ossFiles)){ // 新加了一个文件 - String connectId = UUID.randomUUID().toString().replace("-", ""); - //修改文件表关联信息connect_id - List oSSFileList = new ArrayList<>(); - for (String fileId : dataValue.split(",")) { - OSSFile ossFile = new OSSFile(); - ossFile.setId(fileId); - ossFile.setConnectId(connectId); - oSSFileList.add(ossFile); - } - ossFileService.updateFileInfo(oSSFileList); - dataValue = connectId; - } - } - paramsConfigDataEO.setFileConnectId(dataValue); + } else if (type.equals(ConfigDataTypeEnum.FILE.getValue())) { + if (StringUtils.isNotEmpty(dataValue) && dataValue.contains(",")) { // 新加多个文件 + // 处理文件connectId + String[] fileIdList = dataValue.split(","); + String connectId = UUID.randomUUID().toString().replace("-", ""); + List updateFileList = new ArrayList<>(); + for (int i = 0; i < fileIdList.length; i++) { + OSSFile ossFile = new OSSFile(); + ossFile.setId(fileIdList[i]); + ossFile.setConnectId(connectId); + updateFileList.add(ossFile); + } + ossFileService.updateBatchById(updateFileList); + dataValue = connectId; + } else if (StringUtils.isNotEmpty(dataValue) && !dataValue.contains(",")) { + List ossFiles = ossFileService.getFileInfosByConnectId(dataValue); + if (CollectionUtil.isEmpty(ossFiles)) { // 新加了一个文件 + String connectId = UUID.randomUUID().toString().replace("-", ""); + //修改文件表关联信息connect_id + List oSSFileList = new ArrayList<>(); + for (String fileId : dataValue.split(",")) { + OSSFile ossFile = new OSSFile(); + ossFile.setId(fileId); + ossFile.setConnectId(connectId); + oSSFileList.add(ossFile); + } + ossFileService.updateFileInfo(oSSFileList); + dataValue = connectId; + } + } + paramsConfigDataEO.setFileConnectId(dataValue); - } - } + } + } - paramsConfigDataEO.setParamsCollectManifestId(paramsCollectManifestId); - paramsConfigDataEO.setParamsConfigId(paramsConfigEOId); - paramsConfigDataEO.setOrderNum(orderNum); + paramsConfigDataEO.setParamsCollectManifestId(paramsCollectManifestId); + paramsConfigDataEO.setParamsConfigId(paramsConfigEOId); + paramsConfigDataEO.setOrderNum(orderNum); - newConfigDataEOList.add(paramsConfigDataEO); - } - } - } + newConfigDataEOList.add(paramsConfigDataEO); + } + } + } - paramsCollectManifestIdList.add(paramsCollectManifestId); - } + paramsCollectManifestIdList.add(paramsCollectManifestId); + } - if(CollectionUtils.isNotEmpty(paramsCollectManifestIdList)){ - QueryWrapper configDataRemoveWrap = new QueryWrapper<>(); - configDataRemoveWrap.lambda().in(ParamsConfigDataEO::getParamsCollectManifestId,paramsCollectManifestIdList); - this.paramsConfigDataEOService.remove(configDataRemoveWrap); - } + if (CollectionUtils.isNotEmpty(paramsCollectManifestIdList)) { + QueryWrapper configDataRemoveWrap = new QueryWrapper<>(); + configDataRemoveWrap.lambda().in(ParamsConfigDataEO::getParamsCollectManifestId, paramsCollectManifestIdList); + this.paramsConfigDataEOService.remove(configDataRemoveWrap); + } - // 批量更新 - return paramsConfigDataEOService.saveBatch(newConfigDataEOList); - } + // 批量更新 + return paramsConfigDataEOService.saveBatch(newConfigDataEOList); + } - /** - * 查询清单所用模版参数项列表(过滤清单已添加的参数项) - * @param paramsCollectManifestVO - * @return - */ - @Override - public List> getParamsInfoPublishListForAdd(ParamsCollectManifestVO paramsCollectManifestVO) { - String cut = paramsCollectManifestVO.getCut(); + /** + * 查询清单所用模版参数项列表(过滤清单已添加的参数项) + * + * @param paramsCollectManifestVO + * @return + */ + @Override + public List> getParamsInfoPublishListForAdd(ParamsCollectManifestVO paramsCollectManifestVO) { + String cut = paramsCollectManifestVO.getCut(); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ParamsInfoPublishEO::getParamsTemplateId, paramsCollectManifestVO.getParamsTemplateId()) - .eq(ParamsInfoPublishEO::getPublishVersion, paramsCollectManifestVO.getParamsTemplatePublishVersion()) - .like(StringUtils.isNotEmpty(paramsCollectManifestVO.getNioNumber()), ParamsInfoPublishEO::getNioNumber, paramsCollectManifestVO.getNioNumber()) - .like(StringUtils.isNotEmpty(paramsCollectManifestVO.getParamsName()), ParamsInfoPublishEO::getParamsName, paramsCollectManifestVO.getParamsName()) - .eq(StringUtils.isNotEmpty(paramsCollectManifestVO.getDutyTerritory()), ParamsInfoPublishEO::getDutyTerritory, paramsCollectManifestVO.getDutyTerritory()) - .orderByAsc(ParamsInfoPublishEO::getNioNumber); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ParamsInfoPublishEO::getParamsTemplateId, paramsCollectManifestVO.getParamsTemplateId()) + .eq(ParamsInfoPublishEO::getPublishVersion, paramsCollectManifestVO.getParamsTemplatePublishVersion()) + .like(StringUtils.isNotEmpty(paramsCollectManifestVO.getNioNumber()), ParamsInfoPublishEO::getNioNumber, paramsCollectManifestVO.getNioNumber()) + .like(StringUtils.isNotEmpty(paramsCollectManifestVO.getParamsName()), ParamsInfoPublishEO::getParamsName, paramsCollectManifestVO.getParamsName()) + .eq(StringUtils.isNotEmpty(paramsCollectManifestVO.getDutyTerritory()), ParamsInfoPublishEO::getDutyTerritory, paramsCollectManifestVO.getDutyTerritory()) + .orderByAsc(ParamsInfoPublishEO::getNioNumber); - List paramsInfoPublishEOList = paramsInfoPublishEOService.list(queryWrapper); + List paramsInfoPublishEOList = paramsInfoPublishEOService.list(queryWrapper); - // 过滤清单已添加的参数项 - ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); - paramsCollectManifestEO.setParamsManifestId(paramsCollectManifestVO.getParamsManifestId()); - List paramsCollectManifestEOList = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); - List nioNumberList = paramsCollectManifestEOList.stream().map(ParamsCollectManifestEO::getNioNumber).collect(Collectors.toList()); - paramsInfoPublishEOList = paramsInfoPublishEOList.stream().filter(e-> !nioNumberList.contains(e.getNioNumber())).collect(Collectors.toList()); + // 过滤清单已添加的参数项 + ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); + paramsCollectManifestEO.setParamsManifestId(paramsCollectManifestVO.getParamsManifestId()); + List paramsCollectManifestEOList = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); + List nioNumberList = paramsCollectManifestEOList.stream().map(ParamsCollectManifestEO::getNioNumber).collect(Collectors.toList()); + paramsInfoPublishEOList = paramsInfoPublishEOList.stream().filter(e -> !nioNumberList.contains(e.getNioNumber())).collect(Collectors.toList()); - // 查询 责任领域 数据字典 - List dictItems = sysDictItemService.selectItemsByDictCode("duty_territory"); - Map dictItemsMap = new HashMap<>(); - if (CutEnum.EN.getValue().equals(cut)) { - dictItemsMap = dictItems.stream().collect(Collectors.toMap(SysDictItem::getItemValue, SysDictItem::getEnName)); - } else { - dictItemsMap = dictItems.stream().collect(Collectors.toMap(SysDictItem::getItemValue, SysDictItem::getItemText)); - } + // 查询 责任领域 数据字典 + List dictItems = sysDictItemService.selectItemsByDictCode("duty_territory"); + Map dictItemsMap = new HashMap<>(); + if (CutEnum.EN.getValue().equals(cut)) { + dictItemsMap = dictItems.stream().collect(Collectors.toMap(SysDictItem::getItemValue, SysDictItem::getEnName)); + } else { + dictItemsMap = dictItems.stream().collect(Collectors.toMap(SysDictItem::getItemValue, SysDictItem::getItemText)); + } - // 处理数据 返回map ---> 解决数据量大,系统拦截器转换数据字典慢的问题 - List> listMapForAdd = new ArrayList<>(); - Map finalDictItemsMap = dictItemsMap; - paramsInfoPublishEOList.forEach(paramsInfoPublishEO -> { - Map paramsInfoPublishMap = objectToMap(paramsInfoPublishEO); - // 处理责任领域数据字典 - paramsInfoPublishMap.put("dutyTerritory_dictText", finalDictItemsMap.get(paramsInfoPublishEO.getDutyTerritory())); + // 处理数据 返回map ---> 解决数据量大,系统拦截器转换数据字典慢的问题 + List> listMapForAdd = new ArrayList<>(); + Map finalDictItemsMap = dictItemsMap; + paramsInfoPublishEOList.forEach(paramsInfoPublishEO -> { + Map paramsInfoPublishMap = objectToMap(paramsInfoPublishEO); + // 处理责任领域数据字典 + paramsInfoPublishMap.put("dutyTerritory_dictText", finalDictItemsMap.get(paramsInfoPublishEO.getDutyTerritory())); - listMapForAdd.add(paramsInfoPublishMap); - }); + listMapForAdd.add(paramsInfoPublishMap); + }); - return listMapForAdd; - } + return listMapForAdd; + } - @Override - public List> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO) { - // 根据主项目ID 查询 相关项目版本的项目ID - String projectVersionId = projectLibraryBaseService.getIdByVersionAndParentId(paramsCollectManifestVO.getProjectVersion(), paramsCollectManifestVO.getProjectId()); + @Override + public List> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO) { + // 根据主项目ID 查询 相关项目版本的项目ID + String projectVersionId = projectLibraryBaseService.getIdByVersionAndParentId(paramsCollectManifestVO.getProjectVersion(), paramsCollectManifestVO.getProjectId()); - List> sdtList = new ArrayList<>(); - ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(projectVersionId, paramsCollectManifestVO.getDutyTerritory()); - if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { - String sdtIds = projectRelatedPersonnel.getEngineeringInterfacePerson(); - if (StringUtils.isNotBlank(sdtIds)) { - String[] sdtIdStr = sdtIds.split(","); - for (int i=0; i userMap = new HashMap<>(); - userMap.put("label", sysUser.getUsername()); - userMap.put("value", sysUser.getUsername()); - sdtList.add(userMap); - } - } - } - } - return sdtList; - } + List> sdtList = new ArrayList<>(); + ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(projectVersionId, paramsCollectManifestVO.getDutyTerritory()); + if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { + String sdtIds = projectRelatedPersonnel.getEngineeringInterfacePerson(); + if (StringUtils.isNotBlank(sdtIds)) { + String[] sdtIdStr = sdtIds.split(","); + for (int i = 0; i < sdtIdStr.length; i++) { + SysUser sysUser = sysUserService.getById(sdtIdStr[i]); + if (ObjectUtil.isNotEmpty(sysUser)) { + Map userMap = new HashMap<>(); + userMap.put("label", sysUser.getUsername()); + userMap.put("value", sysUser.getUsername()); + sdtList.add(userMap); + } + } + } + } + return sdtList; + } - @Override - public List> getLoginUserTypes(ParamsCollectManifestVO paramsCollectManifestVO, String cut) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { - throw new JeroBootException("参数不能为空!"); - } + @Override + public List> getLoginUserTypes(ParamsCollectManifestVO paramsCollectManifestVO, String cut) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { + throw new JeroBootException("参数不能为空!"); + } - String projectId = paramsCollectManifestVO.getProjectId(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String projectId = paramsCollectManifestVO.getProjectId(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - List> userTypeList = new ArrayList<>(); // 一个用户可以有多个用户类型 - LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录用户 + List> userTypeList = new ArrayList<>(); // 一个用户可以有多个用户类型 + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录用户 - List projectLibraryBaseList = projectLibraryBaseService.getParentAndChildern(projectId); - List homoList = new ArrayList<>(); //homo人员 - List studioList = new ArrayList<>(); //studio人员 - if (CollectionUtil.isNotEmpty(projectLibraryBaseList)) { - for (ProjectLibraryBase projectLibraryBase : projectLibraryBaseList) { - // 查询主项目及子项目下所有 homo人员 - List homoIdList1 = Arrays.asList(projectLibraryBase.getCertificationEngineer().split(",")).stream().collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(homoIdList1)) { - homoList.addAll(sysUserService.listByIds(homoIdList1).stream().map(SysUser::getUsername).collect(Collectors.toList())); - } + List projectLibraryBaseList = projectLibraryBaseService.getParentAndChildern(projectId); + List homoList = new ArrayList<>(); //homo人员 + List studioList = new ArrayList<>(); //studio人员 + if (CollectionUtil.isNotEmpty(projectLibraryBaseList)) { + for (ProjectLibraryBase projectLibraryBase : projectLibraryBaseList) { + // 查询主项目及子项目下所有 homo人员 + List homoIdList1 = Arrays.asList(projectLibraryBase.getCertificationEngineer().split(",")).stream().collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(homoIdList1)) { + homoList.addAll(sysUserService.listByIds(homoIdList1).stream().map(SysUser::getUsername).collect(Collectors.toList())); + } - // 查询当前登录用户角色 是否是当前项目的studio - List studioList1 = Arrays.asList(projectLibraryBase.getStudioEngineer().split(",")).stream().collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(studioList1)) { - studioList.addAll(sysUserService.listByIds(studioList1).stream().map(SysUser::getUsername).collect(Collectors.toList())); // studio 一个项目只有一个 - } + // 查询当前登录用户角色 是否是当前项目的studio + List studioList1 = Arrays.asList(projectLibraryBase.getStudioEngineer().split(",")).stream().collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(studioList1)) { + studioList.addAll(sysUserService.listByIds(studioList1).stream().map(SysUser::getUsername).collect(Collectors.toList())); // studio 一个项目只有一个 + } - } + } - // 去重 - homoList = homoList.stream().distinct().collect(Collectors.toList()); - studioList = studioList.stream().distinct().collect(Collectors.toList()); + // 去重 + homoList = homoList.stream().distinct().collect(Collectors.toList()); + studioList = studioList.stream().distinct().collect(Collectors.toList()); - } + } - // 查询项目下所有责任领域下的 sdt人员 - List sdtList = new ArrayList<>(); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ProjectRelatedPersonnel::getProjectId, projectId); - List prpList = projectRelatedPersonnelService.list(queryWrapper); + // 查询项目下所有责任领域下的 sdt人员 + List sdtList = new ArrayList<>(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ProjectRelatedPersonnel::getProjectId, projectId); + List prpList = projectRelatedPersonnelService.list(queryWrapper); // String homoIdStr = prpList.stream().map(e -> e.getCertificationEngineer()).collect(Collectors.joining(",")); - String sdtIdStr = prpList.stream().map(e -> e.getEngineeringInterfacePerson()).collect(Collectors.joining(",")); - // 项目下有homo-->不一定有sdt - if(StringUtils.isNotBlank(sdtIdStr)) { - List sdtIdList = Arrays.asList(sdtIdStr.split(",")).stream().distinct().collect(Collectors.toList()); - sdtList = sysUserService.listByIds(sdtIdList).stream().map(SysUser::getUsername).collect(Collectors.toList()); - } + String sdtIdStr = prpList.stream().map(e -> e.getEngineeringInterfacePerson()).collect(Collectors.joining(",")); + // 项目下有homo-->不一定有sdt + if (StringUtils.isNotBlank(sdtIdStr)) { + List sdtIdList = Arrays.asList(sdtIdStr.split(",")).stream().distinct().collect(Collectors.toList()); + sdtList = sysUserService.listByIds(sdtIdList).stream().map(SysUser::getUsername).collect(Collectors.toList()); + } - // 查询项目下参数清单下收集参数项中的 sdt,dre人员 - ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); - paramsCollectManifestEO.setParamsManifestId(paramsManifestId); - List pcmList = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); - List sdtListOfPCM = pcmList.stream() - .filter(e->StringUtils.isNotEmpty(e.getSdt())) - .map(ParamsCollectManifestEO::getSdt) - .distinct() - .collect(Collectors.toList()); - sdtList.addAll(sdtListOfPCM); // 需要取并集,因为存在参数项开始收集但 人员相关名单中sdt被修改的情况 + // 查询项目下参数清单下收集参数项中的 sdt,dre人员 + ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); + paramsCollectManifestEO.setParamsManifestId(paramsManifestId); + List pcmList = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); + List sdtListOfPCM = pcmList.stream() + .filter(e -> StringUtils.isNotEmpty(e.getSdt())) + .map(ParamsCollectManifestEO::getSdt) + .distinct() + .collect(Collectors.toList()); + sdtList.addAll(sdtListOfPCM); // 需要取并集,因为存在参数项开始收集但 人员相关名单中sdt被修改的情况 - List dreListOfPCM = pcmList.stream() - .filter(e->StringUtils.isNotEmpty(e.getDre())) - .map(ParamsCollectManifestEO::getDre) - .distinct() - .collect(Collectors.toList()); + List dreListOfPCM = pcmList.stream() + .filter(e -> StringUtils.isNotEmpty(e.getDre())) + .map(ParamsCollectManifestEO::getDre) + .distinct() + .collect(Collectors.toList()); - // 查询当前登录用户角色 是否包含管理员/领导 - List userRoles = sysUserRoleService.list(new QueryWrapper().lambda().eq(SysUserRole::getUserId, loginUser.getId())); // 查询用户所有角色 - List userRoleIds = new ArrayList<>(); // 用户管理员/领导 - if (CollectionUtil.isNotEmpty(userRoles)) { - List roleIdList = CollectManifestRoleIdEnum.getIdList(); - List userRoleIdList = userRoles.stream().map(SysUserRole::getRoleId).collect(Collectors.toList()); - userRoleIds = roleIdList.stream().filter(e->userRoleIdList.contains(e)).collect(Collectors.toList()); - } + // 查询当前登录用户角色 是否包含管理员/领导 + List userRoles = sysUserRoleService.list(new QueryWrapper().lambda().eq(SysUserRole::getUserId, loginUser.getId())); // 查询用户所有角色 + List userRoleIds = new ArrayList<>(); // 用户管理员/领导 + if (CollectionUtil.isNotEmpty(userRoles)) { + List roleIdList = CollectManifestRoleIdEnum.getIdList(); + List userRoleIdList = userRoles.stream().map(SysUserRole::getRoleId).collect(Collectors.toList()); + userRoleIds = roleIdList.stream().filter(e -> userRoleIdList.contains(e)).collect(Collectors.toList()); + } - String loginUserName = loginUser.getUsername().toLowerCase(); - studioList = toLowerCaseOfList(studioList); - homoList = toLowerCaseOfList(homoList); - sdtList = toLowerCaseOfList(sdtList); - dreListOfPCM = toLowerCaseOfList(dreListOfPCM); - if (CollectionUtil.isEmpty(userRoleIds) && !studioList.contains(loginUserName) - && !homoList.contains(loginUserName) - && !sdtList.contains(loginUserName) - && !dreListOfPCM.contains(loginUserName)) { + String loginUserName = loginUser.getUsername().toLowerCase(); + studioList = toLowerCaseOfList(studioList); + homoList = toLowerCaseOfList(homoList); + sdtList = toLowerCaseOfList(sdtList); + dreListOfPCM = toLowerCaseOfList(dreListOfPCM); + if (CollectionUtil.isEmpty(userRoleIds) && !studioList.contains(loginUserName) + && !homoList.contains(loginUserName) + && !sdtList.contains(loginUserName) + && !dreListOfPCM.contains(loginUserName)) { - Map map = new HashMap<>(); - if (CutEnum.CN.getValue().equals(cut)) { - map.put("label", CollectManifestUserTypeEnum.GUEST.getName()); - } else { - map.put("label", CollectManifestUserTypeEnum.GUEST.getEnName()); - } - map.put("value", CollectManifestUserTypeEnum.GUEST.getValue()); - userTypeList.add(map); - //return userTypeList; - } + Map map = new HashMap<>(); + if (CutEnum.CN.getValue().equals(cut)) { + map.put("label", CollectManifestUserTypeEnum.GUEST.getName()); + } else { + map.put("label", CollectManifestUserTypeEnum.GUEST.getEnName()); + } + map.put("value", CollectManifestUserTypeEnum.GUEST.getValue()); + userTypeList.add(map); + //return userTypeList; + } - if (homoList.contains(loginUserName)) { - Map map = new HashMap<>(); - if (CutEnum.CN.getValue().equals(cut)) { - map.put("label", CollectManifestUserTypeEnum.HOMO.getName()); - } else { - map.put("label", CollectManifestUserTypeEnum.HOMO.getEnName()); - } - map.put("value", CollectManifestUserTypeEnum.HOMO.getValue()); - userTypeList.add(map); - } + if (homoList.contains(loginUserName)) { + Map map = new HashMap<>(); + if (CutEnum.CN.getValue().equals(cut)) { + map.put("label", CollectManifestUserTypeEnum.HOMO.getName()); + } else { + map.put("label", CollectManifestUserTypeEnum.HOMO.getEnName()); + } + map.put("value", CollectManifestUserTypeEnum.HOMO.getValue()); + userTypeList.add(map); + } - if (sdtList.contains(loginUserName)) { - Map map = new HashMap<>(); - if (CutEnum.CN.getValue().equals(cut)) { - map.put("label", CollectManifestUserTypeEnum.SDT.getName()); - } else { - map.put("label", CollectManifestUserTypeEnum.SDT.getEnName()); - } - map.put("value", CollectManifestUserTypeEnum.SDT.getValue()); - userTypeList.add(map); - } + if (sdtList.contains(loginUserName)) { + Map map = new HashMap<>(); + if (CutEnum.CN.getValue().equals(cut)) { + map.put("label", CollectManifestUserTypeEnum.SDT.getName()); + } else { + map.put("label", CollectManifestUserTypeEnum.SDT.getEnName()); + } + map.put("value", CollectManifestUserTypeEnum.SDT.getValue()); + userTypeList.add(map); + } - if (dreListOfPCM.contains(loginUserName)) { - Map map = new HashMap<>(); - if (CutEnum.CN.getValue().equals(cut)) { - map.put("label", CollectManifestUserTypeEnum.DRE.getName()); - } else { - map.put("label", CollectManifestUserTypeEnum.DRE.getEnName()); - } - map.put("value", CollectManifestUserTypeEnum.DRE.getValue()); - userTypeList.add(map); - } + if (dreListOfPCM.contains(loginUserName)) { + Map map = new HashMap<>(); + if (CutEnum.CN.getValue().equals(cut)) { + map.put("label", CollectManifestUserTypeEnum.DRE.getName()); + } else { + map.put("label", CollectManifestUserTypeEnum.DRE.getEnName()); + } + map.put("value", CollectManifestUserTypeEnum.DRE.getValue()); + userTypeList.add(map); + } - if (studioList.contains(loginUserName)) { - Map map = new HashMap<>(); - if (CutEnum.CN.getValue().equals(cut)) { - map.put("label", CollectManifestUserTypeEnum.STUDIO.getName()); - } else { - map.put("label", CollectManifestUserTypeEnum.STUDIO.getEnName()); - } - map.put("value", CollectManifestUserTypeEnum.STUDIO.getValue()); - userTypeList.add(map); - } + if (studioList.contains(loginUserName)) { + Map map = new HashMap<>(); + if (CutEnum.CN.getValue().equals(cut)) { + map.put("label", CollectManifestUserTypeEnum.STUDIO.getName()); + } else { + map.put("label", CollectManifestUserTypeEnum.STUDIO.getEnName()); + } + map.put("value", CollectManifestUserTypeEnum.STUDIO.getValue()); + userTypeList.add(map); + } - if (CollectionUtil.isNotEmpty(userRoleIds)) { - List collectManifestRoleIdEnumList = CollectManifestRoleIdEnum.getByIdList(userRoleIds); - for (CollectManifestRoleIdEnum collectManifestRoleIdEnum : collectManifestRoleIdEnumList) { - Map map = new HashMap<>(); - if (CutEnum.CN.getValue().equals(cut)) { - map.put("label", collectManifestRoleIdEnum.getName()); - } else { - map.put("label", collectManifestRoleIdEnum.getEnName()); - } - map.put("value", collectManifestRoleIdEnum.getValue()); - userTypeList.add(map); - } - } + if (CollectionUtil.isNotEmpty(userRoleIds)) { + List collectManifestRoleIdEnumList = CollectManifestRoleIdEnum.getByIdList(userRoleIds); + for (CollectManifestRoleIdEnum collectManifestRoleIdEnum : collectManifestRoleIdEnumList) { + Map map = new HashMap<>(); + if (CutEnum.CN.getValue().equals(cut)) { + map.put("label", collectManifestRoleIdEnum.getName()); + } else { + map.put("label", collectManifestRoleIdEnum.getEnName()); + } + map.put("value", collectManifestRoleIdEnum.getValue()); + userTypeList.add(map); + } + } - //判断当前用户是否是viewer - boolean viewer = sysUserService.isViewer(loginUser.getId()); + //判断当前用户是否是viewer + boolean viewer = sysUserService.isViewer(loginUser.getId()); if (viewer) { Map map = new HashMap<>(); if (CutEnum.CN.getValue().equals(cut)) { @@ -2015,220 +2021,220 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl toLowerCaseOfList(List list) { - List newList = list; - if (CollectionUtil.isNotEmpty(list)) { - newList = list.stream().map(String::toLowerCase).collect(Collectors.toList()); - } - return newList; - } + private List toLowerCaseOfList(List list) { + List newList = list; + if (CollectionUtil.isNotEmpty(list)) { + newList = list.stream().map(String::toLowerCase).collect(Collectors.toList()); + } + return newList; + } - @Override - public Map isCollectFinished(String paramsManifestId) { - Map map = new HashMap<>(); + @Override + public Map isCollectFinished(String paramsManifestId) { + Map map = new HashMap<>(); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId) - .notIn(ParamsCollectManifestEO::getControlType, ControlTypeEnum.Title.getValue()) - .orderByDesc(ParamsCollectManifestEO::getUpdateTime); // 按修改时间降序 - List list = list(queryWrapper); - int collectFinishNumber = (int) list.stream().filter(e->CollectManifestStateEnum.SYNC_REPORT.getValue().equals(e.getState())).count(); - if (collectFinishNumber == list.size() && list.size() > 0) { - map.put("finish", true); - map.put("time", list.get(0).getUpdateTime()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId) + .notIn(ParamsCollectManifestEO::getControlType, ControlTypeEnum.Title.getValue()) + .orderByDesc(ParamsCollectManifestEO::getUpdateTime); // 按修改时间降序 + List list = list(queryWrapper); + int collectFinishNumber = (int) list.stream().filter(e -> CollectManifestStateEnum.SYNC_REPORT.getValue().equals(e.getState())).count(); + if (collectFinishNumber == list.size() && list.size() > 0) { + map.put("finish", true); + map.put("time", list.get(0).getUpdateTime()); - } else { - map.put("finish", false); - } - return map; - } + } else { + map.put("finish", false); + } + return map; + } - @Override - public boolean getManifestConfigFlag(String paramsManifestId) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId); - List list = list(queryWrapper); - int number = (int) list.stream().filter(e->CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState()) - || CollectManifestStateEnum.CHANGE.getValue().equals(e.getState())).count(); - if (number == list.size() && list.size() > 0) { - return true; - } else { - return false; - } - } + @Override + public boolean getManifestConfigFlag(String paramsManifestId) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId); + List list = list(queryWrapper); + int number = (int) list.stream().filter(e -> CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState()) + || CollectManifestStateEnum.CHANGE.getValue().equals(e.getState())).count(); + if (number == list.size() && list.size() > 0) { + return true; + } else { + return false; + } + } - @Override - public Map> queryByManifestIdList(List manifestIdList){ - Map> map = new HashMap<>(); + @Override + public Map> queryByManifestIdList(List manifestIdList) { + Map> map = new HashMap<>(); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(ParamsCollectManifestEO::getParamsManifestId, manifestIdList); - List list = list(queryWrapper); - for (String manifestId : manifestIdList) { - List collectManifestEOList = list.stream().filter(e->manifestId.equals(e.getParamsManifestId())).collect(Collectors.toList()); - map.put(manifestId, collectManifestEOList); - } - return map; - } + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(ParamsCollectManifestEO::getParamsManifestId, manifestIdList); + List list = list(queryWrapper); + for (String manifestId : manifestIdList) { + List collectManifestEOList = list.stream().filter(e -> manifestId.equals(e.getParamsManifestId())).collect(Collectors.toList()); + map.put(manifestId, collectManifestEOList); + } + return map; + } - @Override - public boolean goBack(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())) { - throw new JeroBootException("参数不能为空!"); - } - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); + @Override + public boolean goBack(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())) { + throw new JeroBootException("参数不能为空!"); + } + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - // 配置 - List paramsConfigEOList = this.paramsConfigEOService.queryList(paramsManifestId); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + // 配置 + List paramsConfigEOList = this.paramsConfigEOService.queryList(paramsManifestId); - List updateEOList = new ArrayList<>(); - List paramsCollectManifestLogEOList = new ArrayList<>(); - for (int i=0; i updateEOList = new ArrayList<>(); + List paramsCollectManifestLogEOList = new ArrayList<>(); + for (int i = 0; i < paramsCollectManifestIdStr.length; i++) { + ParamsCollectManifestEO paramsCollectManifestEO = getById(paramsCollectManifestIdStr[i]); + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestIdStr[i]); + if (CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState()) + || CollectManifestStateEnum.DRE_BACK.getValue().equals(paramsCollectManifestEO.getState()) + || CollectManifestStateEnum.CERT_BACK.getValue().equals(paramsCollectManifestEO.getState())) { - updateEO.setState(String.valueOf(Integer.parseInt(paramsCollectManifestEO.getState()) - 2)); // 设置对应状态 - } else { - updateEO.setState(String.valueOf(Integer.parseInt(paramsCollectManifestEO.getState()) + 1)); // 设置对应状态 - } - updateEOList.add(updateEO); + updateEO.setState(String.valueOf(Integer.parseInt(paramsCollectManifestEO.getState()) - 2)); // 设置对应状态 + } else { + updateEO.setState(String.valueOf(Integer.parseInt(paramsCollectManifestEO.getState()) + 1)); // 设置对应状态 + } + updateEOList.add(updateEO); - StringBuilder logCnContentSb = new StringBuilder(); - StringBuilder logEnContentSb = new StringBuilder(); + StringBuilder logCnContentSb = new StringBuilder(); + StringBuilder logEnContentSb = new StringBuilder(); - String currentPersonRole = paramsCollectManifestVO.getCurrentPersonRole(); - if(StringUtils.equals(currentPersonRole,CollectManifestUserTypeEnum.HOMO.getValue()) || StringUtils.equals(currentPersonRole,CollectManifestUserTypeEnum.SDT.getValue())){ - if(StringUtils.equals(currentPersonRole,CollectManifestUserTypeEnum.HOMO.getValue())){ - logCnContentSb.append("认证工程师").append("\"").append(currentUser.getUsername()).append("\"").append("将"); - logEnContentSb.append("The Homo Engineer ").append("\"").append(currentUser.getUsername()).append("\"").append(" returns the "); - }else if(StringUtils.equals(currentPersonRole,CollectManifestUserTypeEnum.SDT.getValue())){ - logCnContentSb.append("工程接口人").append("\"").append(currentUser.getUsername()).append("\"").append("将"); - logEnContentSb.append("Eng. Interface ").append("\"").append(currentUser.getUsername()).append("\"").append(" will return the "); - } + String currentPersonRole = paramsCollectManifestVO.getCurrentPersonRole(); + if (StringUtils.equals(currentPersonRole, CollectManifestUserTypeEnum.HOMO.getValue()) || StringUtils.equals(currentPersonRole, CollectManifestUserTypeEnum.SDT.getValue())) { + if (StringUtils.equals(currentPersonRole, CollectManifestUserTypeEnum.HOMO.getValue())) { + logCnContentSb.append("认证工程师").append("\"").append(currentUser.getUsername()).append("\"").append("将"); + logEnContentSb.append("The Homo Engineer ").append("\"").append(currentUser.getUsername()).append("\"").append(" returns the "); + } else if (StringUtils.equals(currentPersonRole, CollectManifestUserTypeEnum.SDT.getValue())) { + logCnContentSb.append("工程接口人").append("\"").append(currentUser.getUsername()).append("\"").append("将"); + logEnContentSb.append("Eng. Interface ").append("\"").append(currentUser.getUsername()).append("\"").append(" will return the "); + } - // 添加配置数据 - int paramsConfigLenth = 1; - for (ParamsConfigEO configEO : paramsConfigEOList) { - // ParamsConfigDataEO configDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(configEO.getId(), paramsCollectManifestEO.getId()); - List configDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(configEO.getId(), paramsCollectManifestEO.getId()); - for (ParamsConfigDataEO configDataEO : configDataEOList) { - if(StringUtils.isNotEmpty(configDataEO.getPullData()) || StringUtils.isNotEmpty(configDataEO.getTextData()) || StringUtils.isNotEmpty(configDataEO.getFileConnectId())){ - logCnContentSb.append(configEO.getConfigName()); - logCnContentSb.append(" 的"); + // 添加配置数据 + int paramsConfigLenth = 1; + for (ParamsConfigEO configEO : paramsConfigEOList) { + // ParamsConfigDataEO configDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(configEO.getId(), paramsCollectManifestEO.getId()); + List configDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(configEO.getId(), paramsCollectManifestEO.getId()); + for (ParamsConfigDataEO configDataEO : configDataEOList) { + if (StringUtils.isNotEmpty(configDataEO.getPullData()) || StringUtils.isNotEmpty(configDataEO.getTextData()) || StringUtils.isNotEmpty(configDataEO.getFileConnectId())) { + logCnContentSb.append(configEO.getConfigName()); + logCnContentSb.append(" 的"); - if(StringUtils.isNotEmpty(configDataEO.getPullData())){ - logCnContentSb.append("\"" +configDataEO.getPullData()+ "\""); - logEnContentSb.append("\"" +configDataEO.getPullData()+ "\""); - } - if(StringUtils.isNotEmpty(configDataEO.getTextData())){ - logCnContentSb.append("\"" +configDataEO.getTextData()+ "\""); - logEnContentSb.append("\"" +configDataEO.getTextData()+ "\""); - } - if(StringUtils.isNotEmpty(configDataEO.getFileConnectId())){ - List fileInfos = ossFileService.getFileInfos(configDataEO.getFileConnectId()); - String fileNames = fileInfos.stream().map(OSSFile::getFileName).distinct().collect(Collectors.joining(",")); - if (StringUtils.isNotEmpty(fileNames)) { - logCnContentSb.append("\"" +fileNames+ "\""); - logEnContentSb.append("\"" +fileNames+ "\""); - } - } + if (StringUtils.isNotEmpty(configDataEO.getPullData())) { + logCnContentSb.append("\"" + configDataEO.getPullData() + "\""); + logEnContentSb.append("\"" + configDataEO.getPullData() + "\""); + } + if (StringUtils.isNotEmpty(configDataEO.getTextData())) { + logCnContentSb.append("\"" + configDataEO.getTextData() + "\""); + logEnContentSb.append("\"" + configDataEO.getTextData() + "\""); + } + if (StringUtils.isNotEmpty(configDataEO.getFileConnectId())) { + List fileInfos = ossFileService.getFileInfos(configDataEO.getFileConnectId()); + String fileNames = fileInfos.stream().map(OSSFile::getFileName).distinct().collect(Collectors.joining(",")); + if (StringUtils.isNotEmpty(fileNames)) { + logCnContentSb.append("\"" + fileNames + "\""); + logEnContentSb.append("\"" + fileNames + "\""); + } + } - logEnContentSb.append(" of configuration " +configEO.getConfigName()+ ""); + logEnContentSb.append(" of configuration " + configEO.getConfigName() + ""); - // 如果配置有两条或两条以上,并且不是最后一次循环 - if(paramsConfigEOList.size() > 1 && paramsConfigLenth != paramsConfigEOList.size()){ - logCnContentSb.append(","); - logEnContentSb.append(" and "); - } - } - } + // 如果配置有两条或两条以上,并且不是最后一次循环 + if (paramsConfigEOList.size() > 1 && paramsConfigLenth != paramsConfigEOList.size()) { + logCnContentSb.append(","); + logEnContentSb.append(" and "); + } + } + } - paramsConfigLenth ++; - } + paramsConfigLenth++; + } - if(StringUtils.equals(currentPersonRole,CollectManifestUserTypeEnum.HOMO.getValue())){ - logCnContentSb.append("退回给填写人").append("\"").append(paramsCollectManifestEO.getDre()).append("\""); - logEnContentSb.append(" to the person ").append("\"").append(paramsCollectManifestEO.getDre()).append("\"."); - }else if(StringUtils.equals(currentPersonRole,CollectManifestUserTypeEnum.SDT.getValue())){ - logCnContentSb.append("退回给认证工程师"); - logEnContentSb.append(" to the Homo Engineer."); - } - } else if(StringUtils.equals(currentPersonRole,CollectManifestUserTypeEnum.DRE.getValue())){ - logCnContentSb.append("填写人").append("\"").append(currentUser.getUsername()).append("\"").append("退回给工程接口人").append("\"").append(paramsCollectManifestEO.getSdt()).append("\""); - logEnContentSb.append("DRE ").append("\"").append(currentUser.getUsername()).append("\"").append(" return to project Eng. Interface ").append("\"").append(paramsCollectManifestEO.getSdt()).append("\""); - } + if (StringUtils.equals(currentPersonRole, CollectManifestUserTypeEnum.HOMO.getValue())) { + logCnContentSb.append("退回给填写人").append("\"").append(paramsCollectManifestEO.getDre()).append("\""); + logEnContentSb.append(" to the person ").append("\"").append(paramsCollectManifestEO.getDre()).append("\"."); + } else if (StringUtils.equals(currentPersonRole, CollectManifestUserTypeEnum.SDT.getValue())) { + logCnContentSb.append("退回给认证工程师"); + logEnContentSb.append(" to the Homo Engineer."); + } + } else if (StringUtils.equals(currentPersonRole, CollectManifestUserTypeEnum.DRE.getValue())) { + logCnContentSb.append("填写人").append("\"").append(currentUser.getUsername()).append("\"").append("退回给工程接口人").append("\"").append(paramsCollectManifestEO.getSdt()).append("\""); + logEnContentSb.append("DRE ").append("\"").append(currentUser.getUsername()).append("\"").append(" return to project Eng. Interface ").append("\"").append(paramsCollectManifestEO.getSdt()).append("\""); + } - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent(logCnContentSb.toString()); - paramsCollectManifestLogEO.setLogEnContent(logEnContentSb.toString()); - paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); - paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - } - boolean update = updateBatchById(updateEOList); - if(CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)){ - this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); - } - if (update) { - //飞书 - for (ParamsCollectManifestEO paramsCollectManifestEO : updateEOList) { - paramsCollectManifestEO = getById(paramsCollectManifestEO.getId()); - ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsCollectManifestEO.getParamsManifestId()); - //日期 - String deadline = new SimpleDateFormat("yyyy-MM-dd").format(paramsCollectManifestEO.getDeadline()); - //项目名称 - ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(paramsManifestEO.getProjectId(), - paramsManifestEO.getProjectVersion(),paramsCollectManifestVO.getCut()); // 获取项目信息 - //url - String urlParamsStr = parseUrlParams(paramsManifestEO); - String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; - //认证工程师 - //String[] engThirdIds = new String[1]; - List engThirdIds = new ArrayList<>(); - List projectLibraryBases = projectLibraryBaseMapper.queryById(paramsManifestEO.getProjectId()); - if (ObjectUtils.isNotEmpty(projectLibraryBases)) { - String[] ids = projectLibraryBases.get(0).getCertificationEngineer().split(","); - if (ObjectUtils.isNotEmpty(ids)) { - for (String id : ids) { - SysUser engineer = sysUserService.getById(id); - if (ObjectUtils.isNotEmpty(engineer)) { - engThirdIds.add(engineer.getThirdId()); - } - } - } - } - if (CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState())) { - //通知认证工程师 - try { - FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); - feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); - feishuMsgVo.setCnContentUpper("您好,"+ currentUser.getUsername() +"退回了参数NIO-"+ paramsCollectManifestEO.getNioNumber() +",请及时处理"); - feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + - "\n发起人: " + currentUser.getUsername() + - "\n截止时间: " + deadline); - feishuMsgVo.setEnContentUpper("Hello! "+ currentUser.getUsername() +" has returned the Parameter NIO-"+ paramsCollectManifestEO.getNioNumber() +". Please address it in a timely manner"); - feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + - "\nInitiator: " + currentUser.getUsername() + - "\nDue Date: " + deadline); - feishuMsgVo.setUrl(hrefFeishu); - feishuMsgVo.setColor(MsgColorEnum.RED.getValue()); // 颜色 - feishuService.sendCard(engThirdIds.toArray(new String[engThirdIds.size()]), feishuMsgVo); - } catch (IOException e) { - log.error("飞书消息推送失败"); - } - } else if (CollectManifestStateEnum.DRE_BACK.getValue().equals(paramsCollectManifestEO.getState())) { + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent(logCnContentSb.toString()); + paramsCollectManifestLogEO.setLogEnContent(logEnContentSb.toString()); + paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); + paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + } + boolean update = updateBatchById(updateEOList); + if (CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)) { + this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); + } + if (update) { + //飞书 + for (ParamsCollectManifestEO paramsCollectManifestEO : updateEOList) { + paramsCollectManifestEO = getById(paramsCollectManifestEO.getId()); + ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsCollectManifestEO.getParamsManifestId()); + //日期 + String deadline = new SimpleDateFormat("yyyy-MM-dd").format(paramsCollectManifestEO.getDeadline()); + //项目名称 + ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(paramsManifestEO.getProjectId(), + paramsManifestEO.getProjectVersion(), paramsCollectManifestVO.getCut()); // 获取项目信息 + //url + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + //认证工程师 + //String[] engThirdIds = new String[1]; + List engThirdIds = new ArrayList<>(); + List projectLibraryBases = projectLibraryBaseMapper.queryById(paramsManifestEO.getProjectId()); + if (ObjectUtils.isNotEmpty(projectLibraryBases)) { + String[] ids = projectLibraryBases.get(0).getCertificationEngineer().split(","); + if (ObjectUtils.isNotEmpty(ids)) { + for (String id : ids) { + SysUser engineer = sysUserService.getById(id); + if (ObjectUtils.isNotEmpty(engineer)) { + engThirdIds.add(engineer.getThirdId()); + } + } + } + } + if (CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState())) { + //通知认证工程师 + try { + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); + feishuMsgVo.setCnContentUpper("您好," + currentUser.getUsername() + "退回了参数NIO-" + paramsCollectManifestEO.getNioNumber() + ",请及时处理"); + feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + + "\n发起人: " + currentUser.getUsername() + + "\n截止时间: " + deadline); + feishuMsgVo.setEnContentUpper("Hello! " + currentUser.getUsername() + " has returned the Parameter NIO-" + paramsCollectManifestEO.getNioNumber() + ". Please address it in a timely manner"); + feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + + "\nInitiator: " + currentUser.getUsername() + + "\nDue Date: " + deadline); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.RED.getValue()); // 颜色 + feishuService.sendCard(engThirdIds.toArray(new String[engThirdIds.size()]), feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } else if (CollectManifestStateEnum.DRE_BACK.getValue().equals(paramsCollectManifestEO.getState())) { - //通知认证工程师 + //通知认证工程师 /*try { FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); @@ -2246,253 +2252,253 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl SdtThirdIds = new ArrayList<>(); - for (String sdt : paramsCollectManifestEO.getSdt().split(",")) { - SysUser sdtUser = sysUserService.getUserByName(sdt); - if (ObjectUtils.isNotEmpty(sdtUser)) { - SdtThirdIds.add(sdtUser.getThirdId()); - } - } + //通知工程接口人 + List SdtThirdIds = new ArrayList<>(); + for (String sdt : paramsCollectManifestEO.getSdt().split(",")) { + SysUser sdtUser = sysUserService.getUserByName(sdt); + if (ObjectUtils.isNotEmpty(sdtUser)) { + SdtThirdIds.add(sdtUser.getThirdId()); + } + } - try { - FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); - feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); - feishuMsgVo.setCnContentUpper("您好,"+ currentUser.getUsername() +"退回了参数NIO-"+ paramsManifestEO.getTitle() +",请及时处理"); - feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + - "\n发起人: " + currentUser.getUsername() + - "\n截止时间: " + deadline); - feishuMsgVo.setEnContentUpper("Hello! "+ currentUser.getUsername() +" has returned the Parameter NIO-"+ paramsManifestEO.getTitle() +". Please address it in a timely manner"); - feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + - "\nInitiator: " + currentUser.getUsername() + - "\nDue Date: " + deadline); - feishuMsgVo.setUrl(hrefFeishu); - feishuMsgVo.setColor(MsgColorEnum.RED.getValue()); // 颜色 - feishuService.sendCard(SdtThirdIds.toArray(new String[SdtThirdIds.size()]), feishuMsgVo); - } catch (IOException e) { - log.error("飞书消息推送失败"); - } + try { + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); + feishuMsgVo.setCnContentUpper("您好," + currentUser.getUsername() + "退回了参数NIO-" + paramsManifestEO.getTitle() + ",请及时处理"); + feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + + "\n发起人: " + currentUser.getUsername() + + "\n截止时间: " + deadline); + feishuMsgVo.setEnContentUpper("Hello! " + currentUser.getUsername() + " has returned the Parameter NIO-" + paramsManifestEO.getTitle() + ". Please address it in a timely manner"); + feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + + "\nInitiator: " + currentUser.getUsername() + + "\nDue Date: " + deadline); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.RED.getValue()); // 颜色 + feishuService.sendCard(SdtThirdIds.toArray(new String[SdtThirdIds.size()]), feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } - } + } - } - } - return update; - } + } + } + return update; + } - @Override - public boolean withdraw(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - List paramsCollectManifestLogEOList = new ArrayList<>(); + @Override + public boolean withdraw(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + List paramsCollectManifestLogEOList = new ArrayList<>(); - List updateEOList = new ArrayList<>(); - for (int i=0; i updateEOList = new ArrayList<>(); + for (int i = 0; i < paramsCollectManifestIdStr.length; i++) { + ParamsCollectManifestEO paramsCollectManifestEO = getById(paramsCollectManifestIdStr[i]); + Integer state = Integer.parseInt(paramsCollectManifestEO.getState()); - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - if (CollectManifestStateEnum.WAIT_SDT.getValue().equals(paramsCollectManifestEO.getState())) { - updateEO.setState(String.valueOf(state - 1)); // 设置对应状态 + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + if (CollectManifestStateEnum.WAIT_SDT.getValue().equals(paramsCollectManifestEO.getState())) { + updateEO.setState(String.valueOf(state - 1)); // 设置对应状态 - } else if (CollectManifestStateEnum.WAIT_FILL.getValue().equals(paramsCollectManifestEO.getState()) - || CollectManifestStateEnum.SUBMIT.getValue().equals(paramsCollectManifestEO.getState())) { - updateEO.setState(String.valueOf(state - 2)); // 设置对应状态 + } else if (CollectManifestStateEnum.WAIT_FILL.getValue().equals(paramsCollectManifestEO.getState()) + || CollectManifestStateEnum.SUBMIT.getValue().equals(paramsCollectManifestEO.getState())) { + updateEO.setState(String.valueOf(state - 2)); // 设置对应状态 - }else if (CollectManifestStateEnum.DRE_BACK.getValue().equals(paramsCollectManifestEO.getState())) { - updateEO.setState(CollectManifestStateEnum.WAIT_COLLECT.getValue()); // 设置对应状态 - } + } else if (CollectManifestStateEnum.DRE_BACK.getValue().equals(paramsCollectManifestEO.getState())) { + updateEO.setState(CollectManifestStateEnum.WAIT_COLLECT.getValue()); // 设置对应状态 + } - updateEO.setId(paramsCollectManifestIdStr[i]); - updateEOList.add(updateEO); + updateEO.setId(paramsCollectManifestIdStr[i]); + updateEOList.add(updateEO); - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent("工程接口人\"" +currentUser.getUsername()+ "\"将参数数据强制撤回"); - paramsCollectManifestLogEO.setLogEnContent("The Eng. Interface \""+ currentUser.getUsername() +"\" will forcibly withdraw the parameter data"); - paramsCollectManifestLogEO.setParamsManifestId(paramsCollectManifestEO.getParamsManifestId()); - paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - } - if(CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)){ - this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); - } - return updateBatchById(updateEOList); - } + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent("工程接口人\"" + currentUser.getUsername() + "\"将参数数据强制撤回"); + paramsCollectManifestLogEO.setLogEnContent("The Eng. Interface \"" + currentUser.getUsername() + "\" will forcibly withdraw the parameter data"); + paramsCollectManifestLogEO.setParamsManifestId(paramsCollectManifestEO.getParamsManifestId()); + paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + } + if (CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)) { + this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); + } + return updateBatchById(updateEOList); + } - @Override - public boolean updateDeadlineBatch(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) || paramsCollectManifestVO.getDeadline() == null) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - Date deadline = paramsCollectManifestVO.getDeadline(); + @Override + public boolean updateDeadlineBatch(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) || paramsCollectManifestVO.getDeadline() == null) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + Date deadline = paramsCollectManifestVO.getDeadline(); - String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); - List updateEOList = new ArrayList<>(); - for (int i=0; i updateEOList = new ArrayList<>(); + for (int i = 0; i < paramsCollectManifestIdStr.length; i++) { + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestIdStr[i]); + updateEO.setDeadline(deadline); // 设置截至时间 + updateEOList.add(updateEO); + } + return updateBatchById(updateEOList); + } - @Override - public boolean updateDutyTerritory(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) - || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId()) - || StringUtils.isEmpty(paramsCollectManifestVO.getDutyTerritory())) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestId = paramsCollectManifestVO.getIds(); - String dutyTerritory = paramsCollectManifestVO.getDutyTerritory(); - ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsCollectManifestVO.getParamsManifestId()); - String projectId = paramsManifestEO.getProjectId(); + @Override + public boolean updateDutyTerritory(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) + || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId()) + || StringUtils.isEmpty(paramsCollectManifestVO.getDutyTerritory())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestId = paramsCollectManifestVO.getIds(); + String dutyTerritory = paramsCollectManifestVO.getDutyTerritory(); + ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsCollectManifestVO.getParamsManifestId()); + String projectId = paramsManifestEO.getProjectId(); - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - updateEO.setId(paramsCollectManifestId); - updateEO.setDutyTerritory(dutyTerritory); + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestId); + updateEO.setDutyTerritory(dutyTerritory); - // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 - ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectVersionId(), dutyTerritory); - if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { - String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); - if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 - SysUser sysUser = sysUserService.getById(sdtId); - if (ObjectUtil.isNotEmpty(sysUser)) { - updateEO.setSdt(sysUser.getUsername()); // 设置工程接口人 - } else { - updateEO.setSdt(""); // 设置工程接口人 - } - } else { - updateEO.setSdt(""); // 设置工程接口人 - } - } else { - updateEO.setSdt(""); // 设置工程接口人 - } + // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 + ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectVersionId(), dutyTerritory); + if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { + String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); + if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 + SysUser sysUser = sysUserService.getById(sdtId); + if (ObjectUtil.isNotEmpty(sysUser)) { + updateEO.setSdt(sysUser.getUsername()); // 设置工程接口人 + } else { + updateEO.setSdt(""); // 设置工程接口人 + } + } else { + updateEO.setSdt(""); // 设置工程接口人 + } + } else { + updateEO.setSdt(""); // 设置工程接口人 + } - return updateById(updateEO); - } + return updateById(updateEO); + } - @Override - public boolean updateSdt(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) || StringUtils.isEmpty(paramsCollectManifestVO.getSdt())) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestId = paramsCollectManifestVO.getIds(); - String sdt = paramsCollectManifestVO.getSdt(); + @Override + public boolean updateSdt(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) || StringUtils.isEmpty(paramsCollectManifestVO.getSdt())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestId = paramsCollectManifestVO.getIds(); + String sdt = paramsCollectManifestVO.getSdt(); - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - updateEO.setId(paramsCollectManifestId); - updateEO.setSdt(sdt); // 设置工程接口人 - return updateById(updateEO); - } + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestId); + updateEO.setSdt(sdt); // 设置工程接口人 + return updateById(updateEO); + } - @Override - public boolean updateDreBatch(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) - || StringUtils.isEmpty(paramsCollectManifestVO.getDre()) - || StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - String dre = paramsCollectManifestVO.getDre(); - String projectId = paramsCollectManifestVO.getProjectId(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + @Override + public boolean updateDreBatch(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) + || StringUtils.isEmpty(paramsCollectManifestVO.getDre()) + || StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String dre = paramsCollectManifestVO.getDre(); + String projectId = paramsCollectManifestVO.getProjectId(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人 - ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 - ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, - paramsManifestEO.getProjectVersion(),paramsCollectManifestVO.getCut()); // 获取项目信息 - paramsManifestEO.setProjectName(projectInfo.getProjectName()); + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人 + ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 + ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, + paramsManifestEO.getProjectVersion(), paramsCollectManifestVO.getCut()); // 获取项目信息 + paramsManifestEO.setProjectName(projectInfo.getProjectName()); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); - List updateEOList = new ArrayList<>(); - List delDrePermission = new ArrayList<>(); - StringBuilder connectBuilder = new StringBuilder(); - connectBuilder.append("You are required to fill in "); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); + List updateEOList = new ArrayList<>(); + List delDrePermission = new ArrayList<>(); + StringBuilder connectBuilder = new StringBuilder(); + connectBuilder.append("You are required to fill in "); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(ParamsCollectManifestEO::getId, Arrays.asList(paramsCollectManifestIdStr)) - .orderByAsc(ParamsCollectManifestEO::getDeadline).orderByAsc(ParamsCollectManifestEO::getNioNumber); - List paramsCollectManifestEOList = list(queryWrapper); - Date deadline = paramsCollectManifestEOList.get(0).getDeadline(); - int i = 0; + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(ParamsCollectManifestEO::getId, Arrays.asList(paramsCollectManifestIdStr)) + .orderByAsc(ParamsCollectManifestEO::getDeadline).orderByAsc(ParamsCollectManifestEO::getNioNumber); + List paramsCollectManifestEOList = list(queryWrapper); + Date deadline = paramsCollectManifestEOList.get(0).getDeadline(); + int i = 0; - List paramsCollectManifestLogEOList = new ArrayList<>(); - for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { - if (i < 3) { - connectBuilder.append(paramsCollectManifestEO.getNioNumber()).append("-").append(paramsCollectManifestEO.getParamsName()).append(","); - } - i++; + List paramsCollectManifestLogEOList = new ArrayList<>(); + for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { + if (i < 3) { + connectBuilder.append(paramsCollectManifestEO.getNioNumber()).append("-").append(paramsCollectManifestEO.getParamsName()).append(","); + } + i++; - String logCnContent = "工程接口人\"" +currentUser.getUsername()+ "\"将参数填写人由\"空\"修改为\"" + dre + "\""; - String logEnContent = "Eng. Interface \"" +currentUser.getUsername()+ "\" Change the parameter person from \"null\" to \"" +dre+ "\"."; - if (StringUtils.isNotEmpty(paramsCollectManifestEO.getDre())) { - logCnContent = "工程接口人\"" +currentUser.getUsername()+ "\"将参数填写人由\""+ paramsCollectManifestEO.getDre() +"\"修改为\"" + dre + "\""; - logEnContent = "Eng. Interface \"" +currentUser.getUsername()+ "\" Change the parameter person from \""+ paramsCollectManifestEO.getDre() +"\" to \"" + dre + "\"."; - } + String logCnContent = "工程接口人\"" + currentUser.getUsername() + "\"将参数填写人由\"空\"修改为\"" + dre + "\""; + String logEnContent = "Eng. Interface \"" + currentUser.getUsername() + "\" Change the parameter person from \"null\" to \"" + dre + "\"."; + if (StringUtils.isNotEmpty(paramsCollectManifestEO.getDre())) { + logCnContent = "工程接口人\"" + currentUser.getUsername() + "\"将参数填写人由\"" + paramsCollectManifestEO.getDre() + "\"修改为\"" + dre + "\""; + logEnContent = "Eng. Interface \"" + currentUser.getUsername() + "\" Change the parameter person from \"" + paramsCollectManifestEO.getDre() + "\" to \"" + dre + "\"."; + } - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent(logCnContent); - paramsCollectManifestLogEO.setLogEnContent(logEnContent); - paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); - paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent(logCnContent); + paramsCollectManifestLogEO.setLogEnContent(logEnContent); + paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); + paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - updateEO.setId(paramsCollectManifestEO.getId()); - updateEO.setDre(dre); // 设置填写人 - updateEO.setState(CollectManifestStateEnum.WAIT_FILL.getValue()); // 设置状态为:待填写 - updateEOList.add(updateEO); + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestEO.getId()); + updateEO.setDre(dre); // 设置填写人 + updateEO.setState(CollectManifestStateEnum.WAIT_FILL.getValue()); // 设置状态为:待填写 + updateEOList.add(updateEO); - delDrePermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); - } - boolean isSuccess = updateBatchById(updateEOList); + delDrePermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); + } + boolean isSuccess = updateBatchById(updateEOList); - if(CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)){ - this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); - } + if (CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)) { + this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); + } - if (isSuccess) { - //设置权限 先删后加 - Date now = new Date(); - QueryWrapper delDreWrapper = new QueryWrapper<>(); - delDreWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_DRE.getValue()).in("description", delDrePermission); - projectUserPermissionService.remove(delDreWrapper); - List adds = new ArrayList<>(); - for (ParamsCollectManifestEO paramsCollectManifestEO : updateEOList) { - ProjectUserPermission projectUserPermission = new ProjectUserPermission(); - projectUserPermission.setProjectId(projectId); - projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getDre()) == null?"":sysUserService.getUserByName(paramsCollectManifestEO.getDre()).getId()); - projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_DRE.getValue()); - projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); - projectUserPermission.setCreateTime(now); - projectUserPermission.setUpdateTime(now); - adds.add(projectUserPermission); - } - if (ObjectUtils.isNotEmpty(adds)) { - projectUserPermissionService.saveBatch(adds); - } - } - // 消息内容 - SysUser sysUser = sysUserService.getUserByName(dre); - String[] thirdIds = new String[1]; - thirdIds[0] = sysUser.getThirdId(); - String urlParamsStr = parseUrlParams(paramsManifestEO); - String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; - //String href = "the link,"; - //String content = connectBuilder.substring(0, connectBuilder.toString().length()-1) + " and other parameter items, please enter the link to handle it."; - //String contentInfo = connectBuilder.substring(0, connectBuilder.toString().length()-1) + " and other parameter items, please enter " + href + " and fill in the relevant information."; - //String msgTitle = projectInfo.getProjectName() + ": You have a homo parameter task to complete"; + if (isSuccess) { + //设置权限 先删后加 + Date now = new Date(); + QueryWrapper delDreWrapper = new QueryWrapper<>(); + delDreWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_DRE.getValue()).in("description", delDrePermission); + projectUserPermissionService.remove(delDreWrapper); + List adds = new ArrayList<>(); + for (ParamsCollectManifestEO paramsCollectManifestEO : updateEOList) { + ProjectUserPermission projectUserPermission = new ProjectUserPermission(); + projectUserPermission.setProjectId(projectId); + projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getDre()) == null ? "" : sysUserService.getUserByName(paramsCollectManifestEO.getDre()).getId()); + projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_DRE.getValue()); + projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); + projectUserPermission.setCreateTime(now); + projectUserPermission.setUpdateTime(now); + adds.add(projectUserPermission); + } + if (ObjectUtils.isNotEmpty(adds)) { + projectUserPermissionService.saveBatch(adds); + } + } + // 消息内容 + SysUser sysUser = sysUserService.getUserByName(dre); + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + //String href = "the link,"; + //String content = connectBuilder.substring(0, connectBuilder.toString().length()-1) + " and other parameter items, please enter the link to handle it."; + //String contentInfo = connectBuilder.substring(0, connectBuilder.toString().length()-1) + " and other parameter items, please enter " + href + " and fill in the relevant information."; + //String msgTitle = projectInfo.getProjectName() + ": You have a homo parameter task to complete"; - // 发送系统消息 + // 发送系统消息 /*SysAnnouncement sysAnnouncement = new SysAnnouncement(); sysAnnouncement.setDelFlag("0"); sysAnnouncement.setSendStatus("0"); @@ -2512,7 +2518,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl issueCollection(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) - || StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) - || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId()) - || StringUtils.isEmpty(paramsCollectManifestVO.getCut()) - || paramsCollectManifestVO.getDeadline() == null ) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - String projectId = paramsCollectManifestVO.getProjectId(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String cut = paramsCollectManifestVO.getCut(); - Date deadline = paramsCollectManifestVO.getDeadline(); + @Override + public List issueCollection(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) + || StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) + || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId()) + || StringUtils.isEmpty(paramsCollectManifestVO.getCut()) + || paramsCollectManifestVO.getDeadline() == null) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String projectId = paramsCollectManifestVO.getProjectId(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String cut = paramsCollectManifestVO.getCut(); + Date deadline = paramsCollectManifestVO.getDeadline(); - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人 - ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 - ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion(),paramsCollectManifestVO.getCut()); // 获取项目信息 - paramsManifestEO.setProjectName(projectInfo.getProjectName()); + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人 + ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 + ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion(), paramsCollectManifestVO.getCut()); // 获取项目信息 + paramsManifestEO.setProjectName(projectInfo.getProjectName()); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); - List updateEOList = new ArrayList<>(); - List> msgMapList = new ArrayList<>(); - List updateEOIdList = new ArrayList<>(); - List delSdtPermission = new ArrayList<>(); - List paramsCollectManifestLogEOList = new ArrayList<>(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); + List updateEOList = new ArrayList<>(); + List> msgMapList = new ArrayList<>(); + List updateEOIdList = new ArrayList<>(); + List delSdtPermission = new ArrayList<>(); + List paramsCollectManifestLogEOList = new ArrayList<>(); - List paramsCollectManifestEOList = listByIds(Arrays.asList(paramsCollectManifestIdStr)); - paramsCollectManifestEOList = paramsCollectManifestEOList.stream().sorted(Comparator.comparing(ParamsCollectManifestBaseEO::getNioNumber)).collect(Collectors.toList()); // 按NIO编号升序 - for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { - // 判断参数项状态 - if (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(paramsCollectManifestEO.getState()) - || CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState()) - || CollectManifestStateEnum.CHANGE.getValue().equals(paramsCollectManifestEO.getState())) { - if (StringUtils.isNotBlank(paramsCollectManifestEO.getSdt())) { - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - // 变更状态下的下发收集 参数项版本 +1 - if (CollectManifestStateEnum.CHANGE.getValue().equals(paramsCollectManifestEO.getState())) { - Integer newVersion = (paramsCollectManifestEO.getVersion() != null) ? (paramsCollectManifestEO.getVersion() + 1) : 2; - updateEO.setVersion(newVersion); - } - updateEO.setId(paramsCollectManifestEO.getId()); - updateEO.setState(CollectManifestStateEnum.WAIT_SDT.getValue()); // 设置状态为:待工程接口人处理 - updateEO.setDeadline(deadline); - updateEOList.add(updateEO); + List paramsCollectManifestEOList = listByIds(Arrays.asList(paramsCollectManifestIdStr)); + paramsCollectManifestEOList = paramsCollectManifestEOList.stream().sorted(Comparator.comparing(ParamsCollectManifestBaseEO::getNioNumber)).collect(Collectors.toList()); // 按NIO编号升序 + for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { + // 判断参数项状态 + if (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(paramsCollectManifestEO.getState()) + || CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState()) + || CollectManifestStateEnum.CHANGE.getValue().equals(paramsCollectManifestEO.getState())) { + if (StringUtils.isNotBlank(paramsCollectManifestEO.getSdt())) { + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + // 变更状态下的下发收集 参数项版本 +1 + if (CollectManifestStateEnum.CHANGE.getValue().equals(paramsCollectManifestEO.getState())) { + Integer newVersion = (paramsCollectManifestEO.getVersion() != null) ? (paramsCollectManifestEO.getVersion() + 1) : 2; + updateEO.setVersion(newVersion); + } + updateEO.setId(paramsCollectManifestEO.getId()); + updateEO.setState(CollectManifestStateEnum.WAIT_SDT.getValue()); // 设置状态为:待工程接口人处理 + updateEO.setDeadline(deadline); + updateEOList.add(updateEO); - updateEOIdList.add(paramsCollectManifestEO.getId()); - delSdtPermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); + updateEOIdList.add(paramsCollectManifestEO.getId()); + delSdtPermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent("认证工程师\""+currentUser.getUsername()+"\"开始了下发收集,工程接口人为\""+paramsCollectManifestEO.getSdt()+"\""); - paramsCollectManifestLogEO.setLogEnContent("The Homo Engineer \""+currentUser.getUsername()+"\" starts to deliver the collection, and the Eng. Interface is \""+paramsCollectManifestEO.getSdt()+"\"."); - paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); - paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - } else { - Map msgMap = new HashMap<>(); - msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); - msgMap.put("state", paramsCollectManifestEO.getState()); - msgMap.put("type", "1"); - msgMapList.add(msgMap); - } + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent("认证工程师\"" + currentUser.getUsername() + "\"开始了下发收集,工程接口人为\"" + paramsCollectManifestEO.getSdt() + "\""); + paramsCollectManifestLogEO.setLogEnContent("The Homo Engineer \"" + currentUser.getUsername() + "\" starts to deliver the collection, and the Eng. Interface is \"" + paramsCollectManifestEO.getSdt() + "\"."); + paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); + paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + } else { + Map msgMap = new HashMap<>(); + msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); + msgMap.put("state", paramsCollectManifestEO.getState()); + msgMap.put("type", "1"); + msgMapList.add(msgMap); + } - } else { - Map msgMap = new HashMap<>(); - msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); - msgMap.put("state", paramsCollectManifestEO.getState()); - msgMap.put("type", "2"); - msgMapList.add(msgMap); - } - } - boolean isSuccess = updateBatchById(updateEOList); + } else { + Map msgMap = new HashMap<>(); + msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); + msgMap.put("state", paramsCollectManifestEO.getState()); + msgMap.put("type", "2"); + msgMapList.add(msgMap); + } + } + boolean isSuccess = updateBatchById(updateEOList); - if (isSuccess) { - Date now = new Date(); - List afterUpdateEOList = listByIds(updateEOIdList); - //设置权限 先删后加 - QueryWrapper delSdtWrapper = new QueryWrapper<>(); - delSdtWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()).in("description", delSdtPermission); - projectUserPermissionService.remove(delSdtWrapper); - List adds = new ArrayList<>(); - for (ParamsCollectManifestEO paramsCollectManifestEO : afterUpdateEOList) { - ProjectUserPermission projectUserPermission = new ProjectUserPermission(); - projectUserPermission.setProjectId(projectId); - projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getSdt()) == null?"":sysUserService.getUserByName(paramsCollectManifestEO.getSdt()).getId()); - projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()); - projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); - projectUserPermission.setCreateTime(now); - projectUserPermission.setUpdateTime(now); - adds.add(projectUserPermission); - } - if (ObjectUtils.isNotEmpty(adds)) { - projectUserPermissionService.saveBatch(adds); - } + if (isSuccess) { + Date now = new Date(); + List afterUpdateEOList = listByIds(updateEOIdList); + //设置权限 先删后加 + QueryWrapper delSdtWrapper = new QueryWrapper<>(); + delSdtWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()).in("description", delSdtPermission); + projectUserPermissionService.remove(delSdtWrapper); + List adds = new ArrayList<>(); + for (ParamsCollectManifestEO paramsCollectManifestEO : afterUpdateEOList) { + ProjectUserPermission projectUserPermission = new ProjectUserPermission(); + projectUserPermission.setProjectId(projectId); + projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getSdt()) == null ? "" : sysUserService.getUserByName(paramsCollectManifestEO.getSdt()).getId()); + projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()); + projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); + projectUserPermission.setCreateTime(now); + projectUserPermission.setUpdateTime(now); + adds.add(projectUserPermission); + } + if (ObjectUtils.isNotEmpty(adds)) { + projectUserPermissionService.saveBatch(adds); + } - // 消息内容 - List sdtList = afterUpdateEOList.stream() - .map(ParamsCollectManifestEO::getSdt) - .distinct() - .collect(Collectors.toList()); - if (CollectionUtil.isEmpty(sdtList)) { - throw new JeroBootException("没有可下发的工程接口人!"); - } - for (String sdt : sdtList) { + // 消息内容 + List sdtList = afterUpdateEOList.stream() + .map(ParamsCollectManifestEO::getSdt) + .distinct() + .collect(Collectors.toList()); + if (CollectionUtil.isEmpty(sdtList)) { + throw new JeroBootException("没有可下发的工程接口人!"); + } + for (String sdt : sdtList) { /* StringBuilder connectBuilder = new StringBuilder(); connectBuilder.append("You are required to fill in "); @@ -2663,16 +2669,16 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImplthe link,"; - //String contentInfo = connectBuilder.substring(0, connectBuilder.toString().length() - 1) + " and other parameter items, please enter " + href + " and fill in the relevant information."; - //String msgTitle = projectInfo.getProjectName() + ": You have a homo parameter task to complete"; + SysUser sysUser = sysUserService.getUserByName(sdt); + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + //String href = "the link,"; + //String contentInfo = connectBuilder.substring(0, connectBuilder.toString().length() - 1) + " and other parameter items, please enter " + href + " and fill in the relevant information."; + //String msgTitle = projectInfo.getProjectName() + ": You have a homo parameter task to complete"; - // 发送系统消息 + // 发送系统消息 /* SysAnnouncement sysAnnouncement = new SysAnnouncement(); sysAnnouncement.setDelFlag("0"); sysAnnouncement.setSendStatus("0"); @@ -2692,141 +2698,141 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl issueCollectionAll(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) - || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId()) - || StringUtils.isEmpty(paramsCollectManifestVO.getCut()) - || paramsCollectManifestVO.getDeadline() == null ) { - throw new JeroBootException("参数不能为空!"); - } - String projectId = paramsCollectManifestVO.getProjectId(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String cut = paramsCollectManifestVO.getCut(); - Date deadline = paramsCollectManifestVO.getDeadline(); + @Override + public List issueCollectionAll(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) + || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId()) + || StringUtils.isEmpty(paramsCollectManifestVO.getCut()) + || paramsCollectManifestVO.getDeadline() == null) { + throw new JeroBootException("参数不能为空!"); + } + String projectId = paramsCollectManifestVO.getProjectId(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String cut = paramsCollectManifestVO.getCut(); + Date deadline = paramsCollectManifestVO.getDeadline(); - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人 - ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 - ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion(),paramsCollectManifestVO.getCut()); // 获取项目信息 - paramsManifestEO.setProjectName(projectInfo.getProjectName()); + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人 + ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 + ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion(), paramsCollectManifestVO.getCut()); // 获取项目信息 + paramsManifestEO.setProjectName(projectInfo.getProjectName()); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - List updateEOList = new ArrayList<>(); - List> msgMapList = new ArrayList<>(); - List updateEOIdList = new ArrayList<>(); - List delSdtPermission = new ArrayList<>(); - List paramsCollectManifestLogEOList = new ArrayList<>(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + List updateEOList = new ArrayList<>(); + List> msgMapList = new ArrayList<>(); + List updateEOIdList = new ArrayList<>(); + List delSdtPermission = new ArrayList<>(); + List paramsCollectManifestLogEOList = new ArrayList<>(); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId) - .notIn(ParamsCollectManifestEO::getControlType, ControlTypeEnum.Title.getValue()) - .orderByAsc(ParamsCollectManifestEO::getNioNumber); - List paramsCollectManifestEOList = list(queryWrapper); - for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { - // 判断参数项状态 - if (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(paramsCollectManifestEO.getState()) - || CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState()) - || CollectManifestStateEnum.CHANGE.getValue().equals(paramsCollectManifestEO.getState())) { - if (StringUtils.isNotBlank(paramsCollectManifestEO.getSdt())) { - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - // 变更状态下的下发收集 参数项版本 +1 - if (CollectManifestStateEnum.CHANGE.getValue().equals(paramsCollectManifestEO.getState())) { - Integer newVersion = (paramsCollectManifestEO.getVersion() != null) ? (paramsCollectManifestEO.getVersion() + 1) : 2; - updateEO.setVersion(newVersion); - } - updateEO.setId(paramsCollectManifestEO.getId()); - updateEO.setState(CollectManifestStateEnum.WAIT_SDT.getValue()); // 设置状态为:待工程接口人处理 - updateEO.setDeadline(deadline); - updateEOList.add(updateEO); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId) + .notIn(ParamsCollectManifestEO::getControlType, ControlTypeEnum.Title.getValue()) + .orderByAsc(ParamsCollectManifestEO::getNioNumber); + List paramsCollectManifestEOList = list(queryWrapper); + for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { + // 判断参数项状态 + if (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(paramsCollectManifestEO.getState()) + || CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState()) + || CollectManifestStateEnum.CHANGE.getValue().equals(paramsCollectManifestEO.getState())) { + if (StringUtils.isNotBlank(paramsCollectManifestEO.getSdt())) { + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + // 变更状态下的下发收集 参数项版本 +1 + if (CollectManifestStateEnum.CHANGE.getValue().equals(paramsCollectManifestEO.getState())) { + Integer newVersion = (paramsCollectManifestEO.getVersion() != null) ? (paramsCollectManifestEO.getVersion() + 1) : 2; + updateEO.setVersion(newVersion); + } + updateEO.setId(paramsCollectManifestEO.getId()); + updateEO.setState(CollectManifestStateEnum.WAIT_SDT.getValue()); // 设置状态为:待工程接口人处理 + updateEO.setDeadline(deadline); + updateEOList.add(updateEO); - updateEOIdList.add(paramsCollectManifestEO.getId()); - delSdtPermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); + updateEOIdList.add(paramsCollectManifestEO.getId()); + delSdtPermission.add(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent("认证工程师\""+currentUser.getUsername()+"\"开始了下发收集,工程接口人为\""+paramsCollectManifestEO.getSdt()+"\""); - paramsCollectManifestLogEO.setLogEnContent("The Homo Engineer \""+currentUser.getUsername()+"\" starts to deliver the collection, and the Eng. Interface is \""+paramsCollectManifestEO.getSdt()+"\"."); - paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); - paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - } else { - Map msgMap = new HashMap<>(); - msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); - msgMap.put("state", paramsCollectManifestEO.getState()); - msgMap.put("type", "1"); - msgMapList.add(msgMap); - } + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent("认证工程师\"" + currentUser.getUsername() + "\"开始了下发收集,工程接口人为\"" + paramsCollectManifestEO.getSdt() + "\""); + paramsCollectManifestLogEO.setLogEnContent("The Homo Engineer \"" + currentUser.getUsername() + "\" starts to deliver the collection, and the Eng. Interface is \"" + paramsCollectManifestEO.getSdt() + "\"."); + paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); + paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + } else { + Map msgMap = new HashMap<>(); + msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); + msgMap.put("state", paramsCollectManifestEO.getState()); + msgMap.put("type", "1"); + msgMapList.add(msgMap); + } - } else { - Map msgMap = new HashMap<>(); - msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); - msgMap.put("state", paramsCollectManifestEO.getState()); - msgMap.put("type", "2"); - msgMapList.add(msgMap); - } - } - boolean isSuccess = updateBatchById(updateEOList); + } else { + Map msgMap = new HashMap<>(); + msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); + msgMap.put("state", paramsCollectManifestEO.getState()); + msgMap.put("type", "2"); + msgMapList.add(msgMap); + } + } + boolean isSuccess = updateBatchById(updateEOList); - if (isSuccess) { - Date now = new Date(); - List afterUpdateEOList = listByIds(updateEOIdList); - //设置权限 先删后加 - QueryWrapper delSdtWrapper = new QueryWrapper<>(); - delSdtWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()).in("description", delSdtPermission); - projectUserPermissionService.remove(delSdtWrapper); - List adds = new ArrayList<>(); - for (ParamsCollectManifestEO paramsCollectManifestEO : afterUpdateEOList) { - ProjectUserPermission projectUserPermission = new ProjectUserPermission(); - projectUserPermission.setProjectId(projectId); - projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getSdt()) == null?"":sysUserService.getUserByName(paramsCollectManifestEO.getSdt()).getId()); - projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()); - projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); - projectUserPermission.setCreateTime(now); - projectUserPermission.setUpdateTime(now); - adds.add(projectUserPermission); - } - if (ObjectUtils.isNotEmpty(adds)) { - projectUserPermissionService.saveBatch(adds); - } - // 消息内容 - List sdtList = afterUpdateEOList.stream() - .map(ParamsCollectManifestEO::getSdt) - .distinct() - .collect(Collectors.toList()); - if (CollectionUtil.isEmpty(sdtList)) { - throw new JeroBootException("没有可下发的工程接口人!"); - } - for (String sdt : sdtList) { + if (isSuccess) { + Date now = new Date(); + List afterUpdateEOList = listByIds(updateEOIdList); + //设置权限 先删后加 + QueryWrapper delSdtWrapper = new QueryWrapper<>(); + delSdtWrapper.eq("project_id", projectId).eq("belong", ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()).in("description", delSdtPermission); + projectUserPermissionService.remove(delSdtWrapper); + List adds = new ArrayList<>(); + for (ParamsCollectManifestEO paramsCollectManifestEO : afterUpdateEOList) { + ProjectUserPermission projectUserPermission = new ProjectUserPermission(); + projectUserPermission.setProjectId(projectId); + projectUserPermission.setUserId(sysUserService.getUserByName(paramsCollectManifestEO.getSdt()) == null ? "" : sysUserService.getUserByName(paramsCollectManifestEO.getSdt()).getId()); + projectUserPermission.setBelong(ProjectUserLocationEnum.PROJECT_PARAMS_COLLECT_MANIFEST_SDT.getValue()); + projectUserPermission.setDescription(PermissionDescriptionEnum.PARAMS_COLLECT_MANIFEST.getValue() + paramsCollectManifestEO.getId()); + projectUserPermission.setCreateTime(now); + projectUserPermission.setUpdateTime(now); + adds.add(projectUserPermission); + } + if (ObjectUtils.isNotEmpty(adds)) { + projectUserPermissionService.saveBatch(adds); + } + // 消息内容 + List sdtList = afterUpdateEOList.stream() + .map(ParamsCollectManifestEO::getSdt) + .distinct() + .collect(Collectors.toList()); + if (CollectionUtil.isEmpty(sdtList)) { + throw new JeroBootException("没有可下发的工程接口人!"); + } + for (String sdt : sdtList) { /*StringBuilder connectBuilder = new StringBuilder(); connectBuilder.append("You are required to fill in "); @@ -2837,20 +2843,20 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImplthe link,"; - //String contentInfo = connectBuilder.substring(0, connectBuilder.toString().length() - 1) + " and other parameter items, please enter " + href + " and fill in the relevant information."; - //String msgTitle = projectInfo.getProjectName() + ": You have a homo parameter task to complete"; + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + //String href = "the link,"; + //String contentInfo = connectBuilder.substring(0, connectBuilder.toString().length() - 1) + " and other parameter items, please enter " + href + " and fill in the relevant information."; + //String msgTitle = projectInfo.getProjectName() + ": You have a homo parameter task to complete"; - // 发送系统消息 + // 发送系统消息 /*SysAnnouncement sysAnnouncement = new SysAnnouncement(); sysAnnouncement.setDelFlag("0"); sysAnnouncement.setSendStatus("0"); @@ -2870,211 +2876,211 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl getMsgOfIssueCollection(List> msgMapList, String cut, String operation) { - List msgList = new ArrayList<>(); - Map collectManifestStateEnumMap = CollectManifestStateEnum.toMap(cut); + private List getMsgOfIssueCollection(List> msgMapList, String cut, String operation) { + List msgList = new ArrayList<>(); + Map collectManifestStateEnumMap = CollectManifestStateEnum.toMap(cut); - for (Map msgMap : msgMapList) { - String nioNumber = msgMap.get("nioNumber"); - String state = msgMap.get("state"); - String stateName = collectManifestStateEnumMap.get(state); - String type = msgMap.get("type"); - StringBuilder stringBuilder = new StringBuilder(); - if ("1".equals(type)) { - if (CutEnum.EN.getValue().equals(cut)) { - stringBuilder.append("NIO number is ").append("").append(nioNumber).append("").append(" ,the sdt has not been filled in. Please fill in the sdt before issuing and collecting."); - } else { - stringBuilder.append("NIO编号为").append("").append(nioNumber).append("").append("工程接口人没有填写,请填写完工程接口人再进行下发收集。"); - } + for (Map msgMap : msgMapList) { + String nioNumber = msgMap.get("nioNumber"); + String state = msgMap.get("state"); + String stateName = collectManifestStateEnumMap.get(state); + String type = msgMap.get("type"); + StringBuilder stringBuilder = new StringBuilder(); + if ("1".equals(type)) { + if (CutEnum.EN.getValue().equals(cut)) { + stringBuilder.append("NIO number is ").append("").append(nioNumber).append("").append(" ,the sdt has not been filled in. Please fill in the sdt before issuing and collecting."); + } else { + stringBuilder.append("NIO编号为").append("").append(nioNumber).append("").append("工程接口人没有填写,请填写完工程接口人再进行下发收集。"); + } - } else if ("2".equals(type)) { - if (CutEnum.EN.getValue().equals(cut)) { - stringBuilder.append("NIO number is ").append(nioNumber).append(",state is ").append("").append(stateName).append("").append(",no operation permission for this button."); - } else { - stringBuilder.append("NIO编号为").append(nioNumber).append(",状态为").append("").append(stateName).append("").append(",没有此按钮的操作权限。"); - } + } else if ("2".equals(type)) { + if (CutEnum.EN.getValue().equals(cut)) { + stringBuilder.append("NIO number is ").append(nioNumber).append(",state is ").append("").append(stateName).append("").append(",no operation permission for this button."); + } else { + stringBuilder.append("NIO编号为").append(nioNumber).append(",状态为").append("").append(stateName).append("").append(",没有此按钮的操作权限。"); + } - } else if ("3".equals(type)) { - if (CutEnum.EN.getValue().equals(cut)) { - stringBuilder.append("NIO number is ").append(nioNumber).append(",state is ").append("").append(stateName).append("").append(", fail to import."); - } else { - stringBuilder.append("NIO编号为").append(nioNumber).append(",状态为").append("").append(stateName).append("").append(",导入失败。"); - } + } else if ("3".equals(type)) { + if (CutEnum.EN.getValue().equals(cut)) { + stringBuilder.append("NIO number is ").append(nioNumber).append(",state is ").append("").append(stateName).append("").append(", fail to import."); + } else { + stringBuilder.append("NIO编号为").append(nioNumber).append(",状态为").append("").append(stateName).append("").append(",导入失败。"); + } - } + } - msgList.add(stringBuilder.toString()); - } - if (CollectionUtil.isNotEmpty(msgMapList)) { - if (CutEnum.EN.getValue().equals(cut)) { - if ("1".equals(operation)) { - msgList.add("Homologation Engineer can operate when data state is 'Wait Collect','Sdt Back' or 'Change'."); - } else if("2".equals(operation)) { - msgList.add("Homologation Engineer can operate when data state is 'Wait Collect','Sdt Back'."); - } - } else { - if ("1".equals(operation)) { - msgList.add("认证工程师数据状态为 '待发起收集'、'工程接口人退回'或'变更' 时,才有权限操作此按钮。"); - } else if("2".equals(operation)) { - msgList.add("认证工程师数据状态为 '待发起收集'、'工程接口人退回 时,才有权限操作此按钮。"); - } - } - } - return msgList; - } + msgList.add(stringBuilder.toString()); + } + if (CollectionUtil.isNotEmpty(msgMapList)) { + if (CutEnum.EN.getValue().equals(cut)) { + if ("1".equals(operation)) { + msgList.add("Homologation Engineer can operate when data state is 'Wait Collect','Sdt Back' or 'Change'."); + } else if ("2".equals(operation)) { + msgList.add("Homologation Engineer can operate when data state is 'Wait Collect','Sdt Back'."); + } + } else { + if ("1".equals(operation)) { + msgList.add("认证工程师数据状态为 '待发起收集'、'工程接口人退回'或'变更' 时,才有权限操作此按钮。"); + } else if ("2".equals(operation)) { + msgList.add("认证工程师数据状态为 '待发起收集'、'工程接口人退回 时,才有权限操作此按钮。"); + } + } + } + return msgList; + } - @Override - public List> getConfigLabelList(ParamsCollectManifestVO paramsCollectManifestVO) { - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String configFlag = paramsCollectManifestVO.getConfigFlag(); + @Override + public List> getConfigLabelList(ParamsCollectManifestVO paramsCollectManifestVO) { + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String configFlag = paramsCollectManifestVO.getConfigFlag(); - // 查询配置列 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ParamsConfigEO::getParamsManifestId, paramsManifestId); + // 查询配置列 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ParamsConfigEO::getParamsManifestId, paramsManifestId); - if ("2".equals(configFlag)) { // 指定查询非冻结配置 - queryWrapper.eq(ParamsConfigEO::getIsLock, ConfigLockEnum.NO.getValue()); - } + if ("2".equals(configFlag)) { // 指定查询非冻结配置 + queryWrapper.eq(ParamsConfigEO::getIsLock, ConfigLockEnum.NO.getValue()); + } - queryWrapper.orderByAsc(ParamsConfigEO::getDisplaySeq); - List paramsConfigEOList = paramsConfigEOService.list(queryWrapper); + queryWrapper.orderByAsc(ParamsConfigEO::getDisplaySeq); + List paramsConfigEOList = paramsConfigEOService.list(queryWrapper); - List> configLabelList = new ArrayList<>(); - if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { - for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { - Map map = new HashMap<>(); - map.put("label", paramsConfigEO.getConfigName()); - map.put("value", paramsConfigEO.getId()); - configLabelList.add(map); - } - } + List> configLabelList = new ArrayList<>(); + if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { + for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { + Map map = new HashMap<>(); + map.put("label", paramsConfigEO.getConfigName()); + map.put("value", paramsConfigEO.getId()); + configLabelList.add(map); + } + } - return configLabelList; - } + return configLabelList; + } - @Override - public List getLockedConfigIdList(ParamsCollectManifestVO paramsCollectManifestVO) { - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + @Override + public List getLockedConfigIdList(ParamsCollectManifestVO paramsCollectManifestVO) { + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - // 查询配置列 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ParamsConfigEO::getParamsManifestId, paramsManifestId); - queryWrapper.eq(ParamsConfigEO::getIsLock, ConfigLockEnum.YES.getValue()); // 指定查询非冻结配置 - queryWrapper.orderByAsc(ParamsConfigEO::getDisplaySeq); - List paramsConfigEOList = paramsConfigEOService.list(queryWrapper); + // 查询配置列 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ParamsConfigEO::getParamsManifestId, paramsManifestId); + queryWrapper.eq(ParamsConfigEO::getIsLock, ConfigLockEnum.YES.getValue()); // 指定查询非冻结配置 + queryWrapper.orderByAsc(ParamsConfigEO::getDisplaySeq); + List paramsConfigEOList = paramsConfigEOService.list(queryWrapper); - List lockedConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); + List lockedConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); - return lockedConfigIdList; - } + return lockedConfigIdList; + } - @Override - public boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { - throw new JeroBootException("参数不能为空!"); - } - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String paramsConfigIds = paramsCollectManifestVO.getParamsConfigIds(); - List paramsConfigIdList = Arrays.asList(paramsConfigIds.split(",")); + @Override + public boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String paramsConfigIds = paramsCollectManifestVO.getParamsConfigIds(); + List paramsConfigIdList = Arrays.asList(paramsConfigIds.split(",")); - List updateConfigEOList = new ArrayList<>(); + List updateConfigEOList = new ArrayList<>(); - // 将之前被冻结的列 解冻 - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); - paramsConfigEOList = paramsConfigEOList.stream().filter(e-> !paramsConfigIdList.contains(e.getId())).collect(Collectors.toList()); - paramsConfigEOList.forEach(paramsConfigEO -> { - if (ConfigLockEnum.YES.getValue().equals(paramsConfigEO.getIsLock())) { - ParamsConfigEO updateConfigEO = new ParamsConfigEO(); - updateConfigEO.setId(paramsConfigEO.getId()); - updateConfigEO.setIsLock(ConfigLockEnum.NO.getValue()); - updateConfigEOList.add(updateConfigEO); - } - }); + // 将之前被冻结的列 解冻 + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); + paramsConfigEOList = paramsConfigEOList.stream().filter(e -> !paramsConfigIdList.contains(e.getId())).collect(Collectors.toList()); + paramsConfigEOList.forEach(paramsConfigEO -> { + if (ConfigLockEnum.YES.getValue().equals(paramsConfigEO.getIsLock())) { + ParamsConfigEO updateConfigEO = new ParamsConfigEO(); + updateConfigEO.setId(paramsConfigEO.getId()); + updateConfigEO.setIsLock(ConfigLockEnum.NO.getValue()); + updateConfigEOList.add(updateConfigEO); + } + }); - // 冻结选择的配置列 - for (String paramsConfigId : paramsConfigIdList) { - ParamsConfigEO updateConfigEO = new ParamsConfigEO(); - updateConfigEO.setId(paramsConfigId); - updateConfigEO.setIsLock(ConfigLockEnum.YES.getValue()); - updateConfigEOList.add(updateConfigEO); - } - return paramsConfigEOService.updateBatchById(updateConfigEOList); - } + // 冻结选择的配置列 + for (String paramsConfigId : paramsConfigIdList) { + ParamsConfigEO updateConfigEO = new ParamsConfigEO(); + updateConfigEO.setId(paramsConfigId); + updateConfigEO.setIsLock(ConfigLockEnum.YES.getValue()); + updateConfigEOList.add(updateConfigEO); + } + return paramsConfigEOService.updateBatchById(updateConfigEOList); + } - @Override - public boolean referParams(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) - || StringUtils.isEmpty(paramsCollectManifestVO.getSourceConfigId()) || StringUtils.isEmpty(paramsCollectManifestVO.getTargetConfigIds())) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - String sourceConfigId = paramsCollectManifestVO.getSourceConfigId(); - String targetConfigIds = paramsCollectManifestVO.getTargetConfigIds(); + @Override + public boolean referParams(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) + || StringUtils.isEmpty(paramsCollectManifestVO.getSourceConfigId()) || StringUtils.isEmpty(paramsCollectManifestVO.getTargetConfigIds())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String sourceConfigId = paramsCollectManifestVO.getSourceConfigId(); + String targetConfigIds = paramsCollectManifestVO.getTargetConfigIds(); - if (targetConfigIds.contains(sourceConfigId)) { - if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { - throw new JeroBootException("References to the configuration does not contain the referenced configuration!"); - } else { - throw new JeroBootException("引用到的配置不能包含被引用配置!"); - } - } - String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); - String[] targetConfigIdStr = targetConfigIds.split(","); + if (targetConfigIds.contains(sourceConfigId)) { + if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { + throw new JeroBootException("References to the configuration does not contain the referenced configuration!"); + } else { + throw new JeroBootException("引用到的配置不能包含被引用配置!"); + } + } + String[] paramsCollectManifestIdStr = paramsCollectManifestIds.split(","); + String[] targetConfigIdStr = targetConfigIds.split(","); - List updateConfigDataEOList = new ArrayList<>(); - List addConfigDataEOList = new ArrayList<>(); - for (int i=0; i sourceConfigDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(sourceConfigId, paramsCollectManifestIdStr[i]); - if(CollectionUtils.isNotEmpty(sourceConfigDataEOList)){ - for (ParamsConfigDataEO sourceConfigDataEO : sourceConfigDataEOList) { - if (ObjectUtil.isNotEmpty(sourceConfigDataEO)) { - for (int j = 0; j < targetConfigIdStr.length; j++) { - // 根据配置id、参数清单id,将被引用参数列的数据删掉,重新加 - QueryWrapper targetConfigDataRemoveWrap = new QueryWrapper<>(); - targetConfigDataRemoveWrap.lambda().eq(ParamsConfigDataEO::getParamsConfigId,targetConfigIdStr[j]); - targetConfigDataRemoveWrap.lambda().eq(ParamsConfigDataEO::getParamsCollectManifestId,paramsCollectManifestIdStr[i]); - this.paramsConfigDataEOService.remove(targetConfigDataRemoveWrap); + List updateConfigDataEOList = new ArrayList<>(); + List addConfigDataEOList = new ArrayList<>(); + for (int i = 0; i < paramsCollectManifestIdStr.length; i++) { + // ParamsConfigDataEO sourceConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(sourceConfigId, paramsCollectManifestIdStr[i]); + List sourceConfigDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(sourceConfigId, paramsCollectManifestIdStr[i]); + if (CollectionUtils.isNotEmpty(sourceConfigDataEOList)) { + for (ParamsConfigDataEO sourceConfigDataEO : sourceConfigDataEOList) { + if (ObjectUtil.isNotEmpty(sourceConfigDataEO)) { + for (int j = 0; j < targetConfigIdStr.length; j++) { + // 根据配置id、参数清单id,将被引用参数列的数据删掉,重新加 + QueryWrapper targetConfigDataRemoveWrap = new QueryWrapper<>(); + targetConfigDataRemoveWrap.lambda().eq(ParamsConfigDataEO::getParamsConfigId, targetConfigIdStr[j]); + targetConfigDataRemoveWrap.lambda().eq(ParamsConfigDataEO::getParamsCollectManifestId, paramsCollectManifestIdStr[i]); + this.paramsConfigDataEOService.remove(targetConfigDataRemoveWrap); - ParamsConfigDataEO targetConfigDataEO = new ParamsConfigDataEO(); - BeanUtils.copyProperties(sourceConfigDataEO,targetConfigDataEO); - targetConfigDataEO.setId(null); - targetConfigDataEO.setParamsConfigId(targetConfigIdStr[j]); - targetConfigDataEO.setParamsCollectManifestId(paramsCollectManifestIdStr[i]); - addConfigDataEOList.add(targetConfigDataEO); + ParamsConfigDataEO targetConfigDataEO = new ParamsConfigDataEO(); + BeanUtils.copyProperties(sourceConfigDataEO, targetConfigDataEO); + targetConfigDataEO.setId(null); + targetConfigDataEO.setParamsConfigId(targetConfigIdStr[j]); + targetConfigDataEO.setParamsCollectManifestId(paramsCollectManifestIdStr[i]); + addConfigDataEOList.add(targetConfigDataEO); /* ParamsConfigDataEO targetConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(targetConfigIdStr[j], paramsCollectManifestIdStr[i]); List targetConfigDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(targetConfigIdStr[j], paramsCollectManifestIdStr[i]); @@ -3114,413 +3120,413 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl targetConfigDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(targetConfigIdStr[j], paramsCollectManifestIdStr[i]); - if(CollectionUtils.isNotEmpty(targetConfigDataEOList)){ - for (ParamsConfigDataEO targetConfigDataEO : targetConfigDataEOList) { - if (ObjectUtil.isNotEmpty(targetConfigDataEO)) { - ParamsConfigDataEO updateConfigDataEO = new ParamsConfigDataEO(); - updateConfigDataEO.setId(targetConfigDataEO.getId()); - updateConfigDataEO.setTextData(null); - updateConfigDataEO.setPullData(null); - updateConfigDataEO.setFileConnectId(null); - updateConfigDataEOList.add(updateConfigDataEO); - } - } - } - } - } - } + } + } + } + } else { + // 清空引用到的配置的数据 + for (int j = 0; j < targetConfigIdStr.length; j++) { + // ParamsConfigDataEO targetConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(targetConfigIdStr[j], paramsCollectManifestIdStr[i]); + List targetConfigDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(targetConfigIdStr[j], paramsCollectManifestIdStr[i]); + if (CollectionUtils.isNotEmpty(targetConfigDataEOList)) { + for (ParamsConfigDataEO targetConfigDataEO : targetConfigDataEOList) { + if (ObjectUtil.isNotEmpty(targetConfigDataEO)) { + ParamsConfigDataEO updateConfigDataEO = new ParamsConfigDataEO(); + updateConfigDataEO.setId(targetConfigDataEO.getId()); + updateConfigDataEO.setTextData(null); + updateConfigDataEO.setPullData(null); + updateConfigDataEO.setFileConnectId(null); + updateConfigDataEOList.add(updateConfigDataEO); + } + } + } + } + } + } - paramsConfigDataEOService.saveBatch(addConfigDataEOList); + paramsConfigDataEOService.saveBatch(addConfigDataEOList); // paramsConfigDataEOService.updateBatchById(updateConfigDataEOList); - return true; - } + return true; + } - @Override - public boolean syncReport(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { - throw new JeroBootException("参数不能为空!"); - } - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + @Override + public boolean syncReport(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { + throw new JeroBootException("参数不能为空!"); + } + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - List paramsCollectManifestIdList = Arrays.asList(paramsCollectManifestIds.split(",")); - ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); + List paramsCollectManifestIdList = Arrays.asList(paramsCollectManifestIds.split(",")); + ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); - // 根据收集库清单id和版本,判断当前版本是否上报过 - boolean isSync = paramsReportEOService.isSync(paramsManifestId, paramsManifestEO.getVersion()); - String reportId = null; - if (!isSync) { // 未上报过 - reportId = UUID.randomUUID().toString().replace("-",""); - } else { // 上报过 - ParamsReportEO paramsReportEO = paramsReportEOService.queryByOldParamsManifestId(paramsManifestId, paramsManifestEO.getVersion()); - reportId = paramsReportEO.getId(); - } + // 根据收集库清单id和版本,判断当前版本是否上报过 + boolean isSync = paramsReportEOService.isSync(paramsManifestId, paramsManifestEO.getVersion()); + String reportId = null; + if (!isSync) { // 未上报过 + reportId = UUID.randomUUID().toString().replace("-", ""); + } else { // 上报过 + ParamsReportEO paramsReportEO = paramsReportEOService.queryByOldParamsManifestId(paramsManifestId, paramsManifestEO.getVersion()); + reportId = paramsReportEO.getId(); + } - // 配置 - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); - List addReportConfigEOList = new ArrayList<>(); - List addReportCertCategoryParamsInfoEOList = new ArrayList<>(); - Map configIdMap = new HashMap<>(); // 存放新旧 configId 关系 - if (!isSync) { // 未上报 - // 复制配置 - for (ParamsConfigEO configEO : paramsConfigEOList) { - ParamsReportConfigEO addReportConfigEO = new ParamsReportConfigEO(); - BeanUtils.copyProperties(configEO, addReportConfigEO); - addReportConfigEO.setParamsManifestId(reportId); - String addReportConfigId = UUID.randomUUID().toString().replace("-",""); - addReportConfigEO.setId(addReportConfigId); - addReportConfigEO.setOldParamsConfigId(configEO.getId()); - addReportConfigEOList.add(addReportConfigEO); + // 配置 + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); + List addReportConfigEOList = new ArrayList<>(); + List addReportCertCategoryParamsInfoEOList = new ArrayList<>(); + Map configIdMap = new HashMap<>(); // 存放新旧 configId 关系 + if (!isSync) { // 未上报 + // 复制配置 + for (ParamsConfigEO configEO : paramsConfigEOList) { + ParamsReportConfigEO addReportConfigEO = new ParamsReportConfigEO(); + BeanUtils.copyProperties(configEO, addReportConfigEO); + addReportConfigEO.setParamsManifestId(reportId); + String addReportConfigId = UUID.randomUUID().toString().replace("-", ""); + addReportConfigEO.setId(addReportConfigId); + addReportConfigEO.setOldParamsConfigId(configEO.getId()); + addReportConfigEOList.add(addReportConfigEO); - configIdMap.put(configEO.getId(), addReportConfigId); - } + configIdMap.put(configEO.getId(), addReportConfigId); + } - } else { - List paramsReportConfigEOList = paramsReportConfigEOService.queryList(reportId); - configIdMap = paramsReportConfigEOList.stream().collect(Collectors.toMap(ParamsReportConfigEO::getOldParamsConfigId, ParamsReportConfigEO::getId)); - } + } else { + List paramsReportConfigEOList = paramsReportConfigEOService.queryList(reportId); + configIdMap = paramsReportConfigEOList.stream().collect(Collectors.toMap(ParamsReportConfigEO::getOldParamsConfigId, ParamsReportConfigEO::getId)); + } - // 添加参数项到上报库 - List paramsCollectManifestEOList = paramsCollectManifestEOMapper.selectBatchIds(paramsCollectManifestIdList); - List addReportDetailEOList = new ArrayList<>(); - List addReportConfigDataEOList = new ArrayList<>(); // 需要添加的配置数据 - List paramsCollectManifestLogEOList = new ArrayList<>(); - Date syncTime = new Date(); - for (ParamsCollectManifestEO collectManifestEO : paramsCollectManifestEOList) { - ParamsReportDetailEO addReportDetailEO = new ParamsReportDetailEO(); - BeanUtils.copyProperties(collectManifestEO, addReportDetailEO); - String reportDetailId = UUID.randomUUID().toString().replace("-",""); - addReportDetailEO.setId(reportDetailId); - addReportDetailEO.setParamsManifestId(reportId); - addReportDetailEO.setSyncTime(syncTime); - addReportDetailEOList.add(addReportDetailEO); + // 添加参数项到上报库 + List paramsCollectManifestEOList = paramsCollectManifestEOMapper.selectBatchIds(paramsCollectManifestIdList); + List addReportDetailEOList = new ArrayList<>(); + List addReportConfigDataEOList = new ArrayList<>(); // 需要添加的配置数据 + List paramsCollectManifestLogEOList = new ArrayList<>(); + Date syncTime = new Date(); + for (ParamsCollectManifestEO collectManifestEO : paramsCollectManifestEOList) { + ParamsReportDetailEO addReportDetailEO = new ParamsReportDetailEO(); + BeanUtils.copyProperties(collectManifestEO, addReportDetailEO); + String reportDetailId = UUID.randomUUID().toString().replace("-", ""); + addReportDetailEO.setId(reportDetailId); + addReportDetailEO.setParamsManifestId(reportId); + addReportDetailEO.setSyncTime(syncTime); + addReportDetailEOList.add(addReportDetailEO); - StringBuilder logCnContentSb = new StringBuilder(); - logCnContentSb.append("认证工程师").append("\"").append(currentUser.getUsername()).append("\"").append("将"); - StringBuilder logEnContentSb = new StringBuilder(); - logEnContentSb.append("The Homo Engineer ").append("\"").append(currentUser.getUsername()).append("\"").append(" will synchronize the"); + StringBuilder logCnContentSb = new StringBuilder(); + logCnContentSb.append("认证工程师").append("\"").append(currentUser.getUsername()).append("\"").append("将"); + StringBuilder logEnContentSb = new StringBuilder(); + logEnContentSb.append("The Homo Engineer ").append("\"").append(currentUser.getUsername()).append("\"").append(" will synchronize the"); - // 添加配置数据 - int paramsConfigLenth = 1; - for (ParamsConfigEO configEO : paramsConfigEOList) { - // ParamsConfigDataEO configDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(configEO.getId(), collectManifestEO.getId()); - List configDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(configEO.getId(), collectManifestEO.getId()); - for (ParamsConfigDataEO configDataEO : configDataEOList) { - ParamsReportConfigDataEO addReportConfigDataEO = new ParamsReportConfigDataEO(); - BeanUtils.copyProperties(configDataEO, addReportConfigDataEO); - addReportConfigDataEO.setId(UUID.randomUUID().toString().replace("-","")); - addReportConfigDataEO.setParamsConfigId(configIdMap.get(configEO.getId())); - addReportConfigDataEO.setParamsCollectManifestId(reportDetailId); - addReportConfigDataEOList.add(addReportConfigDataEO); + // 添加配置数据 + int paramsConfigLenth = 1; + for (ParamsConfigEO configEO : paramsConfigEOList) { + // ParamsConfigDataEO configDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(configEO.getId(), collectManifestEO.getId()); + List configDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(configEO.getId(), collectManifestEO.getId()); + for (ParamsConfigDataEO configDataEO : configDataEOList) { + ParamsReportConfigDataEO addReportConfigDataEO = new ParamsReportConfigDataEO(); + BeanUtils.copyProperties(configDataEO, addReportConfigDataEO); + addReportConfigDataEO.setId(UUID.randomUUID().toString().replace("-", "")); + addReportConfigDataEO.setParamsConfigId(configIdMap.get(configEO.getId())); + addReportConfigDataEO.setParamsCollectManifestId(reportDetailId); + addReportConfigDataEOList.add(addReportConfigDataEO); - if(StringUtils.isNotEmpty(configDataEO.getPullData()) || StringUtils.isNotEmpty(configDataEO.getTextData()) || StringUtils.isNotEmpty(configDataEO.getFileConnectId())){ - logCnContentSb.append(configEO.getConfigName()); - logCnContentSb.append(" 的"); + if (StringUtils.isNotEmpty(configDataEO.getPullData()) || StringUtils.isNotEmpty(configDataEO.getTextData()) || StringUtils.isNotEmpty(configDataEO.getFileConnectId())) { + logCnContentSb.append(configEO.getConfigName()); + logCnContentSb.append(" 的"); - if(StringUtils.isNotEmpty(configDataEO.getPullData())){ - logCnContentSb.append("\"" +configDataEO.getPullData()+ "\""); - logEnContentSb.append("\"" +configDataEO.getPullData()+ "\""); - } - if(StringUtils.isNotEmpty(configDataEO.getTextData())){ - logCnContentSb.append("\"" +configDataEO.getTextData()+ "\""); - logEnContentSb.append("\"" +configDataEO.getTextData()+ "\""); - } - if(StringUtils.isNotEmpty(configDataEO.getFileConnectId())){ - List fileInfos = ossFileService.getFileInfos(configDataEO.getFileConnectId()); - String fileNames = fileInfos.stream().map(OSSFile::getFileName).distinct().collect(Collectors.joining(",")); - if (StringUtils.isNotEmpty(fileNames)) { - logCnContentSb.append("\"" +fileNames+ "\""); - logEnContentSb.append("\"" +fileNames+ "\""); - } - } + if (StringUtils.isNotEmpty(configDataEO.getPullData())) { + logCnContentSb.append("\"" + configDataEO.getPullData() + "\""); + logEnContentSb.append("\"" + configDataEO.getPullData() + "\""); + } + if (StringUtils.isNotEmpty(configDataEO.getTextData())) { + logCnContentSb.append("\"" + configDataEO.getTextData() + "\""); + logEnContentSb.append("\"" + configDataEO.getTextData() + "\""); + } + if (StringUtils.isNotEmpty(configDataEO.getFileConnectId())) { + List fileInfos = ossFileService.getFileInfos(configDataEO.getFileConnectId()); + String fileNames = fileInfos.stream().map(OSSFile::getFileName).distinct().collect(Collectors.joining(",")); + if (StringUtils.isNotEmpty(fileNames)) { + logCnContentSb.append("\"" + fileNames + "\""); + logEnContentSb.append("\"" + fileNames + "\""); + } + } - logEnContentSb.append("of configuration " +configEO.getConfigName()+ ""); + logEnContentSb.append("of configuration " + configEO.getConfigName() + ""); - // 如果配置有两条或两条以上,并且不是最后一次循环 - if(paramsConfigEOList.size() > 1 && paramsConfigLenth != paramsConfigEOList.size()){ - logCnContentSb.append(","); - logEnContentSb.append(" and "); - } - } - } + // 如果配置有两条或两条以上,并且不是最后一次循环 + if (paramsConfigEOList.size() > 1 && paramsConfigLenth != paramsConfigEOList.size()) { + logCnContentSb.append(","); + logEnContentSb.append(" and "); + } + } + } - paramsConfigLenth ++; - } + paramsConfigLenth++; + } - logCnContentSb.append(" 同步至上报库"); - logEnContentSb.append(" to the report database"); + logCnContentSb.append(" 同步至上报库"); + logEnContentSb.append(" to the report database"); - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent(logCnContentSb.toString()); - paramsCollectManifestLogEO.setLogEnContent(logEnContentSb.toString()); - paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); - paramsCollectManifestLogEO.setParamsCollectManifestId(collectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - } + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent(logCnContentSb.toString()); + paramsCollectManifestLogEO.setLogEnContent(logEnContentSb.toString()); + paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); + paramsCollectManifestLogEO.setParamsCollectManifestId(collectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + } - List nioNumberList = paramsCollectManifestEOList.stream().map(ParamsCollectManifestEO::getNioNumber).collect(Collectors.toList()); - // 单独添加 控件类型为标题的参数项 - if (!isSync) { // 未上报 - List paramsCollectManifestEOListOfTitle = paramsCollectManifestEOMapper.listInfoOfTitle(paramsManifestId); - if(CollectionUtil.isNotEmpty(paramsCollectManifestEOListOfTitle)) { - for(ParamsCollectManifestEO item : paramsCollectManifestEOListOfTitle) { - ParamsReportDetailEO addReportDetailEO = new ParamsReportDetailEO(); - BeanUtils.copyProperties(item, addReportDetailEO); - String reportDetailId = UUID.randomUUID().toString().replace("-",""); - addReportDetailEO.setId(reportDetailId); - addReportDetailEO.setParamsManifestId(reportId); - addReportDetailEO.setSyncTime(syncTime); - addReportDetailEOList.add(addReportDetailEO); + List nioNumberList = paramsCollectManifestEOList.stream().map(ParamsCollectManifestEO::getNioNumber).collect(Collectors.toList()); + // 单独添加 控件类型为标题的参数项 + if (!isSync) { // 未上报 + List paramsCollectManifestEOListOfTitle = paramsCollectManifestEOMapper.listInfoOfTitle(paramsManifestId); + if (CollectionUtil.isNotEmpty(paramsCollectManifestEOListOfTitle)) { + for (ParamsCollectManifestEO item : paramsCollectManifestEOListOfTitle) { + ParamsReportDetailEO addReportDetailEO = new ParamsReportDetailEO(); + BeanUtils.copyProperties(item, addReportDetailEO); + String reportDetailId = UUID.randomUUID().toString().replace("-", ""); + addReportDetailEO.setId(reportDetailId); + addReportDetailEO.setParamsManifestId(reportId); + addReportDetailEO.setSyncTime(syncTime); + addReportDetailEOList.add(addReportDetailEO); - // 添加配置数据 - for (ParamsConfigEO configEO : paramsConfigEOList) { - ParamsReportConfigDataEO addReportConfigDataEO = new ParamsReportConfigDataEO(); - addReportConfigDataEO.setId(UUID.randomUUID().toString().replace("-","")); - addReportConfigDataEO.setParamsConfigId(configIdMap.get(configEO.getId())); - addReportConfigDataEO.setParamsCollectManifestId(reportDetailId); - addReportConfigDataEO.setTextData(item.getTitleDefaultValue()); //标题默认值 + // 添加配置数据 + for (ParamsConfigEO configEO : paramsConfigEOList) { + ParamsReportConfigDataEO addReportConfigDataEO = new ParamsReportConfigDataEO(); + addReportConfigDataEO.setId(UUID.randomUUID().toString().replace("-", "")); + addReportConfigDataEO.setParamsConfigId(configIdMap.get(configEO.getId())); + addReportConfigDataEO.setParamsCollectManifestId(reportDetailId); + addReportConfigDataEO.setTextData(item.getTitleDefaultValue()); //标题默认值 - addReportConfigDataEOList.add(addReportConfigDataEO); + addReportConfigDataEOList.add(addReportConfigDataEO); - } - } - } + } + } + } - List nioNumberListOfTitle = paramsCollectManifestEOListOfTitle.stream().map(ParamsCollectManifestEO::getNioNumber).collect(Collectors.toList()); - nioNumberList.addAll(nioNumberListOfTitle); - } + List nioNumberListOfTitle = paramsCollectManifestEOListOfTitle.stream().map(ParamsCollectManifestEO::getNioNumber).collect(Collectors.toList()); + nioNumberList.addAll(nioNumberListOfTitle); + } - // 复制认证类别参数 - List certCategoryParamsInfoPublishEOS = certCategoryParamsInfoPublishEOService.queryListByVersionAndNio(paramsManifestEO.getParamsTemplateId(), paramsManifestEO.getParamsTemplatePublishVersion(), nioNumberList); - for (CertCategoryParamsInfoPublishEO ccpi : certCategoryParamsInfoPublishEOS) { - ReportCertCategoryParamsInfoEO addCcpi = new ReportCertCategoryParamsInfoEO(); - BeanUtils.copyProperties(ccpi, addCcpi); - addCcpi.setId(UUID.randomUUID().toString().replace("-","")); - addCcpi.setParamsManifestId(reportId); // 绑定上报库 - addReportCertCategoryParamsInfoEOList.add(addCcpi); - } + // 复制认证类别参数 + List certCategoryParamsInfoPublishEOS = certCategoryParamsInfoPublishEOService.queryListByVersionAndNio(paramsManifestEO.getParamsTemplateId(), paramsManifestEO.getParamsTemplatePublishVersion(), nioNumberList); + for (CertCategoryParamsInfoPublishEO ccpi : certCategoryParamsInfoPublishEOS) { + ReportCertCategoryParamsInfoEO addCcpi = new ReportCertCategoryParamsInfoEO(); + BeanUtils.copyProperties(ccpi, addCcpi); + addCcpi.setId(UUID.randomUUID().toString().replace("-", "")); + addCcpi.setParamsManifestId(reportId); // 绑定上报库 + addReportCertCategoryParamsInfoEOList.add(addCcpi); + } - // 添加认证类别参数信息 - reportCertCategoryParamsInfoEOService.saveBatch(addReportCertCategoryParamsInfoEOList); + // 添加认证类别参数信息 + reportCertCategoryParamsInfoEOService.saveBatch(addReportCertCategoryParamsInfoEOList); - // 添加参数项 - paramsReportDetailEOService.saveBatch(addReportDetailEOList); + // 添加参数项 + paramsReportDetailEOService.saveBatch(addReportDetailEOList); - if (!isSync) { // 未上报 - // 添加配置 - paramsReportConfigEOService.saveBatch(addReportConfigEOList); - } + if (!isSync) { // 未上报 + // 添加配置 + paramsReportConfigEOService.saveBatch(addReportConfigEOList); + } - // 添加配置数据 - paramsReportConfigDataEOService.saveBatch(addReportConfigDataEOList); + // 添加配置数据 + paramsReportConfigDataEOService.saveBatch(addReportConfigDataEOList); - if (!isSync) { // 未上报 - // 添加上报库 - ParamsReportEO addReportEO = new ParamsReportEO(); - addReportEO.setId(reportId); - addReportEO.setOldParamsManifestId(paramsManifestId); - addReportEO.setVersion(paramsManifestEO.getVersion()); - addReportEO.setParamsTemplatePublishVersion(paramsManifestEO.getParamsTemplatePublishVersion()); - paramsReportEOService.add(addReportEO); - } + if (!isSync) { // 未上报 + // 添加上报库 + ParamsReportEO addReportEO = new ParamsReportEO(); + addReportEO.setId(reportId); + addReportEO.setOldParamsManifestId(paramsManifestId); + addReportEO.setVersion(paramsManifestEO.getVersion()); + addReportEO.setParamsTemplatePublishVersion(paramsManifestEO.getParamsTemplatePublishVersion()); + paramsReportEOService.add(addReportEO); + } - // 修改收集库参数项状态 - List updateEOList = new ArrayList<>(); + // 修改收集库参数项状态 + List updateEOList = new ArrayList<>(); - for (String paramsCollectManifestId : paramsCollectManifestIdList) { - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - updateEO.setId(paramsCollectManifestId); - updateEO.setState(CollectManifestStateEnum.SYNC_REPORT.getValue()); // 设置状态为:待工程接口人处理 - updateEO.setReportTime(new Date()); - updateEOList.add(updateEO); - } + for (String paramsCollectManifestId : paramsCollectManifestIdList) { + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestId); + updateEO.setState(CollectManifestStateEnum.SYNC_REPORT.getValue()); // 设置状态为:待工程接口人处理 + updateEO.setReportTime(new Date()); + updateEOList.add(updateEO); + } - boolean isSuccess = updateBatchById(updateEOList); + boolean isSuccess = updateBatchById(updateEOList); - if(CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)){ - this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); - } + if (CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)) { + this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); + } - // 判断清单是否已完成,修改清单状态 - Map map = isCollectFinished(paramsManifestId); - Boolean finish = (Boolean) map.get("finish"); - Date time = (Date) map.get("time"); - if (finish) { - // 更新清单状态和完成时间 - ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO(); - updateParamsManifestEO.setId(paramsManifestId); - updateParamsManifestEO.setState(ManifestStateEnum.FINISHED.getValue()); - updateParamsManifestEO.setFinishTime(time); - boolean isSuccess2 = paramsManifestEOService.updateById(updateParamsManifestEO); - if (isSuccess2) { - webSocketServer.sendMessage(); - } - } - return isSuccess; - } + // 判断清单是否已完成,修改清单状态 + Map map = isCollectFinished(paramsManifestId); + Boolean finish = (Boolean) map.get("finish"); + Date time = (Date) map.get("time"); + if (finish) { + // 更新清单状态和完成时间 + ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO(); + updateParamsManifestEO.setId(paramsManifestId); + updateParamsManifestEO.setState(ManifestStateEnum.FINISHED.getValue()); + updateParamsManifestEO.setFinishTime(time); + boolean isSuccess2 = paramsManifestEOService.updateById(updateParamsManifestEO); + if (isSuccess2) { + webSocketServer.sendMessage(); + } + } + return isSuccess; + } - @Override - public boolean bringSdtInto(ParamsCollectManifestVO paramsCollectManifestVO) { - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String projectId = paramsCollectManifestVO.getProjectId(); + @Override + public boolean bringSdtInto(ParamsCollectManifestVO paramsCollectManifestVO) { + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String projectId = paramsCollectManifestVO.getProjectId(); - // 查询参数清单 - ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); + // 查询参数清单 + ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); - // 查询所有收集参数项 - ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); - paramsCollectManifestEO.setParamsManifestId(paramsManifestId); - List list = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); - // 过滤出 状态为:待发起收集,且工程接口人处为空的参数项 - list = list.stream().filter(e-> CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState()) && StringUtils.isBlank(e.getSdt())).collect(Collectors.toList()); + // 查询所有收集参数项 + ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); + paramsCollectManifestEO.setParamsManifestId(paramsManifestId); + List list = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); + // 过滤出 状态为:待发起收集,且工程接口人处为空的参数项 + list = list.stream().filter(e -> CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState()) && StringUtils.isBlank(e.getSdt())).collect(Collectors.toList()); - List updateCollectManifestEOList = new ArrayList<>(); - if (CollectionUtil.isNotEmpty(list)) { - list.forEach(collectManifestEO -> { + List updateCollectManifestEOList = new ArrayList<>(); + if (CollectionUtil.isNotEmpty(list)) { + list.forEach(collectManifestEO -> { - // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 - ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectVersionId(), collectManifestEO.getDutyTerritory()); - if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { - String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); - if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 - SysUser sysUser = sysUserService.getById(sdtId); - if (ObjectUtil.isNotEmpty(sysUser)) { - ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO(); - updateCollectManifestEO.setId(collectManifestEO.getId()); - updateCollectManifestEO.setSdt(sysUser.getUsername()); + // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 + ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectVersionId(), collectManifestEO.getDutyTerritory()); + if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { + String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); + if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 + SysUser sysUser = sysUserService.getById(sdtId); + if (ObjectUtil.isNotEmpty(sysUser)) { + ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO(); + updateCollectManifestEO.setId(collectManifestEO.getId()); + updateCollectManifestEO.setSdt(sysUser.getUsername()); - updateCollectManifestEOList.add(updateCollectManifestEO); - } - } - } - }); + updateCollectManifestEOList.add(updateCollectManifestEO); + } + } + } + }); - } + } - return updateBatchById(updateCollectManifestEOList); - } + return updateBatchById(updateCollectManifestEOList); + } - @Override - public void exportAll(ParamsCollectManifestVO paramsCollectManifestVO, HttpServletResponse response, HttpServletRequest request) { - OutputStream os = null; - OutputStream excelOS = null; - XSSFWorkbook workbook = new XSSFWorkbook(); - String fileOriName = "参数项清单导出信息"; - if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { - fileOriName = "Params info export data"; - } - if (StringUtils.isNotEmpty(paramsCollectManifestVO.getExportName())) { - fileOriName = paramsCollectManifestVO.getExportName(); - } - //创建临时文件夹 - String fileNowPath = uploadpath + "/tempZip/" + UUID.randomUUID().toString().replace("-","") + File.separator + fileOriName; - File nowFile = new File(fileNowPath); - if (nowFile.exists()) { - nowFile.delete(); - } - nowFile.mkdirs(); - try{ - String fileName = fileOriName + ".xlsx"; - // 设置表格相关属性 - String sheetName = "参数项清单信息"; - if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { - sheetName = "Params data"; - } - XSSFSheet sheetItems = workbook.createSheet(sheetName); - String[] titles = getWorkbookTitleForExport(paramsCollectManifestVO); // 获取表头 + @Override + public void exportAll(ParamsCollectManifestVO paramsCollectManifestVO, HttpServletResponse response, HttpServletRequest request) { + OutputStream os = null; + OutputStream excelOS = null; + XSSFWorkbook workbook = new XSSFWorkbook(); + String fileOriName = "参数项清单导出信息"; + if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { + fileOriName = "Params info export data"; + } + if (StringUtils.isNotEmpty(paramsCollectManifestVO.getExportName())) { + fileOriName = paramsCollectManifestVO.getExportName(); + } + //创建临时文件夹 + String fileNowPath = uploadpath + "/tempZip/" + UUID.randomUUID().toString().replace("-", "") + File.separator + fileOriName; + File nowFile = new File(fileNowPath); + if (nowFile.exists()) { + nowFile.delete(); + } + nowFile.mkdirs(); + try { + String fileName = fileOriName + ".xlsx"; + // 设置表格相关属性 + String sheetName = "参数项清单信息"; + if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { + sheetName = "Params data"; + } + XSSFSheet sheetItems = workbook.createSheet(sheetName); + String[] titles = getWorkbookTitleForExport(paramsCollectManifestVO); // 获取表头 - String[] headers = titles[1].split(","); - XSSFCellStyle cellStyle =workbook.createCellStyle(); - cellStyle.setWrapText(true); + String[] headers = titles[1].split(","); + XSSFCellStyle cellStyle = workbook.createCellStyle(); + cellStyle.setWrapText(true); // cellStyle.setAlignment(XSSFCellStyle.ALIGN_CENTER); - cellStyle.setVerticalAlignment(XSSFCellStyle.VERTICAL_CENTER); - XSSFCellStyle cellStyle1 =workbook.createCellStyle(); - cellStyle1.setAlignment(XSSFCellStyle.ALIGN_CENTER); - XSSFCellStyle cellStyleLink =workbook.createCellStyle(); - XSSFFont font = workbook.createFont(); - font.setColor(HSSFColor.LIGHT_BLUE.index); - cellStyleLink.setFont(font); - cellStyleLink.setWrapText(true); + cellStyle.setVerticalAlignment(XSSFCellStyle.VERTICAL_CENTER); + XSSFCellStyle cellStyle1 = workbook.createCellStyle(); + cellStyle1.setAlignment(XSSFCellStyle.ALIGN_CENTER); + XSSFCellStyle cellStyleLink = workbook.createCellStyle(); + XSSFFont font = workbook.createFont(); + font.setColor(HSSFColor.LIGHT_BLUE.index); + cellStyleLink.setFont(font); + cellStyleLink.setWrapText(true); - // 查询需要导出的字段 - String field = titles[0]; // 字符串形式 - List fieldList = Arrays.asList(field.split(",")); // list形式 + // 查询需要导出的字段 + String field = titles[0]; // 字符串形式 + List fieldList = Arrays.asList(field.split(",")); // list形式 - // 查询导出数据 - List> allParamsInfoList = queryForExportAll(paramsCollectManifestVO); // id记得去掉 + // 查询导出数据 + List> allParamsInfoList = queryForExportAll(paramsCollectManifestVO); // id记得去掉 - // 开始处理工作表 - List allRelevFileList = new ArrayList<>(); + // 开始处理工作表 + List allRelevFileList = new ArrayList<>(); - // 在excel表中添加表头 - XSSFRow row = sheetItems.createRow(0); - for (int i = 0; i < headers.length; i++) { - XSSFCell cell = row.createCell(i); - XSSFRichTextString text = new XSSFRichTextString(headers[i]); - cell.setCellValue(text); - cell.setCellStyle(cellStyle1); - sheetItems.setColumnWidth(i, 20 * 256); // 设置单元格宽度 - } + // 在excel表中添加表头 + XSSFRow row = sheetItems.createRow(0); + for (int i = 0; i < headers.length; i++) { + XSSFCell cell = row.createCell(i); + XSSFRichTextString text = new XSSFRichTextString(headers[i]); + cell.setCellValue(text); + cell.setCellStyle(cellStyle1); + sheetItems.setColumnWidth(i, 20 * 256); // 设置单元格宽度 + } - Map fileNowPathMap = new HashMap<>(); - //放文字内容 - int allRow = 0; - for(int rowNum = 0;rowNum < allParamsInfoList.size(); rowNum++){ - Map exportDto = allParamsInfoList.get(rowNum); + Map fileNowPathMap = new HashMap<>(); + //放文字内容 + int allRow = 0; + for (int rowNum = 0; rowNum < allParamsInfoList.size(); rowNum++) { + Map exportDto = allParamsInfoList.get(rowNum); - // 处理文件 - List fileList = (List) exportDto.get("fileList"); - if (CollectionUtil.isNotEmpty(fileList)) { - allRelevFileList.addAll(fileList); - fileList.forEach(file -> { - fileNowPathMap.put(file.getId(), fileNowPath + File.separator + exportDto.get("nio_number")); - }); + // 处理文件 + List fileList = (List) exportDto.get("fileList"); + if (CollectionUtil.isNotEmpty(fileList)) { + allRelevFileList.addAll(fileList); + fileList.forEach(file -> { + fileNowPathMap.put(file.getId(), fileNowPath + File.separator + exportDto.get("nio_number")); + }); - } + } - allRow++; - XSSFRow row1 = sheetItems.createRow(allRow); - for(int cellNum = 0; cellNum < fieldList.size(); cellNum++){ - if (ObjectUtils.isNotEmpty(exportDto.get(fieldList.get(cellNum)))) { - row1.createCell(cellNum).setCellValue(exportDto.get(fieldList.get(cellNum)).toString()); - row1.getCell(cellNum).setCellStyle(cellStyle); + allRow++; + XSSFRow row1 = sheetItems.createRow(allRow); + for (int cellNum = 0; cellNum < fieldList.size(); cellNum++) { + if (ObjectUtils.isNotEmpty(exportDto.get(fieldList.get(cellNum)))) { + row1.createCell(cellNum).setCellValue(exportDto.get(fieldList.get(cellNum)).toString()); + row1.getCell(cellNum).setCellStyle(cellStyle); - } - } + } + } - } + } - //下载关联文件内容 - if (allRelevFileList != null && !allRelevFileList.isEmpty()) { - allRelevFileList = allRelevFileList.stream().distinct().collect(Collectors.toList()); - downLoadFileList(allRelevFileList,fileNowPathMap); - } + //下载关联文件内容 + if (allRelevFileList != null && !allRelevFileList.isEmpty()) { + allRelevFileList = allRelevFileList.stream().distinct().collect(Collectors.toList()); + downLoadFileList(allRelevFileList, fileNowPathMap); + } - String repFileName = fileName.replaceAll("/","_"); - excelOS = new FileOutputStream(fileNowPath + File.separator + repFileName); - response.setHeader("Content-Disposition", - "attachment; filename=\""+ ReadExcel.encodeFileName(fileOriName+".zip", request) +"\""); - response.setContentType("application/force-download"); - response.flushBuffer(); - os = response.getOutputStream(); - workbook.write(excelOS); - excelOS.flush(); - excelOS.close(); - ZipUtil.zip(fileNowPath,fileNowPath+".zip"); - FileInputStream fis = new FileInputStream(fileNowPath+".zip"); - int len = 0; - while ((len = fis.read()) != -1) { - os.write(len); - } + String repFileName = fileName.replaceAll("/", "_"); + excelOS = new FileOutputStream(fileNowPath + File.separator + repFileName); + response.setHeader("Content-Disposition", + "attachment; filename=\"" + ReadExcel.encodeFileName(fileOriName + ".zip", request) + "\""); + response.setContentType("application/force-download"); + response.flushBuffer(); + os = response.getOutputStream(); + workbook.write(excelOS); + excelOS.flush(); + excelOS.close(); + ZipUtil.zip(fileNowPath, fileNowPath + ".zip"); + FileInputStream fis = new FileInputStream(fileNowPath + ".zip"); + int len = 0; + while ((len = fis.read()) != -1) { + os.write(len); + } // // 将导出文件上传到cos上 // String uploadFileName = fileOriName + ".zip"; @@ -3556,283 +3562,283 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl fieldList = Arrays.asList(field.split(",")); // list形式 + // 查询需要导出的字段 + String field = titles[0]; // 字符串形式 + List fieldList = Arrays.asList(field.split(",")); // list形式 - // 查询导出数据 - List> allParamsInfoList = queryForExportDre(paramsCollectManifestVO, request); // id记得去掉 + // 查询导出数据 + List> allParamsInfoList = queryForExportDre(paramsCollectManifestVO, request); // id记得去掉 - // 在excel表中添加表头 - XSSFRow row = sheetItems.createRow(0); - for (int i = 0; i < headers.length; i++) { - XSSFCell cell = row.createCell(i); - XSSFRichTextString text = new XSSFRichTextString(headers[i]); - cell.setCellValue(text); + // 在excel表中添加表头 + XSSFRow row = sheetItems.createRow(0); + for (int i = 0; i < headers.length; i++) { + XSSFCell cell = row.createCell(i); + XSSFRichTextString text = new XSSFRichTextString(headers[i]); + cell.setCellValue(text); // cell.setCellStyle(cellStyle1); - sheetItems.setColumnWidth(i, 20 * 256); // 设置单元格宽度 - sheetItems.setDefaultColumnStyle(i, cellStyle); - } - // 在excel表中添加添加填写说明 - String explanation = ""; - if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { - explanation = "Filling explanation\n" - + "1.Import data starts at the third line, the first line is the header, the second line is the description, the third line is the example, and the fourth line is the official data\n" - + "2.All fields is filled in according to Validate Component and Component Value\n" - + "3.If the control type is drop-down multi-selection, multiple entries are separated by English or Chinese exclamation points\n" - + "4.Configuration data is filled in according to the sequence of control type, and if there are multiple control types, it needs to be separated by \"#\"\n" - + "5.When the control contains multiple component types, if you fill in only some of the information, you need to distinguish blank data with \"#\"\n" - + "6.When filling in, start in column G and do not modify information such as NIO number and parameter name\n" - + "7.File fields are file type, must create a folder in the directory of the same level as the file with the name of the nio number and place the file in the folder. Assume that the file is saved in the A number B.pdf,Should fill in A/B.pdf\n" - + "8.When importing into the system, you need to put the Excel into a folder, place other attachment files correctly as required, and finally compress the folder into zip format for import\n"; - } else { - explanation = "填写说明\n" - + "1.导入数据从第三行开始,第一行为表头,第二行为填写说明,第三行是示例数据,需要从第四行开始填写\n" - + "2.填写时需按照控件校验和控件备选值进行填写\n" - + "3.控件类型为下拉多选时,填写多个时采用英文或中文感叹号分割\n" - + "4.配置数据按照控件类型顺序进行填写,若存在多种控件类型填写时需要通过“#”隔开\n" - + "5.控件中包含多种组件类型时,若只填写其中部分信息需要用#区分空白数据\n" - + "6.填写时从G列开始,请勿修改NIO编号和参数名称等信息\n" - + "7.上传附件为文件属性,填写时需要在本文件同级目录下以NIO编号为名称建立文件夹,并在文件夹下放置文件且该文件夹下只能有一层级,假设在NIO.XXXX下放置了B.pdf,则应填写NIO.XXXX/B.pdf\n" - + "8.导入系统时,需要将该Excel放入文件夹内,并按照要求正确放置其他附件文件,最后将文件夹压缩为zip格式进行导入\n"; - } - XSSFRow row2 = sheetItems.createRow(1); - row2.setHeight((short) 2500); - Cell cell2 = row2.createCell(0); - cell2.setCellStyle(cellStyle); - cell2.setCellValue(new XSSFRichTextString(explanation)); + sheetItems.setColumnWidth(i, 20 * 256); // 设置单元格宽度 + sheetItems.setDefaultColumnStyle(i, cellStyle); + } + // 在excel表中添加添加填写说明 + String explanation = ""; + if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { + explanation = "Filling explanation\n" + + "1.Import data starts at the third line, the first line is the header, the second line is the description, the third line is the example, and the fourth line is the official data\n" + + "2.All fields is filled in according to Validate Component and Component Value\n" + + "3.If the control type is drop-down multi-selection, multiple entries are separated by English or Chinese exclamation points\n" + + "4.Configuration data is filled in according to the sequence of control type, and if there are multiple control types, it needs to be separated by \"#\"\n" + + "5.When the control contains multiple component types, if you fill in only some of the information, you need to distinguish blank data with \"#\"\n" + + "6.When filling in, start in column G and do not modify information such as NIO number and parameter name\n" + + "7.File fields are file type, must create a folder in the directory of the same level as the file with the name of the nio number and place the file in the folder. Assume that the file is saved in the A number B.pdf,Should fill in A/B.pdf\n" + + "8.When importing into the system, you need to put the Excel into a folder, place other attachment files correctly as required, and finally compress the folder into zip format for import\n"; + } else { + explanation = "填写说明\n" + + "1.导入数据从第三行开始,第一行为表头,第二行为填写说明,第三行是示例数据,需要从第四行开始填写\n" + + "2.填写时需按照控件校验和控件备选值进行填写\n" + + "3.控件类型为下拉多选时,填写多个时采用英文或中文感叹号分割\n" + + "4.配置数据按照控件类型顺序进行填写,若存在多种控件类型填写时需要通过“#”隔开\n" + + "5.控件中包含多种组件类型时,若只填写其中部分信息需要用#区分空白数据\n" + + "6.填写时从G列开始,请勿修改NIO编号和参数名称等信息\n" + + "7.上传附件为文件属性,填写时需要在本文件同级目录下以NIO编号为名称建立文件夹,并在文件夹下放置文件且该文件夹下只能有一层级,假设在NIO.XXXX下放置了B.pdf,则应填写NIO.XXXX/B.pdf\n" + + "8.导入系统时,需要将该Excel放入文件夹内,并按照要求正确放置其他附件文件,最后将文件夹压缩为zip格式进行导入\n"; + } + XSSFRow row2 = sheetItems.createRow(1); + row2.setHeight((short) 2500); + Cell cell2 = row2.createCell(0); + cell2.setCellStyle(cellStyle); + cell2.setCellValue(new XSSFRichTextString(explanation)); - // 在excel表中添加添加填写示例 - String[] exampleRow = titles[2].split(","); - XSSFRow row3 = sheetItems.createRow(2); - for (int i = 0; i < exampleRow.length; i++) { - XSSFCell cell3 = row3.createCell(i); - XSSFRichTextString text = new XSSFRichTextString(exampleRow[i]); - cell3.setCellValue(text); - cell3.setCellStyle(cellStyle); - sheetItems.setColumnWidth(i, 20 * 256); // 设置单元格宽度 - } + // 在excel表中添加添加填写示例 + String[] exampleRow = titles[2].split(","); + XSSFRow row3 = sheetItems.createRow(2); + for (int i = 0; i < exampleRow.length; i++) { + XSSFCell cell3 = row3.createCell(i); + XSSFRichTextString text = new XSSFRichTextString(exampleRow[i]); + cell3.setCellValue(text); + cell3.setCellStyle(cellStyle); + sheetItems.setColumnWidth(i, 20 * 256); // 设置单元格宽度 + } - List allRelevFileList = new ArrayList<>(); - Map fileNowPathMap = new HashMap<>(); + List allRelevFileList = new ArrayList<>(); + Map fileNowPathMap = new HashMap<>(); - //放文字内容 - int allRow = 2; - for(int rowNum = 0;rowNum < allParamsInfoList.size(); rowNum++){ - Map exportDto = allParamsInfoList.get(rowNum); + //放文字内容 + int allRow = 2; + for (int rowNum = 0; rowNum < allParamsInfoList.size(); rowNum++) { + Map exportDto = allParamsInfoList.get(rowNum); - // 处理文件 - List fileList = (List) exportDto.get("fileList"); - if (CollectionUtil.isNotEmpty(fileList)) { - allRelevFileList.addAll(fileList); - fileList.forEach(file -> { - fileNowPathMap.put(file.getId(), fileNowPath + File.separator + exportDto.get("nio_number")); - }); + // 处理文件 + List fileList = (List) exportDto.get("fileList"); + if (CollectionUtil.isNotEmpty(fileList)) { + allRelevFileList.addAll(fileList); + fileList.forEach(file -> { + fileNowPathMap.put(file.getId(), fileNowPath + File.separator + exportDto.get("nio_number")); + }); - } + } - allRow++; - XSSFRow row1 = sheetItems.createRow(allRow); - for(int cellNum = 0; cellNum < fieldList.size(); cellNum++){ - if (ObjectUtils.isNotEmpty(exportDto.get(fieldList.get(cellNum)))) { - row1.createCell(cellNum).setCellValue(exportDto.get(fieldList.get(cellNum)).toString()); - row1.getCell(cellNum).setCellStyle(cellStyle); + allRow++; + XSSFRow row1 = sheetItems.createRow(allRow); + for (int cellNum = 0; cellNum < fieldList.size(); cellNum++) { + if (ObjectUtils.isNotEmpty(exportDto.get(fieldList.get(cellNum)))) { + row1.createCell(cellNum).setCellValue(exportDto.get(fieldList.get(cellNum)).toString()); + row1.getCell(cellNum).setCellStyle(cellStyle); - } - } + } + } - } + } - //下载关联文件内容 - if (allRelevFileList != null && !allRelevFileList.isEmpty()) { - allRelevFileList = allRelevFileList.stream().distinct().collect(Collectors.toList()); - downLoadFileList(allRelevFileList,fileNowPathMap); - } + //下载关联文件内容 + if (allRelevFileList != null && !allRelevFileList.isEmpty()) { + allRelevFileList = allRelevFileList.stream().distinct().collect(Collectors.toList()); + downLoadFileList(allRelevFileList, fileNowPathMap); + } - String repFileName = fileName.replaceAll("/","_"); - excelOS = new FileOutputStream(fileNowPath + File.separator + repFileName); - response.setHeader("Content-Disposition", - "attachment; filename=\""+ ReadExcel.encodeFileName(fileOriName+".zip", request) +"\""); - response.setContentType("application/force-download"); - response.flushBuffer(); - os = response.getOutputStream(); - workbook.write(excelOS); - excelOS.flush(); - excelOS.close(); - ZipUtil.zip(fileNowPath,fileNowPath+".zip"); - fis = new FileInputStream(fileNowPath+".zip"); - int len = 0; - while ((len = fis.read()) != -1) { - os.write(len); - } + String repFileName = fileName.replaceAll("/", "_"); + excelOS = new FileOutputStream(fileNowPath + File.separator + repFileName); + response.setHeader("Content-Disposition", + "attachment; filename=\"" + ReadExcel.encodeFileName(fileOriName + ".zip", request) + "\""); + response.setContentType("application/force-download"); + response.flushBuffer(); + os = response.getOutputStream(); + workbook.write(excelOS); + excelOS.flush(); + excelOS.close(); + ZipUtil.zip(fileNowPath, fileNowPath + ".zip"); + fis = new FileInputStream(fileNowPath + ".zip"); + int len = 0; + while ((len = fis.read()) != -1) { + os.write(len); + } - } catch (Exception e) { - if (e instanceof JeroBootException){ - throw new JeroBootException(e.getMessage()); - } else { - log.error(e.getMessage(), e); - if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { - throw new JeroBootException("Failed to download file, please try again"); - } else { - throw new JeroBootException("下载文件失败,请重试"); - } + } catch (Exception e) { + if (e instanceof JeroBootException) { + throw new JeroBootException(e.getMessage()); + } else { + log.error(e.getMessage(), e); + if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { + throw new JeroBootException("Failed to download file, please try again"); + } else { + throw new JeroBootException("下载文件失败,请重试"); + } - } - } finally { - IOUtils.closeQuietly(os); - IOUtils.closeQuietly(fis); - try { - if (workbook != null) { - workbook.close(); - } - } catch (IOException e) { - log.error("发生异常,异常信息为:"+e.getMessage(), e); - } - } - } + } + } finally { + IOUtils.closeQuietly(os); + IOUtils.closeQuietly(fis); + try { + if (workbook != null) { + workbook.close(); + } + } catch (IOException e) { + log.error("发生异常,异常信息为:" + e.getMessage(), e); + } + } + } - @Override - public Result importDre(MultipartFile file, String cut, String paramsManifestId) { - //验证文件名是否合格 - /* 截取后缀名 */ - int pos = file.getOriginalFilename().lastIndexOf("."); - String str = file.getOriginalFilename().substring(pos+1).toLowerCase(); - String filenameorg = file.getOriginalFilename().substring(0,pos); - String resultMsg = ""; - //判断上传文件必须是zip - if (!str.equals("zip")) { - if(CutEnum.CN.getValue().equals(cut)){ - resultMsg = "请上传zip文件"; - }else{ - resultMsg = "Please upload a zip file"; - } - return Result.error(resultMsg); - } - String path = uploadpath + File.separator + "modal" + File.separator + filenameorg + System.currentTimeMillis(); - File saveDirectory = new File(path); - if(!saveDirectory.isDirectory()){ - saveDirectory.mkdir(); - } - try{ - FileUtils.copyInputStreamToFile(file.getInputStream(), new File(path +File.separator+ file.getOriginalFilename())); - //解压缩 - String zipEntryName = FileUnZip.unZipFiles2(path +File.separator+ file.getOriginalFilename(), path); - // 数据相关处理, - // 1.获取其中的Excel, - List excelfilelist = FileUnZip.readExcelFile(zipEntryName); - if(excelfilelist.size()<1){ - //删除原上传文件 - FileUnZip.deleteDir(saveDirectory); - if(CutEnum.CN.getValue().equals(cut)){ - resultMsg = "压缩包内没有上传Excel数据"; - }else{ - resultMsg = "In the cabinet did not upload the Excel data"; - } - return Result.error(1, resultMsg); + @Override + public Result importDre(MultipartFile file, String cut, String paramsManifestId) { + //验证文件名是否合格 + /* 截取后缀名 */ + int pos = file.getOriginalFilename().lastIndexOf("."); + String str = file.getOriginalFilename().substring(pos + 1).toLowerCase(); + String filenameorg = file.getOriginalFilename().substring(0, pos); + String resultMsg = ""; + //判断上传文件必须是zip + if (!str.equals("zip")) { + if (CutEnum.CN.getValue().equals(cut)) { + resultMsg = "请上传zip文件"; + } else { + resultMsg = "Please upload a zip file"; + } + return Result.error(resultMsg); + } + String path = uploadpath + File.separator + "modal" + File.separator + filenameorg + System.currentTimeMillis(); + File saveDirectory = new File(path); + if (!saveDirectory.isDirectory()) { + saveDirectory.mkdir(); + } + try { + FileUtils.copyInputStreamToFile(file.getInputStream(), new File(path + File.separator + file.getOriginalFilename())); + //解压缩 + String zipEntryName = FileUnZip.unZipFiles2(path + File.separator + file.getOriginalFilename(), path); + // 数据相关处理, + // 1.获取其中的Excel, + List excelfilelist = FileUnZip.readExcelFile(zipEntryName); + if (excelfilelist.size() < 1) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + if (CutEnum.CN.getValue().equals(cut)) { + resultMsg = "压缩包内没有上传Excel数据"; + } else { + resultMsg = "In the cabinet did not upload the Excel data"; + } + return Result.error(1, resultMsg); - } else if (excelfilelist.size()>1) { - //删除原上传文件 - FileUnZip.deleteDir(saveDirectory); - if(CutEnum.CN.getValue().equals(cut)){ - resultMsg = "压缩包根目录下仅能存在一个excel为导入数据"; - }else{ - resultMsg = "Only one Excel file can be imported in the compressed package root directory"; - } - return Result.error(1, resultMsg); - } - File excelfile = excelfilelist.get(0); - // 导入参数设置,默认即可 - ImportParams params = new ImportParams(); - try { - // 导入表头 - ParamsCollectManifestVO paramsCollectManifestVO = new ParamsCollectManifestVO(); - paramsCollectManifestVO.setCut(cut); - paramsCollectManifestVO.setParamsManifestId(paramsManifestId); - String titles[] = getWorkbookTitleForExportDre(paramsCollectManifestVO); // 有顺序 - String headers[] = titles[1].split(","); - params.setImportFields(headers); + } else if (excelfilelist.size() > 1) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + if (CutEnum.CN.getValue().equals(cut)) { + resultMsg = "压缩包根目录下仅能存在一个excel为导入数据"; + } else { + resultMsg = "Only one Excel file can be imported in the compressed package root directory"; + } + return Result.error(1, resultMsg); + } + File excelfile = excelfilelist.get(0); + // 导入参数设置,默认即可 + ImportParams params = new ImportParams(); + try { + // 导入表头 + ParamsCollectManifestVO paramsCollectManifestVO = new ParamsCollectManifestVO(); + paramsCollectManifestVO.setCut(cut); + paramsCollectManifestVO.setParamsManifestId(paramsManifestId); + String titles[] = getWorkbookTitleForExportDre(paramsCollectManifestVO); // 有顺序 + String headers[] = titles[1].split(","); + params.setImportFields(headers); - List> result = new ArrayList<>(); - List dbfieldList = Arrays.asList(titles[0].split(",")); // 有顺序 + List> result = new ArrayList<>(); + List dbfieldList = Arrays.asList(titles[0].split(",")); // 有顺序 - // 解析excel - result = read(excelfile, dbfieldList, headers, cut); + // 解析excel + result = read(excelfile, dbfieldList, headers, cut); - //excel读取到的数据 - List> datas = result; - if(datas!=null &&!datas.isEmpty()){ - try { + //excel读取到的数据 + List> datas = result; + if (datas != null && !datas.isEmpty()) { + try { // int i = 0 ; // List> datasUpdate = new ArrayList<>(); - //处理空行数据,当读取exceL出现空行过多时,空行数为20以上时中断读取,将数据清洗为新的list + //处理空行数据,当读取exceL出现空行过多时,空行数为20以上时中断读取,将数据清洗为新的list // for(Map importDto :datas){ // if(i>20){ // break; @@ -3846,688 +3852,689 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl message = importData(datas,unzipfilepath,cut,paramsManifestId); - //删除原上传文件 - FileUnZip.deleteDir(saveDirectory); - return message; - } catch (NullPointerException e) { - //删除原上传文件 - FileUnZip.deleteDir(saveDirectory); - if(CutEnum.CN.getValue().equals(cut)){ - resultMsg = "读取失败,请严格按照模板文件导入数据"; - }else{ - resultMsg = "The data fails to be read. Import data strictly according to the template file"; - } - return Result.error(1, resultMsg); - } catch (Exception e) { - //删除原上传文件 - FileUnZip.deleteDir(saveDirectory); - return Result.error(e.getMessage()); - } - }else{ - //删除原上传文件 - FileUnZip.deleteDir(saveDirectory); - if(CutEnum.CN.getValue().equals(cut)){ - resultMsg = "没有可导入的数据,请检查!"; - }else{ - resultMsg = "No data to import, please check"; - } - return Result.error(1, resultMsg); - } - } catch (NoSuchElementException e){ - FileUnZip.deleteDir(saveDirectory); - if(CutEnum.CN.getValue().equals(cut)){ - resultMsg = "没有可导入的数据,请检查!"; - }else{ - resultMsg = "No data to import, please check"; - } - return Result.error(1, resultMsg); - } catch (JeroBootException e){ - FileUnZip.deleteDir(saveDirectory); - return Result.error(1, e.getMessage()); - } catch (Exception e) { - //删除原上传文件 - FileUnZip.deleteDir(saveDirectory); - if(CutEnum.CN.getValue().equals(cut)){ - resultMsg = "读取失败,请严格按照模板文件导入数据"; - }else{ - resultMsg = "The data fails to be read. Import data strictly according to the template file"; - } - return Result.error(1, resultMsg); - } - } catch (Exception e) { - //删除原上传文件 - FileUnZip.deleteDir(saveDirectory); - if(CutEnum.CN.getValue().equals(cut)){ - resultMsg = "读取失败,请严格按照模板文件导入数据"; - }else{ - resultMsg = "The data fails to be read. Import data strictly according to the template file"; - } - return Result.error(1, resultMsg); - } - } - - @Override - public Result importData(List> dataList, - String unzipfilepath, - String cut, - String paramsManifestId) throws IOException { - //验证导入数据是否符合规则 - Map map = validateImportDatas(dataList,unzipfilepath,cut,paramsManifestId); - boolean isOk = (boolean) map.get("result"); - if (!isOk) { - //验证没有通过 - String message = (String) map.get("message"); - return Result.error(message); - } - //将导入数据循环合并整理后 新增至相应表 - List configDataList = (List) map.get("configDataList"); - List> notImportNioNumberList = (List>) map.get("notImportNioNumberList"); - - for (ParamsConfigDataEO importDto : configDataList) { - //判断此行数据是否全部为空,是则不读取 - if (checkObjAllFieldsIsNull(importDto)) { - continue; - } - - // 如果id为空,不做处理 - if(StringUtils.isEmpty(importDto.getId())){ - continue; - } - - // 处理文件 - if (StringUtils.isNotBlank(importDto.getFileConnectId())) { // 判空,否则报空指针异常 - List nowFileList = FileUnZip.readFileByFilename(unzipfilepath, importDto.getFileConnectId(), null, null, null, null, null); - - FileInputStream input = new FileInputStream(nowFileList.get(0)); - MultipartFile multipartFile = - new MockMultipartFile(nowFileList.get(0).getName(), nowFileList.get(0).getName(), "text/plain", input); - //文件存入文件表 - OSSFile ossFile = ossFileService.uploadLocalOfCos(multipartFile, "", null, cut); - if (ObjectUtils.isNotEmpty(ossFile)) { - String connectId = UUID.randomUUID().toString().replace("-", ""); - OSSFile ossFileUpdate = new OSSFile(); - ossFileUpdate.setId(ossFile.getId()); - ossFileUpdate.setConnectId(connectId); - ossFileService.updateById(ossFileUpdate); - - importDto.setFileConnectId(connectId); - } - } - - // 处理下拉值 - if (StringUtils.isNotEmpty(importDto.getPullData())) { - String newPullData = importDto.getPullData().replaceAll("!", "!").replaceAll("!", ","); - importDto.setPullData(newPullData); - } - } - - // 批量新增参数项 - Boolean isSuccess = paramsConfigDataEOService.saveOrUpdateBatch(configDataList); - - String msg = ""; - if (isSuccess) { - if (CollectionUtil.isNotEmpty(notImportNioNumberList)) { - List msgList = getMsgOfIssueCollection(notImportNioNumberList, cut, "3"); - return Result.OK(null, msgList); - - } else { - int countSuccess = configDataList.size(); - if (CutEnum.CN.getValue().equals(cut)) { - msg = "成功导入" + countSuccess + "条"; - } else { - msg = "import " + countSuccess + " datas successfully"; - } - return Result.OK(msg, null); - } - } else { - if (CutEnum.CN.getValue().equals(cut)) { - msg = "导入失败"; - } else { - msg = "import failed"; - } - return Result.error(1, msg); - } - } - - @Override - public List updateBatchDutyTerritory(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) - || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId()) - || StringUtils.isEmpty(paramsCollectManifestVO.getDutyTerritory())) { - throw new JeroBootException("参数不能为空!"); - } - List paramsCollectManifestIdList = Arrays.asList(paramsCollectManifestVO.getIds().split(",")); - String dutyTerritory = paramsCollectManifestVO.getDutyTerritory(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String projectId = paramsCollectManifestVO.getProjectId(); - String cut = paramsCollectManifestVO.getCut(); - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - - // 查询参数清单 - ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); - // 查询清单的所有参数项 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(ParamsCollectManifestEO::getId, paramsCollectManifestIdList); - List paramsCollectManifestEOList = paramsCollectManifestEOMapper.selectList(queryWrapper); - - // 查询所有的责任领域 - List dutyTerritoryList = this.sysDictItemServiceImpl.selectItemsByDictCode("duty_territory"); - - List paramsCollectManifestLogEOList = new ArrayList<>(); - List updateEOList = new ArrayList<>(); - List> msgMapList = new ArrayList<>(); - paramsCollectManifestEOList.forEach(paramsCollectManifestEO -> { - if (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(paramsCollectManifestEO.getState()) - || CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState())) { - - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - updateEO.setId(paramsCollectManifestEO.getId()); - updateEO.setDutyTerritory(dutyTerritory); - - // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 - ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectVersionId(), dutyTerritory); - if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { - String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); - if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 - SysUser sysUser = sysUserService.getById(sdtId); - if (ObjectUtil.isNotEmpty(sysUser)) { - updateEO.setSdt(sysUser.getUsername()); // 设置工程接口人 - } else { - updateEO.setSdt(""); // 设置工程接口人 - } - } else { - updateEO.setSdt(""); // 设置工程接口人 - } - } else { - updateEO.setSdt(""); // 设置工程接口人 - } - - updateEOList.add(updateEO); - - String oldDutyTerritoryNameCn = this.getDutyTerritoryNameByCode(dutyTerritoryList,paramsCollectManifestEO.getDutyTerritory(),CutEnum.CN.getValue()); - String newDutyTerritoryNameCn = this.getDutyTerritoryNameByCode(dutyTerritoryList,dutyTerritory,CutEnum.CN.getValue()); - String oldDutyTerritoryNameEn = this.getDutyTerritoryNameByCode(dutyTerritoryList,paramsCollectManifestEO.getDutyTerritory(),CutEnum.EN.getValue()); - String newDutyTerritoryNameEn = this.getDutyTerritoryNameByCode(dutyTerritoryList,dutyTerritory,CutEnum.EN.getValue()); - - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent("认证工程师\""+currentUser.getUsername()+"\"将参数责任领域信息由\""+oldDutyTerritoryNameCn+"\"修改为\""+newDutyTerritoryNameCn+"\""); - paramsCollectManifestLogEO.setLogEnContent("The Homo Engineer \""+currentUser.getUsername()+"\" changed the parameter responsibility field information from \""+oldDutyTerritoryNameEn+"\" to " + "\""+newDutyTerritoryNameEn+"\""); - paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); - paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - - } else { - Map msgMap = new HashMap<>(); - msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); - msgMap.put("state", paramsCollectManifestEO.getState()); - msgMap.put("type", "2"); - msgMapList.add(msgMap); - } - }); - - // 修改责任领域及工程接口人 - updateBatchById(updateEOList); - - if(CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)){ - this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); - } - - // 返回不符合参数项的提示信息 - return getMsgOfIssueCollection(msgMapList, cut, "2"); - } - - /** - * 根据责任领域code,获取责任领域名称,包含中英文切换。 - * @param dutyTerritoryList - * @param dutyTerritoryCode - * @param cut - * @return - */ - public String getDutyTerritoryNameByCode(List dutyTerritoryList,String dutyTerritoryCode,String cut){ - String result = null; - if (CollectionUtils.isNotEmpty(dutyTerritoryList) && StringUtils.isNotEmpty(dutyTerritoryCode)) { - if (StringUtils.equals(cut, CutEnum.CN.getValue())) { - result = dutyTerritoryList.stream().filter(dutyTerritory -> { - boolean flag = false; - if(StringUtils.equals(dutyTerritory.getItemValue(),dutyTerritoryCode)){ - flag = true; - } - return flag; - }).map(SysDictItem::getItemText).collect(Collectors.joining(",")); - } else if (StringUtils.equals(cut, CutEnum.EN.getValue())) { - result = dutyTerritoryList.stream().filter(dutyTerritory -> { - boolean flag = false; - if(StringUtils.equals(dutyTerritory.getItemValue(),dutyTerritoryCode)){ - flag = true; - } - return flag; - }).map(SysDictItem::getEnName).collect(Collectors.joining(",")); - } - } - return result; - } - - private String[] getWorkbookTitleForExport(ParamsCollectManifestVO paramsCollectManifestVO) { - String cut = paramsCollectManifestVO.getCut(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - - List fieldList = onlCgformFieldService.getFieldList(ModuleEnum.PARAMS_COLLECT_MANIFEST.getValue()); - - List dbFieldNameList = new LinkedList<>(); - List dbFieldList = new LinkedList<>(); - - if (fieldList.size() != 0) { - //过滤列表字段(is_show_list-->列表是否显示0否 1是) - fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowList()))).collect(Collectors.toList()); - } - - // 固定列 - int indexOfDescription = 1; // 参数名称的位置 - for (int i = 0; i < fieldList.size(); i++) { - OnlCgformField onlCgformField = fieldList.get(i); - String dbFieldName = onlCgformField.getDbFieldName(); - if (!"deadline".equals(dbFieldName) && !"cert_category".equals(dbFieldName) && !"description".equals(dbFieldName)) { - dbFieldList.add(dbFieldName); - - if(CutEnum.CN.getValue().equals(cut)){ - dbFieldNameList.add(onlCgformField.getDbFieldTxt()); // 字段中文名 - }else{ - dbFieldNameList.add(onlCgformField.getDbFieldEnName()); // 字段英文名 - } - if ("params_name".equals(dbFieldName)) { - indexOfDescription = i; - } - } - } - - // 认证类别列 - List dbFieldNameListCC = new LinkedList<>(); - List dbFieldListCC = new LinkedList<>(); - // 查询所有认证类别 - List sysDictItemList = sysDictItemService.selectItemsByDictCode("cert_category"); - if (CutEnum.EN.getValue().equals(cut)) { - sysDictItemList.forEach(sysDictItem -> { - dbFieldListCC.add(sysDictItem.getItemValue()); - dbFieldNameListCC.add(sysDictItem.getEnName() + " Number"); - }); - - } else { - sysDictItemList.forEach(sysDictItem -> { - dbFieldListCC.add(sysDictItem.getItemValue()); - dbFieldNameListCC.add(sysDictItem.getItemText() + "编号"); - }); - } - - // 配置列 - List dbFieldNameListConfig = new LinkedList<>(); - List dbFieldListConfig = new LinkedList<>(); - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); - for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { - dbFieldListConfig.add(paramsConfigEO.getId()); - dbFieldNameListConfig.add(paramsConfigEO.getConfigName()); - } - - // 插入认证类别列 - dbFieldList.addAll(indexOfDescription, dbFieldListCC); - dbFieldNameList.addAll(indexOfDescription, dbFieldNameListCC); - - // 插入配置列 - dbFieldList.addAll(dbFieldListConfig); - dbFieldNameList.addAll(dbFieldNameListConfig); - - String[] title = new String[2]; - String dbFieldStr = StringUtils.join(dbFieldList, ","); - String dbFieldNameStr = StringUtils.join(dbFieldNameList, ","); - - title[0] = dbFieldStr; - title[1] = dbFieldNameStr; - return title; - } - - private String[] getWorkbookTitleForExportDre(ParamsCollectManifestVO paramsCollectManifestVO) { - String cut = paramsCollectManifestVO.getCut(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); - - List fieldList = onlCgformFieldService.getFieldList(ModuleEnum.PARAMS_COLLECT_MANIFEST.getValue()); - - List dbFieldNameList = new LinkedList<>(); - List dbFieldList = new LinkedList<>(); - List dbFieldExampleList = new LinkedList<>(); - - // 固定列 - for (int i = 0; i < fieldList.size(); i++) { - OnlCgformField onlCgformField = fieldList.get(i); - String dbFieldName = onlCgformField.getDbFieldName(); - if ("references_col".equals(dbFieldName) && StringUtils.isEmpty(paramsManifestEO.getReferencesColName())) { - continue; - } - if ("nio_number".equals(dbFieldName) || "params_name".equals(dbFieldName) || "description".equals(dbFieldName) - || "control_type".equals(dbFieldName) || "control_verify".equals(dbFieldName) || "control_values".equals(dbFieldName) - || "is_must".equals(dbFieldName) || "references_col".equals(dbFieldName)) { - dbFieldList.add(dbFieldName); - - if(CutEnum.CN.getValue().equals(cut)){ - dbFieldNameList.add(onlCgformField.getDbFieldTxt()); // 字段中文名 - if("nio_number".equals(dbFieldName)) { - dbFieldExampleList.add("例NIO.XXXX"); - } else if("params_name".equals(dbFieldName) || "description".equals(dbFieldName)) { - dbFieldExampleList.add("XXXXX"); - - } else if("control_verify".equals(dbFieldName)) { - dbFieldExampleList.add("数据来源于参数模版管理中控件校验数据"); - - } else if("control_values".equals(dbFieldName)) { - dbFieldExampleList.add("数据来源于参数模版管理中控件备选值数据"); - - } else if("is_must".equals(dbFieldName)) { - dbFieldExampleList.add("是/否"); - - } else { - dbFieldExampleList.add("下拉多选+文本"); - } - }else{ - dbFieldNameList.add(onlCgformField.getDbFieldEnName()); // 字段英文名 - if("nio_number".equals(dbFieldName)) { - dbFieldExampleList.add("Example:NIO.XXXX"); - } else if("params_name".equals(dbFieldName) || "description".equals(dbFieldName)) { - dbFieldExampleList.add("XXXXX"); - - } else if("control_verify".equals(dbFieldName)) { - dbFieldExampleList.add("The data comes from Validate Component in the parameter template management"); - - } else if("control_values".equals(dbFieldName)) { - dbFieldExampleList.add("The data comes from Component Value in the parameter template management"); - - } else if("is_must".equals(dbFieldName)) { - dbFieldExampleList.add("Yes/No"); - - } else { - dbFieldExampleList.add("Pull more+File"); - } - } - - - } - } - - // 配置列 - List dbFieldNameListConfig = new LinkedList<>(); - List dbFieldListConfig = new LinkedList<>(); - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); - for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { - if (ConfigLockEnum.NO.getValue().equals(paramsConfigEO.getIsLock())) { // 只导出未冻结的配置列 - dbFieldListConfig.add(paramsConfigEO.getId()); - dbFieldNameListConfig.add(paramsConfigEO.getConfigName()); - dbFieldExampleList.add("XX!XX!XX#XXXXX"); - } - } - - // 插入配置列 - dbFieldList.addAll(dbFieldListConfig); - dbFieldNameList.addAll(dbFieldNameListConfig); - - String[] title = new String[3]; - String dbFieldStr = StringUtils.join(dbFieldList, ","); - String dbFieldNameStr = StringUtils.join(dbFieldNameList, ","); - String dbFieldExampleStr = StringUtils.join(dbFieldExampleList, ","); - - title[0] = dbFieldStr; - title[1] = dbFieldNameStr; - title[2] = dbFieldExampleStr; - return title; - } - - private List> queryForExportAll(ParamsCollectManifestVO paramsCollectManifestVO) { - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String paramsTemplateId = paramsCollectManifestVO.getParamsTemplateId(); - Integer paramsTemplatePublishVersion = paramsCollectManifestVO.getParamsTemplatePublishVersion(); - String cut = paramsCollectManifestVO.getCut(); - - LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - - ParamsCollectManifestEO queryEO = new ParamsCollectManifestEO(); - queryEO.setParamsManifestId(paramsManifestId); - - String userTypes = paramsCollectManifestVO.getUserTypes(); - if (userTypes != null && CollectManifestUserTypeEnum.SDT.getValue().equals(userTypes)){ - queryEO.setUserTypes(CollectManifestUserTypeEnum.SDT.getValue()); - queryEO.setSdt(loginUser.getUsername()); - } - - List> dataList = paramsCollectManifestEOMapper.listInfoForExport(queryEO, null); // 查询导出数据 - if (dataList == null || dataList.isEmpty()){ - // 没有查到数据,进行提示 - if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { - throw new JeroBootException("No data, unable to export"); - } else { - throw new JeroBootException("无数据,无法导出"); - } - } - - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询所有配置列 - - List paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); - List paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据 - - List nioNumberList = dataList.stream().map(m->(String)m.get("nio_number")).collect(Collectors.toList()); - List certCategoryParamsInfoPublishEOList = certCategoryParamsInfoPublishEOService.queryListByVersionAndNio(paramsTemplateId, paramsTemplatePublishVersion, nioNumberList); //查询所有认证类别参数项 - - // 查询责任领域数据字典 - List sysDictItemList = sysDictItemService.selectItemsByDictCode("duty_territory"); - Map dutyTerritoryMap = new HashMap<>(); - if (CutEnum.EN.getValue().equals(cut)) { - dutyTerritoryMap = sysDictItemList.stream().collect(Collectors.toMap(c -> c.getItemValue(), c -> c.getEnName())); - } else { - dutyTerritoryMap = sysDictItemList.stream().collect(Collectors.toMap(c -> c.getItemValue(), c -> c.getItemText())); - } - // 状态 - Map stateMap = CollectManifestStateEnum.toMap(cut); - - // 插入配置列和认证类别列数据 - for (Map record1 : dataList) { - - String paramsCollectManifestId = (String) record1.get("id"); - String nioNumber = (String) record1.get("nio_number"); - String dutyTerritory = (String) record1.get("duty_territory"); - String state = (String) record1.get("state"); - - String control_type = record1.get("control_type").toString(); - //references_col -> #a# # - if(!Objects.isNull(record1.get("references_col"))){ - String references_col = record1.get("references_col").toString(); - if(StringUtils.isNotEmpty(references_col)){ - String[] references_colArr = references_col.split("#"); - if(StringUtils.equals(control_type,ControlTypeEnum.FILE.getValue())){ - String fileId = references_colArr[2]; - List fileInfos = this.ossFileService.getFileInfos(fileId); - String fileName = fileInfos.stream().map(OSSFile::getFileName).collect(Collectors.joining(",")); - references_col = "#"+ references_colArr[0] + "#" + references_colArr[1] + "#" + fileName; - }else if(StringUtils.equals(control_type,ControlTypeEnum.TEXT_FILE.getValue()) - ||StringUtils.equals(control_type,ControlTypeEnum.PULL_SINGLE_FILE.getValue()) - ||StringUtils.equals(control_type,ControlTypeEnum.PULL_MORE_FILE.getValue())){ - String fileId = references_colArr[2]; - List fileInfos = this.ossFileService.getFileInfos(fileId); - String fileName = fileInfos.stream().map(OSSFile::getFileName).collect(Collectors.joining(",")); - references_col = "#"+ references_colArr[0] + "#" + references_colArr[1] + "#" + fileName; - }else if(StringUtils.equals(control_type,ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue())){ - String fileId = references_colArr[2]; - List fileInfos = this.ossFileService.getFileInfos(fileId); - String fileName = fileInfos.stream().map(OSSFile::getFileName).collect(Collectors.joining(",")); - references_col = "#"+ references_colArr[0] + "#" + references_colArr[1] + "#" + fileName; - } - - StringBuilder references_colSb = new StringBuilder(); - for (String col : references_col.split("#")) { - if(StringUtils.isNotEmpty(col) && !StringUtils.equals(col," ")){ - references_colSb.append(col).append("#"); - } - } - - if(StringUtils.isNotEmpty(references_colSb)){ - references_col = references_colSb.substring(0,references_colSb.length()-1); - }else { - references_col = references_colSb.toString(); - } - - record1.put("references_col",references_col); - } - } - - // 处理负责领域 - record1.put("duty_territory", dutyTerritoryMap.get(dutyTerritory)); - - // 处理状态 - record1.put("state", stateMap.get(state)); - - // 认证类别列 - List certCategoryParamsInfoPublishEOS = certCategoryParamsInfoPublishEOList.stream().filter(e->nioNumber.equals(e.getNioNumber())).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(certCategoryParamsInfoPublishEOS)) { - certCategoryParamsInfoPublishEOS.forEach(certCategoryParamsInfoPublishEO -> { - record1.put(certCategoryParamsInfoPublishEO.getCertCategory(), certCategoryParamsInfoPublishEO.getParamsNumber()); - }); - } - - // 配置列 - if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { - List fileList = new ArrayList<>(); - - paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置 - - String paramsConfigId = paramsConfigEO.getId(); - List paramsConfigDataEOS = paramsConfigDataEOList.stream().filter(e-> paramsConfigId.equals(e.getParamsConfigId()) && paramsCollectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList()); // 参数配置数据 - StringBuilder configDataBuilder = new StringBuilder(); // 重新组合配置数据 - if (CollectionUtil.isNotEmpty(paramsConfigDataEOS)) { - ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOS.get(0); - if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - configDataBuilder.append(paramsConfigDataEO.getTextData()).append("#"); - } - if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - configDataBuilder.append(paramsConfigDataEO.getPullData()).append("#"); - } - if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); - if (CollectionUtil.isNotEmpty(ossFileList)) { - configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()).append("#"); - - fileList.addAll(ossFileList); - } - } - - } - - String configData = configDataBuilder.toString(); - if (configData.contains("#")) { - configData = configData.substring(0, configData.lastIndexOf("#")); - } - - record1.put(paramsConfigEO.getId(), configData); - }); - - record1.put("fileList", fileList); - } - } - return dataList; - } - - // 导出待填写数据,可以勾选导出 - private List> queryForExportDre(ParamsCollectManifestVO paramsCollectManifestVO, HttpServletRequest req) { - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - String cut = paramsCollectManifestVO.getCut(); - List idList = new ArrayList<>(); - if (StringUtils.isNotBlank(paramsCollectManifestVO.getIds())) { - idList = Arrays.asList(paramsCollectManifestVO.getIds().split(",")); - } - List stateList = new ArrayList(){{ - add(CollectManifestStateEnum.WAIT_FILL.getValue()); - add(CollectManifestStateEnum.CERT_BACK.getValue()); - }}; - - LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); - - ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); - BeanUtils.copyProperties(paramsCollectManifestVO, paramsCollectManifestEO); - paramsCollectManifestEO.setParamsManifestId(null); - QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(paramsCollectManifestEO, req.getParameterMap()); - queryWrapper.lambda().eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId) - .eq(ParamsCollectManifestEO::getDre, loginUser.getUsername()) - .in(ParamsCollectManifestEO::getState, stateList) - .notIn(ParamsCollectManifestEO::getControlType, ControlTypeEnum.Title.getValue()) - .orderByDesc(ParamsCollectManifestEO::getDelFlag) - .orderByDesc(ParamsCollectManifestEO::getAddFlag) - .orderByDesc(ParamsCollectManifestEO::getChangeFlag) - .orderByAsc(ParamsCollectManifestEO::getNioNumber) - .in(CollectionUtil.isNotEmpty(idList), ParamsCollectManifestEO::getId, idList); - - List dataList = list(queryWrapper); // 查询导出数据 - if (dataList == null || dataList.isEmpty()){ - // 没有查到数据,进行提示 - if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { - throw new JeroBootException("No data, unable to export"); - } else { - throw new JeroBootException("无数据,无法导出"); - } - } - - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询所有配置列 - - List paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); - List paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据 - - List exportDataList = new ArrayList<>(); - // 配置列多行数据处理 - for (ParamsCollectManifestEO collectManifestEO : dataList) { - String id = collectManifestEO.getId(); - - Map> paramsConfigDataMap = paramsConfigDataEOList.stream().filter(configDataEO -> { - boolean flag = false; - if (StringUtils.equals(configDataEO.getParamsCollectManifestId(), id)) { - flag = true; - } - return flag; - }).collect(Collectors.groupingBy(configDataEO -> configDataEO.getParamsConfigId())); - - List> paramsConfigDataCountList = new ArrayList<>(); - - for (Map.Entry> map : paramsConfigDataMap.entrySet()) { - Map paramsConfigDataCountMap = new HashMap<>(); - paramsConfigDataCountMap.put("key",map.getKey()); - paramsConfigDataCountMap.put("paramsConfigDataCount",map.getValue().size()); - paramsConfigDataCountMap.put("value",map.getValue()); - paramsConfigDataCountList.add(paramsConfigDataCountMap); - } - - // 排序 配置数据总数倒序排序 - Collections.sort(paramsConfigDataCountList, new Comparator>() { - @Override - public int compare(Map o1, Map o2) { - return o2.get("paramsConfigDataCount").toString().compareTo(o1.get("paramsConfigDataCount").toString()); - } - }); - - // 获取出最多行的配置列。 - if(!paramsConfigDataCountList.isEmpty()){ - Map paramsConfigDataMaxCountMap = paramsConfigDataCountList.get(0); - String key = (String) paramsConfigDataMaxCountMap.get("key"); - List paramsConfigDataEOs = paramsConfigDataMap.get(key); - for (ParamsConfigDataEO paramsConfigDataEO : paramsConfigDataEOs) { - ParamsCollectManifestEO paramsCollectManifestEOTemp = new ParamsCollectManifestEO(); - BeanUtils.copyProperties(collectManifestEO,paramsCollectManifestEOTemp); - exportDataList.add(paramsCollectManifestEOTemp); - } - } else { - exportDataList.add(collectManifestEO); - } - } - - Map isMustMap = ParamsIsMustEnum.toMapForExport(cut); - Map controlVerifyMap = ControlVerifyEnum.toMapForExport(cut); - Map controlTypeMap = ControlTypeEnum.toMapForExport(cut); - // 插入配置列和认证类别列数据 - List> result = new ArrayList<>(); + String unzipfilepath = zipEntryName; + Result message = importData(datas, unzipfilepath, cut, paramsManifestId); + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return message; + } catch (NullPointerException e) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + if (CutEnum.CN.getValue().equals(cut)) { + resultMsg = "读取失败,请严格按照模板文件导入数据"; + } else { + resultMsg = "The data fails to be read. Import data strictly according to the template file"; + } + return Result.error(1, resultMsg); + } catch (Exception e) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return Result.error(e.getMessage()); + } + } else { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + if (CutEnum.CN.getValue().equals(cut)) { + resultMsg = "没有可导入的数据,请检查!"; + } else { + resultMsg = "No data to import, please check"; + } + return Result.error(1, resultMsg); + } + } catch (NoSuchElementException e) { + FileUnZip.deleteDir(saveDirectory); + if (CutEnum.CN.getValue().equals(cut)) { + resultMsg = "没有可导入的数据,请检查!"; + } else { + resultMsg = "No data to import, please check"; + } + return Result.error(1, resultMsg); + } catch (JeroBootException e) { + FileUnZip.deleteDir(saveDirectory); + return Result.error(1, e.getMessage()); + } catch (Exception e) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + if (CutEnum.CN.getValue().equals(cut)) { + resultMsg = "读取失败,请严格按照模板文件导入数据"; + } else { + resultMsg = "The data fails to be read. Import data strictly according to the template file"; + } + return Result.error(1, resultMsg); + } + } catch (Exception e) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + if (CutEnum.CN.getValue().equals(cut)) { + resultMsg = "读取失败,请严格按照模板文件导入数据"; + } else { + resultMsg = "The data fails to be read. Import data strictly according to the template file"; + } + return Result.error(1, resultMsg); + } + } + + @Override + public Result importData(List> dataList, + String unzipfilepath, + String cut, + String paramsManifestId) throws IOException { + //验证导入数据是否符合规则 + Map map = validateImportDatas(dataList, unzipfilepath, cut, paramsManifestId); + boolean isOk = (boolean) map.get("result"); + if (!isOk) { + //验证没有通过 + String message = (String) map.get("message"); + return Result.error(message); + } + //将导入数据循环合并整理后 新增至相应表 + List configDataList = (List) map.get("configDataList"); + List> notImportNioNumberList = (List>) map.get("notImportNioNumberList"); + + for (ParamsConfigDataEO importDto : configDataList) { + //判断此行数据是否全部为空,是则不读取 + if (checkObjAllFieldsIsNull(importDto)) { + continue; + } + + // 如果id为空,不做处理 + if (StringUtils.isEmpty(importDto.getId())) { + continue; + } + + // 处理文件 + if (StringUtils.isNotBlank(importDto.getFileConnectId())) { // 判空,否则报空指针异常 + List nowFileList = FileUnZip.readFileByFilename(unzipfilepath, importDto.getFileConnectId(), null, null, null, null, null); + + FileInputStream input = new FileInputStream(nowFileList.get(0)); + MultipartFile multipartFile = + new MockMultipartFile(nowFileList.get(0).getName(), nowFileList.get(0).getName(), "text/plain", input); + //文件存入文件表 + OSSFile ossFile = ossFileService.uploadLocalOfCos(multipartFile, "", null, cut); + if (ObjectUtils.isNotEmpty(ossFile)) { + String connectId = UUID.randomUUID().toString().replace("-", ""); + OSSFile ossFileUpdate = new OSSFile(); + ossFileUpdate.setId(ossFile.getId()); + ossFileUpdate.setConnectId(connectId); + ossFileService.updateById(ossFileUpdate); + + importDto.setFileConnectId(connectId); + } + } + + // 处理下拉值 + if (StringUtils.isNotEmpty(importDto.getPullData())) { + String newPullData = importDto.getPullData().replaceAll("!", "!").replaceAll("!", ","); + importDto.setPullData(newPullData); + } + } + + // 批量新增参数项 + Boolean isSuccess = paramsConfigDataEOService.saveOrUpdateBatch(configDataList); + + String msg = ""; + if (isSuccess) { + if (CollectionUtil.isNotEmpty(notImportNioNumberList)) { + List msgList = getMsgOfIssueCollection(notImportNioNumberList, cut, "3"); + return Result.OK(null, msgList); + + } else { + int countSuccess = configDataList.size(); + if (CutEnum.CN.getValue().equals(cut)) { + msg = "成功导入" + countSuccess + "条"; + } else { + msg = "import " + countSuccess + " datas successfully"; + } + return Result.OK(msg, null); + } + } else { + if (CutEnum.CN.getValue().equals(cut)) { + msg = "导入失败"; + } else { + msg = "import failed"; + } + return Result.error(1, msg); + } + } + + @Override + public List updateBatchDutyTerritory(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) + || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId()) + || StringUtils.isEmpty(paramsCollectManifestVO.getDutyTerritory())) { + throw new JeroBootException("参数不能为空!"); + } + List paramsCollectManifestIdList = Arrays.asList(paramsCollectManifestVO.getIds().split(",")); + String dutyTerritory = paramsCollectManifestVO.getDutyTerritory(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String projectId = paramsCollectManifestVO.getProjectId(); + String cut = paramsCollectManifestVO.getCut(); + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + + // 查询参数清单 + ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); + // 查询清单的所有参数项 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(ParamsCollectManifestEO::getId, paramsCollectManifestIdList); + List paramsCollectManifestEOList = paramsCollectManifestEOMapper.selectList(queryWrapper); + + // 查询所有的责任领域 + List dutyTerritoryList = this.sysDictItemServiceImpl.selectItemsByDictCode("duty_territory"); + + List paramsCollectManifestLogEOList = new ArrayList<>(); + List updateEOList = new ArrayList<>(); + List> msgMapList = new ArrayList<>(); + paramsCollectManifestEOList.forEach(paramsCollectManifestEO -> { + if (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(paramsCollectManifestEO.getState()) + || CollectManifestStateEnum.SDT_BACK.getValue().equals(paramsCollectManifestEO.getState())) { + + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestEO.getId()); + updateEO.setDutyTerritory(dutyTerritory); + + // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 + ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectVersionId(), dutyTerritory); + if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { + String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); + if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 + SysUser sysUser = sysUserService.getById(sdtId); + if (ObjectUtil.isNotEmpty(sysUser)) { + updateEO.setSdt(sysUser.getUsername()); // 设置工程接口人 + } else { + updateEO.setSdt(""); // 设置工程接口人 + } + } else { + updateEO.setSdt(""); // 设置工程接口人 + } + } else { + updateEO.setSdt(""); // 设置工程接口人 + } + + updateEOList.add(updateEO); + + String oldDutyTerritoryNameCn = this.getDutyTerritoryNameByCode(dutyTerritoryList, paramsCollectManifestEO.getDutyTerritory(), CutEnum.CN.getValue()); + String newDutyTerritoryNameCn = this.getDutyTerritoryNameByCode(dutyTerritoryList, dutyTerritory, CutEnum.CN.getValue()); + String oldDutyTerritoryNameEn = this.getDutyTerritoryNameByCode(dutyTerritoryList, paramsCollectManifestEO.getDutyTerritory(), CutEnum.EN.getValue()); + String newDutyTerritoryNameEn = this.getDutyTerritoryNameByCode(dutyTerritoryList, dutyTerritory, CutEnum.EN.getValue()); + + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent("认证工程师\"" + currentUser.getUsername() + "\"将参数责任领域信息由\"" + oldDutyTerritoryNameCn + "\"修改为\"" + newDutyTerritoryNameCn + "\""); + paramsCollectManifestLogEO.setLogEnContent("The Homo Engineer \"" + currentUser.getUsername() + "\" changed the parameter responsibility field information from \"" + oldDutyTerritoryNameEn + "\" to " + "\"" + newDutyTerritoryNameEn + "\""); + paramsCollectManifestLogEO.setParamsManifestId(paramsManifestId); + paramsCollectManifestLogEO.setParamsCollectManifestId(paramsCollectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + + } else { + Map msgMap = new HashMap<>(); + msgMap.put("nioNumber", paramsCollectManifestEO.getNioNumber()); + msgMap.put("state", paramsCollectManifestEO.getState()); + msgMap.put("type", "2"); + msgMapList.add(msgMap); + } + }); + + // 修改责任领域及工程接口人 + updateBatchById(updateEOList); + + if (CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)) { + this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); + } + + // 返回不符合参数项的提示信息 + return getMsgOfIssueCollection(msgMapList, cut, "2"); + } + + /** + * 根据责任领域code,获取责任领域名称,包含中英文切换。 + * + * @param dutyTerritoryList + * @param dutyTerritoryCode + * @param cut + * @return + */ + public String getDutyTerritoryNameByCode(List dutyTerritoryList, String dutyTerritoryCode, String cut) { + String result = null; + if (CollectionUtils.isNotEmpty(dutyTerritoryList) && StringUtils.isNotEmpty(dutyTerritoryCode)) { + if (StringUtils.equals(cut, CutEnum.CN.getValue())) { + result = dutyTerritoryList.stream().filter(dutyTerritory -> { + boolean flag = false; + if (StringUtils.equals(dutyTerritory.getItemValue(), dutyTerritoryCode)) { + flag = true; + } + return flag; + }).map(SysDictItem::getItemText).collect(Collectors.joining(",")); + } else if (StringUtils.equals(cut, CutEnum.EN.getValue())) { + result = dutyTerritoryList.stream().filter(dutyTerritory -> { + boolean flag = false; + if (StringUtils.equals(dutyTerritory.getItemValue(), dutyTerritoryCode)) { + flag = true; + } + return flag; + }).map(SysDictItem::getEnName).collect(Collectors.joining(",")); + } + } + return result; + } + + private String[] getWorkbookTitleForExport(ParamsCollectManifestVO paramsCollectManifestVO) { + String cut = paramsCollectManifestVO.getCut(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + + List fieldList = onlCgformFieldService.getFieldList(ModuleEnum.PARAMS_COLLECT_MANIFEST.getValue()); + + List dbFieldNameList = new LinkedList<>(); + List dbFieldList = new LinkedList<>(); + + if (fieldList.size() != 0) { + //过滤列表字段(is_show_list-->列表是否显示0否 1是) + fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowList()))).collect(Collectors.toList()); + } + + // 固定列 + int indexOfDescription = 1; // 参数名称的位置 + for (int i = 0; i < fieldList.size(); i++) { + OnlCgformField onlCgformField = fieldList.get(i); + String dbFieldName = onlCgformField.getDbFieldName(); + if (!"deadline".equals(dbFieldName) && !"cert_category".equals(dbFieldName) && !"description".equals(dbFieldName)) { + dbFieldList.add(dbFieldName); + + if (CutEnum.CN.getValue().equals(cut)) { + dbFieldNameList.add(onlCgformField.getDbFieldTxt()); // 字段中文名 + } else { + dbFieldNameList.add(onlCgformField.getDbFieldEnName()); // 字段英文名 + } + if ("params_name".equals(dbFieldName)) { + indexOfDescription = i; + } + } + } + + // 认证类别列 + List dbFieldNameListCC = new LinkedList<>(); + List dbFieldListCC = new LinkedList<>(); + // 查询所有认证类别 + List sysDictItemList = sysDictItemService.selectItemsByDictCode("cert_category"); + if (CutEnum.EN.getValue().equals(cut)) { + sysDictItemList.forEach(sysDictItem -> { + dbFieldListCC.add(sysDictItem.getItemValue()); + dbFieldNameListCC.add(sysDictItem.getEnName() + " Number"); + }); + + } else { + sysDictItemList.forEach(sysDictItem -> { + dbFieldListCC.add(sysDictItem.getItemValue()); + dbFieldNameListCC.add(sysDictItem.getItemText() + "编号"); + }); + } + + // 配置列 + List dbFieldNameListConfig = new LinkedList<>(); + List dbFieldListConfig = new LinkedList<>(); + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); + for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { + dbFieldListConfig.add(paramsConfigEO.getId()); + dbFieldNameListConfig.add(paramsConfigEO.getConfigName()); + } + + // 插入认证类别列 + dbFieldList.addAll(indexOfDescription, dbFieldListCC); + dbFieldNameList.addAll(indexOfDescription, dbFieldNameListCC); + + // 插入配置列 + dbFieldList.addAll(dbFieldListConfig); + dbFieldNameList.addAll(dbFieldNameListConfig); + + String[] title = new String[2]; + String dbFieldStr = StringUtils.join(dbFieldList, ","); + String dbFieldNameStr = StringUtils.join(dbFieldNameList, ","); + + title[0] = dbFieldStr; + title[1] = dbFieldNameStr; + return title; + } + + private String[] getWorkbookTitleForExportDre(ParamsCollectManifestVO paramsCollectManifestVO) { + String cut = paramsCollectManifestVO.getCut(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); + + List fieldList = onlCgformFieldService.getFieldList(ModuleEnum.PARAMS_COLLECT_MANIFEST.getValue()); + + List dbFieldNameList = new LinkedList<>(); + List dbFieldList = new LinkedList<>(); + List dbFieldExampleList = new LinkedList<>(); + + // 固定列 + for (int i = 0; i < fieldList.size(); i++) { + OnlCgformField onlCgformField = fieldList.get(i); + String dbFieldName = onlCgformField.getDbFieldName(); + if ("references_col".equals(dbFieldName) && StringUtils.isEmpty(paramsManifestEO.getReferencesColName())) { + continue; + } + if ("nio_number".equals(dbFieldName) || "params_name".equals(dbFieldName) || "description".equals(dbFieldName) + || "control_type".equals(dbFieldName) || "control_verify".equals(dbFieldName) || "control_values".equals(dbFieldName) + || "is_must".equals(dbFieldName) || "references_col".equals(dbFieldName)) { + dbFieldList.add(dbFieldName); + + if (CutEnum.CN.getValue().equals(cut)) { + dbFieldNameList.add(onlCgformField.getDbFieldTxt()); // 字段中文名 + if ("nio_number".equals(dbFieldName)) { + dbFieldExampleList.add("例NIO.XXXX"); + } else if ("params_name".equals(dbFieldName) || "description".equals(dbFieldName)) { + dbFieldExampleList.add("XXXXX"); + + } else if ("control_verify".equals(dbFieldName)) { + dbFieldExampleList.add("数据来源于参数模版管理中控件校验数据"); + + } else if ("control_values".equals(dbFieldName)) { + dbFieldExampleList.add("数据来源于参数模版管理中控件备选值数据"); + + } else if ("is_must".equals(dbFieldName)) { + dbFieldExampleList.add("是/否"); + + } else { + dbFieldExampleList.add("下拉多选+文本"); + } + } else { + dbFieldNameList.add(onlCgformField.getDbFieldEnName()); // 字段英文名 + if ("nio_number".equals(dbFieldName)) { + dbFieldExampleList.add("Example:NIO.XXXX"); + } else if ("params_name".equals(dbFieldName) || "description".equals(dbFieldName)) { + dbFieldExampleList.add("XXXXX"); + + } else if ("control_verify".equals(dbFieldName)) { + dbFieldExampleList.add("The data comes from Validate Component in the parameter template management"); + + } else if ("control_values".equals(dbFieldName)) { + dbFieldExampleList.add("The data comes from Component Value in the parameter template management"); + + } else if ("is_must".equals(dbFieldName)) { + dbFieldExampleList.add("Yes/No"); + + } else { + dbFieldExampleList.add("Pull more+File"); + } + } + + + } + } + + // 配置列 + List dbFieldNameListConfig = new LinkedList<>(); + List dbFieldListConfig = new LinkedList<>(); + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); + for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { + if (ConfigLockEnum.NO.getValue().equals(paramsConfigEO.getIsLock())) { // 只导出未冻结的配置列 + dbFieldListConfig.add(paramsConfigEO.getId()); + dbFieldNameListConfig.add(paramsConfigEO.getConfigName()); + dbFieldExampleList.add("XX!XX!XX#XXXXX"); + } + } + + // 插入配置列 + dbFieldList.addAll(dbFieldListConfig); + dbFieldNameList.addAll(dbFieldNameListConfig); + + String[] title = new String[3]; + String dbFieldStr = StringUtils.join(dbFieldList, ","); + String dbFieldNameStr = StringUtils.join(dbFieldNameList, ","); + String dbFieldExampleStr = StringUtils.join(dbFieldExampleList, ","); + + title[0] = dbFieldStr; + title[1] = dbFieldNameStr; + title[2] = dbFieldExampleStr; + return title; + } + + private List> queryForExportAll(ParamsCollectManifestVO paramsCollectManifestVO) { + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String paramsTemplateId = paramsCollectManifestVO.getParamsTemplateId(); + Integer paramsTemplatePublishVersion = paramsCollectManifestVO.getParamsTemplatePublishVersion(); + String cut = paramsCollectManifestVO.getCut(); + + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + + ParamsCollectManifestEO queryEO = new ParamsCollectManifestEO(); + queryEO.setParamsManifestId(paramsManifestId); + + String userTypes = paramsCollectManifestVO.getUserTypes(); + if (userTypes != null && CollectManifestUserTypeEnum.SDT.getValue().equals(userTypes)) { + queryEO.setUserTypes(CollectManifestUserTypeEnum.SDT.getValue()); + queryEO.setSdt(loginUser.getUsername()); + } + + List> dataList = paramsCollectManifestEOMapper.listInfoForExport(queryEO, null); // 查询导出数据 + if (dataList == null || dataList.isEmpty()) { + // 没有查到数据,进行提示 + if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { + throw new JeroBootException("No data, unable to export"); + } else { + throw new JeroBootException("无数据,无法导出"); + } + } + + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询所有配置列 + + List paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); + List paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据 + + List nioNumberList = dataList.stream().map(m -> (String) m.get("nio_number")).collect(Collectors.toList()); + List certCategoryParamsInfoPublishEOList = certCategoryParamsInfoPublishEOService.queryListByVersionAndNio(paramsTemplateId, paramsTemplatePublishVersion, nioNumberList); //查询所有认证类别参数项 + + // 查询责任领域数据字典 + List sysDictItemList = sysDictItemService.selectItemsByDictCode("duty_territory"); + Map dutyTerritoryMap = new HashMap<>(); + if (CutEnum.EN.getValue().equals(cut)) { + dutyTerritoryMap = sysDictItemList.stream().collect(Collectors.toMap(c -> c.getItemValue(), c -> c.getEnName())); + } else { + dutyTerritoryMap = sysDictItemList.stream().collect(Collectors.toMap(c -> c.getItemValue(), c -> c.getItemText())); + } + // 状态 + Map stateMap = CollectManifestStateEnum.toMap(cut); + + // 插入配置列和认证类别列数据 + for (Map record1 : dataList) { + + String paramsCollectManifestId = (String) record1.get("id"); + String nioNumber = (String) record1.get("nio_number"); + String dutyTerritory = (String) record1.get("duty_territory"); + String state = (String) record1.get("state"); + + String control_type = record1.get("control_type").toString(); + //references_col -> #a# # + if (!Objects.isNull(record1.get("references_col"))) { + String references_col = record1.get("references_col").toString(); + if (StringUtils.isNotEmpty(references_col)) { + String[] references_colArr = references_col.split("#"); + if (StringUtils.equals(control_type, ControlTypeEnum.FILE.getValue())) { + String fileId = references_colArr[2]; + List fileInfos = this.ossFileService.getFileInfos(fileId); + String fileName = fileInfos.stream().map(OSSFile::getFileName).collect(Collectors.joining(",")); + references_col = "#" + references_colArr[0] + "#" + references_colArr[1] + "#" + fileName; + } else if (StringUtils.equals(control_type, ControlTypeEnum.TEXT_FILE.getValue()) + || StringUtils.equals(control_type, ControlTypeEnum.PULL_SINGLE_FILE.getValue()) + || StringUtils.equals(control_type, ControlTypeEnum.PULL_MORE_FILE.getValue())) { + String fileId = references_colArr[2]; + List fileInfos = this.ossFileService.getFileInfos(fileId); + String fileName = fileInfos.stream().map(OSSFile::getFileName).collect(Collectors.joining(",")); + references_col = "#" + references_colArr[0] + "#" + references_colArr[1] + "#" + fileName; + } else if (StringUtils.equals(control_type, ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue())) { + String fileId = references_colArr[2]; + List fileInfos = this.ossFileService.getFileInfos(fileId); + String fileName = fileInfos.stream().map(OSSFile::getFileName).collect(Collectors.joining(",")); + references_col = "#" + references_colArr[0] + "#" + references_colArr[1] + "#" + fileName; + } + + StringBuilder references_colSb = new StringBuilder(); + for (String col : references_col.split("#")) { + if (StringUtils.isNotEmpty(col) && !StringUtils.equals(col, " ")) { + references_colSb.append(col).append("#"); + } + } + + if (StringUtils.isNotEmpty(references_colSb)) { + references_col = references_colSb.substring(0, references_colSb.length() - 1); + } else { + references_col = references_colSb.toString(); + } + + record1.put("references_col", references_col); + } + } + + // 处理负责领域 + record1.put("duty_territory", dutyTerritoryMap.get(dutyTerritory)); + + // 处理状态 + record1.put("state", stateMap.get(state)); + + // 认证类别列 + List certCategoryParamsInfoPublishEOS = certCategoryParamsInfoPublishEOList.stream().filter(e -> nioNumber.equals(e.getNioNumber())).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(certCategoryParamsInfoPublishEOS)) { + certCategoryParamsInfoPublishEOS.forEach(certCategoryParamsInfoPublishEO -> { + record1.put(certCategoryParamsInfoPublishEO.getCertCategory(), certCategoryParamsInfoPublishEO.getParamsNumber()); + }); + } + + // 配置列 + if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { + List fileList = new ArrayList<>(); + + paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置 + + String paramsConfigId = paramsConfigEO.getId(); + List paramsConfigDataEOS = paramsConfigDataEOList.stream().filter(e -> paramsConfigId.equals(e.getParamsConfigId()) && paramsCollectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList()); // 参数配置数据 + StringBuilder configDataBuilder = new StringBuilder(); // 重新组合配置数据 + if (CollectionUtil.isNotEmpty(paramsConfigDataEOS)) { + ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOS.get(0); + if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + configDataBuilder.append(paramsConfigDataEO.getTextData()).append("#"); + } + if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataBuilder.append(paramsConfigDataEO.getPullData()).append("#"); + } + if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); + if (CollectionUtil.isNotEmpty(ossFileList)) { + configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()).append("#"); + + fileList.addAll(ossFileList); + } + } + + } + + String configData = configDataBuilder.toString(); + if (configData.contains("#")) { + configData = configData.substring(0, configData.lastIndexOf("#")); + } + + record1.put(paramsConfigEO.getId(), configData); + }); + + record1.put("fileList", fileList); + } + } + return dataList; + } + + // 导出待填写数据,可以勾选导出 + private List> queryForExportDre(ParamsCollectManifestVO paramsCollectManifestVO, HttpServletRequest req) { + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + String cut = paramsCollectManifestVO.getCut(); + List idList = new ArrayList<>(); + if (StringUtils.isNotBlank(paramsCollectManifestVO.getIds())) { + idList = Arrays.asList(paramsCollectManifestVO.getIds().split(",")); + } + List stateList = new ArrayList() {{ + add(CollectManifestStateEnum.WAIT_FILL.getValue()); + add(CollectManifestStateEnum.CERT_BACK.getValue()); + }}; + + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId); + + ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); + BeanUtils.copyProperties(paramsCollectManifestVO, paramsCollectManifestEO); + paramsCollectManifestEO.setParamsManifestId(null); + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(paramsCollectManifestEO, req.getParameterMap()); + queryWrapper.lambda().eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId) + .eq(ParamsCollectManifestEO::getDre, loginUser.getUsername()) + .in(ParamsCollectManifestEO::getState, stateList) + .notIn(ParamsCollectManifestEO::getControlType, ControlTypeEnum.Title.getValue()) + .orderByDesc(ParamsCollectManifestEO::getDelFlag) + .orderByDesc(ParamsCollectManifestEO::getAddFlag) + .orderByDesc(ParamsCollectManifestEO::getChangeFlag) + .orderByAsc(ParamsCollectManifestEO::getNioNumber) + .in(CollectionUtil.isNotEmpty(idList), ParamsCollectManifestEO::getId, idList); + + List dataList = list(queryWrapper); // 查询导出数据 + if (dataList == null || dataList.isEmpty()) { + // 没有查到数据,进行提示 + if (CutEnum.EN.getValue().equals(paramsCollectManifestVO.getCut())) { + throw new JeroBootException("No data, unable to export"); + } else { + throw new JeroBootException("无数据,无法导出"); + } + } + + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询所有配置列 + + List paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); + List paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据 + + List exportDataList = new ArrayList<>(); + // 配置列多行数据处理 + for (ParamsCollectManifestEO collectManifestEO : dataList) { + String id = collectManifestEO.getId(); + + Map> paramsConfigDataMap = paramsConfigDataEOList.stream().filter(configDataEO -> { + boolean flag = false; + if (StringUtils.equals(configDataEO.getParamsCollectManifestId(), id)) { + flag = true; + } + return flag; + }).collect(Collectors.groupingBy(configDataEO -> configDataEO.getParamsConfigId())); + + List> paramsConfigDataCountList = new ArrayList<>(); + + for (Map.Entry> map : paramsConfigDataMap.entrySet()) { + Map paramsConfigDataCountMap = new HashMap<>(); + paramsConfigDataCountMap.put("key", map.getKey()); + paramsConfigDataCountMap.put("paramsConfigDataCount", map.getValue().size()); + paramsConfigDataCountMap.put("value", map.getValue()); + paramsConfigDataCountList.add(paramsConfigDataCountMap); + } + + // 排序 配置数据总数倒序排序 + Collections.sort(paramsConfigDataCountList, new Comparator>() { + @Override + public int compare(Map o1, Map o2) { + return o2.get("paramsConfigDataCount").toString().compareTo(o1.get("paramsConfigDataCount").toString()); + } + }); + + // 获取出最多行的配置列。 + if (!paramsConfigDataCountList.isEmpty()) { + Map paramsConfigDataMaxCountMap = paramsConfigDataCountList.get(0); + String key = (String) paramsConfigDataMaxCountMap.get("key"); + List paramsConfigDataEOs = paramsConfigDataMap.get(key); + for (ParamsConfigDataEO paramsConfigDataEO : paramsConfigDataEOs) { + ParamsCollectManifestEO paramsCollectManifestEOTemp = new ParamsCollectManifestEO(); + BeanUtils.copyProperties(collectManifestEO, paramsCollectManifestEOTemp); + exportDataList.add(paramsCollectManifestEOTemp); + } + } else { + exportDataList.add(collectManifestEO); + } + } + + Map isMustMap = ParamsIsMustEnum.toMapForExport(cut); + Map controlVerifyMap = ControlVerifyEnum.toMapForExport(cut); + Map controlTypeMap = ControlTypeEnum.toMapForExport(cut); + // 插入配置列和认证类别列数据 + List> result = new ArrayList<>(); /*for (ParamsCollectManifestEO collectManifestEO: exportDataList) { Map record1 = objectToMapDre(collectManifestEO); String controlType = (String) record1.get("control_type"); @@ -4684,610 +4691,612 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl record1 = objectToMapDre(collectManifestEO); - String controlType = (String) record1.get("control_type"); - String controlVerify = (String) record1.get("control_verify"); - String isMust = (String) record1.get("is_must"); - String paramsCollectManifestId = (String) record1.get("id"); - String nioNumber = (String) record1.get("nio_number"); + for (ParamsCollectManifestEO collectManifestEO : exportDataList) { + Map record1 = objectToMapDre(collectManifestEO); + String controlType = (String) record1.get("control_type"); + String controlVerify = (String) record1.get("control_verify"); + String isMust = (String) record1.get("is_must"); + String paramsCollectManifestId = (String) record1.get("id"); + String nioNumber = (String) record1.get("nio_number"); - record1.put("is_must", isMustMap.get(isMust)); - record1.put("control_type", controlTypeMap.get(controlType)); - record1.put("control_verify", controlVerifyMap.get(controlVerify)); + record1.put("is_must", isMustMap.get(isMust)); + record1.put("control_type", controlTypeMap.get(controlType)); + record1.put("control_verify", controlVerifyMap.get(controlVerify)); - // 处理参考列,没引用过则不显示该列 - if (StringUtils.isNotEmpty(paramsManifestEO.getReferencesColName()) && StringUtils.isNotEmpty(collectManifestEO.getReferencesCol())) { - List referencesColList = Arrays.asList(collectManifestEO.getReferencesCol().split("#")); - StringBuilder referencesColBuilder = new StringBuilder(); - if (!" ".equals(referencesColList.get(0))) { - referencesColBuilder.append(referencesColList.get(0)).append("#"); - } - if (!" ".equals(referencesColList.get(1))) { - referencesColBuilder.append(referencesColList.get(1).replaceAll(",", "!")).append("#"); - } - if (!" ".equals(referencesColList.get(2))) { - List ossFileList = ossFileService.getFileInfosByConnectId(referencesColList.get(2)); - if (CollectionUtil.isNotEmpty(ossFileList)) { - referencesColBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()).append("#"); - } - } + // 处理参考列,没引用过则不显示该列 + if (StringUtils.isNotEmpty(paramsManifestEO.getReferencesColName()) && StringUtils.isNotEmpty(collectManifestEO.getReferencesCol())) { + List referencesColList = Arrays.asList(collectManifestEO.getReferencesCol().split("#")); + StringBuilder referencesColBuilder = new StringBuilder(); + if (!" ".equals(referencesColList.get(0))) { + referencesColBuilder.append(referencesColList.get(0)).append("#"); + } + if (!" ".equals(referencesColList.get(1))) { + referencesColBuilder.append(referencesColList.get(1).replaceAll(",", "!")).append("#"); + } + if (!" ".equals(referencesColList.get(2))) { + List ossFileList = ossFileService.getFileInfosByConnectId(referencesColList.get(2)); + if (CollectionUtil.isNotEmpty(ossFileList)) { + referencesColBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()).append("#"); + } + } - String referencesCol = referencesColBuilder.toString(); - if (referencesCol.endsWith("#")) { - referencesCol = referencesCol.substring(0, referencesCol.lastIndexOf("#")); - } - record1.put("references_col", referencesCol); + String referencesCol = referencesColBuilder.toString(); + if (referencesCol.endsWith("#")) { + referencesCol = referencesCol.substring(0, referencesCol.lastIndexOf("#")); + } + record1.put("references_col", referencesCol); - } else { - record1.remove("references_col"); - } - // 配置列 - if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { - List fileList = new ArrayList<>(); + } else { + record1.remove("references_col"); + } + // 配置列 + if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { + List fileList = new ArrayList<>(); - paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置 + paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置 - String paramsConfigId = paramsConfigEO.getId(); - // 参数配置数据 - List paramsConfigDataEOS = paramsConfigDataEOList.stream().filter(e-> { - boolean flag = false; - // && StringUtils.equals(e.getId(),paramsConfigDataId) - if(paramsConfigId.equals(e.getParamsConfigId()) && paramsCollectManifestId.equals(e.getParamsCollectManifestId())){ - flag = true; - } - return flag; - }).collect(Collectors.toList()); - StringBuilder configDataBuilder = new StringBuilder(); // 重新组合配置数据 - if (CollectionUtil.isNotEmpty(paramsConfigDataEOS)) { - ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOS.get(0); + String paramsConfigId = paramsConfigEO.getId(); + // 参数配置数据 + List paramsConfigDataEOS = paramsConfigDataEOList.stream().filter(e -> { + boolean flag = false; + // && StringUtils.equals(e.getId(),paramsConfigDataId) + if (paramsConfigId.equals(e.getParamsConfigId()) && paramsCollectManifestId.equals(e.getParamsCollectManifestId())) { + flag = true; + } + return flag; + }).collect(Collectors.toList()); + StringBuilder configDataBuilder = new StringBuilder(); // 重新组合配置数据 + if (CollectionUtil.isNotEmpty(paramsConfigDataEOS)) { + ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOS.get(0); - if (ControlTypeEnum.TEXT.getValue().equals(controlType)) { - if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - configDataBuilder.append(paramsConfigDataEO.getTextData()); - } + if (ControlTypeEnum.TEXT.getValue().equals(controlType)) { + if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + configDataBuilder.append(paramsConfigDataEO.getTextData()); + } - } else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType) - || ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) { - if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - configDataBuilder.append(paramsConfigDataEO.getPullData().replaceAll(",", "!")); - } + } else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType) + || ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) { + if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataBuilder.append(paramsConfigDataEO.getPullData().replaceAll(",", "!")); + } - } else if (ControlTypeEnum.FILE.getValue().equals(controlType)) { - if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); - if (CollectionUtil.isNotEmpty(ossFileList)) { - configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()); + } else if (ControlTypeEnum.FILE.getValue().equals(controlType)) { + if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); + if (CollectionUtil.isNotEmpty(ossFileList)) { + configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()); - fileList.addAll(ossFileList); - } + fileList.addAll(ossFileList); + } - } + } - } else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType) - || ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { + } else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType) + || ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { - if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - configDataBuilder.append(paramsConfigDataEO.getTextData()); - } + if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + configDataBuilder.append(paramsConfigDataEO.getTextData()); + } - configDataBuilder.append("#"); + configDataBuilder.append("#"); - if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - configDataBuilder.append(paramsConfigDataEO.getPullData().replaceAll(",", "!")); - } + if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataBuilder.append(paramsConfigDataEO.getPullData().replaceAll(",", "!")); + } - } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { - if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - configDataBuilder.append(paramsConfigDataEO.getTextData()); - } + } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { + if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + configDataBuilder.append(paramsConfigDataEO.getTextData()); + } - configDataBuilder.append("#"); - if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); - if (CollectionUtil.isNotEmpty(ossFileList)) { - configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()); + configDataBuilder.append("#"); + if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); + if (CollectionUtil.isNotEmpty(ossFileList)) { + configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()); - fileList.addAll(ossFileList); - } + fileList.addAll(ossFileList); + } - } + } - } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType) - || ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { - if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - configDataBuilder.append(paramsConfigDataEO.getPullData().replaceAll(",", "!")); - } + } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType) + || ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { + if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataBuilder.append(paramsConfigDataEO.getPullData().replaceAll(",", "!")); + } - configDataBuilder.append("#"); - if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); - if (CollectionUtil.isNotEmpty(ossFileList)) { - configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()); + configDataBuilder.append("#"); + if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); + if (CollectionUtil.isNotEmpty(ossFileList)) { + configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()); - fileList.addAll(ossFileList); - } + fileList.addAll(ossFileList); + } - } + } - } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { - if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { - configDataBuilder.append(paramsConfigDataEO.getTextData()); - } - configDataBuilder.append("#"); - if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { - configDataBuilder.append(paramsConfigDataEO.getPullData().replaceAll(",", "!")); - } - configDataBuilder.append("#"); - if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { - List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); - if (CollectionUtil.isNotEmpty(ossFileList)) { - configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()); + } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { + if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + configDataBuilder.append(paramsConfigDataEO.getTextData()); + } + configDataBuilder.append("#"); + if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataBuilder.append(paramsConfigDataEO.getPullData().replaceAll(",", "!")); + } + configDataBuilder.append("#"); + if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); + if (CollectionUtil.isNotEmpty(ossFileList)) { + configDataBuilder.append(nioNumber).append("/").append(ossFileList.get(0).getFileName()); - fileList.addAll(ossFileList); - } + fileList.addAll(ossFileList); + } - } + } - } - paramsConfigDataEOList.remove(paramsConfigDataEO); - } + } + paramsConfigDataEOList.remove(paramsConfigDataEO); + } - String configData = configDataBuilder.toString(); - if (StringUtils.isNotEmpty(configData) && "".equals(configData.replace("#", ""))) { - configData = configData.replace("#", ""); - } + String configData = configDataBuilder.toString(); + if (StringUtils.isNotEmpty(configData) && "".equals(configData.replace("#", ""))) { + configData = configData.replace("#", ""); + } - record1.put(paramsConfigEO.getId(), configData); - }); + record1.put(paramsConfigEO.getId(), configData); + }); - record1.put("fileList", fileList); - } + record1.put("fileList", fileList); + } - result.add(record1); - } - return result; - } + result.add(record1); + } + return result; + } - private void downLoadFileList(List fileTemplateList,Map fileNowPathMap) { - for(OSSFile fileExportDto : fileTemplateList){ - String fileNowPath = fileNowPathMap.get(fileExportDto.getId()); - File nowFile = new File(fileNowPath); - if (nowFile.exists()){ - nowFile.delete(); - } - nowFile.mkdirs(); + private void downLoadFileList(List fileTemplateList, Map fileNowPathMap) { + for (OSSFile fileExportDto : fileTemplateList) { + String fileNowPath = fileNowPathMap.get(fileExportDto.getId()); + File nowFile = new File(fileNowPath); + if (nowFile.exists()) { + nowFile.delete(); + } + nowFile.mkdirs(); - String oldPath = fileExportDto.getUrl(); - String newPath = fileNowPath + File.separator + fileExportDto.getFileName(); - if (CosBootUtil.doesObjectExist(oldPath)){ - try (InputStream in = CosBootUtil.download(oldPath);) { - copyFile(in, newPath); - } catch (IOException e) { - e.printStackTrace(); - log.error(e.getMessage(), e); - } - } - } - } + String oldPath = fileExportDto.getUrl(); + String newPath = fileNowPath + File.separator + fileExportDto.getFileName(); + if (CosBootUtil.doesObjectExist(oldPath)) { + try (InputStream in = CosBootUtil.download(oldPath);) { + copyFile(in, newPath); + } catch (IOException e) { + e.printStackTrace(); + log.error(e.getMessage(), e); + } + } + } + } - private void copyFile(InputStream in, String destPath) throws IOException { - BufferedInputStream bis = new BufferedInputStream(in); - BufferedOutputStream bos = - new BufferedOutputStream(Files.newOutputStream(Paths.get(destPath), - StandardOpenOption.CREATE, - StandardOpenOption.TRUNCATE_EXISTING, - StandardOpenOption.WRITE)); - // 打开输入流 + private void copyFile(InputStream in, String destPath) throws IOException { + BufferedInputStream bis = new BufferedInputStream(in); + BufferedOutputStream bos = + new BufferedOutputStream(Files.newOutputStream(Paths.get(destPath), + StandardOpenOption.CREATE, + StandardOpenOption.TRUNCATE_EXISTING, + StandardOpenOption.WRITE)); + // 打开输入流 // FileInputStream fis = new FileInputStream(srcPath); - // 打开输出流 + // 打开输出流 // FileOutputStream fos = new FileOutputStream(destPath); - // 读取和写入信息 - byte[] bytes = new byte[1024 * 1024]; - int len; - while ((len = bis.read(bytes)) > 0) { - bos.write(bytes, 0, len); - } - // 关闭流 先开后关 后开先关 - bos.close(); // 后开先关 - bis.close(); // 先开后关 - } + // 读取和写入信息 + byte[] bytes = new byte[1024 * 1024]; + int len; + while ((len = bis.read(bytes)) > 0) { + bos.write(bytes, 0, len); + } + // 关闭流 先开后关 后开先关 + bos.close(); // 后开先关 + bis.close(); // 先开后关 + } - /** - * 获取一个类和其父类的所有属性 - * - * @param clazz - * @return - */ - private List findAllFieldsOfSelfAndSuperClass(Class clazz) { - Field[] fields = null; - List fieldList = Lists.newArrayList(); - while (true) { - if (clazz == null) { - break; - } else { - fields = clazz.getDeclaredFields(); - for (int i = 0; i < fields.length; i++) { - fieldList.add(fields[i]); - } - clazz = clazz.getSuperclass(); - } - } - return fieldList; - } + /** + * 获取一个类和其父类的所有属性 + * + * @param clazz + * @return + */ + private List findAllFieldsOfSelfAndSuperClass(Class clazz) { + Field[] fields = null; + List fieldList = Lists.newArrayList(); + while (true) { + if (clazz == null) { + break; + } else { + fields = clazz.getDeclaredFields(); + for (int i = 0; i < fields.length; i++) { + fieldList.add(fields[i]); + } + clazz = clazz.getSuperclass(); + } + } + return fieldList; + } - /** - * 将对象转Map - * @param obj 待转对象 - * @return - */ - private Map objectToMap(Object obj) { + /** + * 将对象转Map + * + * @param obj 待转对象 + * @return + */ + private Map objectToMap(Object obj) { - Map map = new HashMap<>(); - // 获取f对象对应类中的所有属性域 - List list = findAllFieldsOfSelfAndSuperClass(obj.getClass()); - for (Field field : list) { + Map map = new HashMap<>(); + // 获取f对象对应类中的所有属性域 + List list = findAllFieldsOfSelfAndSuperClass(obj.getClass()); + for (Field field : list) { - String varName = field.getName(); - try { - // 获取原来的访问控制权限 - boolean accessFlag = field.isAccessible(); - // 修改访问控制权限 - field.setAccessible(true); - // 获取在对象f中属性fields[i]对应的对象中的变量 - Object o = field.get(obj); - if (o != null) { - if (Date.class.equals(field.getType())) { - Date date = (Date) o; - String pattern = ""; - if ("deadline".equals(varName) || "reportTime".equals(varName)) { - pattern = "yyyy-MM-dd"; - } else { - pattern = "yyyy-MM-dd HH:mm:ss"; - } - SimpleDateFormat formatter=new SimpleDateFormat(pattern); - String time=formatter.format(date); - map.put(varName, time); - } else { - map.put(varName, o); - } - } - // 恢复访问控制权限 - field.setAccessible(accessFlag); - } catch (IllegalArgumentException ex) { - ex.printStackTrace(); - } catch (IllegalAccessException ex) { - ex.printStackTrace(); - } - } - return map; + String varName = field.getName(); + try { + // 获取原来的访问控制权限 + boolean accessFlag = field.isAccessible(); + // 修改访问控制权限 + field.setAccessible(true); + // 获取在对象f中属性fields[i]对应的对象中的变量 + Object o = field.get(obj); + if (o != null) { + if (Date.class.equals(field.getType())) { + Date date = (Date) o; + String pattern = ""; + if ("deadline".equals(varName) || "reportTime".equals(varName)) { + pattern = "yyyy-MM-dd"; + } else { + pattern = "yyyy-MM-dd HH:mm:ss"; + } + SimpleDateFormat formatter = new SimpleDateFormat(pattern); + String time = formatter.format(date); + map.put(varName, time); + } else { + map.put(varName, o); + } + } + // 恢复访问控制权限 + field.setAccessible(accessFlag); + } catch (IllegalArgumentException ex) { + ex.printStackTrace(); + } catch (IllegalAccessException ex) { + ex.printStackTrace(); + } + } + return map; - } + } - /** - * 将对象转Map - * @param obj 待转对象 - * @return - */ - private Map objectToMapDre(Object obj) { + /** + * 将对象转Map + * + * @param obj 待转对象 + * @return + */ + private Map objectToMapDre(Object obj) { - Map map = new HashMap<>(); - // 获取f对象对应类中的所有属性域 - List list = findAllFieldsOfSelfAndSuperClass(obj.getClass()); - for (Field field : list) { + Map map = new HashMap<>(); + // 获取f对象对应类中的所有属性域 + List list = findAllFieldsOfSelfAndSuperClass(obj.getClass()); + for (Field field : list) { - String varName = field.getName(); - try { - // 获取原来的访问控制权限 - boolean accessFlag = field.isAccessible(); - // 修改访问控制权限 - field.setAccessible(true); - // 获取在对象f中属性fields[i]对应的对象中的变量 - Object o = field.get(obj); - if (o != null) { - if (Date.class.equals(field.getType())) { - Date date = (Date) o; - String pattern = ""; - if ("deadline".equals(varName) || "reportTime".equals(varName)) { - pattern = "yyyy-MM-dd"; - } else { - pattern = "yyyy-MM-dd HH:mm:ss"; - } - SimpleDateFormat formatter=new SimpleDateFormat(pattern); - String time=formatter.format(date); - map.put(toUnderlineCase(varName), time); - } else { - map.put(toUnderlineCase(varName), o); - } - } - // 恢复访问控制权限 - field.setAccessible(accessFlag); - } catch (IllegalArgumentException ex) { - ex.printStackTrace(); - } catch (IllegalAccessException ex) { - ex.printStackTrace(); - } - } - return map; + String varName = field.getName(); + try { + // 获取原来的访问控制权限 + boolean accessFlag = field.isAccessible(); + // 修改访问控制权限 + field.setAccessible(true); + // 获取在对象f中属性fields[i]对应的对象中的变量 + Object o = field.get(obj); + if (o != null) { + if (Date.class.equals(field.getType())) { + Date date = (Date) o; + String pattern = ""; + if ("deadline".equals(varName) || "reportTime".equals(varName)) { + pattern = "yyyy-MM-dd"; + } else { + pattern = "yyyy-MM-dd HH:mm:ss"; + } + SimpleDateFormat formatter = new SimpleDateFormat(pattern); + String time = formatter.format(date); + map.put(toUnderlineCase(varName), time); + } else { + map.put(toUnderlineCase(varName), o); + } + } + // 恢复访问控制权限 + field.setAccessible(accessFlag); + } catch (IllegalArgumentException ex) { + ex.printStackTrace(); + } catch (IllegalAccessException ex) { + ex.printStackTrace(); + } + } + return map; - } + } - /** - * 驼峰转 转 下划线 - * userName ----> user_name - * user_name ----> user_name - * - * @param camelCaseStr 驼峰字符串 - * @return 带下滑线的String - */ - private String toUnderlineCase(String camelCaseStr) { - if (camelCaseStr == null) { - return null; - } - // 将驼峰字符串转换成数组 - char[] charArray = camelCaseStr.toCharArray(); - StringBuffer buffer = new StringBuffer(); - //处理字符串 - for (int i = 0, l = charArray.length; i < l; i++) { - if (charArray[i] >= 65 && charArray[i] <= 90) { - buffer.append("_").append(charArray[i] += 32); - } else { - buffer.append(charArray[i]); - } - } - return buffer.toString(); - } + /** + * 驼峰转 转 下划线 + * userName ----> user_name + * user_name ----> user_name + * + * @param camelCaseStr 驼峰字符串 + * @return 带下滑线的String + */ + private String toUnderlineCase(String camelCaseStr) { + if (camelCaseStr == null) { + return null; + } + // 将驼峰字符串转换成数组 + char[] charArray = camelCaseStr.toCharArray(); + StringBuffer buffer = new StringBuffer(); + //处理字符串 + for (int i = 0, l = charArray.length; i < l; i++) { + if (charArray[i] >= 65 && charArray[i] <= 90) { + buffer.append("_").append(charArray[i] += 32); + } else { + buffer.append(charArray[i]); + } + } + return buffer.toString(); + } - /** - * 通过实体类获取 URL Params - * - * @param clazz 实体类 - * @return URL Params - */ - private String parseUrlParams(Object clazz) { - // 遍历属性类、属性值 - List list = findAllFieldsOfSelfAndSuperClass(clazz.getClass()); + /** + * 通过实体类获取 URL Params + * + * @param clazz 实体类 + * @return URL Params + */ + private String parseUrlParams(Object clazz) { + // 遍历属性类、属性值 + List list = findAllFieldsOfSelfAndSuperClass(clazz.getClass()); - StringBuilder requestURL = new StringBuilder(); - try { + StringBuilder requestURL = new StringBuilder(); + try { - boolean flag = true; - String property, value, params; - for (Field field : list) { - // 允许访问私有变量 - field.setAccessible(true); - // 过滤静态属性 - if (Modifier.isStatic(field.getModifiers())) { - continue; - } - // 属性名 - property = field.getName(); - // 属性值 - if (field.get(clazz) != null) { - if (Date.class.equals(field.getType())) { - Date date = (Date) field.get(clazz); - String pattern = ""; - pattern = "yyyy-MM-dd HH:mm:ss"; - SimpleDateFormat formatter=new SimpleDateFormat(pattern); - String time=formatter.format(date); - value = time; - } else { - value = field.get(clazz).toString(); - } - params = property + "=" + value; - } else { - params = property + "="; - } - if (flag) { - requestURL.append("?").append(params); - flag = false; - } else { - requestURL.append("&").append(params); - } - } - } catch (Exception e) { - log.error("通过实体类获取URL出现异常:" + e.getMessage(), e); - } - return UriEncoder.encode(requestURL.toString()); - } + boolean flag = true; + String property, value, params; + for (Field field : list) { + // 允许访问私有变量 + field.setAccessible(true); + // 过滤静态属性 + if (Modifier.isStatic(field.getModifiers())) { + continue; + } + // 属性名 + property = field.getName(); + // 属性值 + if (field.get(clazz) != null) { + if (Date.class.equals(field.getType())) { + Date date = (Date) field.get(clazz); + String pattern = ""; + pattern = "yyyy-MM-dd HH:mm:ss"; + SimpleDateFormat formatter = new SimpleDateFormat(pattern); + String time = formatter.format(date); + value = time; + } else { + value = field.get(clazz).toString(); + } + params = property + "=" + value; + } else { + params = property + "="; + } + if (flag) { + requestURL.append("?").append(params); + flag = false; + } else { + requestURL.append("&").append(params); + } + } + } catch (Exception e) { + log.error("通过实体类获取URL出现异常:" + e.getMessage(), e); + } + return UriEncoder.encode(requestURL.toString()); + } - private List> read(File file, List dbfieldList, String[] titles, String cut) throws Exception { + private List> read(File file, List dbfieldList, String[] titles, String cut) throws Exception { - //最终返回数据 - List> list = new ArrayList<>(); + //最终返回数据 + List> list = new ArrayList<>(); - Workbook workbook = null; - InputStream is = new FileInputStream(file); - String name = file.getName().toLowerCase(); - // 创建excel操作对象 - if (name.contains(".xlsx")) { - workbook = WorkbookFactory.create(is); - } else { - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - //得到一个工作表 - Sheet sheet = workbook.getSheetAt(0); + Workbook workbook = null; + InputStream is = new FileInputStream(file); + String name = file.getName().toLowerCase(); + // 创建excel操作对象 + if (name.contains(".xlsx")) { + workbook = WorkbookFactory.create(is); + } else { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + //得到一个工作表 + Sheet sheet = workbook.getSheetAt(0); - //获得数据的总行数 - int totalRowNum = sheet.getLastRowNum(); + //获得数据的总行数 + int totalRowNum = sheet.getLastRowNum(); - //获得总列数 - int cellLength = sheet.getRow(0).getPhysicalNumberOfCells(); - // 验证模板表头是否正确 - Row rowTitle = sheet.getRow(0); - for (int i = 0; i < cellLength; i++) { - if (rowTitle != null) { - Cell cell = rowTitle.getCell(i); - if(ObjectUtil.isNotNull(cell)){ - //设置单元格类型 - cell.setCellType(CellType.STRING); - String cellValue = cell.getStringCellValue().substring(cell.getStringCellValue().indexOf("*")+1); - if(!cellValue.equals(titles[i])){ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - } else{ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - }else{ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - } - Row rowDescription= sheet.getRow(1); - if (rowDescription != null) { - Cell cell = rowDescription.getCell(0); - if(ObjectUtil.isNotNull(cell)){ - //设置单元格类型 - cell.setCellType(CellType.STRING); - String cellValue = cell.getStringCellValue(); - if(!cellValue.startsWith("填写说明") && !cellValue.startsWith("Filling explanation")){ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - } else{ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - }else{ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - Row rowExample= sheet.getRow(2); - if (rowExample != null) { - Cell cell = rowExample.getCell(0); - if(ObjectUtil.isNotNull(cell)){ - //设置单元格类型 - cell.setCellType(CellType.STRING); - String cellValue = cell.getStringCellValue(); - if(!cellValue.startsWith("例") && !cellValue.startsWith("Example")){ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - } else{ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } - }else{ - if(CutEnum.CN.getValue().equals(cut)){ - throw new JeroBootException("请导入正确模板!"); - } else { - throw new JeroBootException("Please import the correct template"); - } - } + //获得总列数 + int cellLength = sheet.getRow(0).getPhysicalNumberOfCells(); + // 验证模板表头是否正确 + Row rowTitle = sheet.getRow(0); + for (int i = 0; i < cellLength; i++) { + if (rowTitle != null) { + Cell cell = rowTitle.getCell(i); + if (ObjectUtil.isNotNull(cell)) { + //设置单元格类型 + cell.setCellType(CellType.STRING); + String cellValue = cell.getStringCellValue().substring(cell.getStringCellValue().indexOf("*") + 1); + if (!cellValue.equals(titles[i])) { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + } else { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + } else { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + } + Row rowDescription = sheet.getRow(1); + if (rowDescription != null) { + Cell cell = rowDescription.getCell(0); + if (ObjectUtil.isNotNull(cell)) { + //设置单元格类型 + cell.setCellType(CellType.STRING); + String cellValue = cell.getStringCellValue(); + if (!cellValue.startsWith("填写说明") && !cellValue.startsWith("Filling explanation")) { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + } else { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + } else { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + Row rowExample = sheet.getRow(2); + if (rowExample != null) { + Cell cell = rowExample.getCell(0); + if (ObjectUtil.isNotNull(cell)) { + //设置单元格类型 + cell.setCellType(CellType.STRING); + String cellValue = cell.getStringCellValue(); + if (!cellValue.startsWith("例") && !cellValue.startsWith("Example")) { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + } else { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } + } else { + if (CutEnum.CN.getValue().equals(cut)) { + throw new JeroBootException("请导入正确模板!"); + } else { + throw new JeroBootException("Please import the correct template"); + } + } - Map map = null; - //获得所有数据 - //从第4行开始获取,第一行是表头,第二行是填写说明, 第三行是填写示例 - for (int x = 3; x <= totalRowNum; x++) { - map = new LinkedHashMap(); - //获得第i行对象 - Row row= sheet.getRow(x); - //如果一行里的所有单元格都为空则不放进list里面 - int a = 0; - for (int y = 0; y < cellLength; y++) { - if (!(row == null)) { - Cell cell = row.getCell(y); // cell 为空时会抛空指针异常 - if(ObjectUtil.isNull(cell)) { - map.put(dbfieldList.get(y), ""); - } else { + Map map = null; + //获得所有数据 + //从第4行开始获取,第一行是表头,第二行是填写说明, 第三行是填写示例 + for (int x = 3; x <= totalRowNum; x++) { + map = new LinkedHashMap(); + //获得第i行对象 + Row row = sheet.getRow(x); + //如果一行里的所有单元格都为空则不放进list里面 + int a = 0; + for (int y = 0; y < cellLength; y++) { + if (!(row == null)) { + Cell cell = row.getCell(y); // cell 为空时会抛空指针异常 + if (ObjectUtil.isNull(cell)) { + map.put(dbfieldList.get(y), ""); + } else { - cell.setCellType(CellType.STRING); //设置单元格类型 - String cellValue = cell.getStringCellValue(); - map.put(dbfieldList.get(y), cellValue); - } - if (map.get(dbfieldList.get(y)) == null || "".equals(map.get(dbfieldList.get(y)))) { - a++; - } - } - } - // 当前行所有单元格均不为空时 + cell.setCellType(CellType.STRING); //设置单元格类型 + String cellValue = cell.getStringCellValue(); + map.put(dbfieldList.get(y), cellValue); + } + if (map.get(dbfieldList.get(y)) == null || "".equals(map.get(dbfieldList.get(y)))) { + a++; + } + } + } + // 当前行所有单元格均不为空时 // if (a != cellLength && row != null) { - list.add(map); + list.add(map); // } - } - return list; - } + } + return list; + } - private Map validateImportDatas(List> dataList, - String unzipfilepath, - String cut, - String paramsManifestId) { - // 查询清单的配置列信息 - List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); - Map configMap = paramsConfigEOList.stream().collect(Collectors.toMap(ParamsConfigEO::getId, ParamsConfigEO::getConfigName)); - // 查询清单参数项 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId); - List paramsCollectManifestEOList = paramsCollectManifestEOMapper.selectList(queryWrapper); - Map collectManifestMap = paramsCollectManifestEOList.stream().collect(Collectors.toMap(ParamsCollectManifestEO::getNioNumber, ParamsCollectManifestEO::getId)); - // 查询清单的配置数据 - List configIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); - List paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(configIdList); + private Map validateImportDatas(List> dataList, + String unzipfilepath, + String cut, + String paramsManifestId) { + // 查询清单的配置列信息 + List paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); + Map configMap = paramsConfigEOList.stream().collect(Collectors.toMap(ParamsConfigEO::getId, ParamsConfigEO::getConfigName)); + // 查询清单参数项 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId); + List paramsCollectManifestEOList = paramsCollectManifestEOMapper.selectList(queryWrapper); + Map collectManifestMap = paramsCollectManifestEOList.stream().collect(Collectors.toMap(ParamsCollectManifestEO::getNioNumber, ParamsCollectManifestEO::getId)); + // 查询清单的配置数据 + List configIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList()); + List paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(configIdList); - //存放数据验证结果信息 - List configDataList = new ArrayList<>(); - List verifyNioNumber = new ArrayList<>(); - List> notImportNioNumberList = new ArrayList<>(); - List stringMessage = new ArrayList<>(); - int i = 3; //记录行号 - //循环验证数据 - for (Map dto : dataList) { - i++; - int countError = 0; //记录失败数据数量 - String errorMsg = ""; - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg = "第" + i + "行:"; - } else { - errorMsg = i + " line:"; - } + //存放数据验证结果信息 + List configDataList = new ArrayList<>(); + List verifyNioNumber = new ArrayList<>(); + List> notImportNioNumberList = new ArrayList<>(); + List stringMessage = new ArrayList<>(); + int i = 3; //记录行号 + //循环验证数据 + for (Map dto : dataList) { + i++; + int countError = 0; //记录失败数据数量 + String errorMsg = ""; + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg = "第" + i + "行:"; + } else { + errorMsg = i + " line:"; + } - Map resultMap = new HashMap<>(); - String nioNumber = (String) dto.get("nio_number"); - if (StringUtils.isBlank(nioNumber)) { - continue; - } + Map resultMap = new HashMap<>(); + String nioNumber = (String) dto.get("nio_number"); + if (StringUtils.isBlank(nioNumber)) { + continue; + } - List listPCM = paramsCollectManifestEOList.stream().filter(e-> nioNumber.equals(e.getNioNumber())).collect(Collectors.toList()); - if (CollectionUtil.isEmpty(listPCM)) { - if (CutEnum.EN.getValue().equals(cut)) { - errorMsg += "NIO Number can not find; "; - } else{ - errorMsg += "NIO编号不存在;"; - } - countError++; - stringMessage.add(errorMsg); - continue; - } + List listPCM = paramsCollectManifestEOList.stream().filter(e -> nioNumber.equals(e.getNioNumber())).collect(Collectors.toList()); + if (CollectionUtil.isEmpty(listPCM)) { + if (CutEnum.EN.getValue().equals(cut)) { + errorMsg += "NIO Number can not find; "; + } else { + errorMsg += "NIO编号不存在;"; + } + countError++; + stringMessage.add(errorMsg); + continue; + } /*if (!verifyNioNumber.contains(nioNumber)) { verifyNioNumber.add(nioNumber); @@ -5302,594 +5311,594 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl msgMap = new HashMap<>(); - msgMap.put("nioNumber", nioNumber); - msgMap.put("state", state); - msgMap.put("type", "3"); - notImportNioNumberList.add(msgMap); - continue; - } + ParamsCollectManifestEO paramsCollectManifestEO = listPCM.get(0); + String state = paramsCollectManifestEO.getState(); + if (!CollectManifestStateEnum.WAIT_FILL.getValue().equals(state) && !CollectManifestStateEnum.CERT_BACK.getValue().equals(state)) { + Map msgMap = new HashMap<>(); + msgMap.put("nioNumber", nioNumber); + msgMap.put("state", state); + msgMap.put("type", "3"); + notImportNioNumberList.add(msgMap); + continue; + } - String controlType = paramsCollectManifestEO.getControlType(); - String controlVerify = paramsCollectManifestEO.getControlVerify(); - String controlValues = paramsCollectManifestEO.getControlValues(); - String isMust = paramsCollectManifestEO.getIsMust(); - for (Map.Entry entry : dto.entrySet()) { - String key = entry.getKey(); - String value = (String) entry.getValue(); + String controlType = paramsCollectManifestEO.getControlType(); + String controlVerify = paramsCollectManifestEO.getControlVerify(); + String controlValues = paramsCollectManifestEO.getControlValues(); + String isMust = paramsCollectManifestEO.getIsMust(); + for (Map.Entry entry : dto.entrySet()) { + String key = entry.getKey(); + String value = (String) entry.getValue(); - if ("nio_number".equals(key) || "params_name".equals(key) || "description".equals(key) - || "control_type".equals(key) || "control_verify".equals(key) || "control_values".equals(key) - || "is_must".equals(key) || "references_col".equals(key)) { - continue; - } - // - ParamsConfigDataEO configDataEO = new ParamsConfigDataEO(); - List list = paramsConfigDataEOList.stream().filter(e-> collectManifestMap.get(nioNumber).equals(e.getParamsCollectManifestId()) - && key.equals(e.getParamsConfigId())).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(list)) { - configDataEO.setId(list.get(0).getId()); - paramsConfigDataEOList.remove(list.get(0)); - } - configDataEO.setParamsCollectManifestId(collectManifestMap.get(nioNumber)); - configDataEO.setParamsConfigId(key); - - - // 校验配置列 - if (ControlTypeEnum.TEXT.getValue().equals(controlType)) { - resultMap = validateText(configMap.get(key), controlVerify, value, isMust, "1000", cut); - errorMsg += (String)resultMap.get("errorMsg"); - countError += (int)resultMap.get("countError"); - - configDataEO.setTextData(value); - - } else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType)) { - resultMap = validatePull(configMap.get(key), controlValues, value, isMust, true, cut); - errorMsg += (String)resultMap.get("errorMsg"); - countError += (int)resultMap.get("countError"); - - configDataEO.setPullData(value); - - } else if (ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) { - resultMap = validatePull(configMap.get(key), controlValues, value, isMust, false, cut); - errorMsg += (String)resultMap.get("errorMsg"); - countError += (int)resultMap.get("countError"); - - configDataEO.setPullData(value); - - } else if (ControlTypeEnum.FILE.getValue().equals(controlType)) { - resultMap = validateFile(configMap.get(key), unzipfilepath, value, isMust , cut); - errorMsg += (String)resultMap.get("errorMsg"); - countError += (int)resultMap.get("countError"); - - configDataEO.setFileConnectId(value); - - } else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) { - // 校验必填 - if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - } else { - if (StringUtils.isNotEmpty(value)) { - if (countChar(value, "#") != 1) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "格式不正确;"; - } else { - errorMsg += configMap.get(key) + " format is incorrect; "; - } - countError++; - } else { - if (value.split("#").length > 1) { - resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, true, cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setPullData(value.split("#")[1]); - - resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setTextData(value.split("#")[0]); - - } else if (value.split("#").length == 1 && value.endsWith("#")) { - // 校验必填 - if (IsMustEnum.YES.getValue().equals(isMust)) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "下拉单选为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - } - resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setTextData(value.split("#")[0]); - - } - } - } - } - - } else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { - // 校验必填 - if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - } else { - if (StringUtils.isNotEmpty(value)) { - if (countChar(value, "#") != 1) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "格式不正确;"; - } else { - errorMsg += configMap.get(key) + " format is incorrect; "; - } - countError++; - } else { - if (value.split("#").length > 1) { - resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, false, cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setPullData(value.split("#")[1]); - - resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setTextData(value.split("#")[0]); - } else if (value.split("#").length == 1 && value.endsWith("#")) { - // 校验必填 - if (IsMustEnum.YES.getValue().equals(isMust)) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "下拉多选为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - } - resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setTextData(value.split("#")[0]); - - } - } - } - } - - } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { - // 校验必填 - if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - }else { - if (StringUtils.isNotEmpty(value)) { - if (countChar(value, "#") != 1) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "格式不正确;"; - } else { - errorMsg += configMap.get(key) + " format is incorrect; "; - } - countError++; - } else { - if (value.split("#").length > 1) { - resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], isMust, "1000", cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setTextData(value.split("#")[0]); - - resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setFileConnectId(value.split("#")[1]); - } else if (value.split("#").length == 1 && value.endsWith("#")) { - resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], isMust, "1000", cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setTextData(value.split("#")[0]); - - } - } - } - } - - } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) { - // 校验必填 - if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - } else { - if (StringUtils.isNotEmpty(value)) { - if (countChar(value, "#") != 1) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "格式不正确;"; - } else { - errorMsg += configMap.get(key) + " format is incorrect; "; - } - countError++; - } else { - if (value.split("#").length > 1) { - resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, true, cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setPullData(value.split("#")[0]); - - resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setFileConnectId(value.split("#")[1]); - } else if (value.split("#").length == 1 && value.endsWith("#")) { - resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, true, cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setPullData(value.split("#")[0]); - } - } - } - } - - } else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { - // 校验必填 - if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - } else { - if (StringUtils.isNotEmpty(value)) { - if (countChar(value, "#") != 1) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "格式不正确;"; - } else { - errorMsg += configMap.get(key) + " format is incorrect; "; - } - countError++; - } else { - if (value.split("#").length > 1) { - resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, false, cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setPullData(value.split("#")[0]); - - resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setFileConnectId(value.split("#")[1]); - } else if (value.split("#").length == 1 && value.endsWith("#")) { - resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, false, cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setPullData(value.split("#")[0]); - - } - } - } - } - - } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { - // 校验必填 - if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - } else { - if(StringUtils.isNotEmpty(value)) { - if (countChar(value, "#") != 2) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "格式不正确;"; - } else { - errorMsg += configMap.get(key) + " format is incorrect; "; - } - countError++; - } else { - if (value.split("#").length > 1) { - resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, true, cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setPullData(value.split("#")[1]); - - resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setTextData(value.split("#")[0]); - - if (!value.endsWith("#")) { //3 - resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[2], ParamsIsMustEnum.NO.getValue(), cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setFileConnectId(value.split("#")[2]); - - } - - } else if (value.split("#").length == 1 && value.endsWith("#")) { - // 校验必填 - if (IsMustEnum.YES.getValue().equals(isMust)) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "下拉单选为必填项,不能为空;"; - } else { - errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; - } - countError++; - } - - resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); - errorMsg += (String) resultMap.get("errorMsg"); - countError += (int) resultMap.get("countError"); - configDataEO.setTextData(value.split("#")[0]); - } - } - } - - } - - } else { - - if (CutEnum.EN.getValue().equals(cut)) { - errorMsg += configMap.get(key) + "did not match the Control Component in the system; "; - countError ++; - } else { - errorMsg += configMap.get(key) + "未匹配到系统中的控件类型"; - countError ++; - } + if ("nio_number".equals(key) || "params_name".equals(key) || "description".equals(key) + || "control_type".equals(key) || "control_verify".equals(key) || "control_values".equals(key) + || "is_must".equals(key) || "references_col".equals(key)) { + continue; } - if(StringUtils.isNotEmpty(configDataEO.getId())){ - configDataList.add(configDataEO); - } - } + // + ParamsConfigDataEO configDataEO = new ParamsConfigDataEO(); + List list = paramsConfigDataEOList.stream().filter(e -> collectManifestMap.get(nioNumber).equals(e.getParamsCollectManifestId()) + && key.equals(e.getParamsConfigId())).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(list)) { + configDataEO.setId(list.get(0).getId()); + paramsConfigDataEOList.remove(list.get(0)); + } + configDataEO.setParamsCollectManifestId(collectManifestMap.get(nioNumber)); + configDataEO.setParamsConfigId(key); - if (countError > 0) { - stringMessage.add(errorMsg); - } - } - Map map = new HashMap(); - if (stringMessage.isEmpty()) { - map.put("result", true); - map.put("configDataList", configDataList); - map.put("notImportNioNumberList", notImportNioNumberList); - map.put("message", ""); - } else { - map.put("result", false); - String html = ""; - for (String message : stringMessage) { - html += message + "
"; - } - map.put("message", html); - } - return map; + // 校验配置列 + if (ControlTypeEnum.TEXT.getValue().equals(controlType)) { + resultMap = validateText(configMap.get(key), controlVerify, value, isMust, "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); - } + configDataEO.setTextData(value); - private Map validateFile(String configName, String unzipfilepath, String value, String mustInput, String cut) { - String errorMsg = ""; - int countError= 0; - Map resultMap = new HashMap<>(); + } else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType)) { + resultMap = validatePull(configMap.get(key), controlValues, value, isMust, true, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); - // 校验必填 - if (IsMustEnum.YES.getValue().equals(mustInput) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configName + "为必填项,不能为空;"; - } else { - errorMsg += configName + " is mandatory and cannot be empty; "; - } - countError++; - } + configDataEO.setPullData(value); - String fileName = value; - if (StringUtils.isNotBlank(fileName)) { - fileName = fileName.replace(",", ","); - if (fileName.contains(",")) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += "附件模板只能上传一个文件;"; - } else { - errorMsg += "File template only can upload one; "; - } - } - List nowFileList = FileUnZip.readFileByFilename(unzipfilepath, fileName, null, null, null, null, null); + } else if (ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) { + resultMap = validatePull(configMap.get(key), controlValues, value, isMust, false, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + + configDataEO.setPullData(value); + + } else if (ControlTypeEnum.FILE.getValue().equals(controlType)) { + resultMap = validateFile(configMap.get(key), unzipfilepath, value, isMust, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + + configDataEO.setFileConnectId(value); + + } else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) { + // 校验必填 + if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } else { + if (StringUtils.isNotEmpty(value)) { + if (countChar(value, "#") != 1) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "格式不正确;"; + } else { + errorMsg += configMap.get(key) + " format is incorrect; "; + } + countError++; + } else { + if (value.split("#").length > 1) { + resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, true, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setPullData(value.split("#")[1]); + + resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setTextData(value.split("#")[0]); + + } else if (value.split("#").length == 1 && value.endsWith("#")) { + // 校验必填 + if (IsMustEnum.YES.getValue().equals(isMust)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "下拉单选为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } + resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setTextData(value.split("#")[0]); + + } + } + } + } + + } else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { + // 校验必填 + if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } else { + if (StringUtils.isNotEmpty(value)) { + if (countChar(value, "#") != 1) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "格式不正确;"; + } else { + errorMsg += configMap.get(key) + " format is incorrect; "; + } + countError++; + } else { + if (value.split("#").length > 1) { + resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, false, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setPullData(value.split("#")[1]); + + resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setTextData(value.split("#")[0]); + } else if (value.split("#").length == 1 && value.endsWith("#")) { + // 校验必填 + if (IsMustEnum.YES.getValue().equals(isMust)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "下拉多选为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } + resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setTextData(value.split("#")[0]); + + } + } + } + } + + } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { + // 校验必填 + if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } else { + if (StringUtils.isNotEmpty(value)) { + if (countChar(value, "#") != 1) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "格式不正确;"; + } else { + errorMsg += configMap.get(key) + " format is incorrect; "; + } + countError++; + } else { + if (value.split("#").length > 1) { + resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], isMust, "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setTextData(value.split("#")[0]); + + resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setFileConnectId(value.split("#")[1]); + } else if (value.split("#").length == 1 && value.endsWith("#")) { + resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], isMust, "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setTextData(value.split("#")[0]); + + } + } + } + } + + } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) { + // 校验必填 + if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } else { + if (StringUtils.isNotEmpty(value)) { + if (countChar(value, "#") != 1) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "格式不正确;"; + } else { + errorMsg += configMap.get(key) + " format is incorrect; "; + } + countError++; + } else { + if (value.split("#").length > 1) { + resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, true, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setPullData(value.split("#")[0]); + + resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setFileConnectId(value.split("#")[1]); + } else if (value.split("#").length == 1 && value.endsWith("#")) { + resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, true, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setPullData(value.split("#")[0]); + } + } + } + } + + } else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { + // 校验必填 + if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } else { + if (StringUtils.isNotEmpty(value)) { + if (countChar(value, "#") != 1) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "格式不正确;"; + } else { + errorMsg += configMap.get(key) + " format is incorrect; "; + } + countError++; + } else { + if (value.split("#").length > 1) { + resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, false, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setPullData(value.split("#")[0]); + + resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[1], ParamsIsMustEnum.NO.getValue(), cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setFileConnectId(value.split("#")[1]); + } else if (value.split("#").length == 1 && value.endsWith("#")) { + resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[0], isMust, false, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setPullData(value.split("#")[0]); + + } + } + } + } + + } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { + // 校验必填 + if (ParamsIsMustEnum.YES.getValue().equals(isMust) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } else { + if (StringUtils.isNotEmpty(value)) { + if (countChar(value, "#") != 2) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "格式不正确;"; + } else { + errorMsg += configMap.get(key) + " format is incorrect; "; + } + countError++; + } else { + if (value.split("#").length > 1) { + resultMap = validatePull(configMap.get(key), controlValues, value.split("#")[1], isMust, true, cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setPullData(value.split("#")[1]); + + resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setTextData(value.split("#")[0]); + + if (!value.endsWith("#")) { //3 + resultMap = validateFile(configMap.get(key), unzipfilepath, value.split("#")[2], ParamsIsMustEnum.NO.getValue(), cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setFileConnectId(value.split("#")[2]); + + } + + } else if (value.split("#").length == 1 && value.endsWith("#")) { + // 校验必填 + if (IsMustEnum.YES.getValue().equals(isMust)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "下拉单选为必填项,不能为空;"; + } else { + errorMsg += configMap.get(key) + " is mandatory and cannot be empty; "; + } + countError++; + } + + resultMap = validateText(configMap.get(key), controlVerify, value.split("#")[0], ParamsIsMustEnum.NO.getValue(), "1000", cut); + errorMsg += (String) resultMap.get("errorMsg"); + countError += (int) resultMap.get("countError"); + configDataEO.setTextData(value.split("#")[0]); + } + } + } + + } + + } else { + + if (CutEnum.EN.getValue().equals(cut)) { + errorMsg += configMap.get(key) + "did not match the Control Component in the system; "; + countError++; + } else { + errorMsg += configMap.get(key) + "未匹配到系统中的控件类型"; + countError++; + } + } + if (StringUtils.isNotEmpty(configDataEO.getId())) { + configDataList.add(configDataEO); + } + } + + if (countError > 0) { + stringMessage.add(errorMsg); + } + + } + Map map = new HashMap(); + if (stringMessage.isEmpty()) { + map.put("result", true); + map.put("configDataList", configDataList); + map.put("notImportNioNumberList", notImportNioNumberList); + map.put("message", ""); + } else { + map.put("result", false); + String html = ""; + for (String message : stringMessage) { + html += message + "
"; + } + map.put("message", html); + } + return map; + + } + + private Map validateFile(String configName, String unzipfilepath, String value, String mustInput, String cut) { + String errorMsg = ""; + int countError = 0; + Map resultMap = new HashMap<>(); + + // 校验必填 + if (IsMustEnum.YES.getValue().equals(mustInput) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configName + "为必填项,不能为空;"; + } else { + errorMsg += configName + " is mandatory and cannot be empty; "; + } + countError++; + } + + String fileName = value; + if (StringUtils.isNotBlank(fileName)) { + fileName = fileName.replace(",", ","); + if (fileName.contains(",")) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += "附件模板只能上传一个文件;"; + } else { + errorMsg += "File template only can upload one; "; + } + } + List nowFileList = FileUnZip.readFileByFilename(unzipfilepath, fileName, null, null, null, null, null); // List nowFileList = FileUnZip.readFileByFilename(filepath, fileName); - if (nowFileList.size() == 0) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += "附件模板压缩包中没有" + fileName + "文件; "; - } else { - errorMsg += "File template " + fileName + "isn't present in the cabinet; "; - } - countError++; - } - } + if (nowFileList.size() == 0) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += "附件模板压缩包中没有" + fileName + "文件; "; + } else { + errorMsg += "File template " + fileName + "isn't present in the cabinet; "; + } + countError++; + } + } - resultMap.put("errorMsg", errorMsg); - resultMap.put("countError", countError); - return resultMap; - } + resultMap.put("errorMsg", errorMsg); + resultMap.put("countError", countError); + return resultMap; + } - private Map validatePull(String configName, String controlValues, String value, String mustInput, Boolean isSingle, String cut) { - String errorMsg = ""; - int countError= 0; - List controlValueList = Arrays.asList(controlValues.replaceAll(",", ",").split(",")); - Map resultMap = new HashMap<>(); + private Map validatePull(String configName, String controlValues, String value, String mustInput, Boolean isSingle, String cut) { + String errorMsg = ""; + int countError = 0; + List controlValueList = Arrays.asList(controlValues.replaceAll(",", ",").split(",")); + Map resultMap = new HashMap<>(); // StringBuilder newValue = new StringBuilder(); - // 校验必填 - if (IsMustEnum.YES.getValue().equals(mustInput) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configName + "为必填项,不能为空;"; - } else { - errorMsg += configName + " is mandatory and cannot be empty; "; - } - countError++; - } + // 校验必填 + if (IsMustEnum.YES.getValue().equals(mustInput) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configName + "为必填项,不能为空;"; + } else { + errorMsg += configName + " is mandatory and cannot be empty; "; + } + countError++; + } - if (StringUtils.isNotEmpty(value)) { - //判断是否是单选 - if (isSingle) { - if (StringUtils.isNotBlank(value) && (value.contains("!") ||value.contains("!"))) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configName + "为单选项;"; - } else { - errorMsg += configName + " is single type; "; - } - countError++; - } else { - // 判断是否符合备选值 - if (!controlValueList.contains(value)) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configName + "下拉单选中的" + value + "不正确;"; - } else { - errorMsg += configName + " " + value + " is not correct; "; - } - countError++; - } - } - } else { - // 判断是否符合备选值 - value = value.replaceAll("!", "!"); - List valueList = Arrays.asList(value.split("!")); - for (String v : valueList) { - if (!controlValueList.contains(v)) { - if (CutEnum.CN.getValue().equals(cut)) { - errorMsg += configName + "下拉多选中的" + value + "不正确;"; - } else { - errorMsg += configName + " " + value + " is not correct; "; - } - countError++; - } + if (StringUtils.isNotEmpty(value)) { + //判断是否是单选 + if (isSingle) { + if (StringUtils.isNotBlank(value) && (value.contains("!") || value.contains("!"))) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configName + "为单选项;"; + } else { + errorMsg += configName + " is single type; "; + } + countError++; + } else { + // 判断是否符合备选值 + if (!controlValueList.contains(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configName + "下拉单选中的" + value + "不正确;"; + } else { + errorMsg += configName + " " + value + " is not correct; "; + } + countError++; + } + } + } else { + // 判断是否符合备选值 + value = value.replaceAll("!", "!"); + List valueList = Arrays.asList(value.split("!")); + for (String v : valueList) { + if (!controlValueList.contains(v)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configName + "下拉多选中的" + value + "不正确;"; + } else { + errorMsg += configName + " " + value + " is not correct; "; + } + countError++; + } // else { // // newValue.append(v).append(","); // } - } - } - } + } + } + } // resultMap.put("value", newValue.toString()); - resultMap.put("errorMsg", errorMsg); - resultMap.put("countError", countError); - return resultMap; - } + resultMap.put("errorMsg", errorMsg); + resultMap.put("countError", countError); + return resultMap; + } - private Map validateText(String configName, String controlVerify, String value, String mustInput, String dbLength, String cut) { - String errorMsg = ""; - int countError= 0; - Map resultMap = new HashMap<>(); + private Map validateText(String configName, String controlVerify, String value, String mustInput, String dbLength, String cut) { + String errorMsg = ""; + int countError = 0; + Map resultMap = new HashMap<>(); - // 校验必填 - if (IsMustEnum.YES.getValue().equals(mustInput) && StringUtils.isEmpty(value)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configName + "为必填项,不能为空;"; - } else { - errorMsg += configName + " is mandatory and cannot be empty; "; - } - countError++; - } + // 校验必填 + if (IsMustEnum.YES.getValue().equals(mustInput) && StringUtils.isEmpty(value)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configName + "为必填项,不能为空;"; + } else { + errorMsg += configName + " is mandatory and cannot be empty; "; + } + countError++; + } - // 校验长度 - if (StringUtils.isNotBlank(value) && value.length() > Long.parseLong(dbLength)) { - if(CutEnum.CN.getValue().equals(cut)) { - errorMsg += configName + "不能超过" + dbLength + "个字符;"; - } else { - errorMsg += configName + " can not be more than " + dbLength + " char; "; - } - countError++; - } + // 校验长度 + if (StringUtils.isNotBlank(value) && value.length() > Long.parseLong(dbLength)) { + if (CutEnum.CN.getValue().equals(cut)) { + errorMsg += configName + "不能超过" + dbLength + "个字符;"; + } else { + errorMsg += configName + " can not be more than " + dbLength + " char; "; + } + countError++; + } - if (StringUtils.isNotEmpty(value)) { - String regex = ""; - Boolean result = false; - Boolean flag = false; - if (ControlVerifyEnum.NULL.getValue().equals(controlVerify)) { - result = true; + if (StringUtils.isNotEmpty(value)) { + String regex = ""; + Boolean result = false; + Boolean flag = false; + if (ControlVerifyEnum.NULL.getValue().equals(controlVerify)) { + result = true; - } else if (ControlVerifyEnum.CHINESE.getValue().equals(controlVerify)) { - regex = "^[\\u4e00-\\u9fa5]{0,}$"; - result = value.matches(regex); + } else if (ControlVerifyEnum.CHINESE.getValue().equals(controlVerify)) { + regex = "^[\\u4e00-\\u9fa5]{0,}$"; + result = value.matches(regex); - } else if (ControlVerifyEnum.POSITIVE_INTEGER.getValue().equals(controlVerify)) { - regex = "^[0-9]*$"; - result = value.matches(regex); + } else if (ControlVerifyEnum.POSITIVE_INTEGER.getValue().equals(controlVerify)) { + regex = "^[0-9]*$"; + result = value.matches(regex); - } else if (ControlVerifyEnum.POSITIVE_FLOAT.getValue().equals(controlVerify)) { - regex = "^[1-9]\\d*\\.\\d*|0\\.\\d*[1-9]\\d*$ 或 ^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"; - result = value.matches(regex); + } else if (ControlVerifyEnum.POSITIVE_FLOAT.getValue().equals(controlVerify)) { + regex = "^[1-9]\\d*\\.\\d*|0\\.\\d*[1-9]\\d*$ 或 ^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"; + result = value.matches(regex); - } else if (ControlVerifyEnum.INTEGER_DECIMAL.getValue().equals(controlVerify)) { - regex = "^(\\-|\\+)?\\d+(\\.\\d+)?$"; - result = value.matches(regex); + } else if (ControlVerifyEnum.INTEGER_DECIMAL.getValue().equals(controlVerify)) { + regex = "^(\\-|\\+)?\\d+(\\.\\d+)?$"; + result = value.matches(regex); - } else if (ControlVerifyEnum.DECIMAL_ONE.getValue().equals(controlVerify)) { - regex = "^(\\-)?\\d+(\\.\\d{1})$"; - result = value.matches(regex); + } else if (ControlVerifyEnum.DECIMAL_ONE.getValue().equals(controlVerify)) { + regex = "^(\\-)?\\d+(\\.\\d{1})$"; + result = value.matches(regex); - } else if (ControlVerifyEnum.DECIMAL_TWO.getValue().equals(controlVerify)) { - regex = "^(\\-)?\\d+(\\.\\d{2})$"; - result = value.matches(regex); + } else if (ControlVerifyEnum.DECIMAL_TWO.getValue().equals(controlVerify)) { + regex = "^(\\-)?\\d+(\\.\\d{2})$"; + result = value.matches(regex); - } else if (ControlVerifyEnum.DECIMAL_THREE.getValue().equals(controlVerify)) { - regex = "^(\\-)?\\d+(\\.\\d{3})$"; - result = value.matches(regex); + } else if (ControlVerifyEnum.DECIMAL_THREE.getValue().equals(controlVerify)) { + regex = "^(\\-)?\\d+(\\.\\d{3})$"; + result = value.matches(regex); - } else if (ControlVerifyEnum.DECIMAL_FOUR.getValue().equals(controlVerify)) { - regex = "^(\\-)?\\d+(\\.\\d{4})$"; - result = value.matches(regex); + } else if (ControlVerifyEnum.DECIMAL_FOUR.getValue().equals(controlVerify)) { + regex = "^(\\-)?\\d+(\\.\\d{4})$"; + result = value.matches(regex); - } else { - flag = true; - } + } else { + flag = true; + } - if (CutEnum.EN.getValue().equals(cut)) { - if (flag) { - errorMsg += configName + " did not match the Validate Component in the system; "; - countError++; - } else { - if (!result) { - errorMsg += configName + " Validate Component is wrong; "; - countError++; - } - } + if (CutEnum.EN.getValue().equals(cut)) { + if (flag) { + errorMsg += configName + " did not match the Validate Component in the system; "; + countError++; + } else { + if (!result) { + errorMsg += configName + " Validate Component is wrong; "; + countError++; + } + } - } else { - if (flag) { - errorMsg += configName + "未匹配到系统中的控件校验;"; - countError++; - } else { - if (!result) { - errorMsg += configName + "文本的控件校验不正确;"; - countError++; - } - } - } - } + } else { + if (flag) { + errorMsg += configName + "未匹配到系统中的控件校验;"; + countError++; + } else { + if (!result) { + errorMsg += configName + "文本的控件校验不正确;"; + countError++; + } + } + } + } - resultMap.put("errorMsg", errorMsg); - resultMap.put("countError", countError); - return resultMap; - } - /** - * 实体对象转成Map - * @param obj 实体对象 - * @return - */ + resultMap.put("errorMsg", errorMsg); + resultMap.put("countError", countError); + return resultMap; + } +/** + * 实体对象转成Map + * @param obj 实体对象 + * @return + */ // private Map objectToMap(Object obj) { // Map map = new HashMap<>(); // if (obj == null) { @@ -5908,157 +5917,157 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("state", ManifestStateEnum.COLLECTING.getValue()); - List manifestEOS = paramsManifestEOService.list(queryWrapper); - for (ParamsManifestEO manifestEO : manifestEOS) { - //项目名称 - ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(manifestEO.getProjectId(), manifestEO.getProjectVersion(),null); - if (ObjectUtils.isNotEmpty(projectInfo)) { - //url - String urlParamsStr = parseUrlParams(manifestEO); - String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; - //查出对应清单 - List collectManifestEOS = paramsCollectManifestEOMapper.queryByParamManifestId(manifestEO.getId()); - Map> seven = new HashMap<>(); - Map> three = new HashMap<>(); - Map> today = new HashMap<>(); - for (ParamsCollectManifestEO collectManifestEO : collectManifestEOS) { - String thirdId = null; - if (CollectManifestStateEnum.WAIT_SDT.getValue().equals(collectManifestEO.getState()) - ||CollectManifestStateEnum.DRE_BACK.getValue().equals(collectManifestEO.getState())) { - //工程接口人 - if (ObjectUtils.isNotEmpty(collectManifestEO.getSdt())) { - SysUser sdt = sysUserService.getUserByName(collectManifestEO.getSdt()); - if (ObjectUtils.isNotEmpty(sdt)) { - thirdId = sdt.getThirdId(); - } - } + /** + * 监控参数收集任务的截止时间,并根据时间段发送飞书 + */ + @Override + public void checkDeadline() { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + String now = sdf.format(new Date());// 当前时间 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("state", ManifestStateEnum.COLLECTING.getValue()); + List manifestEOS = paramsManifestEOService.list(queryWrapper); + for (ParamsManifestEO manifestEO : manifestEOS) { + //项目名称 + ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(manifestEO.getProjectId(), manifestEO.getProjectVersion(), null); + if (ObjectUtils.isNotEmpty(projectInfo)) { + //url + String urlParamsStr = parseUrlParams(manifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + //查出对应清单 + List collectManifestEOS = paramsCollectManifestEOMapper.queryByParamManifestId(manifestEO.getId()); + Map> seven = new HashMap<>(); + Map> three = new HashMap<>(); + Map> today = new HashMap<>(); + for (ParamsCollectManifestEO collectManifestEO : collectManifestEOS) { + String thirdId = null; + if (CollectManifestStateEnum.WAIT_SDT.getValue().equals(collectManifestEO.getState()) + || CollectManifestStateEnum.DRE_BACK.getValue().equals(collectManifestEO.getState())) { + //工程接口人 + if (ObjectUtils.isNotEmpty(collectManifestEO.getSdt())) { + SysUser sdt = sysUserService.getUserByName(collectManifestEO.getSdt()); + if (ObjectUtils.isNotEmpty(sdt)) { + thirdId = sdt.getThirdId(); + } + } - } else if (CollectManifestStateEnum.WAIT_FILL.getValue().equals(collectManifestEO.getState()) - ||CollectManifestStateEnum.CERT_BACK.getValue().equals(collectManifestEO.getState())) { - //填写人 - if (ObjectUtils.isNotEmpty(collectManifestEO.getDre())) { - SysUser dre = sysUserService.getUserByName(collectManifestEO.getDre()); - if (ObjectUtils.isNotEmpty(dre)) { - thirdId = dre.getThirdId(); - } - } - } - //截止时间 - if (ObjectUtils.isNotEmpty(thirdId) && ObjectUtils.isNotEmpty(collectManifestEO.getDeadline())) { - String deadline =sdf.format(collectManifestEO.getDeadline()); - //判断日期 - int days = 0; - try { - days = (int) (sdf.parse(deadline).getTime() - sdf.parse(now).getTime()) / (24 * 60 * 60 * 1000); - } catch (Exception e) { - e.printStackTrace(); - throw new JeroBootException("时间获取失败"); - } - if (days == 7) { - deadlineDateMap(seven, collectManifestEO, thirdId); - } else if (days == 3) { - deadlineDateMap(three, collectManifestEO, thirdId); - } else if (now.equals(deadline)) { - deadlineDateMap(today, collectManifestEO, thirdId); - } + } else if (CollectManifestStateEnum.WAIT_FILL.getValue().equals(collectManifestEO.getState()) + || CollectManifestStateEnum.CERT_BACK.getValue().equals(collectManifestEO.getState())) { + //填写人 + if (ObjectUtils.isNotEmpty(collectManifestEO.getDre())) { + SysUser dre = sysUserService.getUserByName(collectManifestEO.getDre()); + if (ObjectUtils.isNotEmpty(dre)) { + thirdId = dre.getThirdId(); + } + } + } + //截止时间 + if (ObjectUtils.isNotEmpty(thirdId) && ObjectUtils.isNotEmpty(collectManifestEO.getDeadline())) { + String deadline = sdf.format(collectManifestEO.getDeadline()); + //判断日期 + int days = 0; + try { + days = (int) (sdf.parse(deadline).getTime() - sdf.parse(now).getTime()) / (24 * 60 * 60 * 1000); + } catch (Exception e) { + e.printStackTrace(); + throw new JeroBootException("时间获取失败"); + } + if (days == 7) { + deadlineDateMap(seven, collectManifestEO, thirdId); + } else if (days == 3) { + deadlineDateMap(three, collectManifestEO, thirdId); + } else if (now.equals(deadline)) { + deadlineDateMap(today, collectManifestEO, thirdId); + } - } - } + } + } - String title = MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn(); - String cnContentLower = "项目: " + projectInfo.getProjectName() + - "\n发起人: 系统通知"; - String enContentLower = "Project: " + projectInfo.getProjectName() + - "\nInitiator: " + MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(); - if (!seven.isEmpty()) { - for (String key : seven.keySet()) { - String[] thirds = new String[1]; - thirds[0] = key; - List stringList = seven.get(key); - String join = StringUtils.join(stringList, ","); - try { - FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); - feishuMsgVo.setTitle(title); - feishuMsgVo.setCnContentUpper("您参与填写的参数"+ join +",还有7天到期,请及时查看处理"); - feishuMsgVo.setCnContentLower(cnContentLower); - feishuMsgVo.setEnContentUpper("The parameter "+ join +" you filled in will expire in 7 days. Please check and address it in a timely manner"); - feishuMsgVo.setEnContentLower(enContentLower); - feishuMsgVo.setUrl(hrefFeishu); - feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); // 颜色 - feishuService.sendCard(thirds, feishuMsgVo); - } catch (IOException e) { - log.error("飞书消息推送失败"); - } - } - } - if (!three.isEmpty()) { - for (String key : three.keySet()) { - String[] thirds = new String[1]; - thirds[0] = key; - List stringList = three.get(key); - String join = StringUtils.join(stringList, ","); - try { - FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); - feishuMsgVo.setTitle(title); - feishuMsgVo.setCnContentUpper("您参与填写的参数"+ join +",还有3天到期,请及时查看处理"); - feishuMsgVo.setCnContentLower(cnContentLower); - feishuMsgVo.setEnContentUpper("The parameter "+ join +" you filled in will expire in 3 days. Please check and address it in a timely manner"); - feishuMsgVo.setEnContentLower(enContentLower); - feishuMsgVo.setUrl(hrefFeishu); - feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); // 颜色 - feishuService.sendCard(thirds, feishuMsgVo); - } catch (IOException e) { - log.error("飞书消息推送失败"); - } - } - } - if (!today.isEmpty()) { - for (String key : today.keySet()) { - String[] thirds = new String[1]; - thirds[0] = key; - List stringList = today.get(key); - String join = StringUtils.join(stringList, ","); - try { - FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); - feishuMsgVo.setTitle(title); - feishuMsgVo.setCnContentUpper("您参与填写的参数"+ join +",将于今天到期,请及时查看处理"); - feishuMsgVo.setCnContentLower(cnContentLower); - feishuMsgVo.setEnContentUpper("The parameter "+ join +" you filled in will expire today. Please check and address it in a timely manner"); - feishuMsgVo.setEnContentLower(enContentLower); - feishuMsgVo.setUrl(hrefFeishu); - feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); // 颜色 - feishuService.sendCard(thirds, feishuMsgVo); - } catch (IOException e) { - log.error("飞书消息推送失败"); - } - } - } - } - } + String title = MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn(); + String cnContentLower = "项目: " + projectInfo.getProjectName() + + "\n发起人: 系统通知"; + String enContentLower = "Project: " + projectInfo.getProjectName() + + "\nInitiator: " + MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName(); + if (!seven.isEmpty()) { + for (String key : seven.keySet()) { + String[] thirds = new String[1]; + thirds[0] = key; + List stringList = seven.get(key); + String join = StringUtils.join(stringList, ","); + try { + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(title); + feishuMsgVo.setCnContentUpper("您参与填写的参数" + join + ",还有7天到期,请及时查看处理"); + feishuMsgVo.setCnContentLower(cnContentLower); + feishuMsgVo.setEnContentUpper("The parameter " + join + " you filled in will expire in 7 days. Please check and address it in a timely manner"); + feishuMsgVo.setEnContentLower(enContentLower); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); // 颜色 + feishuService.sendCard(thirds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } + } + if (!three.isEmpty()) { + for (String key : three.keySet()) { + String[] thirds = new String[1]; + thirds[0] = key; + List stringList = three.get(key); + String join = StringUtils.join(stringList, ","); + try { + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(title); + feishuMsgVo.setCnContentUpper("您参与填写的参数" + join + ",还有3天到期,请及时查看处理"); + feishuMsgVo.setCnContentLower(cnContentLower); + feishuMsgVo.setEnContentUpper("The parameter " + join + " you filled in will expire in 3 days. Please check and address it in a timely manner"); + feishuMsgVo.setEnContentLower(enContentLower); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); // 颜色 + feishuService.sendCard(thirds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } + } + if (!today.isEmpty()) { + for (String key : today.keySet()) { + String[] thirds = new String[1]; + thirds[0] = key; + List stringList = today.get(key); + String join = StringUtils.join(stringList, ","); + try { + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(title); + feishuMsgVo.setCnContentUpper("您参与填写的参数" + join + ",将于今天到期,请及时查看处理"); + feishuMsgVo.setCnContentLower(cnContentLower); + feishuMsgVo.setEnContentUpper("The parameter " + join + " you filled in will expire today. Please check and address it in a timely manner"); + feishuMsgVo.setEnContentLower(enContentLower); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); // 颜色 + feishuService.sendCard(thirds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } + } + } + } - } + } - @Override - public Result addReferencesCol(String paramsManifestId, String paramsReportId, String paramsReportConfigId, String paramsReportConfigName) { - // 获取清单参数项 - ParamsCollectManifestEO queryEO = new ParamsCollectManifestEO(); - queryEO.setParamsManifestId(paramsManifestId); - List paramsCollectManifestEOList = paramsCollectManifestEOMapper.listInfo(queryEO); + @Override + public Result addReferencesCol(String paramsManifestId, String paramsReportId, String paramsReportConfigId, String paramsReportConfigName) { + // 获取清单参数项 + ParamsCollectManifestEO queryEO = new ParamsCollectManifestEO(); + queryEO.setParamsManifestId(paramsManifestId); + List paramsCollectManifestEOList = paramsCollectManifestEOMapper.listInfo(queryEO); - // 获取上报库的配置数据 - List paramsReportConfigDataEOList = paramsReportDetailEOService.listInfoForReferencesCol(paramsReportId, paramsReportConfigId); + // 获取上报库的配置数据 + List paramsReportConfigDataEOList = paramsReportDetailEOService.listInfoForReferencesCol(paramsReportId, paramsReportConfigId); - // 配置数据重构后入库 - List updateEOList = new ArrayList<>(); + // 配置数据重构后入库 + List updateEOList = new ArrayList<>(); /*for (ParamsReportConfigDataEO paramsReportConfigDataEO : paramsReportConfigDataEOList) { StringBuilder referencesColBuilder = new StringBuilder(); if (StringUtils.isNotEmpty(paramsReportConfigDataEO.getTextData())) { @@ -6093,519 +6102,519 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl - if(StringUtils.isNotEmpty(referencesColBuilder.toString())){ - referencesColBuilder.append("
"); - } - if (StringUtils.isNotEmpty(paramsReportConfigDataEO.getTextData())) { - referencesColBuilder.append(paramsReportConfigDataEO.getTextData()).append("#"); - } else { - referencesColBuilder.append(" ").append("#"); - } + // 参考列值设置为空标识 + boolean referencesColIsNullFlag = true; + for (ParamsReportConfigDataEO paramsReportConfigDataEO : paramsReportConfigDataEOList) { + if (StringUtils.equals(paramsCollectManifestEO.getNioNumber(), paramsReportConfigDataEO.getNioNumber())) { + // 控件类型相同 才能引用 + if (paramsCollectManifestEO.getControlType().equals(paramsReportConfigDataEO.getControlType())) { + // 如果拼接不为空 则是匹配到了多个 拼接换行符
+ if (StringUtils.isNotEmpty(referencesColBuilder.toString())) { + referencesColBuilder.append("
"); + } + if (StringUtils.isNotEmpty(paramsReportConfigDataEO.getTextData())) { + referencesColBuilder.append(paramsReportConfigDataEO.getTextData()).append("#"); + } else { + referencesColBuilder.append(" ").append("#"); + } - if (StringUtils.isNotEmpty(paramsReportConfigDataEO.getPullData())) { - referencesColBuilder.append(paramsReportConfigDataEO.getPullData()).append("#"); - } else { - referencesColBuilder.append(" ").append("#"); - } + if (StringUtils.isNotEmpty(paramsReportConfigDataEO.getPullData())) { + referencesColBuilder.append(paramsReportConfigDataEO.getPullData()).append("#"); + } else { + referencesColBuilder.append(" ").append("#"); + } - if (StringUtils.isNotEmpty(paramsReportConfigDataEO.getFileConnectId())) { - referencesColBuilder.append(paramsReportConfigDataEO.getFileConnectId()).append("#"); - } else { - referencesColBuilder.append(" ").append("#"); - } + if (StringUtils.isNotEmpty(paramsReportConfigDataEO.getFileConnectId())) { + referencesColBuilder.append(paramsReportConfigDataEO.getFileConnectId()).append("#"); + } else { + referencesColBuilder.append(" ").append("#"); + } + referencesColIsNullFlag = false; + } + } + } - referencesColIsNullFlag = false; - } - } - } + String referencesCol = referencesColBuilder.toString(); + ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO(); - String referencesCol = referencesColBuilder.toString(); - ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO(); + updateCollectManifestEO.setId(paramsCollectManifestEO.getId()); + updateCollectManifestEO.setReferencesCol(referencesCol); + updateEOList.add(updateCollectManifestEO); - updateCollectManifestEO.setId(paramsCollectManifestEO.getId()); - updateCollectManifestEO.setReferencesCol(referencesCol); - updateEOList.add(updateCollectManifestEO); + if (referencesColIsNullFlag) { + // 如果根据nio编号没有匹配到数据,将参考列的值设置为空 + LambdaUpdateWrapper manifestUpdateWrap = new LambdaUpdateWrapper<>(); + manifestUpdateWrap.eq(ParamsCollectManifestEO::getId, paramsCollectManifestEO.getId()); + manifestUpdateWrap.set(ParamsCollectManifestEO::getReferencesCol, null); + this.update(manifestUpdateWrap); + } + } - if(referencesColIsNullFlag){ - // 如果根据nio编号没有匹配到数据,将参考列的值设置为空 - LambdaUpdateWrapper manifestUpdateWrap = new LambdaUpdateWrapper<>(); - manifestUpdateWrap.eq(ParamsCollectManifestEO::getId,paramsCollectManifestEO.getId()); - manifestUpdateWrap.set(ParamsCollectManifestEO::getReferencesCol,null); - this.update(manifestUpdateWrap); - } - } + // 修改参数清单的参考列名称 + ParamsManifestEO paramsManifestEO = new ParamsManifestEO(); + paramsManifestEO.setId(paramsManifestId); + paramsManifestEO.setReferencesColName(paramsReportConfigName); + paramsManifestEO.setReferencesColId(paramsReportConfigId); + paramsManifestEOService.updateById(paramsManifestEO); - // 修改参数清单的参考列名称 - ParamsManifestEO paramsManifestEO = new ParamsManifestEO(); - paramsManifestEO.setId(paramsManifestId); - paramsManifestEO.setReferencesColName(paramsReportConfigName); - paramsManifestEO.setReferencesColId(paramsReportConfigId); - paramsManifestEOService.updateById(paramsManifestEO); + // 修改参数项 参考列 + try { + updateBatchById(updateEOList); + } catch (Exception ex) { + ex.printStackTrace(); + log.error("修改参数项,参考列失败: " + ex.getMessage()); + throw new JeroBootException("引用参考列失败!"); + } - // 修改参数项 参考列 - try { - updateBatchById(updateEOList); - }catch (Exception ex){ - ex.printStackTrace(); - log.error("修改参数项,参考列失败: " + ex.getMessage()); - throw new JeroBootException("引用参考列失败!"); - } + return Result.OK("引用参考列成功!"); + } - return Result.OK("引用参考列成功!"); - } + @Override + public boolean updateReferencesCol(List> configDataList, String paramsManifestId) { + List updateEOList = new ArrayList<>(); + // 处理数据 + for (Map map : configDataList) { + String paramsCollectManifestId = (String) map.get("id"); - @Override - public boolean updateReferencesCol(List> configDataList, String paramsManifestId) { - List updateEOList = new ArrayList<>(); - // 处理数据 - for (Map map : configDataList) { - String paramsCollectManifestId = (String) map.get("id"); + StringBuilder referncesColBuilder = new StringBuilder(); - StringBuilder referncesColBuilder = new StringBuilder(); + // 添加配置数据 + for (Map.Entry entry : map.entrySet()) { - // 添加配置数据 - for (Map.Entry entry : map.entrySet()) { + if ("id".equals(entry.getKey())) { + continue; + } - if ("id".equals(entry.getKey())) { - continue; - } - - // 取值 + // 取值 // Map paramsConfigDataMap = (Map) entry.getValue(); // String controlType = (String) paramsConfigDataMap.get("controlType"); - // 无法转ParamsConfigDataVO(遍历会出现该异常 : LinkedHashMap cannot be cast to ParamsConfigDataVO) - List> paramsConfigDataVOList = (List>) entry.getValue(); - if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { + // 无法转ParamsConfigDataVO(遍历会出现该异常 : LinkedHashMap cannot be cast to ParamsConfigDataVO) + List> paramsConfigDataVOList = (List>) entry.getValue(); + if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { - // 如果拼接不为空 则是匹配到了多个 拼接换行符
- if(StringUtils.isNotEmpty(referncesColBuilder.toString())){ - referncesColBuilder.append("
"); - } + // 如果拼接不为空 则是匹配到了多个 拼接换行符
+ if (StringUtils.isNotEmpty(referncesColBuilder.toString())) { + referncesColBuilder.append("
"); + } - // TEXT - List> textList = paramsConfigDataVOList.stream() - .filter(e->e.get("type").equals(ConfigDataTypeEnum.TEXT.getValue())).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(textList)) { - String dataValue = (String) textList.get(0).get("dataValue"); - if (StringUtils.isNotEmpty(dataValue)) { - referncesColBuilder.append(dataValue).append("#"); - } else { - referncesColBuilder.append(" ").append("#"); - } - } else { - referncesColBuilder.append(" ").append("#"); - } + // TEXT + List> textList = paramsConfigDataVOList.stream() + .filter(e -> e.get("type").equals(ConfigDataTypeEnum.TEXT.getValue())).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(textList)) { + String dataValue = (String) textList.get(0).get("dataValue"); + if (StringUtils.isNotEmpty(dataValue)) { + referncesColBuilder.append(dataValue).append("#"); + } else { + referncesColBuilder.append(" ").append("#"); + } + } else { + referncesColBuilder.append(" ").append("#"); + } - // PULL - List> pullList = paramsConfigDataVOList.stream() - .filter(e->e.get("type").equals(ConfigDataTypeEnum.PULL.getValue()) - || e.get("type").equals(ConfigDataTypeEnum.PULL_MORE.getValue())).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(pullList)) { - String dataValue = (String) pullList.get(0).get("dataValue"); - if (StringUtils.isNotEmpty(dataValue)) { - referncesColBuilder.append(dataValue).append("#"); - } else { - referncesColBuilder.append(" ").append("#"); - } - } else { - referncesColBuilder.append(" ").append("#"); - } + // PULL + List> pullList = paramsConfigDataVOList.stream() + .filter(e -> e.get("type").equals(ConfigDataTypeEnum.PULL.getValue()) + || e.get("type").equals(ConfigDataTypeEnum.PULL_MORE.getValue())).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(pullList)) { + String dataValue = (String) pullList.get(0).get("dataValue"); + if (StringUtils.isNotEmpty(dataValue)) { + referncesColBuilder.append(dataValue).append("#"); + } else { + referncesColBuilder.append(" ").append("#"); + } + } else { + referncesColBuilder.append(" ").append("#"); + } - // FILE - List> fileList = paramsConfigDataVOList.stream() - .filter(e->e.get("type").equals(ConfigDataTypeEnum.FILE.getValue())).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(fileList)) { - String dataValue = (String) fileList.get(0).get("dataValue"); - if (StringUtils.isNotEmpty(dataValue) && dataValue.contains(",")) { // 新加多个文件 - // 处理文件connectId - String[] fileIdList = dataValue.split(","); - String connectId = UUID.randomUUID().toString().replace("-", ""); - List updateFileList = new ArrayList<>(); - for (int i = 0; i < fileIdList.length; i++) { - OSSFile ossFile = new OSSFile(); - ossFile.setId(fileIdList[i]); - ossFile.setConnectId(connectId); - updateFileList.add(ossFile); - } - ossFileService.updateBatchById(updateFileList); - dataValue = connectId; - } else if (StringUtils.isNotEmpty(dataValue) && !dataValue.contains(",")) { - List ossFiles = ossFileService.getFileInfosByConnectId(dataValue); - if (CollectionUtil.isEmpty(ossFiles)) { // 新加了一个文件 - String connectId = UUID.randomUUID().toString().replace("-", ""); - //修改文件表关联信息connect_id - List oSSFileList = new ArrayList<>(); - for (String fileId : dataValue.split(",")) { - OSSFile ossFile = new OSSFile(); - ossFile.setId(fileId); - ossFile.setConnectId(connectId); - oSSFileList.add(ossFile); - } - ossFileService.updateFileInfo(oSSFileList); - dataValue = connectId; - } - } + // FILE + List> fileList = paramsConfigDataVOList.stream() + .filter(e -> e.get("type").equals(ConfigDataTypeEnum.FILE.getValue())).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(fileList)) { + String dataValue = (String) fileList.get(0).get("dataValue"); + if (StringUtils.isNotEmpty(dataValue) && dataValue.contains(",")) { // 新加多个文件 + // 处理文件connectId + String[] fileIdList = dataValue.split(","); + String connectId = UUID.randomUUID().toString().replace("-", ""); + List updateFileList = new ArrayList<>(); + for (int i = 0; i < fileIdList.length; i++) { + OSSFile ossFile = new OSSFile(); + ossFile.setId(fileIdList[i]); + ossFile.setConnectId(connectId); + updateFileList.add(ossFile); + } + ossFileService.updateBatchById(updateFileList); + dataValue = connectId; + } else if (StringUtils.isNotEmpty(dataValue) && !dataValue.contains(",")) { + List ossFiles = ossFileService.getFileInfosByConnectId(dataValue); + if (CollectionUtil.isEmpty(ossFiles)) { // 新加了一个文件 + String connectId = UUID.randomUUID().toString().replace("-", ""); + //修改文件表关联信息connect_id + List oSSFileList = new ArrayList<>(); + for (String fileId : dataValue.split(",")) { + OSSFile ossFile = new OSSFile(); + ossFile.setId(fileId); + ossFile.setConnectId(connectId); + oSSFileList.add(ossFile); + } + ossFileService.updateFileInfo(oSSFileList); + dataValue = connectId; + } + } - if (StringUtils.isNotEmpty(dataValue)) { - referncesColBuilder.append(dataValue).append("#"); - } else { - referncesColBuilder.append(" ").append("#"); - } - } else { - referncesColBuilder.append(" ").append("#"); - } + if (StringUtils.isNotEmpty(dataValue)) { + referncesColBuilder.append(dataValue).append("#"); + } else { + referncesColBuilder.append(" ").append("#"); + } + } else { + referncesColBuilder.append(" ").append("#"); + } + } + String referencesCol = referncesColBuilder.toString(); + if (StringUtils.isNotEmpty(referencesCol)) { + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestId); + updateEO.setReferencesCol(referencesCol); + updateEOList.add(updateEO); + } + } + } - } - String referencesCol = referncesColBuilder.toString(); - if (StringUtils.isNotEmpty(referencesCol)) { - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - updateEO.setId(paramsCollectManifestId); - updateEO.setReferencesCol(referencesCol); - updateEOList.add(updateEO); - } - } - } + // 批量更新 + return updateBatchById(updateEOList); + } - // 批量更新 - return updateBatchById(updateEOList); - } + @Override + public Result mandatoryWithdraw(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String[] paramsCollectManifestIdArr = paramsCollectManifestIds.split(","); - @Override - public Result mandatoryWithdraw(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - String[] paramsCollectManifestIdArr = paramsCollectManifestIds.split(","); + // 根据参数收集清单id数组,查询参数配置数据 + QueryWrapper configDataQueryWrap = new QueryWrapper<>(); + configDataQueryWrap.lambda().in(ParamsConfigDataEO::getParamsCollectManifestId, paramsCollectManifestIdArr); + List paramsConfigDataList = this.paramsConfigDataEOService.list(configDataQueryWrap); + List paramsCollectManifestLogEOList = new ArrayList<>(); + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - // 根据参数收集清单id数组,查询参数配置数据 - QueryWrapper configDataQueryWrap = new QueryWrapper<>(); - configDataQueryWrap.lambda().in(ParamsConfigDataEO::getParamsCollectManifestId,paramsCollectManifestIdArr); - List paramsConfigDataList = this.paramsConfigDataEOService.list(configDataQueryWrap); - List paramsCollectManifestLogEOList = new ArrayList<>(); - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + for (int i = 0; i < paramsCollectManifestIdArr.length; i++) { + String paramsCollectManifestId = paramsCollectManifestIdArr[i]; + ParamsCollectManifestEO collectManifestEO = this.getById(paramsCollectManifestId); + // 如果数据状态为 "已同步上报库",不予处理 + if (StringUtils.equals(collectManifestEO.getState(), CollectManifestStateEnum.SYNC_REPORT.getValue())) { + continue; + } - for (int i=0; i paramsConfigDataListTemp = paramsConfigDataList.stream().filter(paramsConfig -> { + boolean flag = false; + if (StringUtils.equals(paramsConfig.getParamsCollectManifestId(), paramsCollectManifestId)) { + // 如果三种数据其中一种不为空,需要更新,都为空的话无需更新。 + if (StringUtils.isNotEmpty(paramsConfig.getTextData()) || StringUtils.isNotEmpty(paramsConfig.getPullData()) || StringUtils.isNotEmpty(paramsConfig.getFileConnectId())) { + flag = true; + } + } + return flag; + }).collect(Collectors.toList()); - if(CollectionUtils.isNotEmpty(paramsConfigDataList)){ - List paramsConfigDataListTemp = paramsConfigDataList.stream().filter(paramsConfig -> { - boolean flag = false; - if (StringUtils.equals(paramsConfig.getParamsCollectManifestId(), paramsCollectManifestId)) { - // 如果三种数据其中一种不为空,需要更新,都为空的话无需更新。 - if(StringUtils.isNotEmpty(paramsConfig.getTextData()) || StringUtils.isNotEmpty(paramsConfig.getPullData()) || StringUtils.isNotEmpty(paramsConfig.getFileConnectId())){ - flag = true; - } - } - return flag; - }).collect(Collectors.toList()); + // 如果该参数收集清单数据对应的参数配置数据不为空,则设置将填写人填写的数据设置为空 + if (CollectionUtils.isNotEmpty(paramsConfigDataListTemp)) { + for (ParamsConfigDataEO paramsConfigDataEO : paramsConfigDataListTemp) { + LambdaUpdateWrapper configDataUpdateWrap = new LambdaUpdateWrapper<>(); + configDataUpdateWrap.set(ParamsConfigDataEO::getTextData, null); + configDataUpdateWrap.set(ParamsConfigDataEO::getPullData, null); + configDataUpdateWrap.set(ParamsConfigDataEO::getFileConnectId, null); + configDataUpdateWrap.eq(ParamsConfigDataEO::getId, paramsConfigDataEO.getId()); + try { + this.paramsConfigDataEOService.update(configDataUpdateWrap); + } catch (Exception ex) { + ex.printStackTrace(); + log.error("强制撤回,更新参数配置数据失败:" + ex.getMessage()); + throw new JeroBootException("强制撤回,更新参数配置数据失败!"); + } + } + } + } - // 如果该参数收集清单数据对应的参数配置数据不为空,则设置将填写人填写的数据设置为空 - if(CollectionUtils.isNotEmpty(paramsConfigDataListTemp)){ - for (ParamsConfigDataEO paramsConfigDataEO : paramsConfigDataListTemp) { - LambdaUpdateWrapper configDataUpdateWrap = new LambdaUpdateWrapper<>(); - configDataUpdateWrap.set(ParamsConfigDataEO::getTextData,null); - configDataUpdateWrap.set(ParamsConfigDataEO::getPullData,null); - configDataUpdateWrap.set(ParamsConfigDataEO::getFileConnectId,null); - configDataUpdateWrap.eq(ParamsConfigDataEO::getId,paramsConfigDataEO.getId()); - try { - this.paramsConfigDataEOService.update(configDataUpdateWrap); - }catch (Exception ex){ - ex.printStackTrace(); - log.error("强制撤回,更新参数配置数据失败:" + ex.getMessage()); - throw new JeroBootException("强制撤回,更新参数配置数据失败!"); - } - } - } - } + ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); + paramsCollectManifestLogEO.setLogCnContent("认证工程师\"" + currentUser.getUsername() + "\"将参数数据强制撤回"); + paramsCollectManifestLogEO.setLogEnContent("The Homo Engineer \"" + currentUser.getUsername() + "\" will forcibly withdraw the parameter data"); + paramsCollectManifestLogEO.setParamsManifestId(collectManifestEO.getParamsManifestId()); + paramsCollectManifestLogEO.setParamsCollectManifestId(collectManifestEO.getId()); + paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); - ParamsCollectManifestLogEO paramsCollectManifestLogEO = new ParamsCollectManifestLogEO(); - paramsCollectManifestLogEO.setLogCnContent("认证工程师\""+currentUser.getUsername()+"\"将参数数据强制撤回"); - paramsCollectManifestLogEO.setLogEnContent("The Homo Engineer \""+currentUser.getUsername()+"\" will forcibly withdraw the parameter data"); - paramsCollectManifestLogEO.setParamsManifestId(collectManifestEO.getParamsManifestId()); - paramsCollectManifestLogEO.setParamsCollectManifestId(collectManifestEO.getId()); - paramsCollectManifestLogEOList.add(paramsCollectManifestLogEO); + LambdaUpdateWrapper updateWrap = new LambdaUpdateWrapper<>(); + updateWrap.set(ParamsCollectManifestEO::getSdt, null); + updateWrap.set(ParamsCollectManifestEO::getDre, null); + updateWrap.set(ParamsCollectManifestEO::getDeadline, null); + updateWrap.set(ParamsCollectManifestEO::getState, CollectManifestStateEnum.WAIT_COLLECT.getValue()); + updateWrap.eq(ParamsCollectManifestEO::getId, paramsCollectManifestId); + try { + this.update(updateWrap); + } catch (Exception ex) { + ex.printStackTrace(); + log.error("强制撤回,更新参数收集清单失败:" + ex.getMessage()); + throw new JeroBootException("强制撤回,更新参数收集清单失败!"); + } + } + if (CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)) { + this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); + } + return Result.OK("强制撤回成功!"); + } - LambdaUpdateWrapper updateWrap = new LambdaUpdateWrapper<>(); - updateWrap.set(ParamsCollectManifestEO::getSdt,null); - updateWrap.set(ParamsCollectManifestEO::getDre,null); - updateWrap.set(ParamsCollectManifestEO::getDeadline,null); - updateWrap.set(ParamsCollectManifestEO::getState,CollectManifestStateEnum.WAIT_COLLECT.getValue()); - updateWrap.eq(ParamsCollectManifestEO::getId,paramsCollectManifestId); - try { - this.update(updateWrap); - }catch (Exception ex){ - ex.printStackTrace(); - log.error("强制撤回,更新参数收集清单失败:" + ex.getMessage()); - throw new JeroBootException("强制撤回,更新参数收集清单失败!"); - } - } - if(CollectionUtils.isNotEmpty(paramsCollectManifestLogEOList)){ - this.paramsCollectManifestLogEOService.saveBatch(paramsCollectManifestLogEOList); - } - return Result.OK("强制撤回成功!"); - } + @Override + public Result certifiedEngineerUpdateDreBatch(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) + || StringUtils.isEmpty(paramsCollectManifestVO.getDre()) + || StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String dre = paramsCollectManifestVO.getDre(); + String projectId = paramsCollectManifestVO.getProjectId(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); - @Override - public Result certifiedEngineerUpdateDreBatch(ParamsCollectManifestVO paramsCollectManifestVO) { - if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) - || StringUtils.isEmpty(paramsCollectManifestVO.getDre()) - || StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { - throw new JeroBootException("参数不能为空!"); - } - String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); - String dre = paramsCollectManifestVO.getDre(); - String projectId = paramsCollectManifestVO.getProjectId(); - String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 + ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion(), paramsCollectManifestVO.getCut()); // 获取项目信息 + paramsManifestEO.setProjectName(projectInfo.getProjectName()); - ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 - ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion(),paramsCollectManifestVO.getCut()); // 获取项目信息 - paramsManifestEO.setProjectName(projectInfo.getProjectName()); + String[] paramsCollectManifestIdArr = paramsCollectManifestIds.split(","); + List updateEOList = new ArrayList<>(); - String[] paramsCollectManifestIdArr = paramsCollectManifestIds.split(","); - List updateEOList = new ArrayList<>(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(ParamsCollectManifestEO::getId, Arrays.asList(paramsCollectManifestIdArr)) + .orderByAsc(ParamsCollectManifestEO::getDeadline).orderByAsc(ParamsCollectManifestEO::getNioNumber); + List paramsCollectManifestEOList = this.list(queryWrapper); + Date deadline = paramsCollectManifestEOList.get(0).getDeadline(); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(ParamsCollectManifestEO::getId, Arrays.asList(paramsCollectManifestIdArr)) - .orderByAsc(ParamsCollectManifestEO::getDeadline).orderByAsc(ParamsCollectManifestEO::getNioNumber); - List paramsCollectManifestEOList = this.list(queryWrapper); - Date deadline = paramsCollectManifestEOList.get(0).getDeadline(); + // 存放数据的前后填写与工程接口人信息 + List> paramsCollectManifestMapList = new ArrayList<>(); + for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { + // 如果新分发的填写人和原填写人一致,直接跳过。 + if (StringUtils.equals(dre, paramsCollectManifestEO.getDre())) { + continue; + } - // 存放数据的前后填写与工程接口人信息 - List> paramsCollectManifestMapList = new ArrayList<>(); - for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { - // 如果新分发的填写人和原填写人一致,直接跳过。 - if(StringUtils.equals(dre,paramsCollectManifestEO.getDre())){ - continue; - } + Map paramsCollectManifestMap = new HashMap<>(); + paramsCollectManifestMap.put("paramsCollectManifestId", paramsCollectManifestEO.getId()); + paramsCollectManifestMap.put("dreUpdateFront", paramsCollectManifestEO.getDre()); + paramsCollectManifestMap.put("dreUpdateAfter", dre); + paramsCollectManifestMap.put("sdt", paramsCollectManifestEO.getSdt()); + paramsCollectManifestMap.put("paramsCollectManifestEO", paramsCollectManifestEO); + paramsCollectManifestMapList.add(paramsCollectManifestMap); - Map paramsCollectManifestMap = new HashMap<>(); - paramsCollectManifestMap.put("paramsCollectManifestId",paramsCollectManifestEO.getId()); - paramsCollectManifestMap.put("dreUpdateFront",paramsCollectManifestEO.getDre()); - paramsCollectManifestMap.put("dreUpdateAfter",dre); - paramsCollectManifestMap.put("sdt",paramsCollectManifestEO.getSdt()); - paramsCollectManifestMap.put("paramsCollectManifestEO",paramsCollectManifestEO); - paramsCollectManifestMapList.add(paramsCollectManifestMap); + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestEO.getId()); + updateEO.setDre(dre); // 设置填写人 + updateEO.setState(CollectManifestStateEnum.WAIT_FILL.getValue()); // 设置状态为:待填写 + updateEOList.add(updateEO); + } + if (CollectionUtils.isNotEmpty(updateEOList)) { + this.updateBatchById(updateEOList); + // 发送变更消息 + this.sendChangeMessage(paramsCollectManifestMapList, paramsManifestEO, projectInfo, dre, deadline); + } + return Result.OK("分配填写人成功!"); + } - ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); - updateEO.setId(paramsCollectManifestEO.getId()); - updateEO.setDre(dre); // 设置填写人 - updateEO.setState(CollectManifestStateEnum.WAIT_FILL.getValue()); // 设置状态为:待填写 - updateEOList.add(updateEO); - } - if(CollectionUtils.isNotEmpty(updateEOList)){ - this.updateBatchById(updateEOList); - // 发送变更消息 - this.sendChangeMessage(paramsCollectManifestMapList,paramsManifestEO,projectInfo,dre,deadline); - } - return Result.OK("分配填写人成功!"); - } + /** + * 发送变更消息 + * + * @param paramsCollectManifestMapList + * @param paramsManifestEO 清单信息 + * @param projectInfo + * @param dre + * @param deadline + */ + public void sendChangeMessage(List> paramsCollectManifestMapList, ParamsManifestEO paramsManifestEO, ParamsManifestVO projectInfo, String dre, Date deadline) { + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if (CollectionUtils.isNotEmpty(paramsCollectManifestMapList)) { + // 工程接口人 + Map>> sdtGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("sdt").toString())))); + for (Map.Entry>> sdtMap : sdtGroupMap.entrySet()) { + String sdtUserName = sdtMap.getKey(); - /** - * 发送变更消息 - * @param paramsCollectManifestMapList - * @param paramsManifestEO 清单信息 - * @param projectInfo - * @param dre - * @param deadline - */ - public void sendChangeMessage(List> paramsCollectManifestMapList,ParamsManifestEO paramsManifestEO,ParamsManifestVO projectInfo,String dre,Date deadline){ - LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - if(CollectionUtils.isNotEmpty(paramsCollectManifestMapList)){ - // 工程接口人 - Map>> sdtGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("sdt").toString())))); - for (Map.Entry>> sdtMap : sdtGroupMap.entrySet()) { - String sdtUserName = sdtMap.getKey(); + String nioNumbers = ""; + List> value = sdtMap.getValue(); + for (Map map : value) { + ParamsCollectManifestEO paramsCollectManifestEO = JSONObject.parseObject(JSONObject.toJSONString(map.get("paramsCollectManifestEO")), ParamsCollectManifestEO.class); + String nioNumber = paramsCollectManifestEO.getNioNumber(); + nioNumbers += nioNumber + ","; + } - String nioNumbers = ""; - List> value = sdtMap.getValue(); - for (Map map : value) { - ParamsCollectManifestEO paramsCollectManifestEO = JSONObject.parseObject(JSONObject.toJSONString(map.get("paramsCollectManifestEO")), ParamsCollectManifestEO.class); - String nioNumber = paramsCollectManifestEO.getNioNumber(); - nioNumbers += nioNumber + ","; - } + if (StringUtils.isNotEmpty(nioNumbers)) { + nioNumbers = nioNumbers.substring(0, nioNumbers.length() - 1); + } - if(StringUtils.isNotEmpty(nioNumbers)){ - nioNumbers = nioNumbers.substring(0,nioNumbers.length()-1); - } + String cnContentUpper = "您参与填写的参数 " + nioNumbers + ",已被 " + currentUser.getUsername() + " 重新分发给 " + dre + "请及时查看。"; + String enContentUpper = "The parameter " + nioNumbers + " you distributed have been re-assigned to " + currentUser.getUsername() + " by " + dre; - String cnContentUpper = "您参与填写的参数 " + nioNumbers + ",已被 " + currentUser.getUsername() + " 重新分发给 " + dre + "请及时查看。"; - String enContentUpper = "The parameter " + nioNumbers + " you distributed have been re-assigned to " + currentUser.getUsername() + " by " + dre; + // 消息内容 + SysUser sysUser = this.sysUserService.getUserByName(sdtUserName); + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = this.backUrl + "/ParameterItemCollection" + urlParamsStr; - // 消息内容 - SysUser sysUser = this.sysUserService.getUserByName(sdtUserName); - String[] thirdIds = new String[1]; - thirdIds[0] = sysUser.getThirdId(); - String urlParamsStr = parseUrlParams(paramsManifestEO); - String hrefFeishu = this.backUrl + "/ParameterItemCollection" + urlParamsStr; + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); + feishuMsgVo.setCnContentUpper(cnContentUpper); + feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + + "\n发起人: " + currentUser.getUsername()); + feishuMsgVo.setEnContentUpper(enContentUpper); + feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + + "\nInitiator: " + currentUser.getUsername()); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); + try { + this.feishuService.sendCard(thirdIds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } - FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); - feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); - feishuMsgVo.setCnContentUpper(cnContentUpper); - feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + - "\n发起人: " + currentUser.getUsername()); - feishuMsgVo.setEnContentUpper(enContentUpper); - feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + - "\nInitiator: " + currentUser.getUsername()); - feishuMsgVo.setUrl(hrefFeishu); - feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); - try { - this.feishuService.sendCard(thirdIds, feishuMsgVo); - } catch (IOException e) { - log.error("飞书消息推送失败"); - } - } + // 修改前填写人 + Map>> dreUpdateFrontGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("dreUpdateFront").toString())))); + for (Map.Entry>> dreUpdateFrontMap : dreUpdateFrontGroupMap.entrySet()) { + String dreUpdateFront = dreUpdateFrontMap.getKey(); - // 修改前填写人 - Map>> dreUpdateFrontGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("dreUpdateFront").toString())))); - for (Map.Entry>> dreUpdateFrontMap : dreUpdateFrontGroupMap.entrySet()) { - String dreUpdateFront = dreUpdateFrontMap.getKey(); + String nioNumbers = ""; + List> value = dreUpdateFrontMap.getValue(); + for (Map map : value) { + ParamsCollectManifestEO paramsCollectManifestEO = JSONObject.parseObject(JSONObject.toJSONString(map.get("paramsCollectManifestEO")), ParamsCollectManifestEO.class); + String nioNumber = paramsCollectManifestEO.getNioNumber(); + nioNumbers += nioNumber + ","; + } + if (StringUtils.isNotEmpty(nioNumbers)) { + nioNumbers = nioNumbers.substring(0, nioNumbers.length() - 1); + } - String nioNumbers = ""; - List> value = dreUpdateFrontMap.getValue(); - for (Map map : value) { - ParamsCollectManifestEO paramsCollectManifestEO = JSONObject.parseObject(JSONObject.toJSONString(map.get("paramsCollectManifestEO")), ParamsCollectManifestEO.class); - String nioNumber = paramsCollectManifestEO.getNioNumber(); - nioNumbers += nioNumber + ","; - } - if(StringUtils.isNotEmpty(nioNumbers)){ - nioNumbers = nioNumbers.substring(0,nioNumbers.length()-1); - } + String cnContentUpper = "您参与填写的参数 " + nioNumbers + " 已被 " + currentUser.getUsername() + " 撤回。"; + String enContentUpper = "The parameter " + nioNumbers + " you filled in have been withdrawn by " + currentUser.getUsername(); - String cnContentUpper = "您参与填写的参数 " + nioNumbers + " 已被 "+ currentUser.getUsername() +" 撤回。"; - String enContentUpper = "The parameter " + nioNumbers + " you filled in have been withdrawn by "+ currentUser.getUsername(); + // 消息内容 + SysUser sysUser = sysUserService.getUserByName(dreUpdateFront); + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; - // 消息内容 - SysUser sysUser = sysUserService.getUserByName(dreUpdateFront); - String[] thirdIds = new String[1]; - thirdIds[0] = sysUser.getThirdId(); - String urlParamsStr = parseUrlParams(paramsManifestEO); - String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); + feishuMsgVo.setCnContentUpper(cnContentUpper); + feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + + "\n发起人: " + currentUser.getUsername()); + feishuMsgVo.setEnContentUpper(enContentUpper); + feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + + "\nInitiator: " + currentUser.getUsername()); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); + try { + this.feishuService.sendCard(thirdIds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } - FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); - feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); - feishuMsgVo.setCnContentUpper(cnContentUpper); - feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + - "\n发起人: " + currentUser.getUsername()); - feishuMsgVo.setEnContentUpper(enContentUpper); - feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + - "\nInitiator: " + currentUser.getUsername()); - feishuMsgVo.setUrl(hrefFeishu); - feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); - try { - this.feishuService.sendCard(thirdIds, feishuMsgVo); - } catch (IOException e) { - log.error("飞书消息推送失败"); - } - } + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + // 修改后填写人 + Map>> dreUpdateAfterGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("dreUpdateAfter").toString())))); + for (Map.Entry>> dreUpdateAfterMap : dreUpdateAfterGroupMap.entrySet()) { + String dreUpdateAfter = dreUpdateAfterMap.getKey(); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - // 修改后填写人 - Map>> dreUpdateAfterGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("dreUpdateAfter").toString())))); - for (Map.Entry>> dreUpdateAfterMap : dreUpdateAfterGroupMap.entrySet()) { - String dreUpdateAfter = dreUpdateAfterMap.getKey(); + // 消息内容 + SysUser sysUser = sysUserService.getUserByName(dreUpdateAfter); + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; - // 消息内容 - SysUser sysUser = sysUserService.getUserByName(dreUpdateAfter); - String[] thirdIds = new String[1]; - thirdIds[0] = sysUser.getThirdId(); - String urlParamsStr = parseUrlParams(paramsManifestEO); - String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); + feishuMsgVo.setCnContentUpper("您好," + currentUser.getUsername() + "向您分发了认证参数填写任务,请及时处理。"); + feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + + "\n发起人: " + currentUser.getUsername() + + "\n截止时间: " + sdf.format(deadline)); + feishuMsgVo.setEnContentUpper("Hello! " + currentUser.getUsername() + " has assigned the task of filling in Homo Parameter to you. Please address it in a timely manner."); + feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + + "\nInitiator: " + currentUser.getUsername() + + "\nDue Date: " + sdf.format(deadline)); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); + try { + this.feishuService.sendCard(thirdIds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } + } + } - FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); - feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); - feishuMsgVo.setCnContentUpper("您好,"+ currentUser.getUsername() +"向您分发了认证参数填写任务,请及时处理。"); - feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + - "\n发起人: " + currentUser.getUsername() + - "\n截止时间: " + sdf.format(deadline)); - feishuMsgVo.setEnContentUpper("Hello! "+ currentUser.getUsername() +" has assigned the task of filling in Homo Parameter to you. Please address it in a timely manner."); - feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + - "\nInitiator: " + currentUser.getUsername() + - "\nDue Date: " + sdf.format(deadline)); - feishuMsgVo.setUrl(hrefFeishu); - feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); - try { - this.feishuService.sendCard(thirdIds, feishuMsgVo); - } catch (IOException e) { - log.error("飞书消息推送失败"); - } - } - } - } + private void deadlineDateMap(Map> today, ParamsCollectManifestEO collectManifestEO, String thirdId) { + List stringList = today.get(thirdId); + if (ObjectUtils.isEmpty(stringList)) { + stringList = new ArrayList<>(); + stringList.add("NIO-" + collectManifestEO.getNioNumber()); + today.put(thirdId, stringList); + } else { + stringList.add("NIO-" + collectManifestEO.getNioNumber()); + } + } - private void deadlineDateMap(Map> today, ParamsCollectManifestEO collectManifestEO, String thirdId) { - List stringList = today.get(thirdId); - if (ObjectUtils.isEmpty(stringList)) { - stringList = new ArrayList<>(); - stringList.add("NIO-" + collectManifestEO.getNioNumber()); - today.put(thirdId, stringList); - } else { - stringList.add("NIO-" + collectManifestEO.getNioNumber()); - } - } + private int countChar(String str, String searchChar) { + int count = 0; + int origialLength = str.length(); + str = str.replace(searchChar, ""); + int newLength = str.length(); + count = origialLength - newLength; + return count; - private int countChar(String str, String searchChar) { - int count = 0; - int origialLength = str.length(); - str = str.replace(searchChar, ""); - int newLength = str.length(); - count = origialLength - newLength; - return count; + } - } + /** + * 创建高级查询条件 + * + * @param queryConditionVOList + * @param sqlJoinSb + */ + @Override + public void createAdvanceedSearchCondition(List queryConditionVOList, StringBuilder sqlJoinSb) { + if (CollectionUtils.isNotEmpty(queryConditionVOList)) { + sqlJoinSb.append(" and ( "); - /** - * 创建高级查询条件 - * @param queryConditionVOList - * @param sqlJoinSb - */ - @Override - public void createAdvanceedSearchCondition(List queryConditionVOList,StringBuilder sqlJoinSb){ - if(CollectionUtils.isNotEmpty(queryConditionVOList)){ - sqlJoinSb.append(" and ( "); + int count = 0; + for (QueryConditionVO queryConditionVO : queryConditionVOList) { + String type = queryConditionVO.getType(); + String rule = queryConditionVO.getRule(); + String ruleLike = ""; + if (QueryRuleEnum.LEFT_LIKE.getCondition().equals(rule) || QueryRuleEnum.RIGHT_LIKE.getCondition().equals(rule)) { + ruleLike = QueryRuleEnum.LIKE.getCondition(); + } + String field = queryConditionVO.getField(); + if (StringUtils.equals(field, "paramsNumber")) { + field = "nio_number"; + } + String val = queryConditionVO.getVal(); - int count = 0; - for (QueryConditionVO queryConditionVO : queryConditionVOList) { - String type = queryConditionVO.getType(); - String rule = queryConditionVO.getRule(); - String ruleLike = ""; - if(QueryRuleEnum.LEFT_LIKE.getCondition().equals(rule) || QueryRuleEnum.RIGHT_LIKE.getCondition().equals(rule)){ - ruleLike = QueryRuleEnum.LIKE.getCondition(); - } - String field = queryConditionVO.getField(); - if(StringUtils.equals(field,"paramsNumber")){ - field = "nio_number"; - } - String val = queryConditionVO.getVal(); + if (StringUtils.isNotEmpty(val)) { + count++; + //从第二个查询条件开始拼接type(and或or) + if (count > 1) { + sqlJoinSb.append(" " + type + " "); + } - if(StringUtils.isNotEmpty(val)){ - count++; - //从第二个查询条件开始拼接type(and或or) - if (count > 1) { - sqlJoinSb.append(" " + type + " "); - } - - // 如果该字段是认证类别字段,单独做处理。 - if(StringUtils.equals(field,"certCategory")) { + // 如果该字段是认证类别字段,单独做处理。 + if (StringUtils.equals(field, "certCategory")) { /*QueryWrapper categoryParamsQueryWrap = new QueryWrapper<>(); if(StringUtils.equals(rule, QueryRuleEnum.EQ.getCondition())){ @@ -6627,92 +6636,92 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl categoryParamsQueryWrap = new QueryWrapper<>(); - if(StringUtils.equals(rule, QueryRuleEnum.EQ.getCondition())){ - categoryParamsQueryWrap.lambda().eq(CertCategoryParamsInfoPublishEO::getParamsNumber,val); - }else if(StringUtils.equals(rule,QueryRuleEnum.NE.getCondition())){ - categoryParamsQueryWrap.lambda().ne(CertCategoryParamsInfoPublishEO::getParamsNumber,val); - }else if(StringUtils.equals(rule,QueryRuleEnum.LIKE.getCondition())){ - categoryParamsQueryWrap.lambda().like(CertCategoryParamsInfoPublishEO::getParamsNumber,val); - }else if(StringUtils.equals(rule,QueryRuleEnum.LEFT_LIKE.getCondition())){ - categoryParamsQueryWrap.lambda().likeLeft(CertCategoryParamsInfoPublishEO::getParamsNumber,val); - }else if(StringUtils.equals(rule,QueryRuleEnum.RIGHT_LIKE.getCondition())){ - categoryParamsQueryWrap.lambda().likeRight(CertCategoryParamsInfoPublishEO::getParamsNumber,val); - } + // 如果该字段是认证类别编号字段,单独做处理。 + if (StringUtils.equals(field, "nio_number")) { + QueryWrapper categoryParamsQueryWrap = new QueryWrapper<>(); + if (StringUtils.equals(rule, QueryRuleEnum.EQ.getCondition())) { + categoryParamsQueryWrap.lambda().eq(CertCategoryParamsInfoPublishEO::getParamsNumber, val); + } else if (StringUtils.equals(rule, QueryRuleEnum.NE.getCondition())) { + categoryParamsQueryWrap.lambda().ne(CertCategoryParamsInfoPublishEO::getParamsNumber, val); + } else if (StringUtils.equals(rule, QueryRuleEnum.LIKE.getCondition())) { + categoryParamsQueryWrap.lambda().like(CertCategoryParamsInfoPublishEO::getParamsNumber, val); + } else if (StringUtils.equals(rule, QueryRuleEnum.LEFT_LIKE.getCondition())) { + categoryParamsQueryWrap.lambda().likeLeft(CertCategoryParamsInfoPublishEO::getParamsNumber, val); + } else if (StringUtils.equals(rule, QueryRuleEnum.RIGHT_LIKE.getCondition())) { + categoryParamsQueryWrap.lambda().likeRight(CertCategoryParamsInfoPublishEO::getParamsNumber, val); + } - List categoryParamsList = this.certCategoryParamsInfoPublishEOService.list(categoryParamsQueryWrap); - List nioNumberList = categoryParamsList.stream().map(CertCategoryParamsInfoPublishEO::getNioNumber) - .collect(Collectors.toList()); - StringBuilder nioNumberSb = new StringBuilder(); - for (int i = 0; i < nioNumberList.size(); i++) { - nioNumberSb.append("'").append(nioNumberList.get(i).replaceAll("'","\'")).append("'"); - if(i+1 < nioNumberList.size()){ - nioNumberSb.append(","); - } - } + List categoryParamsList = this.certCategoryParamsInfoPublishEOService.list(categoryParamsQueryWrap); + List nioNumberList = categoryParamsList.stream().map(CertCategoryParamsInfoPublishEO::getNioNumber) + .collect(Collectors.toList()); + StringBuilder nioNumberSb = new StringBuilder(); + for (int i = 0; i < nioNumberList.size(); i++) { + nioNumberSb.append("'").append(nioNumberList.get(i).replaceAll("'", "\'")).append("'"); + if (i + 1 < nioNumberList.size()) { + nioNumberSb.append(","); + } + } - if(StringUtils.isNotEmpty(nioNumberSb.toString())){ - sqlJoinSb.append(" or ").append(field).append(" in (").append(nioNumberSb.toString()).append(")"); - } + if (StringUtils.isNotEmpty(nioNumberSb.toString())) { + sqlJoinSb.append(" or ").append(field).append(" in (").append(nioNumberSb.toString()).append(")"); + } - sqlJoinSb.append(")"); - } - } - } - sqlJoinSb.append(" ) "); - } - } + sqlJoinSb.append(")"); + } + } + } + sqlJoinSb.append(" ) "); + } + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java index 5917edce8..b151f9ca5 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java @@ -1824,16 +1824,7 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl> configDataVOList = (List>) paramsReportConfigDataMap.get("list"); - // 判断是新增还是修改 - ParamsConfigDataEO oldConfigDataEO = getConfigDataEOByConfigIdAndCollectManifestId(paramsReportConfigEOId, paramsCollectManifestId, paramsReportConfigDataEOList); - if (ObjectUtil.isNotEmpty(oldConfigDataEO)) { - paramsReportConfigDataEO.setId(oldConfigDataEO.getId()); - } - //******************配置2被添加了********************** - logCnContent.append(paramsReportConfigEO.getConfigName()).append("的"); - logEnContent.append(paramsReportConfigEO.getConfigName()); - configNameCn = paramsReportConfigEO.getConfigName()+"的"; - configNameEn = paramsReportConfigEO.getConfigName(); + Map paramsConfigDataVOMap = (Map) paramsReportConfigDataMap.get("paramsConfigData"); for (Map.Entry paramsConfigDataMap : paramsConfigDataVOMap.entrySet()) {