合并分支 'fix_2nd_period' 到 'master'

Fix 2nd period

查看合并请求 laws-nio/laws-weilai!250
This commit is contained in:
高嵩
2022-11-18 18:36:03 +08:00
18 changed files with 188 additions and 110 deletions
@@ -486,8 +486,8 @@ public class QueryGenerator {
}
name = oConvertUtils.camelToUnderline(name);
log.info("--查询规则-->"+name+" "+rule.getValue()+" "+value);
if(" is null ".equals(value)){
queryWrapper.isNull(name);
if("is null".equals(value)){
queryWrapper.isNull(name).or().eq(name, "");
}else{
switch (rule) {
case GT:
@@ -142,6 +142,7 @@ public class ShiroConfig {
filterChainDefinitionMap.put("/opensso/**", "anon"); //单点登录
filterChainDefinitionMap.put("/project/projectLawsInventoryEO/processCall", "anon"); // 项目库-法规清单 工作流处理数据接口排除
filterChainDefinitionMap.put("/project/projectLawsInventoryEO/updateFlowInfoByProjectLibraryIds", "anon"); // 项目库-法规清单 根据项目库id更新符合性流程发起人、责任人接口排除
filterChainDefinitionMap.put("/project/projectTaskInventoryEO/processCall", "anon"); // 项目库-任务清单 工作流处理数据接口排除
filterChainDefinitionMap.put("/wkflow/processHistoryEO/processCall", "anon"); // 流程历史 工作流处理数据接口排除
filterChainDefinitionMap.put("/lawsOpinionGather/lawsOpinionGatherEO/processCall", "anon"); // 法规收集表 工作流处理数据接口排除
@@ -83,7 +83,7 @@ public class ParamsManifestEOController extends JeroController<ParamsManifestEO,
// 处理 状态 中英文
Map<String, String> stateMap = ManifestStateEnum.toMap(cut);
rows.forEach(manifestEO -> {
manifestEO.setProjectName(paramsManifestEOService.getProjectById(manifestEO.getProjectId()).getProjectName());
manifestEO.setProjectName(paramsManifestEOService.getProjectById(manifestEO.getProjectId(), manifestEO.getProjectVersion()).getProjectName());
manifestEO.setState(stateMap.get(manifestEO.getState()));
});
return Result.OK(cut, pageList);
@@ -164,7 +164,7 @@
select tmp_tb.* from(
select
plb.id as project_id,
concat(pni.project_name,'-',pyni.year_name,'-',target_market,'-',project_version) as project_name
concat(pni.project_name,'-',pyni.year_name,'-',target_market) as project_name
from project_library_base plb
left join project_name_info as pni on plb.project_name_id = pni.id
left join project_year_name_info as pyni on plb.year_name_id = pyni.id
@@ -89,7 +89,7 @@ public interface IParamsManifestEOService extends IService<ParamsManifestEO> {
ParamsManifestEO copy(ParamsManifestEO paramsManifestEO, String sourceManifestId);
ParamsManifestVO getProjectById(String projectId);
ParamsManifestVO getProjectById(String projectId, String projectVersion);
List<Map<String, String>> labelListForProjectDetails(String projectId);
@@ -1301,7 +1301,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
//日期
String deadline = new SimpleDateFormat("yyyy-MM-dd").format(paramsCollectManifestEO.getDeadline());
//项目名称
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(paramsManifestEO.getProjectId()); // 获取项目信息
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(paramsManifestEO.getProjectId(), paramsManifestEO.getProjectVersion()); // 获取项目信息
//url
String urlParamsStr = parseUrlParams(paramsManifestEO);
String hrefFeishu = backUrl + "/ParameterItemCollection" + urlParamsStr;
@@ -1507,8 +1507,8 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
String paramsManifestId = paramsCollectManifestVO.getParamsManifestId();
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId); // 获取项目信息
ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion()); // 获取项目信息
paramsManifestEO.setProjectName(projectInfo.getProjectName());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@@ -1619,8 +1619,8 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
Date deadline = paramsCollectManifestVO.getDeadline();
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId); // 获取项目信息
ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion()); // 获取项目信息
paramsManifestEO.setProjectName(projectInfo.getProjectName());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@@ -1751,8 +1751,8 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
Date deadline = paramsCollectManifestVO.getDeadline();
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录人
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId); // 获取项目信息
ParamsManifestEO paramsManifestEO = paramsManifestEOService.queryById(paramsManifestId); // 获取清单信息
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(projectId, paramsManifestEO.getProjectVersion()); // 获取项目信息
paramsManifestEO.setProjectName(projectInfo.getProjectName());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@@ -4446,7 +4446,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
List<ParamsManifestEO> manifestEOS = paramsManifestEOService.list(queryWrapper);
for (ParamsManifestEO manifestEO : manifestEOS) {
//项目名称
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(manifestEO.getProjectId());
ParamsManifestVO projectInfo = paramsManifestEOService.getProjectById(manifestEO.getProjectId(), manifestEO.getProjectVersion());
if (ObjectUtils.isNotEmpty(projectInfo)) {
//url
String urlParamsStr = parseUrlParams(manifestEO);
@@ -669,8 +669,10 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
}
@Override
public ParamsManifestVO getProjectById(String projectId) {
return paramsManifestEOMapper.getProjectById(projectId);
public ParamsManifestVO getProjectById(String projectId, String projectVersion) {
ParamsManifestVO paramsManifestVO = paramsManifestEOMapper.getProjectById(projectId);
paramsManifestVO.setProjectName(paramsManifestVO.getProjectName() + "-" + projectVersion); // 项目名称加上 相关项目版本
return paramsManifestVO;
}
@Override
@@ -6332,6 +6332,12 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
treeDictItem(categoryList, entry, treeFieldList, cut,null);
}
record1.put("technology_territory_id",technology_territory);
if(StringUtils.equals(cut,CutEnum.EN.getValue())){
if(record.containsKey("title") && record.containsKey("title_en")){
record.put("title",record.get("title_en"));
}
}
}
return infoPage;
}
@@ -381,6 +381,12 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl<LawsTechn
record1.put("sarFileSplitInfoList",sarFileSplitInfoList);
}
}
if(com.jero.modules.system.util.StringUtils.equals(cut,CutEnum.EN.getValue())){
if(record.containsKey("title") && record.containsKey("title_en")){
record.put("title",record.get("title_en"));
}
}
}
return infoPage;
}
@@ -466,4 +466,10 @@ public class ProjectLawsInventoryEOController extends JeroController<ProjectLaws
}
@AutoLog(value = "项目库-法规清单表-根据项目库id更新符合性流程发起人、责任人接口")
@ApiOperation(value="项目库-法规清单表-根据项目库id更新符合性流程发起人、责任人接口", notes="项目库-法规清单表-根据项目库id更新符合性流程发起人、责任人接口")
@GetMapping(value = "/updateFlowInfoByProjectLibraryIds")
public Result<?> updateFlowInfoByProjectLibraryIds(@RequestParam("projectLibraryIds") String projectLibraryIds){
return this.projectLawsInventoryEOService.updateFlowInfoByProjectLibraryIds(projectLibraryIds);
}
}
@@ -18,7 +18,7 @@ public enum ProjectRoleEnum {
PREHOMODUTY("prehomo确认-责任人","8",""),
VERIFYINITIATOR("验证符合性确认-发起人","9",""),
VERIFYDUTY("验证符合性确认-责任人","10",""),
MANAGER("验证符合性确认-责任人","11",""),
MANAGER("manage","11",""),
ADMIN("系统管理员","12",""),
;
@@ -160,4 +160,5 @@ public interface IProjectLawsInventoryEOService extends IService<ProjectLawsInve
Result<?> taskUrg(ProjectTaskUrgVo projectTaskUrgVo);
Result<?> updateFlowInfoByProjectLibraryIds(String projectLibraryIds);
}
@@ -74,6 +74,7 @@ import com.jero.modules.wkflow.feginClient.impl.TaskFeignClientImpl;
import com.jero.modules.wkflow.feginClient.impl.WorkFlowFeignClientImpl;
import com.jero.modules.wkflow.service.IProcessHistoryEOService;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.io.FileUtils;
@@ -129,6 +130,7 @@ import static com.jero.modules.document.service.impl.BussDocumentLibraryEOServic
* @Date: 2022-04-14
* @Version: V1.0
*/
@Slf4j
@Service
@Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class)
public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsInventoryEOMapper, ProjectLawsInventoryEO> implements IProjectLawsInventoryEOService {
@@ -473,12 +475,13 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
// setContentLog(infoDiff,contentLog,infoDiffEn,enContentLog,projectLawsInventoryEO.getProjectLibraryId());
//验证用户是否是该法规上级 项目库的studio 如果是则同步更新流程
int roleCode = checkUserRole(projectLawsInventoryEO.getProjectLibraryId(), currentUser.getId(), "");
if (StringUtils.equals(String.valueOf(roleCode),ProjectRoleEnum.STUDIO_ENGINEER.getValue())){
//更新流程信息
updateFlowInfo(projectLawsInventoryEO);
}
// //验证用户是否是该法规上级 项目库的studio 如果是则同步更新流程
// int roleCode = checkUserRole(projectLawsInventoryEO.getProjectLibraryId(), currentUser.getId(), "");
// if (StringUtils.equals(String.valueOf(roleCode),ProjectRoleEnum.STUDIO_ENGINEER.getValue())){
// //更新流程信息
// updateFlowInfo(projectLawsInventoryEO);
// }
this.updateFlowInfo(projectLawsInventoryEO);
}else {
throw new JeroBootException("该用户没有权限操作该数据!");
}
@@ -710,6 +713,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
@Override
public List<ProjectLawsInventoryEO> queryList(ProjectLawsInventoryEO projectLawsInventoryEO, HttpServletRequest req) {
long startTime = System.currentTimeMillis();
String dutyTerritoryStr = "";
if (StringUtils.isNotEmpty(projectLawsInventoryEO.getDutyTerritory())) {
dutyTerritoryStr = projectLawsInventoryEO.getDutyTerritory();
@@ -749,6 +753,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//if(isProjectRole != Integer.parseInt(ProjectRoleEnum.STUDIO_ENGINEER.getValue())){
int isProjectRole = Integer.parseInt(projectLawsInventoryEO.getRoleCode());
log.info("一阶段消耗时间:" + (System.currentTimeMillis() - startTime));
if(isProjectRole != Integer.parseInt(ProjectRoleEnum.STUDIO_ENGINEER.getValue())
&& isProjectRole != Integer.parseInt(ProjectRoleEnum.MANAGER.getValue())
&& isProjectRole != Integer.parseInt(ProjectRoleEnum.ADMIN.getValue())){
@@ -758,10 +764,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
});
}
List<ProjectLawsInventoryEO> result = super.baseMapper.selectList(projectLawsInventoryEOQueryWrapper);
log.info("二阶段消耗时间:" + (System.currentTimeMillis() - startTime));
dataDispose(result,currentUser,isProjectRole,projectLawsInventoryEO.getCut());
long startTime = System.currentTimeMillis();
log.info("三阶段消耗时间:" + (System.currentTimeMillis() - startTime));
dataDictDispose(result,projectLawsInventoryEO.getCut());
log.debug("处理数据字典消耗时间:" + (System.currentTimeMillis() - startTime));
log.info("四阶段消耗时间:" + (System.currentTimeMillis() - startTime));
return result;
}
@@ -9339,5 +9346,24 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
@Override
public Result<?> updateFlowInfoByProjectLibraryIds(String projectLibraryIds) {
if(StringUtils.isEmpty(projectLibraryIds)){
throw new JeroBootException("项目库id不能为空");
}
List<String> projectLibraryIdList = Arrays.asList(projectLibraryIds.split(","));
QueryWrapper<ProjectLawsInventoryEO> lawsInventoryQueryWrap = new QueryWrapper<>();
lawsInventoryQueryWrap.lambda().in(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryIdList);
List<ProjectLawsInventoryEO> projectLawsInventoryEOList = this.baseMapper.selectList(lawsInventoryQueryWrap);
projectLawsInventoryEOList.forEach(lawsInventoryEO -> {
this.updateFlowInfo(lawsInventoryEO);
});
return new Result<>().success("操作成功!");
}
}
@@ -57,22 +57,8 @@
concat(pli.serial_number,'、',bdl.title_en) as standard_info,
</if>
pi.flow_type,
createBy.username as "create_by",
pi.create_by,
pi.end_time,
(
select
detail.task_id
from
process_info_detail detail
where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} order by submit_time desc limit 1
) as task_id,
(
select
detail.task_definition_key
from
process_info_detail detail
where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} order by submit_time desc limit 1
) as task_definition_key,
pi.status,
pi.prc_num,
pi.prc_name,
@@ -87,7 +73,6 @@
left join project_name_info pni on pni.id = plb.project_name_id
left join project_year_name_info pyni on pyni.id = plb.year_name_id
left join project_laws_inventory pli on pi.project_laws_inventory_id = pli.id
LEFT JOIN sys_user createBy on createBy.id = pi.create_by
LEFT JOIN buss_document_library bdl ON pi.buss_document_library_id = bdl.id
<where>
<if test="params.queryType != 'issuedProcess'">
@@ -141,22 +126,8 @@
concat(pli.serial_number,'、',bdl.title_en) as standard_info,
</if>
pi.flow_type,
createBy.username AS "create_by",
pi.create_by,
pi.end_time,
(
select
detail.task_id
from
process_info_detail detail
where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} and detail.`status` = 'NotDone' limit 1
) as task_id,
(
select
detail.task_definition_key
from
process_info_detail detail
where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId} and detail.`status` = 'NotDone' limit 1
) as task_definition_key,
pi.STATUS,
pi.prc_num,
pi.prc_name,
@@ -171,7 +142,6 @@
LEFT JOIN project_name_info pni ON pni.id = plb.project_name_id
LEFT JOIN project_year_name_info pyni ON pyni.id = plb.year_name_id
LEFT JOIN project_laws_inventory pli ON pi.project_laws_inventory_id = pli.id
LEFT JOIN sys_user createBy ON createBy.id = pi.create_by
LEFT JOIN buss_document_library bdl ON pi.buss_document_library_id = bdl.id
where
(
@@ -201,7 +171,7 @@
'' as title,
'' as title_en,
pi.flow_type,
createBy.username AS "create_by",
pi.create_by,
(
select
pid.end_time
@@ -209,8 +179,6 @@
process_info_detail pid
where pid.process_info_id = pi.id and pid.STATUS = 'NotDone' order by pid.end_time asc limit 1
) as end_time,
'' as task_id,
'' as task_definition_key,
pi.STATUS,
pi.prc_num,
pi.prc_name,
@@ -225,7 +193,6 @@
LEFT JOIN project_name_info pni ON pni.id = plb.project_name_id
LEFT JOIN project_year_name_info pyni ON pyni.id = plb.year_name_id
LEFT JOIN project_laws_inventory pli ON pi.project_laws_inventory_id = pli.id
LEFT JOIN sys_user createBy ON createBy.id = pi.create_by
WHERE
(
pi.id IN (
@@ -260,37 +227,12 @@
pi.STATUS,
pi.prc_num,
pi.prc_name,
(
select
detail.task_id
from
process_info_detail detail
where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId}
<if test="params.taskStatus != null and params.taskStatus != ''">
and detail.`status` = #{params.taskStatus}
</if>
order by detail.submit_time desc
limit 1
) as task_id,
(
select
detail.task_definition_key
from
process_info_detail detail
where detail.process_info_id = pi.id and detail.user_id = #{params.currentUserId}
<if test="params.taskStatus != null and params.taskStatus != ''">
and detail.`status` = #{params.taskStatus}
</if>
order by detail.submit_time desc
limit 1
) as task_definition_key,
createBy.username AS create_by,
pi.create_by,
pi.acti_proc_inst_id,
pi.create_time
FROM
process_info pi
LEFT JOIN buss_document_library bdl ON pi.buss_document_library_id = bdl.id
LEFT JOIN sys_user createBy on createBy.id = pi.create_by
<where>
pi.flow_type IN
<foreach collection="params.flowTypeList" index="index" item="item" open="(" separator="," close=")">
@@ -35,6 +35,7 @@ import com.jero.modules.todoCenter.mapper.ProcessInfoEOMapper;
import com.jero.modules.todoCenter.service.IProcessInfoDetailEOService;
import com.jero.modules.todoCenter.service.IProcessInfoEOService;
import com.jero.modules.todoCenter.vo.ProcessInfoVO;
import com.jero.modules.wkflow.enums.DesignComplianceNodeEnum;
import com.jero.modules.wkflow.enums.FlowTypeEnum;
import com.jero.modules.wkflow.feginClient.impl.WorkFlowFeignClientImpl;
import org.apache.commons.collections4.CollectionUtils;
@@ -206,7 +207,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
IPage page = new Page(pageNo, pageSize);
IPage<ProcessInfoVO> result = this.baseMapper.queryProjectProcessTodoTaskListList(page,params);
this.disposeData(result.getRecords(),cut);
this.disposeData(result.getRecords(),cut,TaskStatusEnum.NOT_DONE.getValue());
return result;
}
@@ -226,7 +227,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
IPage page = new Page(pageNo, pageSize);
IPage<ProcessInfoVO> result = this.baseMapper.queryProjectProcessPageList(page,params);
this.disposeData(result.getRecords(),cut);
this.disposeData(result.getRecords(),cut,"");
return result;
}
@@ -248,7 +249,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
IPage page = new Page(pageNo, pageSize);
IPage<ProcessInfoVO> result = this.baseMapper.queryProjectProcessPageList(page,params);
this.disposeData(result.getRecords(),cut);
this.disposeData(result.getRecords(),cut,"");
return result;
}
@@ -340,7 +341,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
IPage page = new Page(pageNo, pageSize);
IPage<ProcessInfoVO> result = this.baseMapper.queryLawsAssessPageList(page,params);
this.disposeData(result.getRecords(),cut);
this.disposeData(result.getRecords(),cut,TaskStatusEnum.NOT_DONE.getValue());
return result;
}
@@ -363,7 +364,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
IPage page = new Page(pageNo, pageSize);
IPage<ProcessInfoVO> result = this.baseMapper.queryLawsAssessPageList(page,params);
this.disposeData(result.getRecords(),cut);
this.disposeData(result.getRecords(),cut,TaskStatusEnum.HAVE_DONE.getValue());
return result;
}
@@ -386,7 +387,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
IPage page = new Page(pageNo, pageSize);
IPage<ProcessInfoVO> result = this.baseMapper.queryLawsAssessPageList(page,params);
this.disposeData(result.getRecords(),cut);
this.disposeData(result.getRecords(),cut,TaskStatusEnum.HAVE_DONE.getValue());
return result;
}
@@ -403,7 +404,7 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
* @param datas
* @param cut
*/
public void disposeData(List<ProcessInfoVO> datas, String cut){
public void disposeData(List<ProcessInfoVO> datas, String cut, String taskStatus){
if(CollectionUtils.isNotEmpty(datas)){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date currentDate = new Date();
@@ -464,6 +465,19 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
List<ProcessInfoDetailEO> detailEOList = detailMap.getValue();
data.setAssignee(detailEOList.stream().map(ProcessInfoDetailEO::getUserId).collect(Collectors.joining(",")));
userIdList.addAll(detailEOList.stream().map(ProcessInfoDetailEO::getUserId).collect(Collectors.toList()));
// 如果上一操作人是空,则证明该流程当前处理人也是上一个操作人。
if(StringUtils.isEmpty(data.getLastAssignee())){
List<String> collect = detailEOList.stream().filter(detailEO -> {
return (
StringUtils.equals(detailEO.getTaskDefinitionKey(), DesignComplianceNodeEnum.THE_RESPONSIBLE_PERSON_HANDLES_THE_TASK.getKey())
|| StringUtils.equals(detailEO.getTaskDefinitionKey(), DesignComplianceNodeEnum.SPONSOR_REVIEW.getKey())
);
}).map(ProcessInfoDetailEO::getUserId).collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(collect)){
data.setLastAssignee(collect.get(0));
}
}
break;
}
}
@@ -557,6 +571,45 @@ public class ProcessInfoEOServiceImpl extends ServiceImpl<ProcessInfoEOMapper, P
data.setEndTimePastDueFlag(true);
}
});
// 优化待办中心查询效率
List<String> createByUserIdList = datas.stream().map(ProcessInfoVO::getCreateBy).distinct().collect(Collectors.toList());
List<SysUser> createByUserList = this.sysUserService.querySysUserListByIdList(createByUserIdList);
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
datas.forEach(data -> {
// 设置发起人的名称
if(CollectionUtils.isNotEmpty(createByUserList) && StringUtils.isNotEmpty(data.getCreateBy())){
String createBy = createByUserList.stream().filter(createByUser -> {
boolean flag = false;
if(StringUtils.equals(createByUser.getId(),data.getCreateBy())){
flag = true;
}
return flag;
}).map(SysUser::getUsername).distinct().collect(Collectors.joining(","));
data.setCreateBy(createBy);
}
if(!StringUtils.equals(data.getFlowType(),FlowTypeEnum.QDQR.getValue())){
// 获取当前用户所拥有的待办任务信息
List<ProcessInfoDetailEO> currentUserProcessInfoDetailInfos = processInfoDetailEOList.stream().filter(detail -> {
boolean flag = false;
if (StringUtils.isNotEmpty(taskStatus)) {
flag = (StringUtils.equals(detail.getProcessInfoId(), data.getId()) && StringUtils.equals(detail.getUserId(), currentUser.getId()) && StringUtils.equals(taskStatus, detail.getStatus()));
} else {
flag = (StringUtils.equals(detail.getProcessInfoId(), data.getId()) && StringUtils.equals(detail.getUserId(), currentUser.getId()));
}
return flag;
}).collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(currentUserProcessInfoDetailInfos)){
// 设置taskId
data.setTaskId(currentUserProcessInfoDetailInfos.get(0).getTaskId());
// 设置taskDefinitionKey
data.setTaskDefinitionKey(currentUserProcessInfoDetailInfos.get(0).getTaskDefinitionKey());
}
}
});
}
}
@@ -603,6 +603,18 @@
text: this.$t('parameterBatch'),
dictCode: 'params_batch'
},
{
type: '',
value: 'sdt',
text: this.$t('sdt'),
dictCode: 'sdt'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框
},
{
type: '',
value: 'dre',
text: this.$t('dre'),
dictCode: 'dre'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框
},
],
selectedRowKeys: [],
textLoading: false,
@@ -421,6 +421,10 @@
let query = {}
switch (num) {
case 1:
val.designTaskId = val.designTaskId + ''
if (val.designTaskId.length > 30) {
val.designTaskId = ''
}
query = {
taskIds: val.designTaskId,
actiProcInstId: val.designPId,
@@ -446,6 +450,10 @@
}
break
case 2:
val.prehomoTaskId = val.prehomoTaskId + ''
if (val.prehomoTaskId.length > 30) {
val.prehomoTaskId = ''
}
query = {
taskIds: val.prehomoTaskId,
actiProcInstId: val.prehomoPId,
@@ -471,6 +479,10 @@
}
break
case 3:
val.verifyTaskId = val.verifyTaskId + ''
if (val.verifyTaskId.length > 30) {
val.verifyTaskId = ''
}
query = {
taskIds: val.verifyTaskId,
actiProcInstId: val.verifyPId,
@@ -16,7 +16,7 @@
<span class="Required">*</span>
<span class="title-text-text" :title="$t('title')">{{$t('title')}}</span>
</div>
<a-form-model-item class="itemModel" :prop='title'>
<a-form-model-item class="itemModel" prop='title'>
<!-- <a-input class="box-input"-->
<!-- :disabled="disabled"-->
<!-- v-model="formInline[item.db_field_name]"-->
@@ -38,12 +38,13 @@
<a-col :span='11'>
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('relatedProjectVersion')">{{$t('relatedProjectVersion')}}</span>
</div>
<a-form-model-item class="itemModel" style="height: 40px">
<a-select mode="multiple"
class="box-input"
<a-form-model-item class="itemModel" prop='projectVersion'>
<a-select
class="box-input propbox"
style="width: 100%"
v-model='formData.projectVersion'
:placeholder="$t('PleaseSelect')+$t('relatedProjectVersion')">
@@ -224,19 +225,23 @@
trigger: 'blur'
}
],
explanation: [
{
max: 500,
message: this.$t('explain') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
trigger: 'blur'
}
]
projectVersion: [
{ required: true, message: this.$t('PleaseSelect')+this.$t('relatedProjectVersion'), trigger: 'change' },
],
// explanation: [
// {
// max: 500,
// message: this.$t('explain') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
// trigger: 'blur'
// }
// ]
},
areaTable: [],
flag: false, //表单提交标识
spinLoading: false,
confirmLoading: false,
selectedRowKeys: [],
projectName:'',
num:'',
pageNo: 1,
pageSize: 10,
@@ -261,6 +266,10 @@
}
},
mounted() {
let str =this.$route.query.projectName
let index = str.lastIndexOf("-");
this.projectName = str.substr(index+1,str.length);
this.formData.projectVersion = this.projectName
this.loadData()
this.getProjectVersion()
},
@@ -328,11 +337,11 @@
// 编辑一行的数据
this.num = num
let query = JSON.parse(JSON.stringify(edit))
if (query.projectVersion) {
query.projectVersion = query.projectVersion.split(',')
}else{
query.projectVersion = []
}
// if (query.projectVersion) {
// query.projectVersion = query.projectVersion.split(',')
// }else{
// query.projectVersion = []
// }
this.row = query
this.formData = { ...query }
this.selectedRowKeys = query.paramsTemplateId.split(',')
@@ -344,9 +353,9 @@
} else if (this.selectedRowKeys.length > 1) {
this.$message.warning(this.$t('OnlyOneSelected'))
} else {
if (this.formData.title !== undefined) {
this.formData.title = this.formData.title.trim()
}
// if (this.formData.title !== undefined) {
// this.formData.title = this.formData.title.trim()
// }
this.$refs.ruleForm.validate(valid => {
if (valid) {
this.flag = true
@@ -469,7 +478,9 @@
color: red;
}
}
/deep/.propbox .ant-form-explain{
margin-top: -17px !important;
}
.drawer-bootom-button {
position: absolute;
bottom: 0;