diff --git a/jero-boot/db/蔚来标准sql/dev_2nd_period.sql b/jero-boot/db/蔚来标准sql/dev_2nd_period.sql index ce6eff01d..1dcf622f2 100644 --- a/jero-boot/db/蔚来标准sql/dev_2nd_period.sql +++ b/jero-boot/db/蔚来标准sql/dev_2nd_period.sql @@ -59,4 +59,14 @@ CREATE TABLE `params_report_detail_log` ( `params_report_id` varchar(36) DEFAULT NULL COMMENT '上报库id', `params_report_detail_id` varchar(36) DEFAULT NULL COMMENT '上报库参数项id', PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +ALTER TABLE `laws_weilai`.`params_collect_manifest` + ADD COLUMN `references_col` varchar(5000) NULL COMMENT '参考列' AFTER `version`; + +ALTER TABLE `laws_weilai`.`params_collect_manifest_history` + ADD COLUMN `references_col` varchar(5000) NULL COMMENT '参考列' AFTER `version`; +ALTER TABLE `laws_weilai`.`params_manifest` + ADD COLUMN `references_col_name` varchar(255) NULL COMMENT '参数项清单的参考列名称' AFTER `project_version_id`; + +INSERT INTO `laws_weilai`.`onl_cgform_field`(`id`, `cgform_head_id`, `db_field_name`, `db_field_en_name`, `db_field_txt`, `order_num`, `db_field_name_old`, `db_is_key`, `db_is_null`, `db_type`, `db_length`, `db_point_length`, `db_default_val`, `dict_field`, `dict_table`, `dict_text`, `field_show_type`, `field_href`, `field_length`, `field_valid_type`, `field_must_input`, `field_extend_json`, `field_default_value`, `is_query`, `is_show_form`, `is_show_list`, `is_read_only`, `query_mode`, `main_table`, `main_field`, `update_by`, `update_time`, `create_time`, `create_by`, `converter`, `query_def_val`, `query_dict_text`, `query_dict_field`, `query_dict_table`, `query_show_type`, `query_config_flag`, `query_valid_type`, `query_must_input`, `sort_flag`, `show_area`, `is_show_laws_list`, `is_show_search`, `is_delete`, `is_model`, `dict_id`) VALUES ('a183d186bc94f0db002bbb070017f14c', '9ca1773d2a484d2fadae38491ad51aa1', 'references_col', ' References Column', '参考列', 14, NULL, 0, 1, 'string', 500, 0, '', '', '', '', 'text', '', 120, NULL, '0', '', '', 0, 0, 1, 0, 'single', '', '', NULL, NULL, '2022-12-06 14:29:12', 'admin', '', '', '', '', '', 'text', '0', NULL, NULL, '0', NULL, NULL, NULL, 0, '7', NULL); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java index 02a4fb522..a4da44ec2 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java @@ -56,9 +56,10 @@ public class ParamsCollectManifestEOController extends JeroController>> getHeader(@RequestParam(name = "paramsManifestId") String paramsManifestId, + @RequestParam(name = "projectName") String projectName, @RequestParam(name = "flag") String flag, @RequestParam(name = "cut") String cut) { - List> list = paramsCollectManifestEOService.getHeader(paramsManifestId, flag, cut); + List> list = paramsCollectManifestEOService.getHeader(paramsManifestId, flag, cut, projectName); return Result.OK(list); } @@ -565,6 +566,48 @@ public class ParamsCollectManifestEOController extends JeroController addReferencesCol(@RequestParam(value = "paramsManifestId") String paramsManifestId, + @RequestParam(value = "paramsReportId") String paramsReportId, + @RequestParam(value = "paramsReportConfigId") String paramsReportConfigId, + @RequestParam(value = "paramsReportConfigName") String paramsReportConfigName) { + boolean isSuccess = paramsCollectManifestEOService.addReferencesCol(paramsManifestId, paramsReportId, paramsReportConfigId, paramsReportConfigName); + if (isSuccess) { + return Result.OK("引用参考列成功!"); + } else { + return Result.error("引用参考列失败!"); + } + } + + /** + * 认证工程师-更新参考列 + * + * @param paramsCollectManifestVO + * @return + */ + @AutoLog(value = "参数项收集清单-认证工程师-更新参考列") + @ApiOperation(value="参数项收集清单-认证工程师-更新参考列", notes="参数项收集清单-认证工程师-更新参考列") + @PostMapping(value = "/updateReferencesCol") +// @RequiresPermissions("params:collectManifest:save") + public Result updateReferencesCol(@RequestBody ParamsCollectManifestVO paramsCollectManifestVO) { + boolean isSuccess = paramsCollectManifestEOService.updateReferencesCol(paramsCollectManifestVO.getConfigDataList(), paramsCollectManifestVO.getParamsManifestId()); + if (isSuccess) { + return Result.OK("更新参考列成功!"); + } else { + return Result.error("更新参考列失败!"); + } + } + diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsCollectManifestEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsCollectManifestEO.java index ba0c48f8b..7159b9401 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsCollectManifestEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsCollectManifestEO.java @@ -53,6 +53,9 @@ public class ParamsCollectManifestEO extends ParamsCollectManifestBaseEO impleme @ApiModelProperty(value = "版本") private Integer version; + @ApiModelProperty(value = "参考列") + private String referencesCol; + @TableField(exist = false) private String userTypes; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsCollectManifestHistoryEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsCollectManifestHistoryEO.java index 027aa1f2f..c0ebc31a4 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsCollectManifestHistoryEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsCollectManifestHistoryEO.java @@ -34,4 +34,7 @@ public class ParamsCollectManifestHistoryEO extends ParamsCollectManifestBaseEO @ApiModelProperty(value = "版本") private Integer version; + + @ApiModelProperty(value = "参考列") + private String referencesCol; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsManifestEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsManifestEO.java index d4b022ffa..8b69c75d7 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsManifestEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/entity/ParamsManifestEO.java @@ -112,4 +112,7 @@ public class ParamsManifestEO implements Serializable { @ApiModelProperty(value = "项目相关版本对应的项目id") private String projectVersionId; + @ApiModelProperty(value = "参数项清单的参考列名称") + private String referencesColName; + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestEOMapper.xml index 6eb7a798b..f8147c1a5 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestEOMapper.xml @@ -32,6 +32,7 @@ + diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestHistoryEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestHistoryEOMapper.xml index 7ad4d613a..7ef7f892a 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestHistoryEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsCollectManifestHistoryEOMapper.xml @@ -29,6 +29,7 @@ + diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestEOMapper.xml index 9e9dbf9ef..9b618d292 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestEOMapper.xml @@ -19,6 +19,7 @@ + diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestHistoryEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestHistoryEOMapper.xml index f0ed93178..c3f9911f4 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestHistoryEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestHistoryEOMapper.xml @@ -16,5 +16,6 @@ + \ No newline at end of file diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java index 8ba1dfc21..2b198f223 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java @@ -86,7 +86,7 @@ public interface IParamsCollectManifestEOService extends IService> getHeader(String paramsManifestId, String flag, String cut); + List> getHeader(String paramsManifestId, String flag, String cut, String projectName); /** * 提交 @@ -182,4 +182,9 @@ public interface IParamsCollectManifestEOService extends IService> configDataList, String paramsManifestId); } 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 b06af6832..e71a2ec80 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 @@ -436,6 +436,20 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl 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<>(); @@ -747,6 +761,279 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl 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()); + + 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)) { + + 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)) { + + 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)) { + + 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)) { + + 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)) { + + 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()); + } + + 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)); + } + + paramsConfigDataVOList.add(pullConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); + + } else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) { + + 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()); + } + + 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)); + } + + paramsConfigDataVOList.add(pullMoreConfigDataVO); + paramsConfigDataVOList.add(textConfigDataVO); + + } else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) { + + 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()); + } + + 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)); + } + + paramsConfigDataVOList.add(textConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); + + } else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) { + + 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()); + } + + 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)); + } + + paramsConfigDataVOList.add(pullConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); + + } else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) { + + 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()); + } + + 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)); + } + + paramsConfigDataVOList.add(pullMoreConfigDataVO); + paramsConfigDataVOList.add(fileConfigDataVO); + + } else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) { + + 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()); + } + + 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)); + } + + 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); + + } + return paramsConfigDataVOList; + } + private List> getControlValueMapList(String controlValue) { List> controlValueMapList = new ArrayList<>(); if (StringUtils.isNotEmpty(controlValue)) { @@ -771,12 +1058,13 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl> getHeader(String paramsManifestId, String flag, String cut) { + 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) { @@ -803,7 +1091,6 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl paramsCollectManifestEOList = paramsCollectManifestEOMapper.listInfo(queryEO); + + // 获取上报库的配置数据 + List paramsReportConfigDataEOList = paramsReportDetailEOService.listInfoForReferencesCol(paramsReportId, paramsReportConfigId); + + // 配置数据重构后入库 + List updateEOList = new ArrayList<>(); + for (ParamsReportConfigDataEO paramsReportConfigDataEO : paramsReportConfigDataEOList) { + StringBuilder referencesColBuilder = new StringBuilder(); + 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.getFileConnectId())) { + referencesColBuilder.append(paramsReportConfigDataEO.getFileConnectId()).append("#"); + } else { + referencesColBuilder.append(" ").append("#"); + } + + String referencesCol = referencesColBuilder.toString(); + List pcmList = paramsCollectManifestEOList.stream() + .filter(e->paramsReportConfigDataEO.getNioNumber().equals(e.getNioNumber())).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(pcmList)) { + if (pcmList.get(0).getControlType().equals(paramsReportConfigDataEO.getControlType())) { // 控件类型相同 才能引用 + ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO(); + updateCollectManifestEO.setId(pcmList.get(0).getId()); + updateCollectManifestEO.setReferencesCol(referencesCol); + updateEOList.add(updateCollectManifestEO); + } + } + + } + + // 修改参数清单的参考列名称 + ParamsManifestEO paramsManifestEO = new ParamsManifestEO(); + paramsManifestEO.setId(paramsManifestId); + paramsManifestEO.setReferencesColName(paramsReportConfigName); + paramsManifestEOService.updateById(paramsManifestEO); + + // 修改参数项 参考列 + return updateBatchById(updateEOList); + } + + @Override + public boolean updateReferencesCol(List> configDataList, String paramsManifestId) { + List updateEOList = new ArrayList<>(); + // 处理数据 + for (Map map : configDataList) { + String paramsCollectManifestId = (String) map.get("id"); + + // 添加配置数据 + for (Map.Entry entry : map.entrySet()) { + StringBuilder referncesColBuilder = new StringBuilder(); + ParamsConfigDataEO paramsConfigDataEO = new ParamsConfigDataEO(); + if ("id".equals(entry.getKey())) { + continue; + } + + // 取值 + Map paramsConfigDataMap = (Map) entry.getValue(); + // 无法转ParamsConfigDataVO(遍历会出现该异常 : LinkedHashMap cannot be cast to ParamsConfigDataVO) + List> paramsConfigDataVOList = (List>) paramsConfigDataMap.get("list"); + if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { + for (Map paramsConfigDataVO : paramsConfigDataVOList) { + String type = (String) paramsConfigDataVO.get("type"); + String dataValue = (String) paramsConfigDataVO.get("dataValue"); + + 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; + } + } + + } + + if (StringUtils.isNotEmpty(dataValue)) { + referncesColBuilder.append(dataValue).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); + } + + } + } + + // 批量更新 + return updateBatchById(updateEOList); + } + private void deadlineDateMap(Map> today, ParamsCollectManifestEO collectManifestEO, String thirdId) { List stringList = today.get(thirdId); if (ObjectUtils.isEmpty(stringList)) { diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/entity/ParamsReportConfigDataEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/entity/ParamsReportConfigDataEO.java index f9ccbe80a..b55974ce4 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/entity/ParamsReportConfigDataEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/entity/ParamsReportConfigDataEO.java @@ -1,5 +1,6 @@ package com.jero.modules.cert.report.entity; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.jero.modules.cert.collect.entity.ParamsConfigDataEO; import io.swagger.annotations.ApiModel; @@ -24,4 +25,10 @@ import java.io.Serializable; public class ParamsReportConfigDataEO extends ParamsConfigDataEO implements Serializable { private static final long serialVersionUID = 1L; + @TableField(exist = false) + private String nioNumber; + + @TableField(exist = false) + private String controlType; + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/mapper/ParamsReportDetailEOMapper.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/mapper/ParamsReportDetailEOMapper.java index 4c582409d..affc1ff82 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/mapper/ParamsReportDetailEOMapper.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/mapper/ParamsReportDetailEOMapper.java @@ -2,6 +2,7 @@ package com.jero.modules.cert.report.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jero.modules.cert.report.entity.ParamsReportConfigDataEO; import com.jero.modules.cert.report.entity.ParamsReportDetailEO; import com.jero.modules.cert.report.vo.ParamsReportDetailVO; import org.apache.ibatis.annotations.Param; @@ -25,4 +26,7 @@ public interface ParamsReportDetailEOMapper extends BaseMapper> listInfoForChange(@Param("paramsReportId") String paramsReportId); + + List listInfoForReferencesCol(@Param("paramsReportId") String paramsReportId, + @Param("paramsReportConfigId") String paramsReportConfigId); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/mapper/xml/ParamsReportDetailEOMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/mapper/xml/ParamsReportDetailEOMapper.xml index 01d08cb02..642c29b42 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/mapper/xml/ParamsReportDetailEOMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/mapper/xml/ParamsReportDetailEOMapper.xml @@ -178,4 +178,15 @@ where prd.params_manifest_id = #{paramsReportId} + + \ No newline at end of file diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/IParamsReportDetailEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/IParamsReportDetailEOService.java index 25b013fdb..4d3ec06fa 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/IParamsReportDetailEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/IParamsReportDetailEOService.java @@ -2,9 +2,9 @@ package com.jero.modules.cert.report.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.cert.report.entity.ParamsReportConfigDataEO; import com.jero.modules.cert.report.entity.ParamsReportDetailEO; import com.jero.modules.cert.report.vo.ParamsReportDetailVO; -import org.apache.ibatis.annotations.Param; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -63,5 +63,9 @@ public interface IParamsReportDetailEOService extends IService ids); + // 变更扩展时的查询 List> listInfoForChange(String paramsReportId); + + // 引用参考列时的查询 + List listInfoForReferencesCol(String paramsReportId, String paramsReportConfigId); } 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 9e0e09565..e0944d306 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 @@ -1844,6 +1844,11 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl listInfoForReferencesCol(String paramsReportId, String paramsReportConfigId) { + return this.baseMapper.listInfoForReferencesCol(paramsReportId, paramsReportConfigId); + } + /** * 实体对象转成Map * @param obj 实体对象