diff --git a/jero-boot/db/蔚来标准sql/dev_2nd_period.sql b/jero-boot/db/蔚来标准sql/dev_2nd_period.sql index 1dcf622f2..c1786e240 100644 --- a/jero-boot/db/蔚来标准sql/dev_2nd_period.sql +++ b/jero-boot/db/蔚来标准sql/dev_2nd_period.sql @@ -69,4 +69,4 @@ ALTER TABLE `laws_weilai`.`params_collect_manifest_history` 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); +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/service/impl/ParamsCollectManifestEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java index e71a2ec80..655936c7b 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,18 +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 (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)) { @@ -1116,8 +1118,10 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl fieldList = onlCgformFieldService.getFieldList(ModuleEnum.PARAMS_COLLECT_MANIFEST.getValue()); @@ -3373,9 +3380,12 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl 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); + + } else { + record1.remove("references_col"); + } // 配置列 if (CollectionUtil.isNotEmpty(paramsConfigEOList)) { List fileList = new ArrayList<>(); @@ -4214,7 +4251,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl entry : map.entrySet()) { StringBuilder referncesColBuilder = new StringBuilder(); - ParamsConfigDataEO paramsConfigDataEO = new ParamsConfigDataEO(); 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>) paramsConfigDataMap.get("list"); if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { - for (Map paramsConfigDataVO : paramsConfigDataVOList) { - String type = (String) paramsConfigDataVO.get("type"); - String dataValue = (String) paramsConfigDataVO.get("dataValue"); + // 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("#"); + } - if (type.equals(ConfigDataTypeEnum.FILE.getValue())) { - if (StringUtils.isNotEmpty(dataValue) && dataValue.contains(",")) { // 新加多个文件 - // 处理文件connectId - String[] fileIdList = dataValue.split(","); + // 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("-", ""); - List updateFileList = new ArrayList<>(); - for (int i = 0; i < fileIdList.length; i++) { + //修改文件表关联信息connect_id + List oSSFileList = new ArrayList<>(); + for (String fileId : dataValue.split(",")) { OSSFile ossFile = new OSSFile(); - ossFile.setId(fileIdList[i]); + ossFile.setId(fileId); ossFile.setConnectId(connectId); - updateFileList.add(ossFile); + oSSFileList.add(ossFile); } - ossFileService.updateBatchById(updateFileList); + ossFileService.updateFileInfo(oSSFileList); 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)) { @@ -5053,15 +5117,19 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl