diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java b/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java index f4e02906..fdfb8da6 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/entity/ProcessApprovalRecord.java @@ -83,11 +83,11 @@ public class ProcessApprovalRecord { private String mesg; /** - * 完成注记(0未完成,1完成) + * 完成注记(1进行中,2已完成,3未处理,4已撤回) */ @Dict(dicCode = "prc_node_status") @TableField(value = "finish_flag") - @ApiModelProperty(value = "完成注记(1进行中,2已完成)") + @ApiModelProperty(value = "完成注记(1进行中,2已完成,3未处理,4已撤回)") private Integer finishFlag; /** @@ -98,7 +98,7 @@ public class ProcessApprovalRecord { private String projectId; /** - * 审批意见(0同意,1不同意) + * 审批意见(1通过,2驳回,3未处理) */ @Dict(dicCode = "commit_flag") @TableField(value = "commit_flag") @@ -186,4 +186,11 @@ public class ProcessApprovalRecord { */ @ApiModelProperty(value = "节点id") private String nodeId; + + /** + * 完成注记 搜索用 + */ + @TableField(exist = false) + @ApiModelProperty(value = "完成注记 搜索用") + private String finishFlagSearch; } \ No newline at end of file diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java b/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java index 37086187..bac9263d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/enums/FinishFlagEnum.java @@ -16,6 +16,7 @@ public enum FinishFlagEnum { INCOMPLETE("未完成", 1), COMPLETE("完成", 2), SUSPEND("暂停", 3), + WITHDRAWN("已撤回", 4) ; private String name; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/listener/MyGlobalEventListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/listener/MyGlobalEventListener.java index 2deee254..f621a1a4 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/listener/MyGlobalEventListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/listener/MyGlobalEventListener.java @@ -138,10 +138,7 @@ public class MyGlobalEventListener implements ActivitiEventListener { approvalRecord.setUserId(assignee); approvalRecord.setOriginUserId(assignee); approvalRecord.setFinishFlag(FinishFlagEnum.INCOMPLETE.getValue()); - // 加一秒,解决流程审批信息发起节点和下一节点创建时间一致,排序错乱问题 - Date date = new Date(); - date.setTime(createTime.getTime() + 1000); - approvalRecord.setCreateTime(date); + approvalRecord.setCreateTime(createTime); approvalRecord.setNodeId(taskDefinitionKey); recordService.save(approvalRecord); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java index dd840fd5..bae9b410 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java @@ -4,7 +4,6 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.jero.common.api.vo.Result; import com.jero.common.api.vo.ResultCommon; import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; @@ -13,7 +12,6 @@ import com.jero.modules.activiti.process.common.entity.CommonVO; import com.jero.modules.activiti.process.common.entity.CounterSignNodeNameConstants; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ActFlowCommonService; -import com.jero.modules.activiti.process.esInitChange.entity.EsInitChangeConstant; 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.ESPProjectType; @@ -44,7 +42,6 @@ import org.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.task.Task; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.RequestBody; import javax.annotation.Resource; import java.util.*; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java index b7a964fe..a7c9b773 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esdeclare/service/impl/EsDeclareFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.esdeclare.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -11,6 +14,7 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -111,6 +115,9 @@ public class EsDeclareFlowServiceImpl implements IEsDeclareFlowService { // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.STANDARD_DECLARE.getValue())); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java index 55ea8fb7..aecf3822 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspect/service/impl/EsInspectFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.esinspect.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -9,6 +12,7 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -124,6 +128,9 @@ public class EsInspectFlowServiceImpl implements IEsInspectFlowService { // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT.getValue())); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java index 71196ba1..3106a439 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectdelayapply/service/impl/EsInspectDelayApplyFlowServiceImpl.java @@ -8,6 +8,7 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -105,6 +106,8 @@ public class EsInspectDelayApplyFlowServiceImpl implements IEsInspectDelayApplyF // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_DELAY_APPLY.getValue())); + + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java index 3f290c6e..95a0a51c 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.esinspectplan.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -12,6 +15,7 @@ import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.entity.ProcessNode; import com.jero.modules.activiti.entity.ProcessNodeLink; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -122,6 +126,9 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_PLAN.getValue())); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java index 037b44d4..38cbde3b 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectrectify/service/impl/EsInspectRectifyFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.esinspectrectify.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -11,6 +14,7 @@ import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.entity.ProcessNodeLink; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -98,6 +102,9 @@ public class EsInspectRectifyFlowServiceImpl implements IEsInspectRectifyFlowSer // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_REPORT.getValue())); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java index 98d699dd..446c8c99 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/espermissionapply/service/impl/EsPermissionApplyFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.espermissionapply.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -9,6 +12,7 @@ import com.jero.common.util.SnowflakeUtils; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.enums.ProcessType; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -92,6 +96,9 @@ public class EsPermissionApplyFlowServiceImpl implements EsPermissionApplyFlowSe // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.PERMISSION_APPLY_PROCESS.getValue())); + processAll.setPrcStatus(ProcessStatusEnum.INCOMPLETE.getValue()); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java index 7a109f93..da71d4d7 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/meetingmanage/service/impl/MeetingManageFlowServiceImpl.java @@ -1,5 +1,8 @@ package com.jero.modules.activiti.process.meetingmanage.service.impl; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -108,6 +111,8 @@ public class MeetingManageFlowServiceImpl implements IMeetingManageFlowService { // 更新流程总表信息 LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); processAll.setPrcType(Integer.valueOf(ProcessType.MEETING_MANAGE.getValue())); + DateTime date = DateUtil.date(); + processAll.setPrcNum(DateUtil.format(date, DatePattern.PURE_DATETIME_MS_PATTERN)); processAll.setCreateUserId(loginUser.getId()); processAllService.update(processAll, new LambdaUpdateWrapper() diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java index 4b3f9ca7..2022ee81 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessAllService.java @@ -16,6 +16,7 @@ import com.jero.common.system.vo.LoginUser; import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.mapper.ProcessAllMapper; import com.jero.modules.activiti.process.common.common.DraftCommon; @@ -135,12 +136,19 @@ public class ProcessAllService extends ServiceImpl processDraftService.update(processDraftUpdateWrapper); //activiti撤销 runtimeService.deleteProcessInstance(processInstanceId,"强制撤回"); - //删除流程总表 - this.removeById(processAll.getId()); - //删除审批表 - LambdaQueryWrapper wrapper1 = new LambdaQueryWrapper<>(); - wrapper1.eq(ProcessApprovalRecord::getProcessInstanceId,processInstanceId); - approvalRecordService.remove(wrapper1); + //更新流程总表状态 + update(new LambdaUpdateWrapper() + .eq(ProcessAll::getId, processAll.getId()) + .set(ProcessAll::getPrcStatus, ProcessStatusEnum.WITHDRAWN.getValue())); + + //更新增审批表状态 + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord(); + processApprovalRecord.setUserId(loginUser.getId()); + processApprovalRecord.setProcessInstanceId(processInstanceId); + processApprovalRecord.setFinishFlag(FinishFlagEnum.WITHDRAWN.getValue()); + processApprovalRecord.setCreateTime(null); + approvalRecordService.save(processApprovalRecord); //todo 同步删除操作到统一待办 } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java index ca5621ed..3688d459 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/service/ProcessApprovalRecordService.java @@ -3,18 +3,20 @@ package com.jero.modules.activiti.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.query.QueryGenerator; +import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.FinishFlagEnum; +import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper; import com.jero.modules.laws.common.util.CurrentUserUtil; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; + import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; +import java.util.Arrays; import java.util.List; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.jero.modules.activiti.mapper.ProcessApprovalRecordMapper; -import com.jero.modules.activiti.entity.ProcessApprovalRecord; /** * *@author liJiaRao @@ -33,6 +35,10 @@ public class ProcessApprovalRecordService extends ServiceImpl pageList(Page page, ProcessApprovalRecord processApprovalRecord, HttpServletRequest req) { QueryWrapper wrapper = QueryGenerator.initQueryWrapper(processApprovalRecord, req.getParameterMap()); + if (StringUtils.isNotBlank(processApprovalRecord.getFinishFlagSearch())){ + wrapper.in("finish_flag", Arrays.asList(processApprovalRecord.getFinishFlagSearch().split(","))); + } + wrapper.last("ORDER BY IF(ISNULL(create_time), 1, 0) DESC ,create_time DESC, end_time DESC"); Page pageList = this.page(page, wrapper); List records = pageList.getRecords(); for (ProcessApprovalRecord record : records) {