From 622d26ba10bb7d37d006c73e240082a6f6c69db9 Mon Sep 17 00:00:00 2001 From: mg <maokecheng@163.com> Date: 星期五, 14 十月 2022 16:47:50 +0800 Subject: [PATCH] 修改处置流程。 --- ycl-platform/src/main/java/com/ycl/controller/message/MessageSmsTemplateController.java | 19 ++++ ycl-platform/src/main/java/com/ycl/entity/message/SmsTemplate.java | 12 +++ ycl-platform/src/main/resources/mapper/caseHandler/WorkflowConfigStepMapper.xml | 4 ycl-platform/src/main/java/com/ycl/service/caseHandler/IDisposeRecordService.java | 2 ycl-platform/src/main/java/com/ycl/entity/caseHandler/DisposeRecord.java | 6 + ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java | 2 ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java | 4 ycl-platform/src/main/java/com/ycl/entity/caseHandler/BaseCaseDetail.java | 5 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java | 17 +-- ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java | 33 +++---- ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java | 40 ++++++++++ ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java | 1 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java | 69 +++++++++------- ycl-platform/src/main/java/com/ycl/controller/caseHandler/DispatchHandleController.java | 6 + 14 files changed, 152 insertions(+), 68 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java index 7f227c1..4ac0d6d 100644 --- a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java +++ b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java @@ -102,6 +102,7 @@ String username = principal.getName(); UmsAdmin umsAdmin = adminService.getAdminByUsername(username); Map<String, Object> data = new HashMap<>(); + data.put("userId", umsAdmin.getId()); data.put("username", umsAdmin.getUsername()); data.put("menus", roleService.getMenuList(umsAdmin.getId())); data.put("icon", umsAdmin.getIcon()); diff --git a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java index 7fd828e..d6e7b01 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java @@ -260,8 +260,8 @@ @ApiOperation(value = "缁撴") @PutMapping("/end_case") @LogSave(operationType = "浜嬮」澶勭疆绠$悊",contain = "妗堜欢缁撴") - public CommonResult endCase(@RequestParam Long caseId, @RequestParam String result) { - baseCaseService.endCase(caseId, result); + public CommonResult endCase(@RequestParam Long caseId, @RequestParam String result,@RequestParam String opinion) { + baseCaseService.endCase(caseId, result,opinion); return CommonResult.success("end case success~!"); } diff --git a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/DispatchHandleController.java b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/DispatchHandleController.java index 7282283..3c06d2a 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/DispatchHandleController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/DispatchHandleController.java @@ -6,6 +6,7 @@ import com.ycl.api.CommonResult; import com.ycl.bo.AdminUserDetails; import com.ycl.common.constant.BaseCaseStatus; +import com.ycl.common.constant.StepName; import com.ycl.dto.caseHandler.DispatchInfoParam; import com.ycl.dto.dispatch.UploadDisposingResultParam; import com.ycl.entity.caseHandler.*; @@ -99,14 +100,15 @@ iWritService.save(writ); } baseCaseService.update(new LambdaUpdateWrapper<BaseCase>().eq(BaseCase::getId, caseId).set(BaseCase::getState, BaseCaseStatus.DISPOSE)); + String stepName = StepName.CHECK.getName(); DisposeRecord disposeRecord = new DisposeRecord(); disposeRecord.setBaseCaseId(caseId); disposeRecord.setState(0); disposeRecord.setCreateTime(LocalDateTime.now()); disposeRecord.setCreateUser(user.getUserId().longValue()); - disposeRecord.setStepName("鏍告煡"); + disposeRecord.setStepName(stepName); disposeRecord.setStartTime(LocalDateTime.now()); - iDisposeRecordService.save(disposeRecord); + iDisposeRecordService.addRecord(disposeRecord); return CommonResult.success("add success"); } } diff --git a/ycl-platform/src/main/java/com/ycl/controller/message/MessageSmsTemplateController.java b/ycl-platform/src/main/java/com/ycl/controller/message/MessageSmsTemplateController.java new file mode 100644 index 0000000..74427ed --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/controller/message/MessageSmsTemplateController.java @@ -0,0 +1,19 @@ +package com.ycl.controller.message; + +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * <p> + * 鐭俊妯℃澘绠$悊 鍓嶇鎺у埗鍣� + * </p> + * + * @author mg + * @since 2022-10-14 + */ +@RestController +@RequestMapping("/message_sms_template") +@Api(tags = "鐢ㄦ埛娑堟伅鏍忕洰璁剧疆") +public class MessageSmsTemplateController { +} diff --git a/ycl-platform/src/main/java/com/ycl/entity/caseHandler/BaseCaseDetail.java b/ycl-platform/src/main/java/com/ycl/entity/caseHandler/BaseCaseDetail.java index 22f8277..53c07ac 100644 --- a/ycl-platform/src/main/java/com/ycl/entity/caseHandler/BaseCaseDetail.java +++ b/ycl-platform/src/main/java/com/ycl/entity/caseHandler/BaseCaseDetail.java @@ -3,7 +3,6 @@ import com.ycl.vo.casePool.CurrentSitVo; import com.ycl.vo.casePool.FilesPictureVo; import com.ycl.vo.casePool.HandlePassVo; -import com.ycl.vo.casePool.ProblemProVo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -41,8 +40,8 @@ /** * 闂澶勭悊 */ - @ApiModelProperty(value = "闂澶勭悊") - private ProblemProVo problemProVo; + //@ApiModelProperty(value = "闂澶勭悊") + //private ProblemProVo problemProVo; /** * 鐜板満澶勭悊 */ diff --git a/ycl-platform/src/main/java/com/ycl/entity/caseHandler/DisposeRecord.java b/ycl-platform/src/main/java/com/ycl/entity/caseHandler/DisposeRecord.java index 5a9644c..ed405f9 100644 --- a/ycl-platform/src/main/java/com/ycl/entity/caseHandler/DisposeRecord.java +++ b/ycl-platform/src/main/java/com/ycl/entity/caseHandler/DisposeRecord.java @@ -122,4 +122,10 @@ @TableField(value = "linkTime",exist = false) @ApiModelProperty(value = "鐜妭鐢ㄦ椂") private String linkTime; + /** + * 澶勭悊浜� + */ + @TableField(value = "handler_text",exist = false) + @ApiModelProperty(value = "澶勭悊浜�") + private String handlerText; } diff --git a/ycl-platform/src/main/java/com/ycl/entity/message/SmsTemplate.java b/ycl-platform/src/main/java/com/ycl/entity/message/SmsTemplate.java new file mode 100644 index 0000000..f3e1a95 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/entity/message/SmsTemplate.java @@ -0,0 +1,12 @@ +package com.ycl.entity.message; + +/** + * <p> + * 绫昏鏄� + * </p> + * + * @author mg + * @since 2022-10-14 + */ +public class SmsTemplate { +} diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java index e16beb2..891a089 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java @@ -49,5 +49,5 @@ ArrayList<String> listCaseImages(Integer id, Integer type); - void endCase(Long caseId, String result); + void endCase(Long caseId, String result,String opinion); } diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/IDisposeRecordService.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/IDisposeRecordService.java index e7fb978..20e9e07 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/IDisposeRecordService.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/IDisposeRecordService.java @@ -17,4 +17,6 @@ public interface IDisposeRecordService extends IService<DisposeRecord> { List<MyBacklogVO> listMyTask(String num, Long userId); + + Boolean addRecord(DisposeRecord disposeRecord); } diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java index e8f1740..ace3776 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java @@ -3,18 +3,21 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.bo.AdminUserDetails; import com.ycl.bo.casePool.CasePoolIllegalBuildingDO; import com.ycl.bo.casePool.CasePoolViolationDO; import com.ycl.common.constant.BaseCaseStatus; +import com.ycl.common.constant.StepName; import com.ycl.common.util.DateUtil; import com.ycl.dto.casePool.IllegalBuildingParam; import com.ycl.dto.casePool.ViolationParam; import com.ycl.entity.caseHandler.*; import com.ycl.entity.common.ImageResources; import com.ycl.entity.video.VideoAlarmReport; +import com.ycl.exception.ApiException; import com.ycl.mapper.caseHandler.*; import com.ycl.mapper.common.ImageResourcesMapper; import com.ycl.mapper.dict.DataDictionaryMapper; @@ -212,9 +215,15 @@ } private void setDisposeRecord(Long id) { - String stepName = "璋冨害"; + String stepName = StepName.DISPATCH.getName(); + QueryWrapper<WorkflowConfigStep> stepqurey = new QueryWrapper<>(); + stepqurey.eq("name", stepName); + WorkflowConfigStep workflowConfigStep = workflowConfigStepMapper.selectOne(stepqurey); + Integer state = 0; DisposeRecord disposeRecord = new DisposeRecord(); + disposeRecord.setWorkflowConfigStepId(workflowConfigStep.getId()); + disposeRecord.setHandlerRoleId(workflowConfigStep.getRoleId()); disposeRecord.setBaseCaseId(id); disposeRecord.setState(state); disposeRecord.setCreateTime(LocalDateTime.now()); @@ -266,20 +275,12 @@ //2.1鏌ヨ澶勭疆娴佺▼閰嶇疆 HandlePassVo handlePassVo = new HandlePassVo(); QueryWrapper<WorkflowConfig> wrapperWc = new QueryWrapper<>(); - wrapperWc.lambda().eq(WorkflowConfig::getCode, "ddlc").or().eq(WorkflowConfig::getCode, "wtcllc"); + wrapperWc.lambda().eq(WorkflowConfig::getCode, "ddlc"); List<WorkflowConfig> wcs = workflowConfigMapper.selectList(wrapperWc); - Integer ddlcId = 0, wtcllcId = 0; - for (WorkflowConfig wc : wcs) { - if ("ddlc".equals(wc.getCode())) { - ddlcId = wc.getId(); - } - if ("wtcllc".equals(wc.getCode())) { - wtcllcId = wc.getId(); - } - } + //2.2鏌ヨ澶勭疆娴佺▼鐜妭閰嶇疆 Map mapWcs = new HashMap(); - mapWcs.put("workflowConfigId", ddlcId); + mapWcs.put("workflowConfigId", wcs.get(0).getId()); mapWcs.put("baseCaseId", baseCase.getId()); List<WorkflowConfigStep> listWcs = workflowConfigStepMapper.selectRecordByWorkflowConfigStepId(mapWcs); //澶勭悊鐢ㄧ幆鑺傛椂闂� @@ -289,11 +290,11 @@ continue; } for (DisposeRecord record : records) { - if (record != null && record.getCreateTime() != null) { + if (record != null && record.getEndTime() != null) { record.setLinkTime( DateUtil.getDistanceDateTime( DateUtil.fromLocalDateTime(baseCase.getAlarmTime()), - DateUtil.fromLocalDateTime(record.getCreateTime()))); + DateUtil.fromLocalDateTime(record.getEndTime()))); } } step.setDisposeRecords(records); @@ -309,13 +310,13 @@ filesPictureVo.setImageResources(irs); bcd.setFilesPictureVo(filesPictureVo); //4.鏌ヨ闂澶勭悊淇℃伅 - ProblemProVo problemProVo = new ProblemProVo(); + /*ProblemProVo problemProVo = new ProblemProVo(); //4.2鏌ヨ澶勭疆娴佺▼鐜妭閰嶇疆 - mapWcs.put("workflowConfigId", wtcllcId); - List<WorkflowConfigStep> listWcsPp = workflowConfigStepMapper.selectRecordByWorkflowConfigStepId(mapWcs); + List<WorkflowConfigStep> listWcsPp = new ArrayList<>(); //4.3璁剧疆璋冨害娴佺▼ problemProVo.setWorkflowConfigSteps(listWcsPp); - bcd.setProblemProVo(problemProVo); + bcd.setProblemProVo(problemProVo);*/ + //5.鏌ヨ鐜板満鎯呭喌淇℃伅 CurrentSitVo currentSitVo = new CurrentSitVo(); QueryWrapper<ArrivalSituation> wrapperAs = new QueryWrapper<>(); @@ -366,23 +367,31 @@ } @Override - public void endCase(Long caseId, String result) { + public void endCase(Long caseId, String result,String opinion) { + //鑾峰彇褰撳墠鐧婚檰鐢ㄦ埛淇℃伅 AdminUserDetails user = (AdminUserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); - Integer state = 1; - String endCaseName = "缁撴"; + String endCaseName = StepName.CLOSING_REGISTER.getName(); BaseCase baseCase = new BaseCase(); baseCase.setState(BaseCaseStatus.CLOSING_REGISTER); baseCase.setId(caseId); + baseCase.setFinalOpinion(opinion); baseCaseMapper.updateById(baseCase); + + QueryWrapper<WorkflowConfigStep> stepQurey = new QueryWrapper<>(); + stepQurey.eq("name", endCaseName); + WorkflowConfigStep workflowConfigStep = workflowConfigStepMapper.selectOne(stepQurey); + if (workflowConfigStep == null) { + throw new ApiException("鏈煡璇㈠埌璇ユ祦绋嬬幆鑺�"); + } + UpdateWrapper<DisposeRecord> updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("base_case_id", baseCase.getId()).eq("workflow_config_step_id",workflowConfigStep.getId()); + + //淇敼缁撴璁板綍 DisposeRecord disposeRecord = new DisposeRecord(); - disposeRecord.setBaseCaseId(caseId); - disposeRecord.setWorkflowConfigStepId(workflowConfigStepMapper - .selectOne(new LambdaQueryWrapper<WorkflowConfigStep>().eq(WorkflowConfigStep::getName, endCaseName)) - .getWorkflowConfigId()); - disposeRecord.setCreateUser(user.getUserId().longValue()); - disposeRecord.setResult(result); - disposeRecord.setState(state); - disposeRecord.setCreateTime(LocalDateTime.now()); - disposeRecordMapper.insert(disposeRecord); + disposeRecord.setHandlerId(user.getUserId().longValue()); + //缁撴宸茬粨鏉� + disposeRecord.setState(1); + disposeRecord.setEndTime(LocalDateTime.now()); + disposeRecordMapper.update(disposeRecord, updateWrapper); } } \ No newline at end of file diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java index 62d6428..ccf530a 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/CheckHandleServiceImpl.java @@ -1,6 +1,7 @@ package com.ycl.service.caseHandler.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.common.constant.BaseCaseStatus; import com.ycl.common.constant.StepName; @@ -49,28 +50,25 @@ baseCaseMapper.updateById(baseCase); - QueryWrapper<WorkflowConfigStep> stepqurey = new QueryWrapper<>(); - stepqurey.eq("name", StepName.CHECK.getName()); - WorkflowConfigStep workflowConfigStep = workflowConfigStepMapper.selectOne(stepqurey); + QueryWrapper<WorkflowConfigStep> stepQurey = new QueryWrapper<>(); + stepQurey.eq("name", StepName.CHECK.getName()); + WorkflowConfigStep workflowConfigStep = workflowConfigStepMapper.selectOne(stepQurey); if (workflowConfigStep == null) { throw new ApiException("鏈煡璇㈠埌璇ユ祦绋嬬幆鑺�"); } - //娣诲姞璋冨害璁板綍 - DisposeRecord disposeRecord = new DisposeRecord(); - disposeRecord.setBaseCaseId(baseCase.getId()); - disposeRecord.setWorkflowConfigStepId(workflowConfigStep.getId()); - disposeRecord.setStepName(workflowConfigStep.getName()); - disposeRecord.setHandlerRoleId(workflowConfigStep.getRoleId()); - disposeRecord.setHandlerId(chechParam.getCurrentUser()); - disposeRecord.setState(1); - disposeRecord.setStartTime(LocalDateTime.now()); - disposeRecord.setEndTime(LocalDateTime.now()); - disposeRecord.setResult(chechParam.getResult()); - disposeRecord.setCreateUser(chechParam.getCurrentUser()); - disposeRecord.setCreateTime(LocalDateTime.now()); - disposeRecordMapper.insert(disposeRecord); + UpdateWrapper<DisposeRecord> updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("base_case_id", baseCase.getId()).eq("workflow_config_step_id",workflowConfigStep.getId()); + + //淇敼鏍告煡璁板綍 + DisposeRecord disposeRecord = new DisposeRecord(); + disposeRecord.setHandlerId(chechParam.getCurrentUser()); + //鏍告煡宸茬粨鏉� + disposeRecord.setState(1); + disposeRecord.setEndTime(LocalDateTime.now()); + disposeRecordMapper.update(disposeRecord, updateWrapper); + QueryWrapper<WorkflowConfigStep> stepNextqurey = new QueryWrapper<>(); stepNextqurey.eq("workflow_config_id", workflowConfigStep.getWorkflowConfigId()); stepNextqurey.eq("seq", workflowConfigStep.getSeq() + 1); @@ -82,7 +80,6 @@ stepNextRecord.setWorkflowConfigStepId(stepNext.getId()); stepNextRecord.setStepName(stepNext.getName()); stepNextRecord.setHandlerRoleId(stepNext.getRoleId()); - stepNextRecord.setHandlerId(chechParam.getCurrentUser()); //涓婁紶澶勭疆鏈粨鏉� stepNextRecord.setState(0); stepNextRecord.setStartTime(LocalDateTime.now()); diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java index 2dbd9e2..920a6f9 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java @@ -1,18 +1,25 @@ package com.ycl.service.caseHandler.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ycl.common.constant.StepName; import com.ycl.entity.caseHandler.BaseCase; import com.ycl.entity.caseHandler.DisposeRecord; +import com.ycl.entity.caseHandler.WorkflowConfigStep; +import com.ycl.exception.ApiException; import com.ycl.mapper.caseHandler.BaseCaseMapper; import com.ycl.mapper.caseHandler.DisposeRecordMapper; +import com.ycl.mapper.caseHandler.WorkflowConfigStepMapper; import com.ycl.service.caseHandler.IDisposeRecordService; import com.ycl.vo.MyBacklogVO; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.time.LocalDateTime; import java.util.List; import java.util.stream.Collectors; @@ -32,6 +39,8 @@ @Resource DisposeRecordMapper disposeRecordMapper; + @Resource + WorkflowConfigStepMapper workflowConfigStepMapper; @Override public List<MyBacklogVO> listMyTask(String num, Long userId) { @@ -62,4 +71,35 @@ return myBacklogVO; }).collect(Collectors.toList()); } + + @Override + public Boolean addRecord(DisposeRecord disposeRecord) { + + //缁撴潫涓婁紶澶勭疆娴佺▼ + String stepName = StepName.DISPOSE.getName(); + QueryWrapper<WorkflowConfigStep> qureyDispatch = new QueryWrapper<>(); + qureyDispatch.eq("name", stepName); + WorkflowConfigStep dispatchStep = workflowConfigStepMapper.selectOne(qureyDispatch); + + UpdateWrapper<DisposeRecord> updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("base_case_id", disposeRecord.getBaseCaseId()).eq("workflow_config_step_id",dispatchStep.getId()); + + DisposeRecord updateRecord = new DisposeRecord(); + updateRecord.setState(1); + updateRecord.setEndTime(LocalDateTime.now()); + updateRecord.setHandlerId(disposeRecord.getCreateUser()); + baseMapper.update(updateRecord, updateWrapper); + + QueryWrapper<WorkflowConfigStep> stepQurey = new QueryWrapper<>(); + stepQurey.eq("name", disposeRecord.getStepName()); + WorkflowConfigStep workflowConfigStep = workflowConfigStepMapper.selectOne(stepQurey); + if (workflowConfigStep == null) { + throw new ApiException("鏈煡璇㈠埌璇ユ祦绋嬬幆鑺�"); + } + //璁剧疆娴佺▼鐜妭鏁版嵁 + disposeRecord.setWorkflowConfigStepId(workflowConfigStep.getId()); + disposeRecord.setHandlerRoleId(workflowConfigStep.getRoleId()); + baseMapper.insert(disposeRecord); + return true; + } } diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java index 2895f7e..306be5b 100644 --- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java @@ -1,6 +1,7 @@ package com.ycl.service.caseHandler.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.common.constant.BaseCaseStatus; import com.ycl.common.constant.StepName; @@ -62,21 +63,16 @@ throw new ApiException("鏈煡璇㈠埌璇ユ祦绋嬬幆鑺�"); } - //娣诲姞璋冨害璁板綍 + UpdateWrapper<DisposeRecord> updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("base_case_id", baseCase.getId()).eq("workflow_config_step_id",workflowConfigStep.getId()); + + //淇敼璋冨害璁板綍 DisposeRecord disposeRecord = new DisposeRecord(); - disposeRecord.setBaseCaseId(baseCase.getId()); - disposeRecord.setWorkflowConfigStepId(workflowConfigStep.getId()); - disposeRecord.setStepName(workflowConfigStep.getName()); - disposeRecord.setHandlerRoleId(workflowConfigStep.getRoleId()); disposeRecord.setHandlerId(dispatchInfo.getCreateUser()); //璋冨害宸茬粨鏉� disposeRecord.setState(1); - disposeRecord.setStartTime(LocalDateTime.now()); disposeRecord.setEndTime(LocalDateTime.now()); - disposeRecord.setCreateUser(dispatchInfo.getCreateUser()); - disposeRecord.setCreateTime(LocalDateTime.now()); - - disposeRecordMapper.insert(disposeRecord); + disposeRecordMapper.update(disposeRecord, updateWrapper); QueryWrapper<WorkflowConfigStep> stepNextqurey = new QueryWrapper<>(); stepNextqurey.eq("workflow_config_id", workflowConfigStep.getWorkflowConfigId()); @@ -89,7 +85,6 @@ stepNextRecord.setWorkflowConfigStepId(stepNext.getId()); stepNextRecord.setStepName(stepNext.getName()); stepNextRecord.setHandlerRoleId(stepNext.getRoleId()); - stepNextRecord.setHandlerId(dispatchInfo.getCreateUser()); //涓婁紶澶勭疆鏈粨鏉� stepNextRecord.setState(0); stepNextRecord.setStartTime(LocalDateTime.now()); diff --git a/ycl-platform/src/main/resources/mapper/caseHandler/WorkflowConfigStepMapper.xml b/ycl-platform/src/main/resources/mapper/caseHandler/WorkflowConfigStepMapper.xml index bfe75cc..d90b378 100644 --- a/ycl-platform/src/main/resources/mapper/caseHandler/WorkflowConfigStepMapper.xml +++ b/ycl-platform/src/main/resources/mapper/caseHandler/WorkflowConfigStepMapper.xml @@ -28,15 +28,17 @@ <result column="handler_id" property="handlerId" /> <result column="create_user" property="createUser" /> <result column="create_time" property="createTime" /> + <result column="handler_text" property="handlerText" /> </collection> </resultMap> <select id="selectRecordByWorkflowConfigStepId" parameterType="map" resultMap="RecordResultMap"> SELECT - uwcs.*,udr.*,udr.id record_id + uwcs.*,udr.*,udr.id record_id,ua.nick_name handler_text FROM ums_workflow_config_step uwcs LEFT JOIN ums_dispose_record udr ON uwcs.id = udr.workflow_config_step_id AND udr.base_case_id = #{baseCaseId} + LEFT JOIN ums_admin ua ON udr.handler_id = ua.id WHERE uwcs.workflow_config_id = #{workflowConfigId} </select> -- Gitblit v1.8.0