diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/controller/ParamsManifestEOController.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/controller/ParamsManifestEOController.java index f458a8cef..abb28d294 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/controller/ParamsManifestEOController.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/controller/ParamsManifestEOController.java @@ -195,6 +195,37 @@ public class ParamsManifestEOController extends JeroController getAllManifest(@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + @RequestParam(name="projectName",required=false) String projectName) { + IPage page = new Page(pageNo, pageSize); + IPage paramsManifestVOPage = paramsManifestEOService.getAllManifest(page, projectName); + return Result.OK(paramsManifestVOPage); + } + + /** + * 复制清单 + * 分页 + * @param + * @return + */ + @AutoLog(value = "参数清单-复制清单") + @ApiOperation(value="参数清单-复制清单", notes="参数清单-复制清单") + @PostMapping(value = "/copy") + public Result copy(ParamsManifestEO paramsManifestEO, + @RequestParam(name="sourceManifestId",required=true) String sourceManifestId) { + ParamsManifestEO manifestEO = paramsManifestEOService.copy(paramsManifestEO, sourceManifestId); + return Result.OK(manifestEO); + } diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/entity/ParamsManifestEO.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/entity/ParamsManifestEO.java index 4a0ed34f2..b0646cbce 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/entity/ParamsManifestEO.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/entity/ParamsManifestEO.java @@ -14,7 +14,6 @@ import org.jeecgframework.poi.excel.annotation.Excel; import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; -import java.util.List; /** @@ -71,8 +70,8 @@ public class ParamsManifestEO implements Serializable { private String state; /**收集完成时间*/ - @Excel(name = "收集完成时间", width = 15, format = "yyyy-MM-dd") - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @Excel(name = "收集完成时间", width = 15, format = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern="yyyy-MM-dd") @ApiModelProperty(value = "收集完成时间") private java.util.Date finishTime; diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/mapper/ParamsManifestEOMapper.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/mapper/ParamsManifestEOMapper.java index 198356d60..a099fd871 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/mapper/ParamsManifestEOMapper.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/mapper/ParamsManifestEOMapper.java @@ -13,4 +13,9 @@ import org.apache.ibatis.annotations.Param; */ public interface ParamsManifestEOMapper extends BaseMapper { IPage pageInfo(@Param("page") IPage page, @Param("paramsManifestEO") ParamsManifestEO paramsManifestEO); + + IPage pageInfoAll(@Param("projectName") String projectName, + @Param("state") String state, + IPage page); + } diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestEOMapper.xml b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestEOMapper.xml index 32addf5f3..ef5500544 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestEOMapper.xml +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/mapper/xml/ParamsManifestEOMapper.xml @@ -17,6 +17,13 @@ + + + + + + + pm.id as id, @@ -55,4 +62,22 @@ ) tmp_tb + + \ No newline at end of file diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/IParamsManifestEOService.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/IParamsManifestEOService.java index 4874820f1..09d3d108c 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/IParamsManifestEOService.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/IParamsManifestEOService.java @@ -74,4 +74,8 @@ public interface IParamsManifestEOService extends IService { boolean changeExtension(String id); List getHistoryVersionList(String title); + + IPage getAllManifest(IPage page, String projectName); + + ParamsManifestEO copy(ParamsManifestEO paramsManifestEO, String sourceManifestId); } diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java index 9ba92b582..919421c46 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java @@ -594,34 +594,51 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl paramsConfigDataVO : paramsConfigDataVOList) { - String type = (String) paramsConfigDataVO.get("type"); - String dataValue = (String) paramsConfigDataVO.get("dataValue"); + if (CollectionUtil.isNotEmpty(paramsConfigDataVOList)) { + 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 (type.equals(ConfigDataTypeEnum.TEXT.getValue())) { + paramsConfigDataEO.setTextData(dataValue); - } else if (type.equals(ConfigDataTypeEnum.PULL.getValue()) + } else if (type.equals(ConfigDataTypeEnum.PULL.getValue()) || type.equals(ConfigDataTypeEnum.PULL_MORE.getValue())) { - paramsConfigDataEO.setPullData(dataValue); + 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); + } 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; + } } - ossFileService.updateBatchById(updateFileList); - dataValue = connectId; - } - paramsConfigDataEO.setFileConnectId(dataValue); + paramsConfigDataEO.setFileConnectId(dataValue); + } } } newConfigDataEOList.add(paramsConfigDataEO); diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java index 19e50f23b..f1b308981 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.exception.JeroBootException; import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO; +import com.jero.modules.cert.collect.entity.ParamsConfigDataEO; import com.jero.modules.cert.collect.entity.ParamsConfigEO; import com.jero.modules.cert.collect.entity.ParamsManifestEO; import com.jero.modules.cert.collect.enums.CollectManifestChangeFlagEnum; @@ -15,10 +16,7 @@ import com.jero.modules.cert.collect.enums.ManifestStateEnum; import com.jero.modules.cert.collect.mapper.ParamsCollectManifestEOMapper; import com.jero.modules.cert.collect.mapper.ParamsConfigEOMapper; import com.jero.modules.cert.collect.mapper.ParamsManifestEOMapper; -import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService; -import com.jero.modules.cert.collect.service.IParamsConfigDataEOService; -import com.jero.modules.cert.collect.service.IParamsManifestEOService; -import com.jero.modules.cert.collect.service.IParamsManifestHistoryEOService; +import com.jero.modules.cert.collect.service.*; import com.jero.modules.cert.collect.vo.ParamsManifestHistoryVO; import com.jero.modules.cert.template.entity.ParamsInfoPublishEO; import com.jero.modules.cert.template.entity.ParamsTemplateEO; @@ -75,6 +73,9 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl paramsInfoPublishEOList = paramsInfoPublishEOService.getListByPublishVersion(paramsTemplateId, paramsTemplatePublishVersion); + + // 查询所有清单参数项 + ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); + paramsCollectManifestEO.setParamsManifestId(sourceManifestId); + List paramsCollectManifestEOList = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); + + // 查询清单配置 + List paramsConfigEOList = paramsConfigEOService.queryList(sourceManifestId); + + // 定义 + Map configIdMap = new HashMap<>(); // 旧-新配置id对应关系 + List addCollectManifestEOList = new ArrayList<>(); // 需要添加的参数项 + List addConfigEOList = new ArrayList<>(); // 需要添加的配置 + List addConfigDataEOList = new ArrayList<>(); // 需要添加的配置数据 + + String addManifestId = UUID.randomUUID().toString().replace("-",""); // 参数清单id + + // 配置: 复制清单的 + for (ParamsConfigEO configEO : paramsConfigEOList) { + ParamsConfigEO addConfigEO = new ParamsConfigEO(); + BeanUtils.copyProperties(configEO, addConfigEO); + String addConfigId = UUID.randomUUID().toString().replace("-", ""); + addConfigEO.setId(addConfigId); + addConfigEO.setParamsManifestId(addManifestId); + addConfigEO.setCreateBy(null); + addConfigEO.setCreateTime(null); + addConfigEO.setUpdateBy(null); + addConfigEO.setUpdateTime(null); + addConfigEO.setSysOrgCode(null); + addConfigEOList.add(addConfigEO); + + configIdMap.put(configEO.getId(), addConfigId); + } + + // 将清单参数项 和 模板参数项 对比 + for (ParamsInfoPublishEO publishEO : paramsInfoPublishEOList) { + String nioNumber = publishEO.getNioNumber(); + String controlType = publishEO.getControlType(); + String controlValues = publishEO.getControlValues(); + String controlVerify = publishEO.getControlVerify(); + + List manifestEOList = paramsCollectManifestEOList.stream() + .filter(e->nioNumber.equals(e.getNioNumber()) + && controlType.equals(e.getControlType()) + && ((controlValues != null && controlValues.equals(e.getControlValues())) || (controlValues == null && null == e.getControlValues())) + && ((controlVerify != null && controlVerify.equals(e.getControlVerify())) || (controlVerify == null && null == e.getControlVerify()))) + .collect(Collectors.toList()); + + + String addCollectManifestId = UUID.randomUUID().toString().replace("-",""); // 参数项id + if (CollectionUtil.isNotEmpty(manifestEOList)) { + ParamsCollectManifestEO manifestEO = manifestEOList.get(0); + + // 配置数据: nio编号,控件类型,控件备选值,控件校验 均一致时 将清单参数项项复制到模板参数项,否则不复制 + for (ParamsConfigEO configEO : paramsConfigEOList) { + ParamsConfigDataEO configDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(configEO.getId(), manifestEO.getId()); + + ParamsConfigDataEO addConfigDataEO = new ParamsConfigDataEO(); + BeanUtils.copyProperties(configDataEO, addConfigDataEO); + + addConfigDataEO.setId(null); + addConfigDataEO.setCreateBy(null); + addConfigDataEO.setCreateTime(null); + addConfigDataEO.setUpdateBy(null); + addConfigDataEO.setUpdateTime(null); + addConfigDataEO.setSysOrgCode(null); + addConfigDataEO.setParamsConfigId(configIdMap.get(configEO.getId())); + addConfigDataEO.setParamsCollectManifestId(addCollectManifestId); + addConfigDataEOList.add(addConfigDataEO); + + } + } + + // 固定列数据: 保留模板参数项的 + ParamsCollectManifestEO addCollectManifestEO = new ParamsCollectManifestEO(); + BeanUtils.copyProperties(publishEO, addCollectManifestEO); + addCollectManifestEO.setId(addCollectManifestId); + addCollectManifestEO.setParamsManifestId(addManifestId); + addCollectManifestEO.setState(CollectManifestStateEnum.WAIT_COLLECT.getValue()); + // 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段 + ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(paramsManifestEO.getProjectId(), addCollectManifestEO.getDutyTerritory()); + if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) { + String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson(); + if (StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段 + SysUser sysUser = sysUserService.getById(sdtId); + if (ObjectUtil.isNotEmpty(sysUser)) { + addCollectManifestEO.setSdt(sysUser.getUsername()); + } + } + } + + addCollectManifestEO.setCreateBy(null); + addCollectManifestEO.setCreateTime(null); + addCollectManifestEO.setUpdateBy(null); + addCollectManifestEO.setUpdateTime(null); + addCollectManifestEO.setSysOrgCode(null); + addCollectManifestEOList.add(addCollectManifestEO); + + } + + // 添加参数项 + paramsCollectManifestEOService.saveBatch(addCollectManifestEOList); + + // 添加配置 + paramsConfigEOService.saveBatch(addConfigEOList); + + // 添加配置数据 + paramsConfigDataEOService.saveBatch(addConfigDataEOList); + + // 添加参数清单 + paramsManifestEO.setId(addManifestId); + paramsManifestEO.setState(ManifestStateEnum.COLLECTING.getValue()); + paramsManifestEO.setVersion(1); // 默认版本为 1 + save(paramsManifestEO); + + return paramsManifestEO; + } } diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/vo/ParamsCollectManifestVO.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/vo/ParamsCollectManifestVO.java index 063979b46..9dd62e77e 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/vo/ParamsCollectManifestVO.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/vo/ParamsCollectManifestVO.java @@ -2,6 +2,7 @@ package com.jero.modules.cert.collect.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.jero.modules.cert.template.entity.ParamsInfoPublishEO; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; @@ -16,26 +17,56 @@ import java.util.Map; */ @Data public class ParamsCollectManifestVO { + + @ApiModelProperty(value = "参数模板id") private String paramsTemplateId; // 参数模板id + + @ApiModelProperty(value = "参数模板发布版本") private String paramsTemplatePublishVersion; // 参数模板发布版本 + + @ApiModelProperty(value = "nio编号") private String nioNumber; // nio编号 + + @ApiModelProperty(value = "参数名称") private String paramsName; // 参数名称 + + @ApiModelProperty(value = "责任领域") private String dutyTerritory; // 责任领域 + + @ApiModelProperty(value = "参数清单id") private String paramsManifestId; // 参数清单id + @ApiModelProperty(value = "项目id") private String projectId; // 项目id + + @ApiModelProperty(value = "添加专用") private List paramsInfoPublishEOList; // 添加专用 + + @ApiModelProperty(value = "提交专用") private List> configDataList; // 提交专用 @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "截止时间") private Date deadline; // 截止时间 + + @ApiModelProperty(value = "收集参数项ids") private String ids; // 收集参数项ids + + @ApiModelProperty(value = "工程接口人") private String sdt; // 工程接口人 + + @ApiModelProperty(value = "填写人") private String dre; // 填写人 + + @ApiModelProperty(value = "参数配置ids") private String paramsConfigIds; // 参数配置ids + + @ApiModelProperty(value = "配置列查询标识") private String configFlag; // 1-全部配置 2-非冻结配置 + @ApiModelProperty(value = "引用参数专用-从") private String sourceConfigId; // 引用参数专用 + @ApiModelProperty(value = "引用参数专用-到") private String targetConfigIds; // 引用参数专用 } diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/vo/ParamsManifestVO.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/vo/ParamsManifestVO.java new file mode 100644 index 000000000..32577bb31 --- /dev/null +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/vo/ParamsManifestVO.java @@ -0,0 +1,18 @@ +package com.jero.modules.cert.collect.vo; + +import lombok.Data; + +/** + * @Author: liyawei + * @Description: + * @Date: Created in 9:27 2022/5/17 + */ +@Data +public class ParamsManifestVO { + + private String id; + private String title; + private String projectName; + private String projectId; + private String state; +} diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsInfoEOController.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsInfoEOController.java index c967109cc..6c4c29e46 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsInfoEOController.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsInfoEOController.java @@ -110,7 +110,7 @@ public class ParamsInfoEOController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(ParamsInfoEO::getNioNumber, nioNumber); @@ -130,7 +130,7 @@ public class ParamsInfoEOController extends JeroController add(@Validated @RequestBody ParamsInfoEO paramsInfoEO) { boolean isSuccess = paramsInfoEOService.add(paramsInfoEO); if (isSuccess) { @@ -222,7 +222,7 @@ public class ParamsInfoEOController extends JeroController publish(@RequestParam(name="paramsTemplateId") String paramsTemplateId) { int publishVersion = paramsInfoPublishEOService.publishTemplate(paramsTemplateId); return Result.OK("发布版本:" + publishVersion + "成功!"); diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsTemplateEOController.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsTemplateEOController.java index 78a24bd65..1dbbf33b7 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsTemplateEOController.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsTemplateEOController.java @@ -56,6 +56,11 @@ public class ParamsTemplateEOController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.like(StringUtils.isNotEmpty(paramsTemplateEO.getParamsTemplateName()), ParamsTemplateEO::getParamsTemplateName, paramsTemplateEO.getParamsTemplateName()) .eq(StringUtils.isNotEmpty(paramsTemplateEO.getRegion()), ParamsTemplateEO::getRegion, paramsTemplateEO.getRegion()) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/entity/DummyInventoryInfoEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/entity/DummyInventoryInfoEO.java index 8440a6350..7dee14019 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/entity/DummyInventoryInfoEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/entity/DummyInventoryInfoEO.java @@ -74,34 +74,44 @@ public class DummyInventoryInfoEO implements Serializable { @ApiModelProperty(value = "标题") private java.lang.String title; + /**子标题*/ + @Excel(name = "子标题", width = 15) + @ApiModelProperty(value = "子标题") + private java.lang.String subtitle; + + /**适用地区*/ + @ApiModelProperty(value = "适用地区") + @Dict(dicCode ="region") + @Excel(name = "适用地区", width = 15, dicCode = "region") + private java.lang.String region; + /**适用范围*/ @Excel(name = "适用范围", width = 15, dicCode = "apply_scope") @ApiModelProperty(value = "适用范围") @Dict(dicCode ="apply_scope") private java.lang.String shi4Yong4Fan4Wei2; - /**适用地区*/ - @ApiModelProperty(value = "适用地区") - @Dict(dicCode ="region") - @Excel(name = "适用地区", width = 15, dicCode = "region") - private java.lang.String region; - /**状态*/ @Excel(name = "状态", width = 15,dicCode ="state") @ApiModelProperty(value = "状态") @Dict(dicCode ="state") private java.lang.String state; - /**技术领域*/ - @Excel(name = "技术领域", width = 15) - @ApiModelProperty(value = "技术领域") - private java.lang.String technologyTerritory; + /**对应标准*/ + @Excel(name = "对应标准", width = 15) + @ApiModelProperty(value = "对应标准") + private java.lang.String correspondingStandard; + @TableField(exist = false) + private java.lang.String correspondingStandardName; - @TableField(exist = false) - private java.lang.String technologyTerritoryName; + /**实施类别*/ + @Excel(name = "实施类别", width = 15,dicCode ="implement_type") + @ApiModelProperty(value = "实施类别") + @Dict(dicCode ="implement_type") + private java.lang.String implementType; - /**新车型实施日期*/ - @Excel(name = "新车型实施日期", width = 15,format = "yyyy-MM-dd") + /**新车型实施日期*/ + @Excel(name = "新车型实施日期", width = 15,format = "yyyy-MM-dd") @ApiModelProperty(value = "新车型实施日期") @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd") @@ -109,8 +119,8 @@ public class DummyInventoryInfoEO implements Serializable { @TableField(exist = false) private String xin1Che1Xing2Shi2Shi1Ri4Qi1String; - /**在产车实施日期*/ - @Excel(name = "在产车实施日期", width = 15,format = "yyyy-MM-dd") + /**在产车实施日期*/ + @Excel(name = "在产车实施日期", width = 15,format = "yyyy-MM-dd") @ApiModelProperty(value = "在产车实施日期") @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd") @@ -118,37 +128,21 @@ public class DummyInventoryInfoEO implements Serializable { @TableField(exist = false) private String implementTimeString; - /**对应标准*/ - @Excel(name = "对应标准", width = 15) - @ApiModelProperty(value = "对应标准") - private java.lang.String correspondingStandard; - @TableField(exist = false) - private java.lang.String correspondingStandardName; - /**WVTA ID*/ - @Excel(name = "WVTA ID", width = 15) + + /**WVTA ID*/ + @Excel(name = "WVTA ID", width = 15) @ApiModelProperty(value = "WVTA ID") private java.lang.String wvtaId; - /**子标题*/ - @Excel(name = "子标题", width = 15) - @ApiModelProperty(value = "子标题") - private java.lang.String subtitle; - - /**实施类别*/ - @Excel(name = "实施类别", width = 15,dicCode ="implement_type") - @ApiModelProperty(value = "实施类别") - @Dict(dicCode ="implement_type") - private java.lang.String implementType; - - /**认证类型*/ - @Excel(name = "认证类型", width = 15,dicCode ="attestation_type") + /**认证类型*/ + @Excel(name = "认证类型", width = 15,dicCode ="attestation_type") @ApiModelProperty(value = "认证类型") @Dict(dicCode ="attestation_type") private java.lang.String attestationType; - /**认证级别*/ - @Excel(name = "认证级别", width = 15,dicCode ="attestation_rank") + /**认证级别*/ + @Excel(name = "认证级别", width = 15,dicCode ="attestation_rank") @ApiModelProperty(value = "认证级别") @Dict(dicCode ="attestation_rank") private java.lang.String attestationRank; @@ -158,6 +152,14 @@ public class DummyInventoryInfoEO implements Serializable { @Excel(name = "适用增补件", width = 15) private java.lang.String applicableSupplement; + /**技术领域*/ + @Excel(name = "技术领域", width = 15) + @ApiModelProperty(value = "技术领域") + private java.lang.String technologyTerritory; + + @TableField(exist = false) + private java.lang.String technologyTerritoryName; + /**责任领域*/ @Excel(name = "责任领域", width = 15,dicCode ="duty_territory") @ApiModelProperty(value = "责任领域") diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/entity/DummyInventoryInfoEOEn.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/entity/DummyInventoryInfoEOEn.java new file mode 100644 index 000000000..7b4fb596f --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/entity/DummyInventoryInfoEOEn.java @@ -0,0 +1,268 @@ +package com.jero.modules.dummy.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; + + +/** + * @Description: 虚拟清单详情表 + * @Author: jero-boot + * @Date: 2022-04-11 + * @Version: V1.0 + */ +@Data +@TableName("dummy_inventory_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="dummy_inventory_info对象", description="虚拟清单详情表") +public class DummyInventoryInfoEOEn implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private String id; + + /**法规清单基础表id*/ + @ApiModelProperty(value = "法规清单基础表id") + private String dummyInventoryBaseId; + + /**创建人*/ + @ApiModelProperty(value = "创建人") + private String createBy; + + /**创建日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建日期") + private java.util.Date createTime; + + /**更新人*/ + @ApiModelProperty(value = "更新人") + private String updateBy; + + /**更新日期*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新日期") + private java.util.Date updateTime; + + /**所属部门*/ + @ApiModelProperty(value = "所属部门") + private String sysOrgCode; + + /**编号*/ + @Excel(name = "Number", width = 15) + @ApiModelProperty(value = "编号") + private String serialNumber; + + /**标题*/ + @Excel(name = "title", width = 15) + @ApiModelProperty(value = "标题") + private String title; + + /**子标题*/ + @Excel(name = "Sub-Title", width = 15) + @ApiModelProperty(value = "子标题") + private String subtitle; + + /**适用地区*/ + @ApiModelProperty(value = "适用地区") + @Dict(dicCode ="region") + @Excel(name = "Area", width = 15, dicCode = "region") + private String region; + + /**适用范围*/ + @Excel(name = "Scope of application", width = 15, dicCode = "apply_scope") + @ApiModelProperty(value = "适用范围") + @Dict(dicCode ="apply_scope") + private String shi4Yong4Fan4Wei2; + + /**状态*/ + @Excel(name = "state", width = 15,dicCode ="state") + @ApiModelProperty(value = "状态") + @Dict(dicCode ="state") + private String state; + + /**对应标准*/ + @Excel(name = "Compare", width = 15) + @ApiModelProperty(value = "对应标准") + private String correspondingStandard; + @TableField(exist = false) + private String correspondingStandardName; + + /**实施类别*/ + @Excel(name = "Usage", width = 15,dicCode ="implement_type") + @ApiModelProperty(value = "实施类别") + @Dict(dicCode ="implement_type") + private String implementType; + + /**新车型实施日期*/ + @Excel(name = "New Type Execute Date", width = 15,format = "yyyy-MM-dd") + @ApiModelProperty(value = "新车型实施日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + private java.util.Date xin1Che1Xing2Shi2Shi1Ri4Qi1; + @TableField(exist = false) + private String xin1Che1Xing2Shi2Shi1Ri4Qi1String; + + /**在产车实施日期*/ + @Excel(name = "New Vehicle Execute Date", width = 15,format = "yyyy-MM-dd") + @ApiModelProperty(value = "在产车实施日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + private java.util.Date implementTime; + @TableField(exist = false) + private String implementTimeString; + + /**WVTA ID*/ + @Excel(name = "WVTA ID", width = 15) + @ApiModelProperty(value = "WVTA ID") + private String wvtaId; + + /**认证类型*/ + @Excel(name = "Certification Type", width = 15,dicCode ="attestation_type") + @ApiModelProperty(value = "认证类型") + @Dict(dicCode ="attestation_type") + private String attestationType; + + /**认证级别*/ + @Excel(name = "Certification Level", width = 15,dicCode ="attestation_rank") + @ApiModelProperty(value = "认证级别") + @Dict(dicCode ="attestation_rank") + private String attestationRank; + + /**适用增补件*/ + @ApiModelProperty(value = "适用增补件") + @Excel(name = "Applicable Supplement", width = 15) + private String applicableSupplement; + + + /**技术领域*/ + @Excel(name = "Technical Field", width = 15) + @ApiModelProperty(value = "技术领域") + private String technologyTerritory; + + @TableField(exist = false) + private String technologyTerritoryName; + + /**责任领域*/ + @Excel(name = "Responsible Field", width = 15,dicCode ="duty_territory") + @ApiModelProperty(value = "责任领域") + @Dict(dicCode ="duty_territory") + private String dutyTerritory; + + /**备注*/ + @Excel(name = "Comments", width = 15) + @ApiModelProperty(value = "备注") + private String remark; + + /**设计符合性确认-交付物类型*/ + @Excel(name = "design-Deliverables", width = 15,dicCode ="deliverable_template") + @ApiModelProperty(value = "设计符合性确认-交付物类型") + @Dict(dicCode ="deliverable_template") + private String designDeliverableType; + + /**设计符合性确认-交付物模板*/ + + @ApiModelProperty(value = "设计符合性确认-交付物模板") + private String designDeliverableTemplate; + + @TableField(exist = false) + @Excel(name = "design-Deliverable Template", width = 15) + private String designDeliverableTemplateName; + + /**设计符合性确认-发起人*/ + @Excel(name = "design-Initiator", width = 15,dicCode ="fa1_qi3_ren2") + @ApiModelProperty(value = "设计符合性确认-发起人") + @Dict(dicCode ="fa1_qi3_ren2") + private String designInitiator; + + /**设计符合性确认-责任人*/ + @Excel(name = "design-Assignee", width = 15,dicCode ="ze2_ren4_ren2") + @ApiModelProperty(value = "设计符合性确认-责任人") + @Dict(dicCode ="ze2_ren4_ren2") + private String designDuty; + + /**prehomo确认-交付物类型*/ + @Excel(name = "Prehomo-Deliverables", width = 15,dicCode ="deliverable_template") + @ApiModelProperty(value = "prehomo确认-交付物类型") + @Dict(dicCode ="deliverable_template") + private String prehomoDeliverableType; + + /**prehomo确认-交付物模板*/ + + @ApiModelProperty(value = "prehomo确认-交付物模板") + private String prehomoDeliverableTemplate; + + @TableField(exist = false) + @Excel(name = "Prehomo-Deliverable Template", width = 15) + private String prehomoDeliverableTemplateName; + + /**prehomo确认-发起人*/ + @Excel(name = "Prehomo-Initiator", width = 15,dicCode ="fa1_qi3_ren2") + @ApiModelProperty(value = "prehomo确认-发起人") + @Dict(dicCode ="fa1_qi3_ren2") + private String prehomoInitiator; + + /**prehomo确认-责任人*/ + @Excel(name = "Prehomo-Assignee", width = 15,dicCode ="ze2_ren4_ren2") + @ApiModelProperty(value = "prehomo确认-责任人") + @Dict(dicCode ="ze2_ren4_ren2") + private String prehomoDuty; + + /**验证符合性确认-交付物类型*/ + @Excel(name = "verify-Deliverables", width = 15,dicCode ="deliverable_template") + @ApiModelProperty(value = "验证符合性确认-交付物类型") + @Dict(dicCode ="deliverable_template") + private String verifyDeliverableType; + + /**验证符合性确认-交付物模板*/ + + @ApiModelProperty(value = "验证符合性确认-交付物模板") + private String verifyDeliverableTemplate; + + @TableField(exist = false) + @Excel(name = "verify-Deliverable Template", width = 15) + private String verifyDeliverableTemplateName; + + /**验证符合性确认-发起人*/ + @Excel(name = "verify-Initiator", width = 15,dicCode ="fa1_qi3_ren2") + @ApiModelProperty(value = "验证符合性确认-发起人") + @Dict(dicCode ="fa1_qi3_ren2") + private String verifyInitiator; + + /**验证符合性确认-责任人*/ + @Excel(name = "verify-Assignee", width = 15,dicCode ="ze2_ren4_ren2") + @ApiModelProperty(value = "验证符合性确认-责任人") + @Dict(dicCode ="ze2_ren4_ren2") + private String verifyDuty; + + @TableField(exist = false) + private String cut; + + @TableField(exist = false) + private String ids; + + @TableField(exist = false) + private Integer pageNo; + + @TableField(exist = false) + private Integer pageSize; + + + +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryInfoEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryInfoEOServiceImpl.java index 387419cc9..98cfbaada 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryInfoEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryInfoEOServiceImpl.java @@ -16,6 +16,7 @@ import com.jero.common.util.DateUtils; import com.jero.modules.document.entity.BussDocumentLibraryEO; import com.jero.modules.document.service.IBussDocumentLibraryEOService; import com.jero.modules.dummy.entity.DummyInventoryInfoEO; +import com.jero.modules.dummy.entity.DummyInventoryInfoEOEn; import com.jero.modules.dummy.entity.DummyLogEO; import com.jero.modules.dummy.enums.DummyInventoryBaseFieldEnum; import com.jero.modules.dummy.mapper.DummyInventoryInfoEOMapper; @@ -746,7 +747,13 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl 8){ String flag = ""; if(8 < j && j < 13){ - flag ="设计"; + if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){ + flag ="设计"; + }else{ + flag ="design "; + } key = flag + headerCell.getStringCellValue(); } if(12 < j && j < 17){ - flag ="pre"; + if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){ + flag ="pre"; + }else{ + flag ="pre "; + } key = flag + headerCell.getStringCellValue(); } if(16 < j && j < 21){ - flag ="验证"; + if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){ + flag ="验证"; + }else{ + flag ="verify "; + } key = flag + headerCell.getStringCellValue(); } @@ -1437,6 +1456,37 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl fileInfos = getOssFiles(dataList); //数据转换(文件名称,技术领域,对应标准) - dataTransition(dataList, fileInfos); + dataTransition(dataList, fileInfos,dummyInventoryInfoEO); OutputStream os = null; try { @@ -1523,7 +1573,19 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl dataListEn = new ArrayList<>(); + for (DummyInventoryInfoEO inventoryInfoEO : dataList) { + DummyInventoryInfoEOEn dummyInventoryInfoEOEn = new DummyInventoryInfoEOEn(); + BeanUtils.copyProperties(inventoryInfoEO,dummyInventoryInfoEOEn); + dataListEn.add(dummyInventoryInfoEOEn); + } + //下拉选中英文转换 + transition(dataListEn); + workbook = ExcelExportUtil.exportExcel(exportParams, DummyInventoryInfoEOEn.class, dataListEn); + } workbook.write(excelOS); excelOS.flush(); @@ -1551,12 +1613,120 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl dataListEn){ + //下拉选数据字典 + List sysCategoryList = sysCategoryService.list(); + + //技术领域数据字典 + List sysDictItems = sysDictItemServiceImpl.selectItemsAll(); + for (DummyInventoryInfoEOEn dummyInventoryInfoEOEn : dataListEn) { + //适用地区 + String region = dummyInventoryInfoEOEn.getRegion(); + String pullRegion = pull(sysDictItems, region,"region"); + if(StringUtils.isNotBlank(pullRegion)){ + dummyInventoryInfoEOEn.setRegion(pullRegion); + } + //适用范围shi4Yong4Fan4Wei2 + String shi4Yong4Fan4Wei2 = dummyInventoryInfoEOEn.getShi4Yong4Fan4Wei2(); + String pullshi4Yong4Fan4Wei2 = pull(sysDictItems, shi4Yong4Fan4Wei2,"apply_scope"); + if(StringUtils.isNotBlank(pullshi4Yong4Fan4Wei2)){ + dummyInventoryInfoEOEn.setShi4Yong4Fan4Wei2(pullshi4Yong4Fan4Wei2); + } + //状态state + String state = dummyInventoryInfoEOEn.getState(); + String pullState = pull(sysDictItems, state,"state"); + if(StringUtils.isNotBlank(pullState)){ + dummyInventoryInfoEOEn.setState(pullState); + } + ///认证类型attestationType + String attestationType = dummyInventoryInfoEOEn.getAttestationType(); + String pullAttestationType = pull(sysDictItems, attestationType,"attestation_type"); + if(StringUtils.isNotBlank(pullAttestationType)){ + dummyInventoryInfoEOEn.setAttestationType(pullAttestationType); + } + //责任领域dutyTerritory + String dutyTerritory = dummyInventoryInfoEOEn.getDutyTerritory(); + String pullDutyTerritory = pull(sysDictItems, dutyTerritory,"duty_territory"); + if(StringUtils.isNotBlank(pullDutyTerritory)){ + dummyInventoryInfoEOEn.setDutyTerritory(pullDutyTerritory); + } + //认证级别attestationRank + String attestationRank = dummyInventoryInfoEOEn.getAttestationRank(); + String pullAttestationRank = pull(sysDictItems, attestationRank,"attestation_rank"); + if(StringUtils.isNotBlank(pullAttestationRank)){ + dummyInventoryInfoEOEn.setAttestationRank(pullAttestationRank); + } + //实施类别implementType + String implementType = dummyInventoryInfoEOEn.getImplementType(); + String pullImplementType = pull(sysDictItems, implementType,"implement_type"); + if(StringUtils.isNotBlank(pullImplementType)){ + dummyInventoryInfoEOEn.setImplementType(pullImplementType); + } + //设计交付物类型designDeliverableType + String designDeliverableType = dummyInventoryInfoEOEn.getDesignDeliverableType(); + String pullDesignDeliverableType = pull(sysDictItems, designDeliverableType,"deliverable_template"); + if(StringUtils.isNotBlank(pullDesignDeliverableType)){ + dummyInventoryInfoEOEn.setDesignDeliverableType(pullDesignDeliverableType); + } + + //pre交付物类型prehomoDeliverableType + String prehomoDeliverableType = dummyInventoryInfoEOEn.getPrehomoDeliverableType(); + String pullPrehomoDeliverableType = pull(sysDictItems, prehomoDeliverableType,"deliverable_template"); + if(StringUtils.isNotBlank(pullPrehomoDeliverableType)){ + dummyInventoryInfoEOEn.setPrehomoDeliverableType(pullPrehomoDeliverableType); + } + + //验证交付物类型verifyDeliverableType + String verifyDeliverableType = dummyInventoryInfoEOEn.getVerifyDeliverableType(); + String pullVerifyDeliverableType = pull(sysDictItems, verifyDeliverableType,"deliverable_template"); + if(StringUtils.isNotBlank(pullVerifyDeliverableType)){ + dummyInventoryInfoEOEn.setVerifyDeliverableType(pullVerifyDeliverableType); + } + + + //技术领域 +// String technologyTerritory = dummyInventoryInfoEOEn.getTechnologyTerritory(); +// if(StringUtils.isNotBlank(technologyTerritory)){ +// StringBuilder sb = new StringBuilder(); +// for (String s : technologyTerritory.split(",")) { +// List collect = sysCategoryList.stream() +// .filter(e -> s.equals(e.getId())).collect(Collectors.toList()); +// if(collect.size() != 0){ +// sb.append(collect.get(0).getEnName()+","); +// } +// } +// if(StringUtils.isNotBlank(sb)){ +// String substring = sb.substring(0, sb.length() - 1); +// dummyInventoryInfoEOEn.setTechnologyTerritory(substring); +// } +// } + } + } + + private String pull(List sysDictItems, String field,String dictCode) { + if(StringUtils.isBlank(field)){ + return null; + } + StringBuilder sb = new StringBuilder(); + for (String s : field.split(",")) { + List collect = sysDictItems.stream().filter(e -> dictCode.equals(e.getDictCode()) && s.equals(e.getItemValue())).collect(Collectors.toList()); + if(collect.size() != 0){ + sb.append(collect.get(0).getEnName() + ","); + } + } + if(StringUtils.isNotBlank(sb)){ + String substring = sb.substring(0, sb.length() - 1); + return substring; + } + return null; + } + /** * 数据转换(文件名称,技术领域,对应标准) * @param dataList * @param fileInfos */ - private void dataTransition(List dataList, List fileInfos) { + private void dataTransition(List dataList, List fileInfos,DummyInventoryInfoEO dummyInventoryInfoEO) { //技术领域 List sysCategoryList = sysCategoryService.list(); //文档库数据 @@ -1601,7 +1771,11 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl collect = sysCategoryList.stream() .filter(e -> s.equals(e.getId())).collect(Collectors.toList()); if(collect.size() != 0){ - sb.append(collect.get(0).getName()+","); + if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){ + sb.append(collect.get(0).getName()+","); + }else{ + sb.append(collect.get(0).getEnName()+","); + } } } if(StringUtils.isNotBlank(sb)){ diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLibraryBaseController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLibraryBaseController.java index 789f55ff8..f17b026db 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLibraryBaseController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectLibraryBaseController.java @@ -57,8 +57,8 @@ public class ProjectLibraryBaseController extends JeroController> queryList() { - List list = projectLibraryBaseService.queryList(); + public Result> queryList(ProjectLibraryBase projectLibraryBase) { + List list = projectLibraryBaseService.getList(projectLibraryBase); return Result.OK(list); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectLibraryBaseMapper.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectLibraryBaseMapper.java index 06e9bb28c..1611566e0 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectLibraryBaseMapper.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/ProjectLibraryBaseMapper.java @@ -3,6 +3,7 @@ package com.jero.modules.project.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.jero.modules.project.entity.ProjectLibraryBase; +import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; @@ -17,6 +18,8 @@ public interface ProjectLibraryBaseMapper extends BaseMapper /**分页列表*/ IPage queryPageList(IPage page, Map params); + List getList(@Param("projectLibraryBase") ProjectLibraryBase projectLibraryBase); + /**根据id查询*/ List queryById(String id); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLibraryBaseMapper.xml b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLibraryBaseMapper.xml index f8e35c3f6..caae401ed 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLibraryBaseMapper.xml +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/mapper/xml/ProjectLibraryBaseMapper.xml @@ -109,6 +109,69 @@ order by plb.create_time desc + - \ No newline at end of file + diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLibraryBaseService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLibraryBaseService.java index abdee6784..cf0703eaf 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLibraryBaseService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectLibraryBaseService.java @@ -61,7 +61,7 @@ public interface IProjectLibraryBaseService extends IService * * @return */ - List queryList(); + List getList(ProjectLibraryBase projectLibraryBase); /** * 分页列表查询 diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java index 8cb90354d..1c6dd825a 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLibraryBaseServiceImpl.java @@ -138,8 +138,9 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl queryList() { - return list(); + public List getList(ProjectLibraryBase projectLibraryBase) { + List list = projectLibraryBaseMapper.getList(projectLibraryBase); + return list; } /** diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectStatusBoardServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectStatusBoardServiceImpl.java index 19efebc90..1d801d957 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectStatusBoardServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectStatusBoardServiceImpl.java @@ -63,10 +63,10 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService @Override public List> timelineList(ProjectLibraryBase projectLibraryBase, HttpServletRequest req) { - QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(projectLibraryBase, req.getParameterMap()); +// QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(projectLibraryBase, req.getParameterMap()); //项目库信息 - List projectLibraryBaseList = projectLibraryBaseService.list(queryWrapper); + List projectLibraryBaseList = projectLibraryBaseService.getList(projectLibraryBase); List> result = new ArrayList<>(); if(projectLibraryBaseList.size() != 0){ //项目库id @@ -85,12 +85,16 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService */ @Override public List> scheduleInfoList(ProjectLibraryBase projectLibraryBase, HttpServletRequest req) { + if(StringUtils.isNotBlank(projectLibraryBase.getProjectName())){ + projectLibraryBase.setProjectName(projectLibraryBase.getProjectName().replace("*","")); + } //目标市场数据字典 List dictItemList = sysDictItemServiceImpl.selectItemsByDictCode("region"); - QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(projectLibraryBase, req.getParameterMap()); - queryWrapper.orderByDesc("create_time"); - //项目库信息 - List projectLibraryBaseList = projectLibraryBaseService.list(queryWrapper); +// QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(projectLibraryBase, req.getParameterMap()); +// queryWrapper.orderByDesc("create_time"); +// //项目库信息 +// List projectLibraryBaseList = projectLibraryBaseService.list(queryWrapper); + List projectLibraryBaseList = projectLibraryBaseService.getList(projectLibraryBase); List> result = new ArrayList<>(); if(projectLibraryBaseList.size() != 0){ @@ -373,7 +377,7 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService }else{ calendarAfter.setTime(new Date()); } - calendarAfter.add(Calendar.YEAR, +6); + calendarAfter.add(Calendar.MONTH, +5); Date dateAfter = calendarAfter.getTime(); Calendar min = Calendar.getInstance(); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java index f6adbf734..f807665e6 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java @@ -2265,9 +2265,13 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl> listBySerialNumber = documentLibraryEOService.getListBySerialNumber(value); + if (value.endsWith(",")){ + value = value.substring(0, value.length() - 1); + } + //判断库中是否存在,如果存在则存id,如果不存在则存输入的值 + /*List> listBySerialNumber = documentLibraryEOService.getListBySerialNumber(value); String serialNumberStr = ""; StringBuilder sb = new StringBuilder(); List list = new ArrayList<>(); @@ -2288,7 +2292,8 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl
@@ -16,7 +16,7 @@
- + {{ item.label }} @@ -30,7 +30,7 @@
- + {{ item.label }} @@ -45,7 +45,7 @@
+ @click="clickButtonToUpload('fileTemplateConnectId')" :disabled="item.isLock == '1' ? true: false"> {{ (item.dataValue === 'null' || item.dataValue === '' || item.dataValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} @@ -56,7 +56,7 @@
- + {{ itemin.label }} @@ -66,7 +66,7 @@
@@ -77,12 +77,12 @@
- + {{ item.label }} @@ -97,13 +97,13 @@
+ @click="clickButtonToUpload('fileTemplateConnectId')" :disabled="item.isLock == '1' ? true: false"> {{ (item.dataValue === 'null' || item.dataValue === '' || item.dataValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} @@ -114,7 +114,7 @@
- + {{ itemin.label }} @@ -124,6 +124,7 @@
{{ (item.dataValue === 'null' || item.dataValue === '' || item.dataValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} @@ -135,7 +136,7 @@
- + {{ item.label }} @@ -145,6 +146,7 @@
{{ (item.dataValue === 'null' || item.dataValue === '' || item.dataValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} @@ -156,7 +158,7 @@
- + {{ itemin.label }} @@ -166,13 +168,13 @@
+ @click="clickButtonToUpload('fileTemplateConnectId')" :disabled="item.isLock == '1' ? true: false"> {{ (item.dataValue === 'null' || item.dataValue === '' || item.dataValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} @@ -198,7 +200,7 @@ export default { }, data() { return { - disabled: false, + isLock: '0', formInline: {}, visible: false } diff --git a/jero-web/src/components/OcrUpload/index.vue b/jero-web/src/components/OcrUpload/index.vue index fe52ea3d4..67ba5063f 100644 --- a/jero-web/src/components/OcrUpload/index.vue +++ b/jero-web/src/components/OcrUpload/index.vue @@ -137,7 +137,7 @@ if(this.myfileList.length > 0){ this.$emit('uploadSuccess', this.fileList) this.$message.destroy() - this.$message.success(`${info.file.name}`+this.$t('fileUploadFailed')); + this.$message.success(`${info.file.name}`+this.$t('uploadSuccessful')); } } else if (status === 'uploading') { this.myfileList = info.fileList; diff --git a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue index 64f120367..04f16cfb9 100644 --- a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue +++ b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue @@ -79,7 +79,7 @@ {{$t('SynchronousReportLibrary')}}
-
+
{{$t('CompulsoryWithdrawal')}}
@@ -94,7 +94,7 @@ {{$t('addTo')}}
-
+
{{$t('Assignedby')}}
@@ -104,7 +104,7 @@ {{$t('submit')}}
-
+
{{$t('sendBack')}}
@@ -140,8 +140,51 @@ - - + + + + {{ item.label }} + + + + + + + + + + + + + + + + + + + {{ item.label }} + + + + + + + + + {{ item.label }} @@ -256,6 +299,7 @@ export default { dre: 0, // 填写人 Dateline: {}, areaVisibleFreeze: false, // 冻结配置 + areaVisibleAssignedby: false, // 分配填写人弹框 wrapperCol: { xs: { span: 24 }, sm: { span: 14 } @@ -264,7 +308,8 @@ export default { xs: { span: 24 }, sm: { span: 7 } }, - rules: {} + rules: {}, + FreezeList: [], // 冻结字段 } }, props: { @@ -332,7 +377,37 @@ export default { }, // 冻结配置提交 handleSubmitFreeze() { - this.areaVisibleFreeze = false + let _this = this + let param = {paramsManifestId: this.paramsManifest.id, paramsConfigIds: this.Dateline.paramsConfig} + axios({ + url: '/jero-boot/params/collectManifest/lockConfigColumn', + method: 'post', + data: param, + transformRequest: [function (data) { + let ret = '' + for (let it in data) { + ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&' + } + return ret + }], + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + 'X-Access-Token':_this.token + } + }) + .then( (res) =>{ + console.log(res) + if (res.data.success) { + _this.$message.success(res.data.result) + this.areaVisibleFreeze = false + this.$refs.CollectionTabel.getTableList() + }else{ + _this.$message.warning(res.data.result) + } + }) + .catch( (error) =>{ + console.log(error); + }); }, // 冻结配置取消 cancleImportsFreeze() { @@ -340,8 +415,7 @@ export default { }, getFreeze() { let _this = this - console.log(this.paramsManifest,'this.paramsManifest,') - let param = {paramsManifestId: this.$route.query.id, configFlag: 2} + let param = {paramsManifestId: this.paramsManifest.id, configFlag: 2} axios({ url: '/jero-boot/params/collectManifest/getConfigLableList', method: 'post', @@ -361,10 +435,7 @@ export default { .then( (res) =>{ console.log(res) if (res.data.success) { - _this.$message.success(res.data.result) - _this.areaVisible = false - _this.getTableList() - _this.selectedRowKeysValue=[] + this.FreezeList = res.data.result }else{ _this.$message.warning(res.data.result) } @@ -452,6 +523,87 @@ export default { }) } }, + // 退回 + returnData() { + let _array = [] + this.selectedRowKeysValue.forEach((item, index) => { + _array.push(item.id) + }) + let _this = this + let param = {ids: _array.join(',')} + axios({ + url: '/jero-boot/params/collectManifest/back', + method: 'post', + data: param, + transformRequest: [function (data) { + let ret = '' + for (let it in data) { + ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&' + } + return ret + }], + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + 'X-Access-Token':_this.token + } + }) + .then( (res) =>{ + console.log(res) + if (res.data.success) { + _this.$message.success(res.data.result) + _this.getTableList() + _this.selectedRowKeysValue=[] + }else{ + _this.$message.warning(_this.$t('operationFailed')) + } + }) + .catch( (error) =>{ + console.log(error); + }); + }, + // 强制撤回 + compulsoryWithdrawal() { + let _array = [] + this.selectedRowKeysValue.forEach((item, index) => { + _array.push(item.id) + }) + let _this = this + let param = {ids: _array.join(',')} + axios({ + url: '/jero-boot/params/collectManifest/withdraw', + method: 'post', + data: param, + transformRequest: [function (data) { + let ret = '' + for (let it in data) { + ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&' + } + return ret + }], + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + 'X-Access-Token':_this.token + } + }) + .then( (res) =>{ + console.log(res) + if (res.data.success) { + _this.$message.success(res.data.result) + _this.getTableList() + _this.selectedRowKeysValue=[] + }else{ + _this.$message.warning(_this.$t('operationFailed')) + } + }) + .catch( (error) =>{ + console.log(error); + }); + }, + // 分配填写人 + assignedBy() { + this.areaVisibleAssignedby = true + console.log('分配填写人') + }, handleModule() { }, diff --git a/jero-web/src/views/projectManagement/projectStatusBoard/index.vue b/jero-web/src/views/projectManagement/projectStatusBoard/index.vue index 102fe1c65..3d0b32136 100644 --- a/jero-web/src/views/projectManagement/projectStatusBoard/index.vue +++ b/jero-web/src/views/projectManagement/projectStatusBoard/index.vue @@ -33,79 +33,7 @@
{{$t('regulatoryCertificationTaskPlan')}}
-
-
- 2022-10 -
-
- 2022-10 -
-
- 2022-10 -
-
- 2022-10 -
-
- 2022-10 -
-
- 2022-10 -
-
- 2022-10 -
-
- 2022-10 -
-
-
-
-
111111
-
哈哈哈
-
哈哈哈
-
哈哈哈
-
-
-
- - - - - - - -
-
- - - - - - - -
-
- - - - - - - -
-
- - - - - - - -
-
-
- +
@@ -229,8 +157,120 @@ }, mounted() { this.getList() + this.getEcharts() }, methods: { + getEcharts() { + var chartDom = document.getElementById('main') + var myChart = echarts.init(chartDom) + var option + +// prettier-ignore + const hours = [ + '12a', '1a', '2a', '3a', '4a', '5a', '6a', + '12a', '1a', '2a', '3a', '4a', '5a', '6a' + ] + const days = [ + 'Saturday', 'Friday', 'Thursday', + 'Wednesday', 'Tuesday', 'Monday', 'Sunday' + ] + const data = [ + [0, 0, 14], [0, 1, 5], [0, 2, 5], [0, 3, 5], [0, 4, 5], [0, 5, 5], [0, 6, 5], [0, 7, 5], + [1, 0, 5], [1, 2, 5], [1, 3, 5], [1, 4, 5], [1, 5, 5], [1, 6, 5], [1, 7, 5], [1, 1, 5], + [2, 0, 14], [2, 1, 14], [2, 2, 14], [2, 3, 14], [2, 4, 14], [2, 5, 14], [2, 6, 14], [2, 7, 14], + [3, 0, 14], [3, 1, 14], [3, 2, 14], [3, 3, 14], [3, 4, 14], [3, 5, 14], [3, 6, 14], [3, 7, 14], + [4, 0, 14], [4, 1, 14], [4, 2, 14], [4, 3, 14], [4, 4, 14], [4, 5, 14], [4, 6, 14], [4, 7, 14], + [5, 0, 14], [5, 1, 14], [5, 2, 14], [5, 3, 14], [5, 4, 14], [5, 5, 14], [5, 6, 14], [5, 7, 14], + [6, 0, 14], [6, 1, 14], [6, 2, 14], [6, 3, 14], [6, 4, 14], [6, 5, 14], [6, 6, 14], [6, 7, 14], + [6, 8, 14], [6, 9, 14], [6, 10, 14], [6, 11, 14], [6, 12, 14], [6, 13, 14], [6, 14, 14], [6, 15, 14] + ].map(function(item) { + return [item[1], item[0], item[2]] + }) + option = { + legend: { + data: ['Punch Card'], + left: 'right' + }, + tooltip: { + position: 'top', + formatter: function(params) { + return ( + params.value[2] + + ' commits in ' + + hours[params.value[0]] + + ' of ' + + days[params.value[1]] + ) + } + }, + grid: { + top: 0, + left: 2, + right: 20, + containLabel: true + }, + xAxis: { + type: 'category', + data: hours, + boundaryGap: false, + splitLine: { + show: false + }, + axisTick: { + show: false + }, + position: 'top', + axisLabel: { + showMinLabel: true, + showMaxLabel: true, + interval: 2, + textStyle: { + fontFamily: 'Blue Sky Noto', + color: '#000F16', + fontSize: '16' + } + }, + axisLine: { + show: false + } + }, + yAxis: { + type: 'category', + data: days, + splitLine: { + show: false + }, + axisLine: { + show: false + }, + axisTick: { + show: false + }, + axisLabel: { + textStyle: { + fontFamily: 'Blue Sky Noto', + color: '#000F16', + fontSize: '16' + }, + margin: 50 + } + }, + series: [ + { + type: 'scatter', + symbolSize: function(val) { + return val[2] * 2 + }, + data: data, + animationDelay: function(idx) { + return idx * 5 + } + } + ] + } + + option && myChart.setOption(option) + }, searchQuery() { this.getList() }, @@ -297,48 +337,9 @@ width: 100%; height: 400px; margin-bottom: 20px; - } - - .box-top-content-left { - width: 240px; - float: left; - padding: 0 20px; + padding: 20px; box-sizing: border-box; - text-align: center; - } - - .box-top-content-right { - width: calc(100% - 240px); - float: left; - } - - .box-top-content-text { - height: 80px; - line-height: 80px; - } - - .box-top-content-text { - width: 100%; - height: 80px; - line-height: 80px; - font-size: 16px; - font-weight: 500; - color: #000F16; - } - - .box-top-content-time { - width: calc(100% - 240px); - margin-left: 240px; - height: 80px; - line-height: 80px; - display: flex; - justify-content: space-between; - } - - .box-top-content-time-text { - font-size: 16px; - font-weight: 500; - color: #000F16; + overflow: auto; } .box-button {