From 9dd34bd320539d36aaf39ac9d696b583197e4048 Mon Sep 17 00:00:00 2001 From: wangzhijiang <12345678> Date: Mon, 12 Dec 2022 10:57:04 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=B8=8A=E6=8A=A5=E5=BA=93-=E5=8E=86?= =?UTF-8?q?=E5=8F=B2log=E6=96=B0=E5=A2=9E=E5=A2=9E=E5=8A=A0=E5=A4=87?= =?UTF-8?q?=E6=B3=A8=EF=BC=8C=E5=8E=86=E5=8F=B2=E5=88=97=E8=A1=A8=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=A4=87=E6=B3=A8=E5=B1=95=E7=A4=BA=E3=80=82=E3=80=82?= =?UTF-8?q?=20=E4=B8=8A=E6=8A=A5=E5=BA=93-=E5=8F=82=E6=95=B0=E9=A1=B9?= =?UTF-8?q?=E5=88=97=E8=A1=A8-=E5=8E=BB=E9=99=A4=E5=A4=87=E6=B3=A8?= =?UTF-8?q?=E5=B1=95=E7=A4=BA=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-boot/db/蔚来标准sql/dev_2nd_period.sql | 7 ++++++- .../ParamsCollectManifestEOController.java | 13 ++++--------- .../service/IParamsCollectManifestEOService.java | 2 +- .../impl/ParamsCollectManifestEOServiceImpl.java | 13 +++++++++++-- .../cert/report/entity/ParamsReportDetailLogEO.java | 4 ++++ .../mapper/xml/ParamsReportDetailLogEOMapper.xml | 5 +++-- .../impl/ParamsReportDetailEOServiceImpl.java | 9 +++++++++ 7 files changed, 38 insertions(+), 15 deletions(-) diff --git a/jero-boot/db/蔚来标准sql/dev_2nd_period.sql b/jero-boot/db/蔚来标准sql/dev_2nd_period.sql index 09553a281..977491362 100644 --- a/jero-boot/db/蔚来标准sql/dev_2nd_period.sql +++ b/jero-boot/db/蔚来标准sql/dev_2nd_period.sql @@ -73,4 +73,9 @@ INSERT INTO `laws_weilai`.`onl_cgform_field`(`id`, `cgform_head_id`, `db_field_n ALTER TABLE `laws_weilai`.`params_manifest_history` ADD COLUMN `references_col_name` varchar(255) NULL COMMENT '参数项清单的参考列名称' AFTER `project_version_id`; ALTER TABLE `laws_weilai`.`params_info_publish` - CHANGE COLUMN `version` `publish_version` int(11) NULL DEFAULT NULL COMMENT '发布时版本' AFTER `params_template_id`; \ No newline at end of file + CHANGE COLUMN `version` `publish_version` int(11) NULL DEFAULT NULL COMMENT '发布时版本' AFTER `params_template_id`; + + +-- 上报库历史表,增加备注字段 2022-12-12 未同步生产环境 +ALTER TABLE `laws_weilai`.`params_report_detail_log` + ADD COLUMN `remarks` varchar(4000) NULL COMMENT '备注' AFTER `params_report_detail_id`; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java index 7bcd40a3e..a0fa51878 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java @@ -581,12 +581,7 @@ public class ParamsCollectManifestEOController extends JeroController mandatoryWithdraw(ParamsCollectManifestVO paramsCollectManifestVO) { return this.paramsCollectManifestEOService.mandatoryWithdraw(paramsCollectManifestVO); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java index 1ca387bb7..d64b702f5 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java @@ -183,7 +183,7 @@ public interface IParamsCollectManifestEOService extends IService addReferencesCol(String paramsManifestId, String paramsReportId, String paramsReportConfigId, String paramsReportConfigName); // 认证工程师-更新参考列 boolean updateReferencesCol(List> configDataList, String paramsManifestId); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java index dc358f09c..07b15c5a5 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java @@ -4,6 +4,7 @@ import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ZipUtil; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -4975,7 +4976,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl addReferencesCol(String paramsManifestId, String paramsReportId, String paramsReportConfigId, String paramsReportConfigName) { // 获取清单参数项 ParamsCollectManifestEO queryEO = new ParamsCollectManifestEO(); queryEO.setParamsManifestId(paramsManifestId); @@ -5027,7 +5028,15 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl + - \ No newline at end of file + diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java index e0944d306..36e6ebe84 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java @@ -137,6 +137,10 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl> listMap = new ArrayList<>(); list.forEach(collectManifestEO -> { // 参数收集清单 + + // 2022-12-12 上报库 参数项查看列表 备注设置为空。 + collectManifestEO.setRemarks(null); + // 处理数据字典字段 中英文切换 认证类型,责任领域 List certCategory = Arrays.asList(collectManifestEO.getCertCategory().split(",")); List dutyTerritory = Arrays.asList(collectManifestEO.getDutyTerritory().split(",")); @@ -1730,10 +1734,15 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl Date: Mon, 12 Dec 2022 13:30:01 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E8=AE=A4=E8=AF=81=E5=B7=A5=E7=A8=8B?= =?UTF-8?q?=E5=B8=88=E5=88=86=E9=85=8D=E5=A1=AB=E5=86=99=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/common/lang/en-us.js | 1 + jero-web/src/common/lang/zh-cn.js | 1 + .../src/components/AssignedByHomo/index.vue | 261 ++++++++++++++++++ .../src/components/tableCollection/index.vue | 2 +- .../src/components/tableCollection/index1.vue | 14 + .../ParameterItemCollectionList.vue | 132 ++++++--- .../dialog/parametercolumn.vue | 2 +- 7 files changed, 376 insertions(+), 37 deletions(-) create mode 100644 jero-web/src/components/AssignedByHomo/index.vue diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index 905dde08b..cb8f089ac 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -1367,4 +1367,5 @@ module.exports = { Referenceparametercolumn:'Reference Parameter Column', Updateparametercolumn:'Update The Parameter Column', columnfirst:'Reference the parameter column first', + columnforced:'Confirm a forced retraction?', } \ 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 80ded9963..b06ea98a1 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -1468,4 +1468,5 @@ module.exports = { Referenceparametercolumn:'引用参数列', Updateparametercolumn:'更新参数列', columnfirst:'请先引用参数列', + columnforced:'确认强制撤回?', } \ No newline at end of file diff --git a/jero-web/src/components/AssignedByHomo/index.vue b/jero-web/src/components/AssignedByHomo/index.vue new file mode 100644 index 000000000..a7414c884 --- /dev/null +++ b/jero-web/src/components/AssignedByHomo/index.vue @@ -0,0 +1,261 @@ + + + + + + \ No newline at end of file diff --git a/jero-web/src/components/tableCollection/index.vue b/jero-web/src/components/tableCollection/index.vue index 54b32a152..818e2c07e 100644 --- a/jero-web/src/components/tableCollection/index.vue +++ b/jero-web/src/components/tableCollection/index.vue @@ -55,7 +55,7 @@ - + + @@ -183,6 +184,11 @@ + + + {{text && text.length > 10?text.slice(0,9)+'...':text}} + +
{{$t('Adjustareasofresponsibility')}}
+ +
+ + {{$t('Assignedby')}} +
@@ -309,6 +314,13 @@ @GetgetLoginUserType='GetgetLoginUserType' @areaVisibleAssignedbyflag='areaVisibleAssignedbyflag' @areaVisible='areaVisibleAssignedby = false'/> + + + + '{{$t('handledInterface')}}'{{$t('or')}}'{{$t('Filledreturn')}}' + + + '{{$t('completed')}}' + '{{$t('completed')}}'{{$t('or')}}'{{$t('ReturnedEngineer')}}' @@ -494,6 +510,7 @@ import AdjustareaSofrespon from '@/components/AdjustareaSofrespon/index' import ReferenceParameter from '@/components/ReferenceParameter/index' import AssignedBy from '@/components/AssignedBy/index' + import AssignedByHomo from '@/components/AssignedByHomo/index' import ImportFileOnlyList from '@/components/ImportFileOnlyListtag/index' import axios from 'axios' import { ACCESS_TOKEN } from '@/store/mutation-types' @@ -507,6 +524,7 @@ ParameterLibraryAdd, parameterColumn, AssignedBy, + AssignedByHomo, AdjustareaSofrespon, ImportFileOnlyList, TaskCutOffTime, @@ -688,6 +706,7 @@ Dateline: {}, areaVisibleFreeze: false, // 冻结配置 areaVisibleAssignedby: false, // 分配填写人弹框 + areaVisibleAssignedbyhomo: false, // 认证分配填写人弹框 areaVisibleTaskCutOffTime: false, // 截至时间弹框 OneclickCollection:false, parametercolumn:false, @@ -1148,6 +1167,27 @@ } return flag }, + // 认证工程师 分配填写人 权限 + // 仅仅状态为 待填写 可以分配填写人 + sdtJurisdictionAssignedhomo() { + // 定义开关 0为没有权限 1为有权限 + this.NotSelectedRowKeysValue = [] + let flag = 1 + if (this.selectedRowKeysValue.length == 0) { + flag = 2 + this.$message.warning(this.$t('selectLeastOne')) + } else { + this.selectedRowKeysValue.forEach((item, index) => { + console.log(item.state) + if (item.state !== '待填写' && item.state !== 'To be filled') { + this.NotSelectedRowKeysValue.push(item) + flag = 0 + } + }) + } + console.log(flag) + return flag + }, // 填写人 提交 权限 // 仅仅状态为 待填写 认证工程师退回 可以提交 dreJurisdictionSubmit() { @@ -1340,7 +1380,6 @@ }, // 引用参数列 Referenceparametercolumn() { - console.log(1111) this.parametercolumn = true }, Updateparametercolumn() { @@ -1348,16 +1387,20 @@ console.log(data) let referencesCol = [] let postDate = [] + let colunmnFlag = '' data.forEach((item,index) => { - if(!item.dutyTerritory){ - this.$message.warning(this.$t('columnfirst')) - return + if(!item.referencesCol){ + this.colunmnFlag = true } referencesCol.push({ referencesCol: item.referencesCol, id: item.id }) }) + if(this.colunmnFlag){ + this.$message.warning(this.$t('columnfirst')) + return + } for (let i = 0; i < referencesCol.length; i++) { let postDateobj = {} let itemIn = Object.keys(referencesCol[i]) @@ -1665,48 +1708,55 @@ }) let _this = this let param = { ids: _array.join(',') } - this.textLoading = true let url = '' if(this.currentPersonRole == 'homo'){ url = '/jero-boot/params/collectManifest/mandatoryWithdraw' }else{ url = '/jero-boot/params/collectManifest/withdraw' } - axios({ - url: url, - method: 'post', - data: param, - transformRequest: [function(data) { - let ret = '' - for (let it in data) { - ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&' + this.$confirm({ + title: this.$t('columnforced'), + content: '', + onOk: + async () => { + this.textLoading = true + axios({ + url: url, + 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) => { + if (res.data.success) { + this.textLoading = false + _this.$message.success(_this.$t('OperationSuccessful')) + _this.GetgetTableList() + _this.selectedRowKeysValue = [] + } else { + this.textLoading = false + _this.$message.warning(_this.$t('operationFailed')) + } + }) + .catch((error) => { + this.textLoading = false + }) } - return ret - }], - headers: { - 'Content-Type': 'application/x-www-form-urlencoded', - 'X-Access-Token': _this.token - } }) - .then((res) => { - if (res.data.success) { - this.textLoading = false - _this.$message.success(_this.$t('OperationSuccessful')) - _this.GetgetTableList() - _this.selectedRowKeysValue = [] - } else { - this.textLoading = false - _this.$message.warning(_this.$t('operationFailed')) - } - }) - .catch((error) => { - this.textLoading = false - }) }, // 分配填写人 assignedBy() { - // 工程接口人 - let sdtJurisdictionAssigned = this.sdtJurisdictionAssigned() + let sdtJurisdictionAssigned = this.sdtJurisdictionAssigned() + // 工程接口人 if (sdtJurisdictionAssigned == 1) { this.areaVisibleAssignedby = true } else if (sdtJurisdictionAssigned == 0) { @@ -1714,6 +1764,18 @@ this.jurisdiction = 'SDTFPTXR' } }, + // 认证分配填写人 + assignedByHomo() { + let sdtJurisdictionAssigned = this.sdtJurisdictionAssignedhomo() + // 工程接口人 + if (sdtJurisdictionAssigned == 1) { + this.areaVisibleAssignedbyhomo = true + } else if (sdtJurisdictionAssigned == 0) { + this.visibleoperationFailed = true + this.jurisdiction = 'SDTFPTXRHOMO' + } + }, + // 分配填写人确定后弹框关闭 areaVisibleAssignedbyflag(val) { this.areaVisibleAssignedby = val diff --git a/jero-web/src/views/projectManagement/dialog/parametercolumn.vue b/jero-web/src/views/projectManagement/dialog/parametercolumn.vue index f392397f2..9c851626b 100644 --- a/jero-web/src/views/projectManagement/dialog/parametercolumn.vue +++ b/jero-web/src/views/projectManagement/dialog/parametercolumn.vue @@ -252,7 +252,7 @@ this.loadData() }, handleCancel() { - this.$emit('areaVisible', false) + this.$emit('drawerhandleCancel', false) }, onSelectChange(selectedRowKeys, selectedRowKeysDate) { this.selectedRowKeysDate = selectedRowKeysDate From e0f22e765e5e3fc146a92196cc6b4c1c9db86e9d Mon Sep 17 00:00:00 2001 From: wangzhijiang <12345678> Date: Mon, 12 Dec 2022 16:56:51 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E8=AE=A4=E8=AF=81=E5=B7=A5=E7=A8=8B?= =?UTF-8?q?=E5=B8=88-=E5=88=86=E9=85=8D=E5=A1=AB=E5=86=99=E4=BA=BA?= =?UTF-8?q?=E5=BC=80=E5=8F=91=E3=80=82=20=E4=B8=8A=E6=8A=A5=E5=BA=93?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E6=98=8E=E7=BB=86=EF=BC=8C=E5=B8=A6=E5=8E=86?= =?UTF-8?q?=E5=8F=B2Log?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ParamsCollectManifestEOController.java | 12 ++ .../IParamsCollectManifestEOService.java | 3 + .../ParamsCollectManifestEOServiceImpl.java | 187 ++++++++++++++++++ .../service/IParamsReportDetailEOService.java | 5 + .../impl/ParamsReportDetailEOServiceImpl.java | 80 ++++++++ .../src/components/AssignedByHomo/index.vue | 2 +- .../ParameterItemCollectionList.vue | 6 +- 7 files changed, 293 insertions(+), 2 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java index a0fa51878..66d706009 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/controller/ParamsCollectManifestEOController.java @@ -659,4 +659,16 @@ public class ParamsCollectManifestEOController extends JeroController mandatoryWithdraw(ParamsCollectManifestVO paramsCollectManifestVO) { return this.paramsCollectManifestEOService.mandatoryWithdraw(paramsCollectManifestVO); } + + /** + * 认证工程师-分配填写人 + * @param paramsCollectManifestVO + * @return + */ + @AutoLog(value = "参数项收集清单-认证工程师-分配填写人") + @ApiOperation(value="参数项收集清单-认证工程师-分配填写人", notes="参数项收集清单-认证工程师-分配填写人") + @PostMapping(value = "/certifiedEngineerUpdateDreBatch") + public Result certifiedEngineerUpdateDreBatch(ParamsCollectManifestVO paramsCollectManifestVO) { + return this.paramsCollectManifestEOService.certifiedEngineerUpdateDreBatch(paramsCollectManifestVO); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java index d64b702f5..74f1308df 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/IParamsCollectManifestEOService.java @@ -190,4 +190,7 @@ public interface IParamsCollectManifestEOService extends IService mandatoryWithdraw(ParamsCollectManifestVO paramsCollectManifestVO); + + // 认证工程师-批量修改填写人 + Result certifiedEngineerUpdateDreBatch(ParamsCollectManifestVO paramsCollectManifestVO); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java index 07b15c5a5..b10ff8fdb 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java @@ -5219,6 +5219,193 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl certifiedEngineerUpdateDreBatch(ParamsCollectManifestVO paramsCollectManifestVO) { + if (StringUtils.isEmpty(paramsCollectManifestVO.getIds()) + || StringUtils.isEmpty(paramsCollectManifestVO.getDre()) + || StringUtils.isEmpty(paramsCollectManifestVO.getProjectId()) || StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { + throw new JeroBootException("参数不能为空!"); + } + String paramsCollectManifestIds = paramsCollectManifestVO.getIds(); + String dre = paramsCollectManifestVO.getDre(); + String projectId = paramsCollectManifestVO.getProjectId(); + String paramsManifestId = paramsCollectManifestVO.getParamsManifestId(); + + ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息 + ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion()); // 获取项目信息 + paramsManifestEO.setProjectName(projectInfo.getProjectName()); + + String[] paramsCollectManifestIdArr = paramsCollectManifestIds.split(","); + List updateEOList = new ArrayList<>(); + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(ParamsCollectManifestEO::getId, Arrays.asList(paramsCollectManifestIdArr)) + .orderByAsc(ParamsCollectManifestEO::getDeadline).orderByAsc(ParamsCollectManifestEO::getNioNumber); + List paramsCollectManifestEOList = this.list(queryWrapper); + Date deadline = paramsCollectManifestEOList.get(0).getDeadline(); + + // 存放数据的前后填写与工程接口人信息 + List> paramsCollectManifestMapList = new ArrayList<>(); + for (ParamsCollectManifestEO paramsCollectManifestEO : paramsCollectManifestEOList) { + // 如果新分发的填写人和原填写人一致,直接跳过。 + if(StringUtils.equals(dre,paramsCollectManifestEO.getDre())){ + continue; + } + + Map paramsCollectManifestMap = new HashMap<>(); + paramsCollectManifestMap.put("paramsCollectManifestId",paramsCollectManifestEO.getId()); + paramsCollectManifestMap.put("dreUpdateFront",paramsCollectManifestEO.getDre()); + paramsCollectManifestMap.put("dreUpdateAfter",dre); + paramsCollectManifestMap.put("sdt",paramsCollectManifestEO.getSdt()); + paramsCollectManifestMap.put("paramsCollectManifestEO",paramsCollectManifestEO); + paramsCollectManifestMapList.add(paramsCollectManifestMap); + + ParamsCollectManifestEO updateEO = new ParamsCollectManifestEO(); + updateEO.setId(paramsCollectManifestEO.getId()); + updateEO.setDre(dre); // 设置填写人 + updateEO.setState(CollectManifestStateEnum.WAIT_FILL.getValue()); // 设置状态为:待填写 + updateEOList.add(updateEO); + } + if(CollectionUtils.isNotEmpty(updateEOList)){ + this.updateBatchById(updateEOList); + // 发送变更消息 + this.sendChangeMessage(paramsCollectManifestMapList,paramsManifestEO,projectInfo,dre,deadline); + } + return Result.OK("分配填写人成功!"); + } + + /** + * 发送变更消息 + * @param paramsCollectManifestMapList + * @param paramsManifestEO 清单信息 + * @param projectInfo + * @param dre + * @param deadline + */ + public void sendChangeMessage(List> paramsCollectManifestMapList,ParamsManifestEO paramsManifestEO,ParamsManifestVO projectInfo,String dre,Date deadline){ + LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if(CollectionUtils.isNotEmpty(paramsCollectManifestMapList)){ + // 工程接口人 + Map>> sdtGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("sdt").toString())))); + for (Map.Entry>> sdtMap : sdtGroupMap.entrySet()) { + String sdtUserName = sdtMap.getKey(); + + String nioNumbers = ""; + List> value = sdtMap.getValue(); + for (Map map : value) { + ParamsCollectManifestEO paramsCollectManifestEO = JSONObject.parseObject(JSONObject.toJSONString(map.get("paramsCollectManifestEO")), ParamsCollectManifestEO.class); + String nioNumber = paramsCollectManifestEO.getNioNumber(); + nioNumbers += nioNumber + ","; + } + + if(StringUtils.isNotEmpty(nioNumbers)){ + nioNumbers = nioNumbers.substring(0,nioNumbers.length()-1); + } + + String cnContentUpper = "您参与填写的参数 " + nioNumbers + ",已被 " + currentUser.getUsername() + " 重新分发给 " + dre + "请及时查看。"; + String enContentUpper = "The parameter " + nioNumbers + " you distributed have been re-assigned to " + currentUser.getUsername() + " by " + dre; + + // 消息内容 + SysUser sysUser = this.sysUserService.getUserByName(sdtUserName); + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = this.backUrl + "/ParameterItemCollection" + urlParamsStr; + + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); + feishuMsgVo.setCnContentUpper(cnContentUpper); + feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + + "\n发起人: " + currentUser.getUsername()); + feishuMsgVo.setEnContentUpper(enContentUpper); + feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + + "\nInitiator: " + currentUser.getUsername()); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); + try { + this.feishuService.sendCard(thirdIds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } + + // 修改前填写人 + Map>> dreUpdateFrontGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("dreUpdateFront").toString())))); + for (Map.Entry>> dreUpdateFrontMap : dreUpdateFrontGroupMap.entrySet()) { + String dreUpdateFront = dreUpdateFrontMap.getKey(); + + String nioNumbers = ""; + List> value = dreUpdateFrontMap.getValue(); + for (Map map : value) { + ParamsCollectManifestEO paramsCollectManifestEO = JSONObject.parseObject(JSONObject.toJSONString(map.get("paramsCollectManifestEO")), ParamsCollectManifestEO.class); + String nioNumber = paramsCollectManifestEO.getNioNumber(); + nioNumbers += nioNumber + ","; + } + if(StringUtils.isNotEmpty(nioNumbers)){ + nioNumbers = nioNumbers.substring(0,nioNumbers.length()-1); + } + + String cnContentUpper = "您参与填写的参数 " + nioNumbers + " 已被 "+ currentUser.getUsername() +" 撤回。"; + String enContentUpper = "The parameter " + nioNumbers + " you filled in have been withdrawn by "+ currentUser.getUsername(); + + // 消息内容 + SysUser sysUser = sysUserService.getUserByName(dreUpdateFront); + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); + feishuMsgVo.setCnContentUpper(cnContentUpper); + feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + + "\n发起人: " + currentUser.getUsername()); + feishuMsgVo.setEnContentUpper(enContentUpper); + feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + + "\nInitiator: " + currentUser.getUsername()); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); + try { + this.feishuService.sendCard(thirdIds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } + + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + // 修改后填写人 + Map>> dreUpdateAfterGroupMap = paramsCollectManifestMapList.stream().collect(Collectors.groupingBy((m -> (m.get("dreUpdateAfter").toString())))); + for (Map.Entry>> dreUpdateAfterMap : dreUpdateAfterGroupMap.entrySet()) { + String dreUpdateAfter = dreUpdateAfterMap.getKey(); + + // 消息内容 + SysUser sysUser = sysUserService.getUserByName(dreUpdateAfter); + String[] thirdIds = new String[1]; + thirdIds[0] = sysUser.getThirdId(); + String urlParamsStr = parseUrlParams(paramsManifestEO); + String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr; + + FeishuMsg2Vo feishuMsgVo = new FeishuMsg2Vo(); + feishuMsgVo.setTitle(MessageType2Enum.HOMO_PARAMETER_COLLECTION.getCn() + "/" + MessageType2Enum.HOMO_PARAMETER_COLLECTION.getEn()); + feishuMsgVo.setCnContentUpper("您好,"+ currentUser.getUsername() +"向您分发了认证参数填写任务,请及时处理。"); + feishuMsgVo.setCnContentLower("项目: " + projectInfo.getProjectName() + + "\n发起人: " + currentUser.getUsername() + + "\n截止时间: " + sdf.format(deadline)); + feishuMsgVo.setEnContentUpper("Hello! "+ currentUser.getUsername() +" has assigned the task of filling in Homo Parameter to you. Please address it in a timely manner."); + feishuMsgVo.setEnContentLower("Project: " + projectInfo.getProjectName() + + "\nInitiator: " + currentUser.getUsername() + + "\nDue Date: " + sdf.format(deadline)); + feishuMsgVo.setUrl(hrefFeishu); + feishuMsgVo.setColor(MsgColorEnum.GREEN.getValue()); + try { + this.feishuService.sendCard(thirdIds, feishuMsgVo); + } catch (IOException e) { + log.error("飞书消息推送失败"); + } + } + } + } + private void deadlineDateMap(Map> today, ParamsCollectManifestEO collectManifestEO, String thirdId) { List stringList = today.get(thirdId); if (ObjectUtils.isEmpty(stringList)) { diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/IParamsReportDetailEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/IParamsReportDetailEOService.java index 4d3ec06fa..9314749c2 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/IParamsReportDetailEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/IParamsReportDetailEOService.java @@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.jero.modules.cert.report.entity.ParamsReportConfigDataEO; import com.jero.modules.cert.report.entity.ParamsReportDetailEO; import com.jero.modules.cert.report.vo.ParamsReportDetailVO; +import org.apache.poi.xssf.usermodel.XSSFCellStyle; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -68,4 +70,7 @@ public interface IParamsReportDetailEOService extends IService listInfoForReferencesCol(String paramsReportId, String paramsReportConfigId); + + // 导出参数项历史Log信息 + void exportParamsReportDetailLog(String cut, XSSFWorkbook workbook, String sheetHistoryName, List> allParamsInfoList, XSSFCellStyle headerCellStyle,XSSFCellStyle bodyCellStyle); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java index 36e6ebe84..36b095838 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ZipUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Lists; @@ -38,6 +39,7 @@ import com.jero.modules.split.common.ReadExcel; import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.system.service.ISysDictItemService; import org.apache.commons.codec.digest.DigestUtils; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.util.HSSFColor; @@ -600,8 +602,10 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl> allParamsInfoList,XSSFCellStyle headerCellStyle,XSSFCellStyle bodyCellStyle) { + // 处理历史log sheet里面的数据 + XSSFSheet sheetHistory = workbook.createSheet(sheetHistoryName); + String[] historyHeaderArr = new String[]{"NIO编号","操作详情","备注","操作时间"}; + if (StringUtils.equals(cut, CutEnum.EN.getValue())) { + historyHeaderArr = new String[]{"NIO Number", "Operation Details", "Comments", "Operation Time"}; + } + XSSFRow historyRowFirst = sheetHistory.createRow(0); + for (int i = 0; i < historyHeaderArr.length; i++) { + XSSFCell cell = historyRowFirst.createCell(i); + XSSFRichTextString text = new XSSFRichTextString(historyHeaderArr[i]); + cell.setCellValue(text); + cell.setCellStyle(headerCellStyle); + + // 设置单元格宽度 + String[] ParamsValueArr = new String[]{"操作详情","备注"}; + if (CutEnum.EN.getValue().equals(cut)) { + ParamsValueArr = new String[]{"Operation Details","Comments"}; + } + + String historyHeaderStr = historyHeaderArr[i]; + boolean widthFlag = false; + for (int i1 = 0; i1 < ParamsValueArr.length; i1++) { + if(StringUtils.equals(historyHeaderStr,ParamsValueArr[i1])){ + widthFlag = true; + } + } + if(widthFlag){ + sheetHistory.setColumnWidth(i, 80 * 256); + }else { + sheetHistory.setColumnWidth(i, 20 * 256); + } + } + // 查询历史log信息 + List detailIdList = allParamsInfoList.stream().map(e -> e.get("id").toString()).distinct().collect(Collectors.toList()); + QueryWrapper detailLogQueryWrap = new QueryWrapper<>(); + detailLogQueryWrap.lambda().in(ParamsReportDetailLogEO::getParamsReportDetailId,detailIdList); + detailLogQueryWrap.orderByDesc("params_report_detail_id"); + List detailLogList = this.paramsReportDetailLogEOService.list(detailLogQueryWrap); + if (CollectionUtils.isNotEmpty(detailLogList)) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + + int historyRowNumber = 1; + for (int i = 0; i < detailLogList.size(); i++) { + String paramsReportDetailId = detailLogList.get(i).getParamsReportDetailId(); + + String nioNumber = allParamsInfoList.stream().filter(paramsInfo -> { + boolean flag = false; + if(StringUtils.equals(paramsInfo.get("id").toString(),paramsReportDetailId)){ + flag = true; + } + return flag; + }).map(e -> e.get("nio_number").toString()).distinct().collect(Collectors.toList()).get(0); + String operatorDetails = detailLogList.get(i).getLogCnContent(); + String operatorTime = sdf.format(detailLogList.get(i).getCreateTime()); + if(StringUtils.equals(cut,CutEnum.EN.getValue())){ + operatorDetails = detailLogList.get(i).getLogEnContent(); + } + + XSSFRow row1 = sheetHistory.createRow(historyRowNumber); + row1.createCell(0).setCellValue(nioNumber); + row1.createCell(1).setCellValue(operatorDetails); + row1.createCell(2).setCellValue(detailLogList.get(i).getRemarks()); + row1.createCell(3).setCellValue(operatorTime); + for (int j = 0; j < 4; j++) { + row1.getCell(j).setCellStyle(bodyCellStyle); + } + historyRowNumber ++; + } + } + } + @Override public List> getConfigLabelList(ParamsReportDetailVO paramsReportDetailVO) { String paramsManifestId = paramsReportDetailVO.getParamsManifestId(); diff --git a/jero-web/src/components/AssignedByHomo/index.vue b/jero-web/src/components/AssignedByHomo/index.vue index a7414c884..1e5cce5f5 100644 --- a/jero-web/src/components/AssignedByHomo/index.vue +++ b/jero-web/src/components/AssignedByHomo/index.vue @@ -204,7 +204,7 @@ export default { this.confirmLoading = false this.$emit('GetgetLoginUserType') this.$emit('GetgetTableList') - this.$emit('areaVisibleAssignedbyflag', false) + this.$emit('areaVisibleAssignedbyflaghomo', false) }else{ this.confirmLoading = false _this.$message.warning(_this.$t('operationFailed')) diff --git a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue index 01c3e7cae..b783e1bb4 100644 --- a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue +++ b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue @@ -319,7 +319,7 @@ + @areaVisibleAssignedbyflaghomo='areaVisibleAssignedbyflaghomo' @areaVisible='areaVisibleAssignedbyhomo = false'/> @@ -1780,6 +1780,10 @@ areaVisibleAssignedbyflag(val) { this.areaVisibleAssignedby = val }, + // 认证分配填写人确定后弹框关闭 + areaVisibleAssignedbyflaghomo(val) { + this.areaVisibleAssignedbyhomo = val + }, // 截止时间 // TaskCutOffTimeLibrary() { // let dreTaskCutOffTimeLibrary = this.dreTaskCutOffTimeLibrary() From 69e5e572b3c8883b3098abba2ff1894640fba7a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E5=B5=A9?= Date: Mon, 12 Dec 2022 17:20:21 +0800 Subject: [PATCH 4/4] =?UTF-8?q?1.=E8=B4=A3=E4=BB=BB=E9=A2=86=E5=9F=9F?= =?UTF-8?q?=E7=A9=BA=E9=BB=98=E8=AE=A4=E6=98=BE=E7=A4=BA--=202.=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E8=B4=A3=E4=BB=BB=E9=A2=86=E5=9F=9F=E5=9B=9E=E6=98=BE?= =?UTF-8?q?=E6=B8=85=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/components/tableCollection/index.vue | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/jero-web/src/components/tableCollection/index.vue b/jero-web/src/components/tableCollection/index.vue index 818e2c07e..e1878636e 100644 --- a/jero-web/src/components/tableCollection/index.vue +++ b/jero-web/src/components/tableCollection/index.vue @@ -59,14 +59,14 @@ {{ (record.dataValue == null || record.dataValue == 'undefined')? '--': record.dataValue }} + @click='ondataValueTobe(record)'>{{ (record.dataValue == null || record.dataValue == 'undefined' || record.dataValue == '')? '--': record.dataValue }} - {{ (record.dataValue == null || record.dataValue == 'undefined')? '--': record.dataValue }} + {{ (record.dataValue == null || record.dataValue == 'undefined' || record.dataValue == '')? '--': record.dataValue }} - {{ (record.dataValue == null || record.dataValue == 'undefined')? '--': record.dataValue }} + {{ (record.dataValue == null || record.dataValue == 'undefined' || record.dataValue == '')? '--': record.dataValue }} @@ -489,8 +489,8 @@ console.log(res) if (res.data.success) { _this.$message.success(_this.$t('OperationSuccessful')) - // this.$refs['ruleFormOne'].resetFields() _this.areaVisiblezr = false + this.$refs['ruleFormOne'].resetFields() this.getLoginUserType() } else { _this.$message.warning(_this.$t('operationFailed'))