From 6b0c99943f1ae73a55f54a721473b7cc8ddd1c24 Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期三, 26 十月 2022 14:13:18 +0800 Subject: [PATCH] 我的待办处置人查询 上传处置重构 --- ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java | 2 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java | 108 ++++++++++++++++++--- ycl-platform/src/main/resources/mapper/caseHandler/DisposeRecordMapper.xml | 68 +++++++++---- ycl-platform/src/main/java/com/ycl/service/caseHandler/IDisposeRecordService.java | 3 ycl-platform/src/main/java/com/ycl/controller/caseHandler/DispatchHandleController.java | 63 ------------ 5 files changed, 139 insertions(+), 105 deletions(-) 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 8bdbd0f..71dfe4c 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 @@ -69,68 +69,7 @@ public CommonResult searchDisposeList(@RequestParam Long caseId, @RequestParam Integer type, @RequestBody UploadDisposingResultParam uploadDisposingResultParam) { - AdminUserDetails user = (AdminUserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); - //褰撲簨浜� - PartyInfo partyInfo = new PartyInfo(); - BeanUtils.copyProperties(uploadDisposingResultParam, partyInfo); - partyInfo.setCreateUser(user.getUserId().intValue()); - partyInfo.setCreateTime(LocalDateTime.now()); - iPartyInfoService.save(partyInfo); - //璋冩煡鍙栬瘉 - Investigation investigation = new Investigation(); - BeanUtils.copyProperties(uploadDisposingResultParam, investigation); - investigation.setBaseCaseId(caseId); - investigation.setCreateTime(LocalDateTime.now()); - investigation.setCreateUser(user.getUserId()); - investigation.setPartyId(partyInfo.getId()); - iInvestigationService.save(investigation); - //鍒拌揪 - ArrivalSituation arrivalSituation = new ArrivalSituation(); - BeanUtils.copyProperties(uploadDisposingResultParam, arrivalSituation); - arrivalSituation.setBaseCaseId(caseId); - arrivalSituation.setCreateTime(LocalDateTime.now()); - arrivalSituation.setCreateUser(user.getUserId()); - iArrivalSituationService.save(arrivalSituation); - //鏂囦功 - Integer illegalBuildingType = 2; - Integer violation = 1; - String handType = "02"; - ImageResources imageResources = new ImageResources(); - imageResources.setType(handType); - imageResources.setBelongToId(caseId); - imageResources.setCreateTime(LocalDateTime.now()); - imageResources.setCreateUser(user.getUserId()); - if (type == violation) { - imageResources.setUrl(StringUtils.joinWith(",", uploadDisposingResultParam.getPic(), uploadDisposingResultParam.getSituationPic())); - iImageResourcesService.save(imageResources); - } - if (type==illegalBuildingType) { - Writ writ = new Writ(); - BeanUtils.copyProperties(uploadDisposingResultParam, writ); - writ.setBaseCaseId(caseId); - writ.setIllegalBuildingId(caseId); - writ.setCreateTime(LocalDateTime.now()); - writ.setCreateUser(user.getUserId()); - iWritService.save(writ); - imageResources.setUrl(StringUtils - .joinWith(",", uploadDisposingResultParam.getPic() - , uploadDisposingResultParam.getSituationPic() - , uploadDisposingResultParam.getOriginalPic() - , uploadDisposingResultParam.getOtherPic() - , uploadDisposingResultParam.getRectifiedPic() - , uploadDisposingResultParam.getWritPic())); - iImageResourcesService.save(imageResources); - } - 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()); - disposeRecord.setStepName(stepName); - disposeRecord.setStartTime(LocalDateTime.now()); - iDisposeRecordService.addRecord(disposeRecord); + iDisposeRecordService.saveUpload(caseId,type,uploadDisposingResultParam); return CommonResult.success("add success"); } } 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 20e9e07..a4bed84 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 @@ -1,6 +1,7 @@ package com.ycl.service.caseHandler; import com.baomidou.mybatisplus.extension.service.IService; +import com.ycl.dto.dispatch.UploadDisposingResultParam; import com.ycl.entity.caseHandler.DisposeRecord; import com.ycl.vo.MyBacklogVO; @@ -18,5 +19,5 @@ List<MyBacklogVO> listMyTask(String num, Long userId); - Boolean addRecord(DisposeRecord disposeRecord); + Boolean saveUpload(Long caseId, Integer type, UploadDisposingResultParam uploadDisposingResultParam); } 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 627cebf..5c2ef5e 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,30 +1,30 @@ 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.LambdaUpdateWrapper; 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.bo.AdminUserDetails; +import com.ycl.common.constant.BaseCaseStatus; 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.entity.user.UmsAdminRoleRelation; +import com.ycl.dto.dispatch.UploadDisposingResultParam; +import com.ycl.entity.caseHandler.*; 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.mapper.user.UmsAdminRoleRelationMapper; -import com.ycl.service.caseHandler.IDisposeRecordService; +import com.ycl.service.caseHandler.*; import com.ycl.vo.MyBacklogVO; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.time.LocalDateTime; -import java.util.ArrayList; import java.util.List; -import java.util.stream.Collectors; /** * <p> @@ -45,21 +45,94 @@ @Resource WorkflowConfigStepMapper workflowConfigStepMapper; - @Resource - UmsAdminRoleRelationMapper umsAdminRoleRelationMapper; + @Autowired + IInvestigationService iInvestigationService; + @Autowired + IArrivalSituationService iArrivalSituationService; + @Autowired + IPartyInfoService iPartyInfoService; + @Autowired + IWritService iWritService; + @Autowired + IBaseCaseService baseCaseService; + @Autowired + IDisposeRecordService iDisposeRecordService; + @Autowired + IImageResourcesService iImageResourcesService; @Override public List<MyBacklogVO> listMyTask(String num, Long userId) { - return disposeRecordMapper.selectMyBackList(userId,num); + return disposeRecordMapper.selectMyBackList(userId, num); } @Override - public Boolean addRecord(DisposeRecord disposeRecord) { + @Transactional(rollbackFor = Exception.class) + public Boolean saveUpload(Long caseId, Integer type, UploadDisposingResultParam uploadDisposingResultParam) { + AdminUserDetails user = (AdminUserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); + //褰撲簨浜� + PartyInfo partyInfo = new PartyInfo(); + BeanUtils.copyProperties(uploadDisposingResultParam, partyInfo); + partyInfo.setCreateUser(user.getUserId().intValue()); + partyInfo.setCreateTime(LocalDateTime.now()); + iPartyInfoService.save(partyInfo); + //璋冩煡鍙栬瘉 + Investigation investigation = new Investigation(); + BeanUtils.copyProperties(uploadDisposingResultParam, investigation); + investigation.setBaseCaseId(caseId); + investigation.setCreateTime(LocalDateTime.now()); + investigation.setCreateUser(user.getUserId()); + investigation.setPartyId(partyInfo.getId()); + iInvestigationService.save(investigation); + //鍒拌揪 + ArrivalSituation arrivalSituation = new ArrivalSituation(); + BeanUtils.copyProperties(uploadDisposingResultParam, arrivalSituation); + arrivalSituation.setBaseCaseId(caseId); + arrivalSituation.setCreateTime(LocalDateTime.now()); + arrivalSituation.setCreateUser(user.getUserId()); + iArrivalSituationService.save(arrivalSituation); + //鏂囦功 + Integer illegalBuildingType = 2; + Integer violation = 1; + String handType = "02"; + ImageResources imageResources = new ImageResources(); + imageResources.setType(handType); + imageResources.setBelongToId(caseId); + imageResources.setCreateTime(LocalDateTime.now()); + imageResources.setCreateUser(user.getUserId()); + if (type == violation) { + imageResources.setUrl(StringUtils.joinWith(",", uploadDisposingResultParam.getPic(), uploadDisposingResultParam.getSituationPic())); + iImageResourcesService.save(imageResources); + } + if (type == illegalBuildingType) { + Writ writ = new Writ(); + BeanUtils.copyProperties(uploadDisposingResultParam, writ); + writ.setBaseCaseId(caseId); + writ.setIllegalBuildingId(caseId); + writ.setCreateTime(LocalDateTime.now()); + writ.setCreateUser(user.getUserId()); + iWritService.save(writ); + imageResources.setUrl(StringUtils + .joinWith(",", uploadDisposingResultParam.getPic() + , uploadDisposingResultParam.getSituationPic() + , uploadDisposingResultParam.getOriginalPic() + , uploadDisposingResultParam.getOtherPic() + , uploadDisposingResultParam.getRectifiedPic() + , uploadDisposingResultParam.getWritPic())); + iImageResourcesService.save(imageResources); + } + 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()); + disposeRecord.setStepName(stepName); + disposeRecord.setStartTime(LocalDateTime.now()); //缁撴潫涓婁紶澶勭疆娴佺▼ - String stepName = StepName.DISPOSE.getName(); QueryWrapper<WorkflowConfigStep> qureyDispatch = new QueryWrapper<>(); - qureyDispatch.eq("name", stepName); + qureyDispatch.eq("name", StepName.DISPOSE.getName()); WorkflowConfigStep dispatchStep = workflowConfigStepMapper.selectOne(qureyDispatch); UpdateWrapper<DisposeRecord> updateWrapper = new UpdateWrapper<>(); @@ -80,7 +153,6 @@ //璁剧疆娴佺▼鐜妭鏁版嵁 disposeRecord.setWorkflowConfigStepId(workflowConfigStep.getId()); disposeRecord.setHandlerRoleId(workflowConfigStep.getRoleId()); - baseMapper.insert(disposeRecord); - return true; + return baseMapper.insert(disposeRecord) == 1 ? true : false; } } 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 cdc1dbd..90c4202 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 @@ -86,8 +86,8 @@ stepNextRecord.setBaseCaseId(baseCase.getId()); stepNextRecord.setWorkflowConfigStepId(stepNext.getId()); stepNextRecord.setStepName(stepNext.getName()); - stepNextRecord.setHandlerRoleId(stepNext.getRoleId()); stepNextRecord.setLimitTime(dispatchInfoParam.getDisposeDate()); + stepNextRecord.setHandlerId(dispatchInfoParam.getLawEnforcer()); //涓婁紶澶勭疆鏈粨鏉� stepNextRecord.setState(0); stepNextRecord.setStartTime(LocalDateTime.now()); diff --git a/ycl-platform/src/main/resources/mapper/caseHandler/DisposeRecordMapper.xml b/ycl-platform/src/main/resources/mapper/caseHandler/DisposeRecordMapper.xml index fc7f13a..73fc29e 100644 --- a/ycl-platform/src/main/resources/mapper/caseHandler/DisposeRecordMapper.xml +++ b/ycl-platform/src/main/resources/mapper/caseHandler/DisposeRecordMapper.xml @@ -4,41 +4,63 @@ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 --> <resultMap id="BaseResultMap" type="com.ycl.entity.caseHandler.DisposeRecord"> - <id column="id" property="id" /> - <result column="base_case_id" property="baseCaseId" /> - <result column="workflow_config_step_id" property="workflowConfigStepId" /> - <result column="step_name" property="stepName" /> - <result column="start_time" property="startTime" /> - <result column="handler_role_id" property="handlerRoleId" /> - <result column="end_time" property="endTime" /> - <result column="state" property="state" /> - <result column="handler_id" property="handlerId" /> - <result column="create_user" property="createUser" /> - <result column="create_time" property="createTime" /> + <id column="id" property="id"/> + <result column="base_case_id" property="baseCaseId"/> + <result column="workflow_config_step_id" property="workflowConfigStepId"/> + <result column="step_name" property="stepName"/> + <result column="start_time" property="startTime"/> + <result column="handler_role_id" property="handlerRoleId"/> + <result column="end_time" property="endTime"/> + <result column="state" property="state"/> + <result column="handler_id" property="handlerId"/> + <result column="create_user" property="createUser"/> + <result column="create_time" property="createTime"/> </resultMap> <!-- 閫氱敤鏌ヨ缁撴灉鍒� --> <sql id="Base_Column_List"> - id, base_case_id, step_name, start_time, handler_role_id, end_time, state, handler_id, create_user, create_time + id + , base_case_id, step_name, start_time, handler_role_id, end_time, state, handler_id, create_user, create_time </sql> <select id="selectMyBackList" resultType="com.ycl.vo.MyBacklogVO"> SELECT - t3.event_source, - t3.category, - t2.step_name, - t3.`code`, - t2.create_time + t3.event_source, + t3.category, + t2.step_name, + t3.`code`, + t2.create_time, + t2.limit_time FROM - ums_admin_role_relation t1 - JOIN ums_dispose_record t2 ON t1.role_id = t2.handler_role_id - JOIN ums_base_case t3 ON t2.base_case_id=t3.id + ums_admin_role_relation t1 + JOIN ums_dispose_record t2 ON t1.role_id = t2.handler_role_id + JOIN ums_base_case t3 ON t2.base_case_id=t3.id <where> t1.admin_id = #{id} AND ISNULL( t2.end_time ) - <if test="code!='' and code!=null"> - and t3.`code` LIKE CONCAT('%',#{code},'%') - </if> + <if test="code!='' and code!=null"> + and t3.`code` LIKE CONCAT('%',#{code},'%') + </if> + </where> + union all + SELECT + t3.event_source, + t3.category, + t2.step_name, + t3.`code`, + t2.create_time, + t2.limit_time + FROM + ums_dispose_record t2 + LEFT JOIN ums_base_case t3 ON t2.base_case_id = t3.id + <where> + t2.handler_id = #{id} + AND ISNULL( + t2.end_time + ) + <if test="code!='' and code!=null"> + and t3.`code` LIKE CONCAT('%',#{code},'%') + </if> </where> </select> </mapper> -- Gitblit v1.8.0