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 7d5fa5e92..198274289 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 @@ -236,11 +236,11 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl> infoDiffListEn = new ArrayList<>(); infoDiffListEn.add(infoDiffEn); if(infoDiff.size()>1) { - contentLog = dummyInventoryBaseEOService.setInfoDiffListContent(null, infoDiffList, contentLog); - enContentLog = dummyInventoryBaseEOService.setInfoDiffListContent(enContentLog, infoDiffListEn, null); +// contentLog = dummyInventoryBaseEOService.setInfoDiffListContent(null, infoDiffList, contentLog); +// enContentLog = dummyInventoryBaseEOService.setInfoDiffListContent(enContentLog, infoDiffListEn, null); - dummyLogEOService.updateLog(contentLog, dummyInventoryInfoEO.getDummyInventoryBaseId(),CutEnum.CN.getValue()); - dummyLogEOService.updateLog(enContentLog, dummyInventoryInfoEO.getDummyInventoryBaseId(),CutEnum.EN.getValue()); +// dummyLogEOService.updateLog(contentLog, dummyInventoryInfoEO.getDummyInventoryBaseId(),CutEnum.CN.getValue()); +// dummyLogEOService.updateLog(enContentLog, dummyInventoryInfoEO.getDummyInventoryBaseId(),CutEnum.EN.getValue()); } }else{ if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){ @@ -362,14 +362,14 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImple.getSerialNumber()).collect(Collectors.joining(",")); - String contentLog = username+"复制了“"+serialNumber+"”"; - String enContentLog = username+" copied “"+serialNumber+"”."; - dummyLogEOService.updateLog(contentLog, projectId,CutEnum.CN.getValue()); - dummyLogEOService.updateLog(enContentLog, projectId,CutEnum.EN.getValue()); +// LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); +// String username = sysUser.getUsername(); +// String projectId = dummyInventoryInfoEOList.get(0).getDummyInventoryBaseId(); +// String serialNumber = dummyInventoryInfoEOList.stream().map(e->e.getSerialNumber()).collect(Collectors.joining(",")); +// String contentLog = username+"复制了“"+serialNumber+"”"; +// String enContentLog = username+" copied “"+serialNumber+"”."; +// dummyLogEOService.updateLog(contentLog, projectId,CutEnum.CN.getValue()); +// dummyLogEOService.updateLog(enContentLog, projectId,CutEnum.EN.getValue()); } }else{ if(CutEnum.CN.getValue().equals(cut)){ @@ -600,12 +600,12 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().eq(ConditionAssessmentEO::getProjectLawsInventoryId,projectLawsInventoryId); List conditionAssessmentEOS = super.baseMapper.selectList(queryWrapper); + if(CollectionUtils.isNotEmpty(conditionAssessmentEOS)){ + //根据角色编码去重。 + conditionAssessmentEOS = conditionAssessmentEOS.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> + new TreeSet<>(Comparator.comparing(o -> o.getRoleCode()))), + ArrayList::new)); + } return conditionAssessmentEOS; } @@ -150,9 +156,9 @@ public class ConditionAssessmentEOServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().eq(ConditionAssessmentEO::getProjectLawsInventoryId,projectLawsInventoryId); - if(StringUtils.isNotEmpty(projectTaskInventory.getProjectStatusAssess())){ + /*if(StringUtils.isNotEmpty(projectTaskInventory.getProjectStatusAssess())){ queryWrapper.lambda().eq(ConditionAssessmentEO::getConditionAssessment,projectTaskInventory.getProjectStatusAssess()); - } + }*/ if(StringUtils.equals(roleCode,ProjectRoleEnum.REGULATI_ENGINEER.getValue()) || StringUtils.equals(roleCode,ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue())){ queryWrapper.lambda().eq(ConditionAssessmentEO::getCreateBy,currentUser.getUsername()); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java index 525b4f7e4..f245b0fe6 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java @@ -629,17 +629,40 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl queryList(ProjectLawsInventoryEO projectLawsInventoryEO, HttpServletRequest req) { + + String dutyTerritoryStr = ""; + if (StringUtils.isNotEmpty(projectLawsInventoryEO.getDutyTerritory())) { + dutyTerritoryStr = projectLawsInventoryEO.getDutyTerritory(); + projectLawsInventoryEO.setDutyTerritory(null); + } + QueryWrapper projectLawsInventoryEOQueryWrapper = QueryGenerator.initQueryWrapper(projectLawsInventoryEO,req.getParameterMap()); projectLawsInventoryEOQueryWrapper.orderByDesc("create_time","serial_number"); String projectLibraryId = projectLawsInventoryEO.getProjectLibraryId(); + if (StringUtils.isNotEmpty(dutyTerritoryStr)) { + String finalDutyTerritoryStr = dutyTerritoryStr.replaceAll("\\*",""); + projectLawsInventoryEOQueryWrapper.and(query -> { + query.lambda().like(ProjectLawsInventoryEO::getDutyTerritory, finalDutyTerritoryStr); + if(StringUtils.contains(finalDutyTerritoryStr,",")){ + String[] dutyTerritoryArr = finalDutyTerritoryStr.split(","); + for (String duty : dutyTerritoryArr) { + query.or(q -> { + q.like("duty_territory",duty); + }); + } + } + }); + } + + if(StringUtils.isEmpty(projectLibraryId)){ throw new JeroBootException("项目库id不能为空!"); } LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - projectLawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId); + //projectLawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId); //验证当前用户在该项目中是什么角色 //int isProjectRole = checkUserRole(projectLibraryId, currentUser.getId(), ""); @@ -2435,8 +2458,29 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.in(ProjectLawsInventoryEO::getId,Arrays.asList(ids.split(","))); List projectLawsInventoryEOList = this.list(wrapper); + List projectTaskInventoryEOList = new ArrayList<>(); for (ProjectLawsInventoryEO projectLawsInventoryEO : projectLawsInventoryEOList) { - projectLawsInventoryEO.setId(UUID.randomUUID().toString().replace("-", "")); + String projectLawsInventoryId = UUID.randomUUID().toString().replace("-", ""); + projectLawsInventoryEO.setId(projectLawsInventoryId); + + projectLawsInventoryEO.setTaskAffirmStatus(TaskAffirmStatusEnum.NOT_STARTED.getValue()); + projectLawsInventoryEO.setInventoryAffirmStatus(InventoryAffirmStatusEnum.NOT_STARTED.getValue()); + projectLawsInventoryEO.setRegulationOwnerSubmitStatus(null); + projectLawsInventoryEO.setHomologationEngineerSubmitStatus(null); + projectLawsInventoryEO.setSendMsgFlag(null); + projectLawsInventoryEO.setSendMsgCurrentFlag(null); + projectLawsInventoryEO.setDesignDueDate(null); + projectLawsInventoryEO.setPrehomoDueDate(null); + projectLawsInventoryEO.setVerifyDueDate(null); + projectLawsInventoryEO.setInventoryAffirmDueDate(null); + projectLawsInventoryEO.setTaskAffirmDueDate(null); + + ProjectTaskInventoryEO projectTaskInventoryEO = new ProjectTaskInventoryEO(); + String projectTaskInventoryId = UUID.randomUUID().toString().replace("-", ""); + projectTaskInventoryEO.setId(projectTaskInventoryId); + projectTaskInventoryEO.setProjectLawsInventoryId(projectLawsInventoryId); + projectTaskInventoryEO.setStandId(projectLawsInventoryEO.getStandId()); + projectTaskInventoryEOList.add(projectTaskInventoryEO); } this.saveBatch(projectLawsInventoryEOList); @@ -2449,6 +2493,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl lawsInventoryEOQueryWrapper = QueryGenerator.initQueryWrapper(projectLawsInventoryEO,req.getParameterMap()); //QueryWrapper lawsInventoryEOQueryWrapper = new QueryWrapper<>(); lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId); lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getInventoryAffirmStatus, InventoryAffirmStatusEnum.ACCEPTED.getValue()); lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getTaskAffirmStatus, TaskAffirmStatusEnum.ACCEPTED.getValue()); + + String dutyTerritoryStr = ""; + if (StringUtils.isNotEmpty(projectTaskInventoryEO.getDutyTerritory())) { + dutyTerritoryStr = projectTaskInventoryEO.getDutyTerritory(); + projectTaskInventoryEO.setDutyTerritory(null); + } + + if (StringUtils.isNotEmpty(dutyTerritoryStr)) { + String finalDutyTerritoryStr = dutyTerritoryStr.replaceAll("\\*",""); + lawsInventoryEOQueryWrapper.and(query -> { + query.lambda().like(ProjectLawsInventoryEO::getDutyTerritory, finalDutyTerritoryStr); + if(StringUtils.contains(finalDutyTerritoryStr,",")){ + String[] dutyTerritoryArr = finalDutyTerritoryStr.split(","); + for (String duty : dutyTerritoryArr) { + query.or(q -> { + q.like("duty_territory",duty); + }); + } + } + }); + } + List projectLawsInventoryEOList = projectLawsInventoryEOMapper.selectList(lawsInventoryEOQueryWrapper); if(CollectionUtils.isNotEmpty(projectLawsInventoryEOList)){ diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index 66b94e6f8..1ef1adf3f 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -1261,6 +1261,7 @@ module.exports = { currentlyTheFirstOneThatCannotMovedUp:'Currently the first one that cannot be moved up', currentlyTheLastOneCannotmovedDown:'Currently the last one cannot be moved down', weilaiRegulationMonthlyReport:'Weilai Regulation Monthly Report', + onlyTheDataWhoseStatusNotInitiatedAcceptedChanged:'Only the data whose list confirmation status is accepted and the task list status is not initiated or the task list status is accepted can be changed', thereTitleWhichCannotBeDeleted:'There are new contents under this title, which cannot be deleted', industryInformationDynamicTemplate:'Industry information dynamic template', relatedFields:'Related fields', diff --git a/jero-web/src/common/lang/zh-cn.js b/jero-web/src/common/lang/zh-cn.js index 5632215e0..c8118e520 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -1353,16 +1353,17 @@ module.exports = { textInput: '文本输入', Paraname: '参数名称', Parabatch: '参数批次', - freeze: '请选择冻结配置', - deleteNode: '若有文件信息将同步删除,确认删除该条数据?', - HaveReleased: '已发布', - forward: '转发', - areResponsibilityAreaInformationBatch: '确实是否批量修改责任领域信息', - issuedBy: '发布人', - pleaseDecompositionStandardOrder: '请导入或带入至少一条分解标准单', - currentlyTheFirstOneThatCannotMovedUp: '当前已是第一个无法进行上移', - currentlyTheLastOneCannotmovedDown: '当前已是最后一个无法进行下移', - weilaiRegulationMonthlyReport: '蔚来法规月报', + freeze:'请选择冻结配置', + deleteNode:'若有文件信息将同步删除,确认删除该条数据?', + HaveReleased:'已发布', + forward:'转发', + areResponsibilityAreaInformationBatch:'确实是否批量修改责任领域信息', + issuedBy:'发布人', + pleaseDecompositionStandardOrder:'请导入或带入至少一条分解标准单', + currentlyTheFirstOneThatCannotMovedUp:'当前已是第一个无法进行上移', + currentlyTheLastOneCannotmovedDown:'当前已是最后一个无法进行下移', + weilaiRegulationMonthlyReport:'蔚来法规月报', + onlyTheDataWhoseStatusNotInitiatedAcceptedChanged:'只能变更清单确认状态为接受并且任务清单状态为未发起或任务清单状态为接受的数据', thereTitleWhichCannotBeDeleted: '该标题下存在新增内容,不能删除', industryInformationDynamicTemplate: '行业资讯动态模板', relatedFields: '相关领域', diff --git a/jero-web/src/views/documentTools/virtualList/components/virtualListDetails.vue b/jero-web/src/views/documentTools/virtualList/components/virtualListDetails.vue index d4948c50a..9e596a401 100644 --- a/jero-web/src/views/documentTools/virtualList/components/virtualListDetails.vue +++ b/jero-web/src/views/documentTools/virtualList/components/virtualListDetails.vue @@ -143,7 +143,7 @@ class="ant-table tableList" :loading="loading" :pagination="false" - :scroll="{x: '100%',y:'calc(100vh - 186px)'}" + :scroll="{x: '100%',y:'calc(100vh - 356px)'}" rowKey="id" :data-source="dataSource" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" @@ -169,7 +169,8 @@ - {{record.designDeliverableTypeName}}
+ {{record.designDeliverableTypeName}}
@@ -180,7 +181,8 @@ --
- {{record.prehomoDeliverableTypeName}}
+ {{record.prehomoDeliverableTypeName}}
@@ -191,7 +193,8 @@ -- - {{record.verifyDeliverableTypeName}}
+ {{record.verifyDeliverableTypeName}}
@@ -1015,6 +1018,10 @@ font-weight: 500; color: #000F16; } + + ::v-deep .ant-card-body { + padding: 14px 32px 0 32px; + } ::v-deep .ant-table-row:first-child { background: #fff!important; } @@ -1032,10 +1039,6 @@ line-height: 38px; } - .card .ant-card-body { - padding: 14px 32px 32px 32px; - } - .ant-table-placeholder { padding: 0; border-top: none; diff --git a/jero-web/src/views/projectManagement/components/TaskList.vue b/jero-web/src/views/projectManagement/components/TaskList.vue index ea99ae712..9de65fa66 100644 --- a/jero-web/src/views/projectManagement/components/TaskList.vue +++ b/jero-web/src/views/projectManagement/components/TaskList.vue @@ -76,10 +76,10 @@
- - - - + + + +
{{$t('CertificationDirectory')}} @@ -457,6 +457,9 @@ queryParam[val] = queryParam[val].join(',') } }) + if (queryParam.dutyTerritory) { + queryParam.dutyTerritory = '*' + queryParam.dutyTerritory + '*' + } let query = { projectLibraryId: this.$route.query.id, ...queryParam diff --git a/jero-web/src/views/projectManagement/components/listOfRegulations.vue b/jero-web/src/views/projectManagement/components/listOfRegulations.vue index e82062d39..93db90bb2 100644 --- a/jero-web/src/views/projectManagement/components/listOfRegulations.vue +++ b/jero-web/src/views/projectManagement/components/listOfRegulations.vue @@ -200,7 +200,7 @@ class="tableList" :loading="loading" :pagination="false" - :scroll="{x: '100%',y:'calc(100vh - 186px)'}" + :scroll="{x: '100%',y:'calc(100vh - 356px)'}" rowKey="id" :data-source="dataSource" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" @@ -225,6 +225,10 @@ @click="resultReportedClick(record)"> {{$t('resultReported')}} + + {{$t('view')}} + @@ -238,7 +242,8 @@ - {{ record.designDeliverableTypeName }}
+ {{ record.designDeliverableTypeName }}
@@ -250,7 +255,8 @@
- {{ record.prehomoDeliverableTypeName }}
+ {{ record.prehomoDeliverableTypeName }}
@@ -262,7 +268,8 @@
- {{ record.verifyDeliverableTypeName }}
+ {{ record.verifyDeliverableTypeName }}
@@ -424,6 +431,7 @@ {{$t('dataLoading')}} + @@ -435,6 +443,7 @@ import transferList from './transferList' import fixedPlate from './fixedPlateForm' import resultReportedUpload from './resultReportedUpload' + import listOfRegulationsView from './listOfRegulationsView' import globalAdvancedQuery from '@/components/globalAdvancedQuery/index' import { getAction, postAction, downloadFile, deleteAction } from '@/api/manage' import moment from 'moment' @@ -452,7 +461,8 @@ transferList, globalAdvancedQuery, fixedPlate, - resultReportedUpload + resultReportedUpload, + listOfRegulationsView }, data() { return { @@ -726,7 +736,7 @@ title: this.$t('operation'), align: 'center', fixed: 'right', - width: 210, + width: 240, scopedSlots: { customRender: 'operation' } } ], @@ -1008,6 +1018,19 @@ }, methods: { ...mapGetters(['userInfo']), + viewClick(row) { + let roleCodeIndex + if (this.isDisplay) { + roleCodeIndex = 0 + } else { + roleCodeIndex = 4 + } + if (this.formInlineRoleSwitching.roleSwitchingCode == '11' || this.formInlineRoleSwitching.roleSwitchingCode == '12') { + roleCodeIndex = 0 + } + row.roleCodeIndex = roleCodeIndex + this.$refs.listOfRegulationsViewRef.editModel(JSON.parse(JSON.stringify(row))) + }, handleModule() { downloadFile(this.url.exportTemplate, this.$t('listOfRegulations') + this.$t('importTemplate') + '.xls', {}) }, @@ -1190,11 +1213,13 @@ for (let i = 0; i < this.dataSource.length; i++) { for (let j = 0; j < selectedRowKeys.length; j++) { if (this.dataSource[i].id == selectedRowKeys[j]) { - if (this.dataSource[i].taskAffirmStatus == 'Accepted') { + if (this.dataSource[i].taskAffirmStatus == 'Accepted' || + (this.dataSource[i].inventoryAffirmStatus == 'Accepted' && this.dataSource[i].taskAffirmStatus == 'Accepted') || + (this.dataSource[i].inventoryAffirmStatus == 'Accepted' && this.dataSource[i].taskAffirmStatus == 'Not started')) { isTrue = true } else { isTrue = false - this.$message.warning(this.$t('onlyDataChanged')) + this.$message.warning(this.$t('onlyTheDataWhoseStatusNotInitiatedAcceptedChanged')) return } } @@ -1395,6 +1420,9 @@ queryParam[val] = queryParam[val].join(',') } }) + if (queryParam.dutyTerritory) { + queryParam.dutyTerritory = '*' + queryParam.dutyTerritory + '*' + } let query = { ...this.queryParamQuery, ...queryParam, @@ -2274,6 +2302,10 @@ font-weight: 500; color: #000F16; } + + ::v-deep .ant-card-body { + padding: 24px 24px 0 24px; + } ::v-deep .ant-table-row:first-child { background: #fff!important; } diff --git a/jero-web/src/views/projectManagement/components/listOfRegulationsView.vue b/jero-web/src/views/projectManagement/components/listOfRegulationsView.vue new file mode 100644 index 000000000..8601a76be --- /dev/null +++ b/jero-web/src/views/projectManagement/components/listOfRegulationsView.vue @@ -0,0 +1,555 @@ + + + + \ No newline at end of file