From a63d4aebe183f974a6a80f206f1487e43b203deb Mon Sep 17 00:00:00 2001 From: qq787203167 <787203167@qq.com> Date: Mon, 25 Apr 2022 17:50:35 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=AF=B9=E6=8E=A5=E6=8F=A1=E6=89=8B?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/common/lang/en-us.js | 3 +- jero-web/src/common/lang/zh-cn.js | 1 + .../components/examineInformation.vue | 103 +++++++++++++++--- .../components/projectInformation.vue | 2 +- .../components/standardContent.vue | 24 ++-- .../components/standardContentList.vue | 10 +- .../processForm/handshakeProcess/index.vue | 102 +++++++++++++---- .../tabComponents/alreadyProcess/index.vue | 7 +- .../components/listOfRegulations.vue | 4 +- 9 files changed, 195 insertions(+), 61 deletions(-) diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index 9f7838e41..bfffaf28b 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -716,5 +716,6 @@ module.exports = { result: 'result', opinion: 'opinion', operationNode: 'operation node', - taskDataConfirmation: 'Please select the data whose list confirmation status is accepted and task confirmation status is not initiated or rejected, and the regulatory engineer and certification engineer are not empty' + taskDataConfirmation: 'Please select the data whose list confirmation status is accepted and task confirmation status is not initiated or rejected, and the regulatory engineer and certification engineer are not empty', + selectIssuer:'Select issuer', } \ No newline at end of file diff --git a/jero-web/src/common/lang/zh-cn.js b/jero-web/src/common/lang/zh-cn.js index 4cf35cdea..7da434739 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -722,4 +722,5 @@ module.exports = { result:'结果', opinion:'意见', operationNode:'操作节点', + selectIssuer:'选择下发人', } \ No newline at end of file diff --git a/jero-web/src/views/processCenter/components/examineInformation.vue b/jero-web/src/views/processCenter/components/examineInformation.vue index 41762d42d..ff9955a61 100644 --- a/jero-web/src/views/processCenter/components/examineInformation.vue +++ b/jero-web/src/views/processCenter/components/examineInformation.vue @@ -6,14 +6,15 @@ - +
+ * {{$t('reviewResults')}}
- - + + {{$t('agree')}} @@ -28,29 +29,47 @@
- + + +
+
+ * + {{$t('selectIssuer')}} +
+ + + +
+
+
+
{{$t('feedbackMessage')}}
- +
- +
{{$t('enclosure')}}
- + - {{ (formInline.enclosure === 'null' || formInline.enclosure === '' || - formInline.enclosure == null) ? $t('clickUpload') : $t('viewUploadedFiles') + @click="clickButtonToUpload('approvalFile')"> + {{ (formInline.approvalFile === 'null' || formInline.approvalFile === '' || + formInline.approvalFile == null) ? $t('clickUpload') : $t('viewUploadedFiles') }} @@ -65,20 +84,53 @@ @@ -133,7 +203,7 @@ } .title-text { - width: 57px; + width: 88px; text-align: right; display: inline-block; font-weight: 500; @@ -172,6 +242,7 @@ .formAdd { margin-bottom: 40px; } + .button-text { height: 38px; width: calc(100% - 100px); diff --git a/jero-web/src/views/processCenter/components/projectInformation.vue b/jero-web/src/views/processCenter/components/projectInformation.vue index 76081dde3..741df14d7 100644 --- a/jero-web/src/views/processCenter/components/projectInformation.vue +++ b/jero-web/src/views/processCenter/components/projectInformation.vue @@ -8,7 +8,7 @@
{{item.title}} - {{queryForm[item.value]}}
diff --git a/jero-web/src/views/processCenter/components/standardContent.vue b/jero-web/src/views/processCenter/components/standardContent.vue index e2ca839ee..11a198058 100644 --- a/jero-web/src/views/processCenter/components/standardContent.vue +++ b/jero-web/src/views/processCenter/components/standardContent.vue @@ -8,7 +8,7 @@
{{item.title}} - {{queryForm[item.value]}}
@@ -31,30 +31,20 @@ type: Object, default: {} }, - standardContentId: { - type: String, - default: '' + standardContentQuery: { + type: Object, + default: {} } }, data() { return { - queryForm: {}, + queryForm: {} } }, mounted() { - // this.getQueryForm() + this.queryForm = this.standardContentQuery }, - methods: { - getQueryForm() { - getAction(this.url.urlFrom, { id: this.projectInformationId }).then((res) => { - if (res.success) { - this.queryForm = res.result[0] || {} - } else { - this.queryForm = {} - } - }) - } - } + methods: {} } diff --git a/jero-web/src/views/processCenter/components/standardContentList.vue b/jero-web/src/views/processCenter/components/standardContentList.vue index 84d4c2233..1ab7f3a15 100644 --- a/jero-web/src/views/processCenter/components/standardContentList.vue +++ b/jero-web/src/views/processCenter/components/standardContentList.vue @@ -74,6 +74,12 @@ export default { name: 'standardContentList', + props: { + standardContentListQuery: { + type: Object, + default: {} + } + }, data() { return { dataSource: [], @@ -159,7 +165,7 @@ ], loading: false, dataSourceFile: [], - visibleFile:false, + visibleFile: false, columnsFile: [ { title: this.$t('deliverableTemplate'), @@ -178,6 +184,8 @@ } }, mounted() { + this.dataSource = [] + this.dataSource.push(this.standardContentListQuery) }, methods: { pdfPreview(fileQuery) { diff --git a/jero-web/src/views/processCenter/processForm/handshakeProcess/index.vue b/jero-web/src/views/processCenter/processForm/handshakeProcess/index.vue index 2bd442bfc..788c63892 100644 --- a/jero-web/src/views/processCenter/processForm/handshakeProcess/index.vue +++ b/jero-web/src/views/processCenter/processForm/handshakeProcess/index.vue @@ -7,21 +7,35 @@ @terminationProcess="terminationProcess" @submit="submit" /> -
-
- - - - - + +
+
+ + + + + +
+
+
+
@@ -30,9 +44,11 @@ import headerProcess from '../../components/headerProcess' import projectInformation from '../../components/projectInformation' import standardContent from '../../components/standardContent' - import standardContentList from '../../components/standardContentList' + import standardContentListTable from '../../components/standardContentList' import examineInformation from '../../components/examineInformation' import circulationHistory from '../../components/circulationHistory' + import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage' + import { mapGetters } from 'vuex' export default { name: 'handshakeProcess', @@ -40,7 +56,7 @@ headerProcess, projectInformation, standardContent, - standardContentList, + standardContentListTable, examineInformation, circulationHistory }, @@ -133,16 +149,64 @@ } ], url: { - urlFrom: 'project/projectLibraryBase/queryById' - } + urlFrom: 'project/projectLibraryBase/queryById', + queryProjectLawsInventoryInfoById: 'project/projectLawsInventoryEO/queryProjectLawsInventoryInfoById' + }, + queryBy: {}, + queryProject: {}, + loading: false } }, + mounted() { + if (this.$route.query.mes) { + this.queryBy = eval('(' + JSON.parse(this.$route.query.mes) + ')') + } + this.queryProjectLawsInventoryInfo() + }, methods: { + ...mapGetters(['userInfo']), terminationProcess() { }, submit() { - + this.$refs.examineInformationRef.submit(function(res) { + this.completeTask(res) + }) + }, + completeTask(value) { + let json = Object.assign({}, value, this.queryBy) + let data = JSON.stringify(json).replace(/\"/g, '\'') + let query = { + userid: this.userInfo().id, + taskId: this.$route.query.taskId || this.$route.query.taskIds, + json: data + } + postAction('/workFlow/completeTask', query).then((res) => { + if (res.success) { + this.$message.success(this.$t('OperationSuccessful')) + this.$router.push({ + path: '/ProcessCenter' + }) + } else { + this.$message.warning(this.$t('operationFailed')) + } + }) + }, + queryProjectLawsInventoryInfo() { + this.loading = true + let query = { + id: this.queryBy.id, + operatorType: 'taskAffirmQuery' + } + getAction(this.url.queryProjectLawsInventoryInfoById, query).then((res) => { + if (res.success) { + this.queryProject = res.result.projectLawsInventory || {} + this.loading = false + } else { + this.queryProject = {} + this.loading = false + } + }) } } } diff --git a/jero-web/src/views/processCenter/processList/tabComponents/alreadyProcess/index.vue b/jero-web/src/views/processCenter/processList/tabComponents/alreadyProcess/index.vue index 9bb38b919..f88194fa7 100644 --- a/jero-web/src/views/processCenter/processList/tabComponents/alreadyProcess/index.vue +++ b/jero-web/src/views/processCenter/processList/tabComponents/alreadyProcess/index.vue @@ -143,12 +143,9 @@ }, // 打开查看 classAdd(row) { - this.$store.commit('setDetailMap', this.$route.path) this.$router.push({ - path: '/ProcessDetail', - query: { - prcNum: row.prcNum - } + path: '/handshakeProcess', + query: row }) } }, diff --git a/jero-web/src/views/projectManagement/components/listOfRegulations.vue b/jero-web/src/views/projectManagement/components/listOfRegulations.vue index 011fe2e68..a62200ab5 100644 --- a/jero-web/src/views/projectManagement/components/listOfRegulations.vue +++ b/jero-web/src/views/projectManagement/components/listOfRegulations.vue @@ -850,7 +850,9 @@ this.visible = false this.selectedRowKeys = [] this.$message.success(this.$t('OperationSuccessful')) - this.$route + this.$router.push({ + path: '/ProcessCenter' + }) } else { this.$message.warning(this.$t('operationFailed')) } From 500187f3f24aa9601d8935213976bdccd9434535 Mon Sep 17 00:00:00 2001 From: wangzhijiang <12345678> Date: Mon, 25 Apr 2022 17:57:45 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E8=A7=A3=E5=86=B3fegin=E8=B0=83=E7=94=A8?= =?UTF-8?q?=E8=B6=85=E6=97=B6=20-=20Read=20timed=20out=20executing=20POST?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/wkflow/controller/TaskController.java | 2 ++ .../src/main/resources/application-dev.yml | 11 +++++++++++ 2 files changed, 13 insertions(+) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/controller/TaskController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/controller/TaskController.java index 71c650c6a..5d568e4df 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/controller/TaskController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/wkflow/controller/TaskController.java @@ -114,6 +114,8 @@ public class TaskController { @ApiOperation(value="已办流程", notes="已办流程") @PostMapping("/doneProcess") public Page doneProcess(@RequestBody TaskCommonQuery taskCommonQuery){ + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + taskCommonQuery.setUserId(sysUser.getId()); return taskFeignClient.doneProcess(taskCommonQuery); } diff --git a/jero-boot/jero-boot-single-startup/src/main/resources/application-dev.yml b/jero-boot/jero-boot-single-startup/src/main/resources/application-dev.yml index 00f2d4069..3c9560d0e 100644 --- a/jero-boot/jero-boot-single-startup/src/main/resources/application-dev.yml +++ b/jero-boot/jero-boot-single-startup/src/main/resources/application-dev.yml @@ -361,6 +361,17 @@ eureka: fetch-registry: true service-url: defaultZone: http://127.0.0.1:8123/eureka/ + #解决eureka注册的时候使用ip 而不是hostName问题(使用hostName,可能调用延迟 甚至调用失败) + instance: + prefer-ip-address: true + +# feign调用超时时间配置 +feign: + client: + config: + default: + connectTimeout: 10000 + readTimeout: 600000 ## people 2.0 people: appId: 100679 From 683e5b1adee64e1edbd82641ff0bd2a16177c2d2 Mon Sep 17 00:00:00 2001 From: zhn <947514737@qq.com> Date: Mon, 25 Apr 2022 18:01:28 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=96=87=E6=A1=A3=E5=BA=93--=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E9=80=89=E6=8B=A9=E5=AD=97=E6=AE=B5=20=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=96=B0=E5=A2=9E=E5=92=8C=E5=88=97=E8=A1=A8=E5=B1=95?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BussDocumentLibraryEOServiceImpl.java | 70 ++++++++++++++++++- 1 file changed, 67 insertions(+), 3 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java index 4a992b72d..7a71f4d4f 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/document/service/impl/BussDocumentLibraryEOServiceImpl.java @@ -1104,13 +1104,33 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue()); + + //过滤所有人员选择类型的字段 + List personnelOnlCgformFieldList = fieldList.stream() + .filter(e -> FieldTypeEnum.PERSON.getValue().equals(e.getFieldShowType())).collect(Collectors.toList()); + if(personnelOnlCgformFieldList.size() != 0){ + List collect = personnelOnlCgformFieldList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList()); + List personnelList = new ArrayList<>(); + for (Map.Entry entry : map.entrySet()) { + String key = entry.getKey(); + if(collect.contains(key)){ + personnelList.add(key); + } + } + if(personnelList.size() != 0){ + for (String personnel : personnelList) { + map.put(personnel, map.get(personnel+"_id")); + map.remove(personnel+"_id"); + } + } + } //代替标准不为空,需要向被替代标准的法规工程师发送站内通知和飞书信息,提醒内容:"新标准编号"已实施,请注意更新“替代标准编号”状态 String cut = (String) map.get("cut"); map.remove("cut"); map.remove("replace_standard_id"); map.remove("corresponding_standard_id"); - //字段属性 - List fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue()); //获取搜索中心字段 List searchFieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(e.getIsShowSearch())).collect(Collectors.toList()); //文件类型字段 @@ -2595,16 +2615,59 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl FieldTypeEnum.FILE.getValue().equals(e.getFieldShowType())) .collect(Collectors.toList()); List fileList = onlCgformFieldFileList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList()); + //过滤出人员选择字段 + List personnelPnlCgformFieldFileList = fieldList.stream() + .filter(e -> FieldTypeEnum.PERSON.getValue().equals(e.getFieldShowType())) + .collect(Collectors.toList()); + List personnelList = personnelPnlCgformFieldFileList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList()); + List personnelValue = new ArrayList<>(); + List records = infoPage.getRecords(); + for (Map record : records) { + Map record1 = (Map) record; + for (Map.Entry entry : record1.entrySet()) { + //过滤出人员选择的数据 + if(personnelList.size() != 0 && personnelList.contains(entry.getKey())){ + String value = (String) entry.getValue(); + if(ObjectUtils.isNotEmpty(value)){ + personnelValue.addAll(Arrays.asList(value.split(","))); + } + } + } + } + List userList = new ArrayList<>(); + if(personnelValue.size() != 0){ + //查询用户信息(根据用户名) + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.in(SysUser::getId,personnelValue); + userList = sysUserService.list(wrapper); + } //数据字典 List sysDictItems = sysDictItemServiceImpl.selectItemsAll(); //下拉选处理数据字典 - List records = infoPage.getRecords(); List idList = new ArrayList<>(); List fileIdLidt = new ArrayList<>(); + for (Map record : records) { Map record1 = (Map) record; idList.add((String) record1.get("id")); for (Map.Entry entry : record1.entrySet()) { + String key = entry.getKey(); + String value = (String) entry.getValue(); + //处理人员选择 + if(personnelList.contains(key) && StringUtils.isNotBlank(value)){ + StringBuilder sb = new StringBuilder(); + for (String userId : value.split(",")) { + List sysUserList = userList.stream().filter(e -> userId.equals(e.getId())).collect(Collectors.toList()); + if(sysUserList.size() != 0){ + sb.append(sysUserList.get(0).getUsername()+","); + } + } + if(StringUtils.isNotBlank(sb)){ + String substring = sb.substring(0, sb.length() - 1); + entry.setValue(substring); + } + } + //下拉选处理数据字典 dictItem(sysDictItems, entry, cut, fieldList,null); treeDictItem(categoryList, entry, treeFieldList, cut,null); @@ -2613,6 +2676,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl fileInfos = iOSSFileService.getFileInfos(StringUtils.join(fileIdLidt, ",")); if(fileInfos.size() != 0){ From 3c39750386a2b880e419fd7cadd998ac57c79767 Mon Sep 17 00:00:00 2001 From: zhaomeijing Date: Mon, 25 Apr 2022 18:03:33 +0800 Subject: [PATCH 4/4] [update] 50782 --- .../splitting/modules/SplitAddForm.vue | 38 ++++++++++--------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/jero-web/src/views/documentManage/splitting/modules/SplitAddForm.vue b/jero-web/src/views/documentManage/splitting/modules/SplitAddForm.vue index e8897ea95..e2aea1114 100644 --- a/jero-web/src/views/documentManage/splitting/modules/SplitAddForm.vue +++ b/jero-web/src/views/documentManage/splitting/modules/SplitAddForm.vue @@ -639,8 +639,10 @@ loadFormInfo(){ getAction(`split/sarFileSplitItems/getSplitItemsById`,{id:this.itemId}).then(res=>{ if(res.success){ - this.formInline=[...res.result] + // todo + console.log(res,'res...') + this.formInline=[...res.result] } }) }, @@ -691,22 +693,6 @@ // todo this.$refs.splitEditForm.validate(valid=>{ if(valid){ - // 标准编号 -- 选取或者填写的 - let _formInlinevalueItem = this.formInline[this.valueItem].split(',') - // 标准编号的id临时变量 - let _valueItemArr = [] - if(this.formArrayName.length > 0) { - this.formArrayName.forEach((item, index) => { - _formInlinevalueItem.forEach((itemlabel, indexlabel) => { - if(itemlabel === item) { - _valueItemArr.push(this.formArrayId[index]) - } - }) - }) - } - if(_valueItemArr.length > 0) { - this.formInline[this.valueItem + '_id'] = _valueItemArr.join(',') - } this.loading = true if(!this.submitFlag){ this.submitFlag=true @@ -715,6 +701,24 @@ url = this.url.updateInfo } else { url = this.url.addInfo + // 标准编号 -- 选取或者填写的 + let _formInlinevalueItem = this.formInline[this.valueItem].split(',') + // 标准编号的id临时变量 + let _valueItemArr = [] + if(this.formArrayName.length > 0) { + this.formArrayName.forEach((item, index) => { + _formInlinevalueItem.forEach((itemlabel, indexlabel) => { + if(itemlabel === item) { + _valueItemArr.push(this.formArrayId[index]) + } + }) + }) + } + if(_valueItemArr.length > 0) { + this.formInline[this.valueItem + '_id'] = _valueItemArr.join(',') + } else { + this.formInline[this.valueItem + '_id'] = '' + } } let params = JSON.parse(JSON.stringify(this.formInline))