Merge remote-tracking branch 'origin/secondStage' into secondStage

This commit is contained in:
梁琦涛
2023-12-07 15:55:34 +08:00
7 changed files with 127 additions and 33 deletions
@@ -100,7 +100,7 @@ public class WorkCenterController {
return Result.OK(sentList);
}
@ApiOperation(value = "查询全部流程")
@ApiOperation(value = "监控流程")
@GetMapping("/getAllList")
public Result<?> getAllList(ProcessAll processAll,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@@ -26,20 +26,19 @@
p.project_id,
p.project_name,
p.prc_name_en,
group_concat(par.user_id) as handleUserId,
par.node_id
group_concat(par.user_id) as handleUserId
from (
select pa.*,
max(par.create_time) as receivedTaskTime,
max(par.end_time) as completedTaskTime,
par.node_id
max(par.end_time) as completedTaskTime
from process_all pa
left join process_approval_record par on pa.process_instance_id = par.process_instance_id
${ew.customSqlSegment}
group by pa.id
) p
left join process_approval_record par on p.process_instance_id = par.process_instance_id
WHERE par.finish_flag = 0
or par.id is null
LEFT JOIN (
SELECT user_id,process_instance_id from process_approval_record WHERE finish_flag = 1
) par ON p.process_instance_id = par.process_instance_id
group by p.process_instance_id
</select>
@@ -50,9 +49,11 @@
from process_all pa
left join process_approval_record par on pa.process_instance_id = par.process_instance_id
${ew.customSqlSegment}
group by pa.id
) p
left join process_approval_record par on p.process_instance_id = par.process_instance_id
WHERE par.finish_flag = 0 or par.id is null
LEFT JOIN (
SELECT user_id,process_instance_id from process_approval_record WHERE finish_flag = 1
) par ON p.process_instance_id = par.process_instance_id
group by p.process_instance_id
</select>
@@ -63,9 +64,11 @@
from process_all pa
left join process_approval_record par on pa.process_instance_id = par.process_instance_id
${ew.customSqlSegment}
group by pa.id
) p
left join process_approval_record par on p.process_instance_id = par.process_instance_id
WHERE par.finish_flag = 0 or par.id is null
LEFT JOIN (
SELECT user_id,process_instance_id from process_approval_record WHERE finish_flag = 1
) par ON p.process_instance_id = par.process_instance_id
group by p.process_instance_id
</select>
</mapper>
@@ -176,7 +176,7 @@ public class ProcessEsChange implements Serializable {
* 引用标准
*/
@ApiModelProperty(value = "引用标准")
private String quotedStandard;
private String referenceStandard;
/**
* 关联文件
@@ -196,6 +196,12 @@ public class ProcessEsChange implements Serializable {
@ApiModelProperty(value = "采用国际标准号")
private String internationalStandardNum;
/**
* 授权部门
*/
@ApiModelProperty(value = "授权部门")
private String authDept;
/**
* 修改意见内容列表
*/
@@ -1,31 +1,24 @@
package com.jero.modules.activiti.process.esChange.listener;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.jero.modules.activiti.process.common.enums.StandardStateEnum;
import com.jero.modules.activiti.process.esChange.entity.ProcessEsChange;
import com.jero.modules.activiti.process.esChange.service.ProcessEsChangeService;
import com.jero.modules.activiti.process.esInitChange.entity.ProcessEsInitChange;
import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPApplicationCategoryEnum;
import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPChangeType;
import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPProjectType;
import com.jero.modules.activiti.process.esInitChange.service.ProcessEsInitChangeService;
import com.jero.modules.activiti.process.esRecheck.entity.ProcessEsRecheck;
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardPlan;
import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService;
import com.jero.modules.laws.enterprise.util.BeanCopyUtils;
import com.jero.modules.laws.common.constant.FieldCommon;
import com.jero.modules.laws.common.service.ILawsCommonService;
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
import com.jero.modules.tag.enums.TableNameEnum;
import lombok.extern.slf4j.Slf4j;
import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.ExecutionListener;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
import static com.jero.modules.activiti.process.esRecheck.entity.ProcessRecheckConstants.*;
import static com.jero.modules.activiti.process.esRecheck.entity.ProcessRecheckConstants.RECHECK_ARCHIVE;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* @author: Mzaxd
@@ -46,6 +39,9 @@ public class ProcessESChangeEndListener implements ExecutionListener {
@Resource
private ProcessEsChangeService esChangeService;
@Resource
private ILawsCommonService commonService;
@Override
public void notify(DelegateExecution delegateExecution) {
log.info("企标更改流程结束 监听执行器开始执行");
@@ -59,9 +55,51 @@ public class ProcessESChangeEndListener implements ExecutionListener {
// 根据标准编号找到标准Id
LawsEnterpriseStandard es = esService.getOne(new LambdaQueryWrapper<LawsEnterpriseStandard>()
.eq(LawsEnterpriseStandard::getStandardNumber, standNo));
LawsEnterpriseStandard newEs = BeanCopyUtils.copyBean(change, LawsEnterpriseStandard.class);
newEs.setId(es.getId());
esService.updateById(newEs);
change.setId(es.getId());
// 转换成Map 然后走commonEdit接口
Map<String, Object> parameterMap = new HashMap<>();
this.buildMap(parameterMap, change);
commonService.commonEdit(parameterMap);
// TODO 生成修改单
log.info("企标更改流程监听执行器执行结束");
}
private void buildMap(Map<String, Object> parameterMap, ProcessEsChange change) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
parameterMap.put(FieldCommon.MODULE, TableNameEnum.ENTERPRISE_STANDARDS.getValue());
parameterMap.put(FieldCommon.ID, change.getId());
parameterMap.put(FieldCommon.STANDARD_NUMBER, change.getStandardNumber());
parameterMap.put(FieldCommon.STANDARD_NAME, change.getStandardName());
parameterMap.put(FieldCommon.GRADE_CLASSIFICATION, change.getGradeClassification());
parameterMap.put(FieldCommon.AUTH_DEPT, change.getAuthDept());
parameterMap.put(FieldCommon.STANDARD_SYSTEM, change.getStandardSystem());
parameterMap.put(FieldCommon.STANDARD_ENGLISH_NAME, change.getStandardEnglishName());
parameterMap.put(FieldCommon.IMPLEMENTATION_DATE, formatter.format(change.getImplementationDate()));
parameterMap.put(FieldCommon.PART_NAME, change.getPartName());
parameterMap.put(FieldCommon.MAIN_DRAFT_USER, change.getMainDraftingUser());
parameterMap.put(FieldCommon.MAIN_DRAFTING_UNIT, change.getMainDraftingUnit());
parameterMap.put(FieldCommon.STANDARD_SCOPE, change.getStandardScope());
parameterMap.put(FieldCommon.REPLACED_STANDARD, change.getSubstituteStandardNumber());
parameterMap.put(FieldCommon.REFERENCE_STANDARD, change.getReferenceStandard());
parameterMap.put(FieldCommon.ASSOCIATED_FILE, change.getAssociatedFile());
parameterMap.put(FieldCommon.ACQUISITION_DEGREE, change.getAcquisitionDegree());
parameterMap.put(FieldCommon.INTERNATIONAL_STANDARD_NUM, change.getInternationalStandardNum());
// 是否试行
Date releaseDate = change.getReleaseDate();
boolean tryFlag = !change.getTryFlag().equals("0");
String trialPeriod = change.getTrialPeriod();
if (tryFlag) {
// 如果是试行 并且当前时间处于发布日期+试行周期期间内,则更改标准状态为试运行
if (releaseDate != null && trialPeriod != null) {
Date endDate = new Date(releaseDate.getTime() + (long) Integer.parseInt(trialPeriod) * 24 * 60 * 60 * 1000 * 30);
Date now = new Date();
if (now.before(endDate)) {
parameterMap.put(FieldCommon.STANDARD_STATE, StandardStateEnum.TRIAL_OPERATION.getStateValue());
}
}
}
parameterMap.put(FieldCommon.RELEASE_DATE, formatter.format(releaseDate));
parameterMap.put(FieldCommon.TRY_FLAG, change.getTryFlag());
parameterMap.put(FieldCommon.TRIAL_PERIOD, change.getTrialPeriod());
}
}
@@ -312,7 +312,10 @@ public class ProcessHandleServiceImpl implements IProcessHandleService {
if (StringUtils.isNotBlank(taskId)) {
deleteWrapper.eq(ProcessDraft::getTaskId, taskId);
}
processDraftService.remove(deleteWrapper);
List<ProcessDraft> processDraftList = processDraftService.list(deleteWrapper);
for (ProcessDraft processDraft : processDraftList) {
processDraftService.removeById(processDraft.getId());
}
}
/**
@@ -182,7 +182,23 @@ public class FieldCommon {
public static final String TRIAL_PERIOD = "trial_period";
// 关联文件
public static final String ASSOCIATED_FILE = "associated_file";
// 标准状态
public static final String STANDARD_STATE = "standard_state";
// 标准等级分类
public static final String GRADE_CLASSIFICATION = "grade_classification";
// 标准英文名称
public static final String STANDARD_ENGLISH_NAME = "standard_english_name";
// 零部件名称
public static final String PART_NAME = "part_name";
// 主起草部门
public static final String MAIN_DRAFT_USER = "main_draft_user";
// 主起草部门
public static final String MAIN_DRAFTING_UNIT = "main_drafting_unit";
// 标准适用范围
public static final String STANDARD_SCOPE = "standard_scope";
// 采标程度
public static final String ACQUISITION_DEGREE = "acquisition_degree";
// 采用国际标准号
public static final String INTERNATIONAL_STANDARD_NUM = "international_standard_num";
}