From 80cc7fd5df68a78df4921379a4909a8025febdfc Mon Sep 17 00:00:00 2001 From: xusd <hugeinfo123> Date: Sun, 27 Oct 2024 16:09:03 +0800 Subject: [PATCH] Merge branch 'gzdyh_test' into gzdyh_grid --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/syncbydyh/service/ByToGzService.java | 215 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 197 insertions(+), 18 deletions(-) diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/syncbydyh/service/ByToGzService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/syncbydyh/service/ByToGzService.java index 726ba7e..b091d6a 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/syncbydyh/service/ByToGzService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/syncbydyh/service/ByToGzService.java @@ -1,27 +1,36 @@ package cn.huge.module.syncbydyh.service; import cn.huge.base.common.exception.ServiceException; -import cn.huge.module.cases.domain.po.CaseAgent; -import cn.huge.module.cases.domain.po.CaseInfo; -import cn.huge.module.cases.domain.po.CasePerson; -import cn.huge.module.cases.domain.po.CaseTask; +import cn.huge.base.common.utils.ObjectUtils; +import cn.huge.module.cases.domain.dto.AcceptTaskDTO; +import cn.huge.module.cases.domain.po.*; import cn.huge.module.cases.service.*; +import cn.huge.module.client.api.impl.CustClientImpl; import cn.huge.module.cust.constant.UserBaseConsts; +import cn.huge.module.cust.dto.CtUnitDTO; +import cn.huge.module.cust.dto.CtUserDTO; +import cn.huge.module.disp.dto.DispCaseBaseDTO; import cn.huge.module.syncbydyh.client.api.impl.SyncBydyhClientImpl; +import cn.huge.module.syncbydyh.domain.dto.ByCaseTaskDTO; import cn.huge.module.syncbydyh.domain.dto.GZCaseDTO; +import cn.huge.module.syncbydyh.domain.po.SyCause; +import cn.huge.module.syncbydyh.domain.po.ThirdCause; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.List; /** - * @title: 白云数据割接为广州数据的业务逻辑处理 - * @Description 白云数据割接为广州数据的业务逻辑处理 + * @title: 白云区矛盾纠纷多元化解平台数据割接-公共逻辑处理 + * @Description 白云区矛盾纠纷多元化解平台数据割接-公共逻辑处理 * @company hugeinfo * @author liyj * @Time 2024-08-19 20:04:19 @@ -43,49 +52,67 @@ private CaseAgentService caseAgentService; @Autowired private CaseTaskService caseTaskService; + @Autowired + private ThirdCauseService thirdCauseService; + @Autowired + private SyCauseService syCauseService; + @Autowired + private CustClientImpl custClient; + @Autowired + private ByToGzCaseTaskService byToGzCaseTaskService; /** * 白云区矛盾纠纷多元化解平台数据割接-已结束的纠纷案件信息 */ public void byToGzEndCase(){ try{ + List<CaseInfo> errorCaseList = new ArrayList<>(); int operSize = 100; // int endCaseCount = 1000; int endCaseCount = syncBydyhClient.countEndCase(); if (endCaseCount > 0) { - int allPage = (endCaseCount/operSize); -// int allPage = 1; +// int allPage = (endCaseCount/operSize); + int allPage = 20; for (int operPage=1; operPage<=allPage; operPage++) { - try{ - List<GZCaseDTO> byToGzDTOList = syncBydyhClient.byToGzEndCase(operPage, operSize); - for (GZCaseDTO byToGzDTO: byToGzDTOList){ - caseInfoService.saveOrUpdate(byToGzDTO.getGzCaseInfoDTO()); - + List<GZCaseDTO> byToGzDTOList = syncBydyhClient.byToGzEndCase(operPage, operSize); + for (GZCaseDTO byToGzDTO: byToGzDTOList){ + // 新增案件信息 + CaseInfo caseInfo = byToGzDTO.getGzCaseInfoDTO(); + try { + if (caseInfo.getCaseClaim().length() > 200) { + caseInfo.setCaseClaim("详见申请材料"); + } + if (caseInfo.getCaseDes().length() > 200) { + caseInfo.setCaseDes("详见申请材料"); + } + caseInfoService.saveOrUpdate(caseInfo); + // 新增案件扩展信息 caseInfoUnfoldService.saveOrUpdate(byToGzDTO.getGzCaseInfoUnfoldDTO()); - + // 新增当事人信息 List<CasePerson> casePersonList = byToGzDTO.getGzCasePersonDTOList(); if (CollectionUtils.isNotEmpty(casePersonList)) { for (CasePerson casePerson : casePersonList) { casePersonService.saveOrUpdate(casePerson); } } - + // 新增当事人代理人信息 List<CaseAgent> caseAgentList = byToGzDTO.getGzCaseAgentDTOList(); if (CollectionUtils.isNotEmpty(caseAgentList)) { for (CaseAgent caseAgent : caseAgentList) { caseAgentService.saveOrUpdate(caseAgent); } } - + // 新增纠纷任务信息 List<CaseTask> caseTaskList = byToGzDTO.getGzCaseTaskDTOList(); if (CollectionUtils.isNotEmpty(caseTaskList)) { for (CaseTask caseTask : caseTaskList) { caseTaskService.saveOrUpdate(caseTask); } } + }catch (Exception e){ + log.error("[ByToGzService.byToGzEndCase]调用失败,异常信息:"+e, e); + errorCaseList.add(byToGzDTO.getGzCaseInfoDTO()); } - }catch (Exception e){ - log.error("[ByToGzService.byToGzEndCase]调用失败,异常信息:"+e, e); } } } @@ -94,4 +121,156 @@ throw new ServiceException("ByToGzService.byToGzEndCase", e); } } + + /** + * 白云区矛盾纠纷多元化解平台数据割接-进行中的纠纷案件信息 + */ + public void byToGzTodoCase(){ + try{ + int operSize = 100; + int endCaseCount = syncBydyhClient.countTodoCase(); + if (endCaseCount > 0) { + int allPage = (endCaseCount/operSize); + for (int operPage=1; operPage<=allPage; operPage++) { + List<GZCaseDTO> byToGzDTOList = syncBydyhClient.byToGzTodoCase(operPage, operSize); + for (GZCaseDTO byToGzDTO: byToGzDTOList){ + try { + // 新增案件信息 + CaseInfo caseInfo = byToGzDTO.getGzCaseInfoDTO(); + if (caseInfo.getCaseClaim().length() > 200) { + caseInfo.setCaseClaim("详见申请材料"); + } + if (caseInfo.getCaseDes().length() > 200) { + caseInfo.setCaseDes("详见申请材料"); + } + caseInfoService.saveOrUpdate(caseInfo); + // 新增案件扩展信息 + CaseInfoUnfold caseInfoUnfold = byToGzDTO.getGzCaseInfoUnfoldDTO(); + caseInfoUnfoldService.saveOrUpdate(caseInfoUnfold); + // 新增当事人信息 + List<CasePerson> casePersonList = byToGzDTO.getGzCasePersonDTOList(); + if (CollectionUtils.isNotEmpty(casePersonList)) { + for (CasePerson casePerson : casePersonList) { + casePersonService.saveOrUpdate(casePerson); + } + } + // 新增当事人代理人信息 + List<CaseAgent> caseAgentList = byToGzDTO.getGzCaseAgentDTOList(); + if (CollectionUtils.isNotEmpty(caseAgentList)) { + for (CaseAgent caseAgent : caseAgentList) { + caseAgentService.saveOrUpdate(caseAgent); + } + } + // 启动流程 + caseTaskService.deleteByCaseId(caseInfo.getId()); + if (StringUtils.isNotEmpty(caseInfoUnfold.getMediateUnitId()) + && StringUtils.isNotEmpty(caseInfo.getWantUnitId()) + && caseInfo.getWantUnitId().equals(caseInfoUnfold.getMediateUnitId())) { + CtUserDTO ctUserDTO = custClient.clientGetUserAll(caseInfo.getInputUserId()); + byToGzCaseTaskService.webStartFlowZXSL(caseInfo, ctUserDTO); + } else { + DispCaseBaseDTO dispCaseBaseDTO = new DispCaseBaseDTO(); + BeanUtils.copyProperties(caseInfo, dispCaseBaseDTO); + dispCaseBaseDTO.setWantUserId(null); + dispCaseBaseDTO.setWantUserName(null); + if (StringUtils.isNotEmpty(caseInfoUnfold.getMediateUnitId())) { + dispCaseBaseDTO.setWantUnitId(caseInfoUnfold.getMediateUnitId()); + dispCaseBaseDTO.setWantUnitName(caseInfoUnfold.getMediateUnitName()); + String dslCaseTaskId = byToGzCaseTaskService.webStartFlowLFDJ(caseInfo, dispCaseBaseDTO); + + List<ByCaseTaskDTO> byCaseTaskDTOList = byToGzDTO.getByCaseTaskDTOList(); + if (CollectionUtils.isNotEmpty(byCaseTaskDTOList)) { + for (ByCaseTaskDTO byCaseTaskDTO : byCaseTaskDTOList) { + if ("F22_00019-2".equals(byCaseTaskDTO.getTaskNode())) { + AcceptTaskDTO acceptTaskDTO = new AcceptTaskDTO(); + acceptTaskDTO.setCaseTaskId(dslCaseTaskId); + try { + byToGzCaseTaskService.webAccept(acceptTaskDTO, byCaseTaskDTO.getHandlerUserId(), byCaseTaskDTO.getCreateTime()); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + } + } + } else { + byToGzCaseTaskService.webStartFlowLFDJ(caseInfo, dispCaseBaseDTO); + } + } + }catch (Exception e){ + log.error("[ByToGzService.byToGzEndCase]调用失败,异常信息:"+e, e); + } + } + } + } + }catch (Exception e){ + log.error("[ByToGzService.byToGzEndCase]调用失败,异常信息:"+e, e); + throw new ServiceException("ByToGzService.byToGzEndCase", e); + } + } + + /** + * 白云区矛盾纠纷多元化解平台数据割接-更新纠纷类型 + */ + public void upThirdCause(){ + try{ + List<CaseInfo> caseInfoList = caseInfoService.list(); + QueryWrapper<ThirdCause> thirdCauseQueryWrapper = new QueryWrapper<>(); + for (CaseInfo caseInfo: caseInfoList){ + thirdCauseQueryWrapper.clear(); + thirdCauseQueryWrapper.eq("third_code", caseInfo.getCaseType()); + ThirdCause thirdCause = thirdCauseService.getOne(thirdCauseQueryWrapper); + if (ObjectUtils.isNotEmpty(thirdCause)){ + SyCause syCause = syCauseService.getById(thirdCause.getCauseCode()); + if (ObjectUtils.isNotEmpty(syCause)){ + // 查询父级 + SyCause syCausePanrent = syCauseService.getById(syCause.getParentId()); + if (ObjectUtils.isNotEmpty(syCausePanrent)){ + try{ + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(caseInfo.getId()); + caseInfoPO.setCaseType(syCause.getId()); + caseInfoPO.setCaseTypeName(syCause.getName()); + caseInfoPO.setCaseTypeFirst(syCausePanrent.getId()); + caseInfoPO.setCaseTypeFirstName(syCausePanrent.getName()); + caseInfoService.updateCaseInfo(caseInfoPO); + }catch (Exception e){ + log.error("[ByToGzService.upThirdCause]调用失败,异常信息:"+e, e); + } + } + } + } + } + }catch (Exception e){ + log.error("[ByToGzService.byToGzEndCase]调用失败,异常信息:"+e, e); + throw new ServiceException("ByToGzService.byToGzEndCase", e); + } + + } + + /** + * 白云区矛盾纠纷多元化解平台数据割接-更新问题属地的村级社区 + */ + public void upQueAddr(){ + try{ + List<CaseInfoUnfold> caseInfoUnfoldList = caseInfoUnfoldService.list(); + for (CaseInfoUnfold caseInfoUnfold: caseInfoUnfoldList){ + if (StringUtils.isNotEmpty(caseInfoUnfold.getMediateUnitId())) { + CtUnitDTO ctUnitDTO = custClient.getUnitById(caseInfoUnfold.getMediateUnitId()); + if (ObjectUtils.isNotEmpty(ctUnitDTO)){ + if (StringUtils.isNotEmpty(ctUnitDTO.getVillage())) { + CaseInfo caseInfo = new CaseInfo(); + caseInfo.setId(caseInfoUnfold.getId()); + caseInfo.setQueVillage(ctUnitDTO.getVillage()); + caseInfo.setQueVillageName(ctUnitDTO.getVillageName()); + caseInfoService.updateCaseInfo(caseInfo); + } + } + } + } + }catch (Exception e){ + log.error("[ByToGzService.upQueAddr]调用失败,异常信息:"+e, e); + throw new ServiceException("ByToGzService.upQueAddr", e); + } + + } } \ No newline at end of file -- Gitblit v1.8.0