Merge remote-tracking branch 'origin/feature_dev_20221008_TODO' into feature_dev_20221008_TODO
This commit is contained in:
@@ -1219,6 +1219,13 @@ CREATE TABLE `laws_weilai`.`process_info_detail` (
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '流程信息明细表' ROW_FORMAT = Dynamic;
|
||||
|
||||
-- 参数项收集清单 添加索引 2022-10-14 未同步生产环境
|
||||
ALTER TABLE `laws_weilai`.`params_collect_manifest`
|
||||
ADD INDEX `index_pcm_nio_number`(`nio_number`) USING BTREE,
|
||||
ADD INDEX `index_pcm_state`(`state`) USING BTREE,
|
||||
ADD INDEX `index_pcm_sdt_dre`(`sdt`, `dre`) USING BTREE,
|
||||
ADD INDEX `index_pcm_manifest_id`(`params_manifest_id`) USING BTREE;
|
||||
|
||||
-- 待办中心 流程信息明细表 增加字段 2022-10-18 未同步生产环境
|
||||
ALTER TABLE `laws_weilai`.`process_info_detail`
|
||||
ADD COLUMN `end_time` datetime NULL COMMENT '截止时间' AFTER `flow_type`;
|
||||
|
||||
+2
@@ -18,6 +18,8 @@ public interface ParamsCollectManifestEOMapper extends BaseMapper<ParamsCollectM
|
||||
|
||||
List<ParamsCollectManifestEO> listInfo(@Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO);
|
||||
|
||||
List<ParamsCollectManifestEO> listInfoOfTodoCenter();
|
||||
|
||||
List<Map<String, Object>> listInfoForExport(@Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO);
|
||||
|
||||
// 查询控件类型为 标题的 参数项
|
||||
|
||||
+4
@@ -80,6 +80,10 @@
|
||||
order by del_flag desc, add_flag desc, change_flag desc, nio_number asc
|
||||
</select>
|
||||
|
||||
<select id="listInfoOfTodoCenter" resultMap="ParamsCollectManifestEOResultMap">
|
||||
select id,nio_number,state,sdt,dre,params_manifest_id from params_collect_manifest
|
||||
</select>
|
||||
|
||||
<select id="listInfoForExport" resultType="java.util.LinkedHashMap">
|
||||
select *
|
||||
from params_collect_manifest
|
||||
|
||||
+63
-25
@@ -1,6 +1,7 @@
|
||||
package com.jero.modules.todoCenter.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -65,33 +66,48 @@ public class ParamsManifestTodoCenterServiceImpl implements IParamsManifestTodoC
|
||||
List<ParamsManifestTodoCenterEO> paramsManifestEOList = new ArrayList<>();
|
||||
List<ProjectLibraryBase> projectLibraryBaseList = new ArrayList<>();
|
||||
Map<String, Boolean> manifestUserTypeOfHomo = new HashMap<>();
|
||||
Map<String, Boolean> manifestUserTypeOfSdt = new HashMap<>();
|
||||
Map<String, Boolean> manifestUserTypeOfDre = new HashMap<>();
|
||||
Map<String, List<ParamsCollectManifestEO>> paramsManifestEOListMap = new HashMap<>();
|
||||
|
||||
// 查询清单的所有参数项
|
||||
List<ParamsCollectManifestEO> pcmListAll = paramsCollectManifestEOMapper.listInfoOfTodoCenter();
|
||||
|
||||
String userType = "";
|
||||
for(ParamsManifestTodoCenterEO paramsManifestEO : paramsManifestEOListAll) {
|
||||
// 查询清单的所有参数项
|
||||
List<ParamsCollectManifestEO> pcmList = pcmListAll.stream().filter(e->paramsManifestEO.getId().equals(e.getParamsManifestId())).collect(Collectors.toList());
|
||||
int count1 = (int) pcmList.stream().filter(e-> CollectManifestStateEnum.SUBMIT.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.SYNC_REPORT.getValue().equals(e.getState())).count();
|
||||
if (count1 == pcmList.size()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// 判断是不是homo角色
|
||||
projectLibraryBaseList = projectLibraryBaseListAll.stream().filter(e->paramsManifestEO.getProjectId().equals(e.getId())).collect(Collectors.toList());
|
||||
userType = getLoginUserTypeOfHomo(projectLibraryBaseList, loginUser);
|
||||
if(StringUtils.isNotBlank(userType)) {
|
||||
paramsManifestEOList.add(paramsManifestEO);
|
||||
manifestUserTypeOfHomo.put(paramsManifestEO.getId(), true);
|
||||
paramsManifestEOListMap.put(paramsManifestEO.getId(), pcmList);
|
||||
continue;
|
||||
} else {
|
||||
manifestUserTypeOfHomo.put(paramsManifestEO.getId(), false);
|
||||
}
|
||||
// 查询清单的所有参数项
|
||||
ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO();
|
||||
paramsCollectManifestEO.setParamsManifestId(paramsManifestEO.getId());
|
||||
List<ParamsCollectManifestEO> pcmList = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO);
|
||||
|
||||
// 判断是不是sdt角色
|
||||
userType = getLoginUserTypeOfSdt(pcmList, loginUser);
|
||||
if(StringUtils.isNotBlank(userType)) {
|
||||
paramsManifestEOList.add(paramsManifestEO);
|
||||
manifestUserTypeOfSdt.put(paramsManifestEO.getId(), true);
|
||||
paramsManifestEOListMap.put(paramsManifestEO.getId(), pcmList);
|
||||
continue;
|
||||
}
|
||||
|
||||
// 判断是不是dre角色
|
||||
userType = getLoginUserTypeOfDre(pcmList, loginUser);
|
||||
if(StringUtils.isNotBlank(userType)) {
|
||||
paramsManifestEOList.add(paramsManifestEO);
|
||||
manifestUserTypeOfDre.put(paramsManifestEO.getId(), true);
|
||||
paramsManifestEOListMap.put(paramsManifestEO.getId(), pcmList);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
@@ -119,45 +135,67 @@ public class ParamsManifestTodoCenterServiceImpl implements IParamsManifestTodoC
|
||||
}
|
||||
|
||||
// 统计清单中的待办参数数据
|
||||
List<ParamsManifestTodoCenterEO> records = getStatistics(result, manifestUserTypeOfHomo, loginUser);
|
||||
List<ParamsManifestTodoCenterEO> records = getStatistics(result, manifestUserTypeOfHomo, manifestUserTypeOfSdt, manifestUserTypeOfDre, paramsManifestEOListMap,loginUser);
|
||||
page.setRecords(records);
|
||||
return page;
|
||||
}
|
||||
|
||||
|
||||
public List<ParamsManifestTodoCenterEO> getStatistics(List<ParamsManifestTodoCenterEO> paramsManifestEOList, Map<String, Boolean> manifestUserTypeOfHomo, LoginUser loginUser) {
|
||||
public List<ParamsManifestTodoCenterEO> getStatistics(List<ParamsManifestTodoCenterEO> paramsManifestEOList, Map<String, Boolean> manifestUserTypeOfHomo
|
||||
,Map<String, Boolean> manifestUserTypeOfSdt, Map<String, Boolean> manifestUserTypeOfDre, Map<String, List<ParamsCollectManifestEO>> paramsManifestEOListMap, LoginUser loginUser) {
|
||||
List<ParamsManifestTodoCenterEO> paramsManifestTodoCenterEOList = new ArrayList<>();
|
||||
|
||||
for(ParamsManifestTodoCenterEO paramsManifestTodoCenterEO : paramsManifestEOList) {
|
||||
// 查询清单的所有参数项
|
||||
ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO();
|
||||
paramsCollectManifestEO.setParamsManifestId(paramsManifestTodoCenterEO.getId());
|
||||
List<ParamsCollectManifestEO> pcmList = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO);
|
||||
List<ParamsCollectManifestEO> pcmList = paramsManifestEOListMap.get(paramsManifestTodoCenterEO.getId());
|
||||
int count = 0;
|
||||
// 统计待发起数量 包括状态:待发起收集,变更,工程接口人退回
|
||||
if (manifestUserTypeOfHomo.get(paramsManifestTodoCenterEO.getId())) {
|
||||
|
||||
if (ObjectUtil.isNotEmpty(paramsManifestTodoCenterEO.getId()) && manifestUserTypeOfHomo.get(paramsManifestTodoCenterEO.getId())) {
|
||||
// 统计待发起数量 包括状态:待发起收集,变更,工程接口人退回
|
||||
count = (int) pcmList.stream().filter(e-> CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.SDT_BACK.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.CHANGE.getValue().equals(e.getState())).count();
|
||||
if (count > 0) {
|
||||
paramsManifestTodoCenterEO.setWaitCollectNum(count);
|
||||
}
|
||||
}
|
||||
// 统计待分配数量 包括状态:待工程接口人处理,填写人退回
|
||||
count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_SDT.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.DRE_BACK.getValue().equals(e.getState()))).count();
|
||||
if (count > 0) {
|
||||
paramsManifestTodoCenterEO.setWaitSdtNum(count);
|
||||
}
|
||||
// 统计待填写数量 包括状态:待填写,认证工程师退回
|
||||
count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.CERT_BACK.getValue().equals(e.getState()))).count();
|
||||
if (count > 0) {
|
||||
paramsManifestTodoCenterEO.setWaitFillNum(count);
|
||||
}
|
||||
} else if (ObjectUtil.isNotEmpty(paramsManifestTodoCenterEO.getId()) && manifestUserTypeOfSdt.get(paramsManifestTodoCenterEO.getId())) {
|
||||
// 统计待分配数量 包括状态:待工程接口人处理,填写人退回
|
||||
count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_SDT.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.DRE_BACK.getValue().equals(e.getState()))
|
||||
&& loginUser.getUsername().equals(e.getSdt())).count();
|
||||
if (count > 0) {
|
||||
paramsManifestTodoCenterEO.setWaitSdtNum(count);
|
||||
}
|
||||
// 统计待填写数量 包括状态:待填写,认证工程师退回
|
||||
count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.CERT_BACK.getValue().equals(e.getState()))).count();
|
||||
if (count > 0) {
|
||||
paramsManifestTodoCenterEO.setWaitFillNum(count);
|
||||
}
|
||||
|
||||
// 统计待分配数量 包括状态:待工程接口人处理,填写人退回
|
||||
count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_SDT.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.DRE_BACK.getValue().equals(e.getState()))
|
||||
&& loginUser.getUsername().equals(e.getSdt())).count();
|
||||
if (count > 0) {
|
||||
paramsManifestTodoCenterEO.setWaitSdtNum(count);
|
||||
}
|
||||
} else if (ObjectUtil.isNotEmpty(paramsManifestTodoCenterEO.getId()) && manifestUserTypeOfDre.get(paramsManifestTodoCenterEO.getId())) {
|
||||
// 统计待填写数量 包括状态:待填写,认证工程师退回
|
||||
count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.CERT_BACK.getValue().equals(e.getState()))
|
||||
&& loginUser.getUsername().equals(e.getDre())).count();
|
||||
if (count > 0) {
|
||||
paramsManifestTodoCenterEO.setWaitFillNum(count);
|
||||
}
|
||||
|
||||
// 统计待填写数量 包括状态:待填写,认证工程师退回
|
||||
count = (int) pcmList.stream().filter(e-> (CollectManifestStateEnum.WAIT_FILL.getValue().equals(e.getState())
|
||||
|| CollectManifestStateEnum.CERT_BACK.getValue().equals(e.getState()))
|
||||
&& loginUser.getUsername().equals(e.getDre())).count();
|
||||
if (count > 0) {
|
||||
paramsManifestTodoCenterEO.setWaitFillNum(count);
|
||||
}
|
||||
|
||||
paramsManifestTodoCenterEOList.add(paramsManifestTodoCenterEO);
|
||||
|
||||
@@ -12,6 +12,8 @@
|
||||
>
|
||||
<!-- -->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation" v-if="record.flowType != '10'"
|
||||
@click="monitoringProcessClick(record)">{{$t('monitoringProcess')}}</a>
|
||||
<a class="text-operation"
|
||||
@click="viewClick(record)">{{$t('view')}}</a>
|
||||
</span>
|
||||
@@ -120,6 +122,17 @@
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
monitoringProcessClick(row) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/processDetails',
|
||||
query: {
|
||||
prcNum: row.prcNum,
|
||||
prcType: row.flowType,
|
||||
prcId: row.actiProcInstId
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
RelatedItemsClick(item) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/ProjectDetails',
|
||||
@@ -332,4 +345,7 @@
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.text-operation {
|
||||
margin-right: 8px;
|
||||
}
|
||||
</style>
|
||||
@@ -12,9 +12,11 @@
|
||||
>
|
||||
<!-- -->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation" v-if="record.flowType != '10'"
|
||||
@click="monitoringProcessClick(record)">{{$t('monitoringProcess')}}</a>
|
||||
<a class="text-operation"
|
||||
@click="viewClick(record)">{{$t('view')}}</a>
|
||||
</span>
|
||||
</span>
|
||||
<span slot="RelatedItems" slot-scope="text,record">
|
||||
<a @click="RelatedItemsClick(record)" :title="text">{{text}}</a>
|
||||
</span>
|
||||
@@ -120,6 +122,17 @@
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
monitoringProcessClick(row){
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/processDetails',
|
||||
query: {
|
||||
prcNum: row.prcNum,
|
||||
prcType:row.flowType,
|
||||
prcId:row.actiProcInstId,
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
RelatedItemsClick(item) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/ProjectDetails',
|
||||
@@ -331,5 +344,7 @@
|
||||
text-align: right;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.text-operation{
|
||||
margin-right: 8px;
|
||||
}
|
||||
</style>
|
||||
@@ -12,6 +12,8 @@
|
||||
>
|
||||
<!-- -->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation"
|
||||
@click="monitoringProcessClick(record)">{{$t('monitoringProcess')}}</a>
|
||||
<a class="text-operation"
|
||||
@click="viewClick(record)">{{$t('view')}}</a>
|
||||
</span>
|
||||
@@ -106,6 +108,17 @@
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
monitoringProcessClick(row) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/processDetails',
|
||||
query: {
|
||||
prcNum: row.prcNum,
|
||||
prcType: row.flowType,
|
||||
prcId: row.actiProcInstId
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
standardInformationClick(item) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
@@ -207,4 +220,7 @@
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.text-operation {
|
||||
margin-right: 8px;
|
||||
}
|
||||
</style>
|
||||
@@ -12,6 +12,8 @@
|
||||
>
|
||||
<!-- -->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation"
|
||||
@click="monitoringProcessClick(record)">{{$t('monitoringProcess')}}</a>
|
||||
<a class="text-operation"
|
||||
@click="viewClick(record)">{{$t('view')}}</a>
|
||||
</span>
|
||||
@@ -36,13 +38,14 @@
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
|
||||
export default {
|
||||
name: 'doneList',
|
||||
data(){
|
||||
return{
|
||||
dataSource:[],
|
||||
loading:false,
|
||||
columns:[
|
||||
data() {
|
||||
return {
|
||||
dataSource: [],
|
||||
loading: false,
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('standardInformation'),
|
||||
align: 'center',
|
||||
@@ -94,38 +97,49 @@
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
selectedRowKeys:[],
|
||||
pageSize:10,
|
||||
pageNo:1,
|
||||
total:0,
|
||||
queryParam:{},
|
||||
url:{
|
||||
list:'',
|
||||
},
|
||||
selectedRowKeys: [],
|
||||
pageSize: 10,
|
||||
pageNo: 1,
|
||||
total: 0,
|
||||
queryParam: {},
|
||||
url: {
|
||||
list: ''
|
||||
}
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
standardInformationClick(item){
|
||||
methods: {
|
||||
monitoringProcessClick(row) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
path: '/processDetails',
|
||||
query: {
|
||||
id: item.bussDocumentLibraryId,
|
||||
prcNum: row.prcNum,
|
||||
prcType: row.flowType,
|
||||
prcId: row.actiProcInstId
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
viewClick(row){
|
||||
standardInformationClick(item) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
query: {
|
||||
id: item.bussDocumentLibraryId
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
viewClick(row) {
|
||||
row.router = this.$route.path
|
||||
let query = {}
|
||||
if (row.flowType == '5') {
|
||||
query = {
|
||||
prcId:row.actiProcInstId,
|
||||
taskIds:row.taskId,
|
||||
prcType:row.flowType,
|
||||
router:row.router,
|
||||
prcNum:row.prcNum,
|
||||
taskDefinitionKey:row.taskDefinitionKey,
|
||||
isDisabled:true
|
||||
prcId: row.actiProcInstId,
|
||||
taskIds: row.taskId,
|
||||
prcType: row.flowType,
|
||||
router: row.router,
|
||||
prcNum: row.prcNum,
|
||||
taskDefinitionKey: row.taskDefinitionKey,
|
||||
isDisabled: true
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/regulatoryProcessReview',
|
||||
@@ -134,13 +148,13 @@
|
||||
window.open(newUrl.href, '_blank')
|
||||
} else if (row.flowType == '6') {
|
||||
query = {
|
||||
taskDefinitionKey:row.taskDefinitionKey,
|
||||
taskIds:row.taskId,
|
||||
prcType:row.flowType,
|
||||
prcNum:row.prcNum,
|
||||
prcId:row.actiProcInstId,
|
||||
router:row.router,
|
||||
isDisabled:true,
|
||||
taskDefinitionKey: row.taskDefinitionKey,
|
||||
taskIds: row.taskId,
|
||||
prcType: row.flowType,
|
||||
prcNum: row.prcNum,
|
||||
prcId: row.actiProcInstId,
|
||||
router: row.router,
|
||||
isDisabled: true
|
||||
}
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/evaluationProcess',
|
||||
@@ -168,7 +182,7 @@
|
||||
this.pageSize = pageSize
|
||||
this.getList()
|
||||
},
|
||||
getList(){
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
@@ -195,7 +209,7 @@
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -206,4 +220,7 @@
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.text-operation {
|
||||
margin-right: 8px;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user