From f971164723fd36021e9f68f93b7ac62ac4ad76be Mon Sep 17 00:00:00 2001 From: wangwh <2397901735@qq.com> Date: Thu, 10 Oct 2024 11:13:16 +0800 Subject: [PATCH] 屏蔽按钮 --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java | 165 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 153 insertions(+), 12 deletions(-) diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java index 26a556a..c063d22 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java @@ -2,6 +2,9 @@ import cn.huge.base.common.exception.ServiceException; import cn.huge.base.common.utils.*; +import cn.huge.module.cases.domain.bo.CaseAgentBO; +import cn.huge.module.cases.domain.bo.CasePersonBO; +import cn.huge.module.cases.domain.bo.CasePersonCountBO; import cn.huge.module.cases.domain.dto.*; import cn.huge.module.cases.domain.dto.CaseAreaDTO; @@ -241,8 +244,15 @@ caseInfo.setDefendants(defendants.toString()); caseInfo.setDagents(dagents.toString()); caseInfo.setCaseRef(utilsClient.createCaseRef()); - caseInfo.setVisitWay(CaseBaseConstsEnum.VISIT_WAY_1.getIndex()); - caseInfo.setVisitWayName(CaseBaseConstsEnum.VISIT_WAY_1.getDes()); + caseInfo.setVisitWay(CaseBaseConstsEnum.getVisitWayByCanal(caseInfo.getCanal()).getIndex()); + caseInfo.setVisitWayName(CaseBaseConstsEnum.getVisitWayByCanal(caseInfo.getCanal()).getDes()); + //默认小程序可见 + if(ObjectUtils.isNotEmpty(caseInfo.getCanal())){ + if(CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){ + caseInfo.setPartyShow(1); + } + } + //todo case_title生成、经纬度转换 if (0 == registerSaveDTO.getOperateType()) { caseInfo.setInputUnitId(loginUser.getUnitId()); @@ -597,6 +607,7 @@ caseInfo.setInputUserId(loginUser.getId()); caseInfo.setInputUserName(loginUser.getTrueName()); caseInfo.setInputWay(CaseBaseConsts.INPUT_WAY_1); + caseInfo.setPartyShow(1); if(ObjectUtils.isEmpty(registerSaveDTO.getPeopleNum())){ caseInfo.setPeopleNum(0); } @@ -678,6 +689,9 @@ // 临时加上一级纠纷类型 caseInfo.setCaseTypeFirst("24_01-2"); caseInfo.setCaseTypeFirstName("劳动社保"); + //小程序是否查看 + caseInfo.setPartyShow(1); + this.saveOrUpdate(caseInfo); caseInfoUnfoldService.saveOrUpdate(caseInfoUnfold); @@ -732,9 +746,12 @@ int peopleNum = 0; // 保存申请人 List<CasePerson> personList = registerSaveDTO.getPersonList(); + Map<String,String> personIdMap = new HashMap<>(); if (CollectionUtils.isNotEmpty(personList)) { for (CasePerson casePerson : personList) { - casePerson.setId(utilsClient.getNewTimeCaseId()); + String newTimeCaseId = utilsClient.getNewTimeCaseId(); + personIdMap.put(casePerson.getAgentCode(), newTimeCaseId); + casePerson.setId(newTimeCaseId); casePerson.setCaseId(registerSaveDTO.getId()); casePerson.setPartyUserId(loginUser.getId()); casePerson.setCustId(registerSaveDTO.getCustId()); @@ -765,6 +782,7 @@ if (CollectionUtils.isNotEmpty(agentList)) { for (CaseAgent caseAgent : agentList) { caseAgent.setId(utilsClient.getNewTimeCaseId()); + caseAgent.setPersonId(personIdMap.get(caseAgent.getAgentCode())); caseAgent.setPartyUserId(loginUser.getId()); caseAgent.setCaseId(registerSaveDTO.getId()); caseAgent.setAgentTypeName(CaseBaseConstsEnum.getDes(caseAgent.getAgentType())); @@ -800,11 +818,22 @@ QueryWrapper<CasePerson> casePersonQueryWrapper = new QueryWrapper<>(); casePersonQueryWrapper.eq("case_id", registerSaveDTO.getId()); List<CasePerson> personList = personService.list(casePersonQueryWrapper); + Map<String,String> personNameMap = new HashMap<>(); + if(ObjectUtils.isNotEmpty(personList)){ + for (CasePerson casePerson : personList) { + personNameMap.put(casePerson.getId(),casePerson.getTrueName()); + } + } registerSaveDTO.setPersonList(personList); QueryWrapper<CaseAgent> caseAgentQueryWrapper = new QueryWrapper<>(); caseAgentQueryWrapper.eq("case_id", registerSaveDTO.getId()); List<CaseAgent> agentList = agentService.list(caseAgentQueryWrapper); + if(ObjectUtils.isNotEmpty(agentList)){ + for (CaseAgent caseAgent : agentList) { + caseAgent.setAgentPersonName(personNameMap.get(caseAgent.getPersonId())); + } + } registerSaveDTO.setAgentList(agentList); return registerSaveDTO; @@ -841,6 +870,7 @@ } List<String> ids = casePersonList.stream().map(CasePerson::getCaseId).collect(Collectors.toList()); terms.put("ids", ids); + terms.put("partyShow",1); long total = mapper.countTerms(terms); List<CaseInfo> content = mapper.pageTerms(page, terms); if (ObjectUtils.isNotEmpty(content)) { @@ -952,6 +982,7 @@ return new PageImpl<CasePageDTO>(content, page, total); } + public CaseStatisticsBaseDTO statistics(Map<String, Object> terms) throws IOException { Object canal = null; if(ObjectUtils.isNotEmpty(terms.get("canal"))){ @@ -1046,20 +1077,33 @@ } twoSource.setCanalName(CaseBaseConstsEnum.CASE_CANAL_2.getDes()); - Integer sourceTotalNum = dellNull(oneSource.getCaseNum()) + dellNull(oneSource.getCaseNum()); + terms.put("canal", CaseBaseConstsEnum.CASE_CANAL_3.getIndex()); + CaseStatisticsSourceDTO threeSource = mapper.statisticsSource(terms); + if(ObjectUtils.isEmpty(threeSource)){ + threeSource = new CaseStatisticsSourceDTO(); + } + + terms.put("canal", CaseBaseConstsEnum.CASE_CANAL_4.getIndex()); + CaseStatisticsSourceDTO fourSource = mapper.statisticsSource(terms); + if(ObjectUtils.isEmpty(fourSource)){ + fourSource = new CaseStatisticsSourceDTO(); + } + + Integer sourceTotalNum = dellNull(oneSource.getCaseNum()) + dellNull(twoSource.getCaseNum()) + dellNull(threeSource.getCaseNum()) + dellNull(fourSource.getCaseNum()); oneSource.setCaseRate(BigDecimalUtil.integerDivideDelZero(oneSource.getCaseNum() * 100, sourceTotalNum, 1)); oneSource.setResolveRate(BigDecimalUtil.integerDivideDelZero(oneSource.getResolveNum() * 100, oneSource.getCaseNum(), 1)); twoSource.setCaseRate(BigDecimalUtil.integerDivideDelZero(twoSource.getCaseNum() * 100, sourceTotalNum, 1)); twoSource.setResolveRate(BigDecimalUtil.integerDivideDelZero(twoSource.getResolveNum() * 100, twoSource.getCaseNum(), 1)); - CaseStatisticsSourceDTO threeSource = new CaseStatisticsSourceDTO(); - threeSource.setCanalName("自行排查"); - threeSource.setResolveRate("0"); - threeSource.setCaseRate("0"); - CaseStatisticsSourceDTO fourSource = new CaseStatisticsSourceDTO(); - fourSource.setCanalName("协同推送"); - fourSource.setResolveRate("0"); - fourSource.setCaseRate("0"); + + threeSource.setCanalName(CaseBaseConstsEnum.CASE_CANAL_3.getDes()); + threeSource.setCaseRate(BigDecimalUtil.integerDivideDelZero(threeSource.getCaseNum() * 100, sourceTotalNum, 1)); + threeSource.setResolveRate(BigDecimalUtil.integerDivideDelZero(threeSource.getResolveNum() * 100, threeSource.getCaseNum(), 1)); + + fourSource.setCanalName(CaseBaseConstsEnum.CASE_CANAL_4.getDes()); + fourSource.setCaseRate(BigDecimalUtil.integerDivideDelZero(fourSource.getCaseNum() * 100, sourceTotalNum, 1)); + fourSource.setResolveRate(BigDecimalUtil.integerDivideDelZero(fourSource.getResolveNum() * 100, fourSource.getCaseNum(), 1)); + caseStatisticsBaseDTO.setOneSource(oneSource); caseStatisticsBaseDTO.setTwoSource(twoSource); caseStatisticsBaseDTO.setThreeSource(threeSource); @@ -1149,4 +1193,101 @@ List<QueAreaDTO> queAreaDTOS = sysClient.listByParentId(parentId); return queAreaDTOS; } + + public Page<CasePageDTO> pagePerson(PageRequest page, Map<String, Object> terms,String certiNo) { + QueryWrapper<CasePerson> personWrapper = new QueryWrapper<>(); + personWrapper.select("case_id,certi_no"); + personWrapper.eq("certi_no", certiNo); + List<CasePerson> personList = personService.list(personWrapper); + List<String> ids = new ArrayList<>(); + if(ObjectUtils.isNotEmpty(personList)){ + for (CasePerson casePerson : personList) { + ids.add(casePerson.getCaseId()); + } + } + QueryWrapper<CaseAgent> agentWrapper = new QueryWrapper<>(); + agentWrapper.select("case_id,certi_no"); + agentWrapper.in("certi_no", certiNo); + List<CaseAgent> agentList = agentService.list(agentWrapper); + if(ObjectUtils.isNotEmpty(agentList)){ + for (CaseAgent caseAgent : agentList) { + ids.add(caseAgent.getCaseId()); + } + } + if(ObjectUtils.isEmpty(ids)){ + return new PageImpl<CasePageDTO>(new ArrayList<>(), page, 0); + } + terms.put("ids", ids); + long total = mapper.countTermsAll(terms); + List<CasePageDTO> content = mapper.pageTermsAll(page, terms); + if (ObjectUtils.isNotEmpty(content)) { + for (CasePageDTO casePageDTO : content) { + if(ObjectUtils.isNotEmpty(casePageDTO.getQueRoadName())){ + casePageDTO.setAreaName(casePageDTO.getQueRoadName()); + }else if(ObjectUtils.isNotEmpty(casePageDTO.getAreaName())){ + casePageDTO.setAreaName(casePageDTO.getAreaName()); + }else if(ObjectUtils.isNotEmpty(casePageDTO.getQueCityName())){ + casePageDTO.setAreaName(casePageDTO.getQueCityName()); + } + if(ObjectUtils.isNotEmpty(casePageDTO.getCaseLevel())){ + switch (casePageDTO.getCaseLevel()){ + case "1": + casePageDTO.setCaseLevel("一级"); + break; + case "2": + casePageDTO.setCaseLevel("二级"); + break; + case "3": + casePageDTO.setCaseLevel("三级"); + break; + } + } + } + } + return new PageImpl<CasePageDTO>(content, page, total); + } + + public CasePersonCountBO countPerson(String certiNo){ + CasePersonCountBO casePersonCountBO = new CasePersonCountBO(); + + Integer plaintiffNum = 0;//申请方当事人数 + Integer defendantNum = 0;//被申请方当事人数 + Integer pagentsNum = 0;//申请方代理人数 + Integer dagentsNum = 0;//被申请方代理人数 + + List<CasePerson> personList = personService.listByCertiNo(certiNo); + List<String> ids = new ArrayList<>(); + if(ObjectUtils.isNotEmpty(personList)){ + for (CasePerson casePerson : personList) { + ids.add(casePerson.getCaseId()); + if(CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())){ + plaintiffNum++; + } + if(CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())){ + defendantNum++; + } + } + } + + List<CaseAgent> agentList = agentService.listByCertiNo(certiNo); + if(ObjectUtils.isNotEmpty(agentList)){ + for (CaseAgent caseAgent : agentList) { + ids.add(caseAgent.getCaseId()); + if(CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgent.getPerType())){ + pagentsNum++; + } + if(CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgent.getPerType())){ + dagentsNum++; + } + } + } + casePersonCountBO.setDagentsNum(dagentsNum); + casePersonCountBO.setPagentsNum(pagentsNum); + casePersonCountBO.setDefendantNum(defendantNum); + casePersonCountBO.setPlaintiffNum(plaintiffNum); + casePersonCountBO.setTotalNum(ids.size()); + casePersonCountBO.setZzzxNum(ids.size()); + return casePersonCountBO; + } + } -- Gitblit v1.8.0