diff --git a/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java b/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java index 4d5b7fdd..52a2fe34 100644 --- a/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java +++ b/src/main/java/com/lz/modules/flow/dao/EvaluationGroupMapper.java @@ -45,4 +45,6 @@ public interface EvaluationGroupMapper extends BaseMapper { void deleteByCopyIds(@Param("ids") List ids); + List selectIdsByCopyIds(@Param("copyIds")String copyIds); + } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java b/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java index 5147fb2c..97d0ffd5 100644 --- a/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java +++ b/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java @@ -75,4 +75,6 @@ public interface FlowRecordMapper extends BaseMapper { List selectFlowRecordByResultRecordId(@Param("resultRecordId") Long resultRecordId); FlowRecord selectFlowRecordByRecordIdMinIdStatus(@Param("resultRecordId") Long resultRecordId, @Param("id") Long id, @Param("status") int status); + + int batchUpdateExecution(@Param("recordIds")List recordIds,@Param("processId") Long processId); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/performance/req/AssessDetailReq.java b/src/main/java/com/lz/modules/performance/req/AssessDetailReq.java index 3f2ca943..25d648e9 100644 --- a/src/main/java/com/lz/modules/performance/req/AssessDetailReq.java +++ b/src/main/java/com/lz/modules/performance/req/AssessDetailReq.java @@ -35,4 +35,6 @@ public class AssessDetailReq extends BasePage{ private List departmentIds; private Long loginUserId; + + private String copyEvaluationIds; } diff --git a/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java b/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java index 3850dab3..4fdc1bfe 100644 --- a/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java +++ b/src/main/java/com/lz/modules/performance/service/impl/AssessManagerServiceImpl.java @@ -11,7 +11,9 @@ import com.lz.modules.app.dto.ApprovalDto; import com.lz.modules.app.dto.StaffSimpleDto; import com.lz.modules.app.entity.StaffEntity; import com.lz.modules.app.service.StaffService; +import com.lz.modules.flow.dao.EvaluationGroupMapper; import com.lz.modules.flow.dao.EvaluationStartStaffMapper; +import com.lz.modules.flow.dao.FlowRecordMapper; import com.lz.modules.flow.dao.FlowStartMapper; import com.lz.modules.flow.entity.EvaluationGroup; import com.lz.modules.flow.entity.EvaluationStartStaff; @@ -36,6 +38,7 @@ import com.lz.modules.sys.service.app.ResultRecordService; import com.sun.org.apache.regexp.internal.RE; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -76,6 +79,14 @@ public class AssessManagerServiceImpl implements AssessManagerService { private FlowStartService flowStartService; @Autowired private AssessService assessService; + @Autowired + private EvaluationGroupMapper evaluationGroupMapper; + @Autowired + private FlowRecordMapper flowRecordMapper; + + public static final Long processId = 1L; + + @Override public PageUtils assessList(AssessListReq req) { @@ -115,6 +126,11 @@ public class AssessManagerServiceImpl implements AssessManagerService { @Override public PageUtils assessDetail(AssessDetailReq req) { + //拼接拷贝组 + if(StringUtil.isNotBlank(req.getEvaluationIds())){ + List evaluationIds = evaluationGroupMapper.selectIdsByCopyIds(req.getEvaluationIds()); + req.setCopyEvaluationIds(StringUtils.join(evaluationIds,",")); + } PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(),req.getPageSize()).doSelect( page -> resultRecordMapper.selectAssessListByStartId(page,req) ); @@ -259,6 +275,15 @@ public class AssessManagerServiceImpl implements AssessManagerService { log.error("执行中状态跳过失败 recorId:" + aLong,e); } }); + //更新flowRecord记录 + List objects = resultRecordService.listObjs(new QueryWrapper() + .eq("is_delete", 0) + .eq("start_id", req.getStartId()) + .eq("evaluation_id", evaluation).select("id")); + + List collect = objects.stream().map(o -> Long.valueOf(String.valueOf(o))).collect(toList()); + + flowRecordMapper.batchUpdateExecution(collect,processId); } diff --git a/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java b/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java index 2b87921d..ea3bd1c3 100644 --- a/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java +++ b/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java @@ -67,6 +67,8 @@ public class ChartResultServiceImpl implements ChartResultService { @Autowired private AssessService assessService; + private static final Long processId = 1L; + @Override public List chartReport(Long startId,Long staffId) { @@ -236,7 +238,7 @@ public class ChartResultServiceImpl implements ChartResultService { int count = resultRecordService.count(new QueryWrapper() .eq("is_delete", 0) .eq("start_id", startId) - .in("department_id",mandepartmentIds)); + .in(CollectionUtils.isNotEmpty(mandepartmentIds),"department_id",mandepartmentIds)); ChartStatistical all = new ChartStatistical(); all.setDesc("参与人数"); @@ -246,7 +248,7 @@ public class ChartResultServiceImpl implements ChartResultService { for(ChartStatistical statistical:process){ map.put(statistical.getDesc(),statistical.getNum()); } - List charts = flowChartService.selectFlowChartByFlowManagerId(1L); + List charts = flowChartService.selectFlowChartByFlowManagerId(processId); for(FlowChart chart:charts){ ChartStatistical statistical = new ChartStatistical(); diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index e59dd064..eeb6feb0 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -434,14 +434,14 @@ + select id from lz_evaluation_group where is_delete = 0 + and copy_id in ( + + #{copy_id} + + ) + diff --git a/src/main/resources/mapper/flow/FlowRecordMapper.xml b/src/main/resources/mapper/flow/FlowRecordMapper.xml index ba50726d..5104c167 100644 --- a/src/main/resources/mapper/flow/FlowRecordMapper.xml +++ b/src/main/resources/mapper/flow/FlowRecordMapper.xml @@ -261,6 +261,18 @@ select * from lz_flow_record where is_delete = 0 and record_id = #{resultRecordId} and id > #{id} and status = #{status} order by id asc limit 1 + + UPDATE lz_flow_record + SET status = 4 + ,gmt_modified = now() + where is_delete = 0 and status !=4 and flow_process = 2 and process_id = #{processId} + + + #{record_id} + + ) + +