From 7222d2bcedd4b959107cfb0086a8bab10a2c15e0 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期三, 21 五月 2025 18:18:58 +0800 Subject: [PATCH] git ch --- server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java | 525 ++++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 325 insertions(+), 200 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java index 312901d..b143150 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java @@ -449,13 +449,19 @@ settleClaimsExtMapper.insert(settleClaims.getExtData()); //澶勭悊闄勪欢寮�濮� multifileJoinMapper.update(null,new UpdateWrapper<Multifile>().lambda() - .set(Multifile::getIsdeleted,Constants.ZERO) + .set(Multifile::getIsdeleted,Constants.ONE) .eq(Multifile::getObjId,model.getId()) - .in(Multifile::getObjType,Constants.MultiFile.LP_YGGX_FILE.getKey() + .in(Multifile::getObjType + ,Constants.MultiFile.LP_YGGX_FILE.getKey() ,Constants.MultiFile.LP_ZYCL_FILE.getKey() ,Constants.MultiFile.LP_MZCL_FILE.getKey() ,Constants.MultiFile.LP_OTHER_FILE.getKey() - ,Constants.MultiFile.LP_SCZL_FILE.getKey())); + ,Constants.MultiFile.LP_SCZL_FILE.getKey() + ,Constants.MultiFile.LP_SGXC_FILE.getKey() + ,Constants.MultiFile.LP_DZBD_FILE.getKey() + ) + + ); dealSysFileListBiz(settleClaims); } @@ -487,12 +493,16 @@ List<Multifile> outpatientFileList = settleClaims.getOutpatientFileList();//闂ㄨ瘖鏉愭枡 List<Multifile> otherFileList = settleClaims.getOtherFileList();//鍏朵粬鏉愭枡 List<Multifile> disabilityFileList = settleClaims.getDisabilityFileList();//浼ゆ畫鏉愭枡 + List<Multifile> dzbdFileList = settleClaims.getDzbdFileList();//鐢靛瓙淇濆崟 + List<Multifile> reportFileList = settleClaims.getReportFileList();//鎶ユ瑙嗛 List<Multifile> insetList = new ArrayList<>(); insetList.addAll(getMultifileListByObjtype(relationFileList,Constants.MultiFile.LP_YGGX_FILE.getKey(),settleClaims)); insetList.addAll(getMultifileListByObjtype(hospitalFileList,Constants.MultiFile.LP_ZYCL_FILE.getKey(),settleClaims)); insetList.addAll(getMultifileListByObjtype(outpatientFileList,Constants.MultiFile.LP_MZCL_FILE.getKey(),settleClaims)); insetList.addAll(getMultifileListByObjtype(otherFileList,Constants.MultiFile.LP_OTHER_FILE.getKey(),settleClaims)); insetList.addAll(getMultifileListByObjtype(disabilityFileList,Constants.MultiFile.LP_SCZL_FILE.getKey(),settleClaims)); + insetList.addAll(getMultifileListByObjtype(dzbdFileList,Constants.MultiFile.LP_DZBD_FILE.getKey(),settleClaims)); + insetList.addAll(getMultifileListByObjtype(reportFileList,Constants.MultiFile.LP_SGXC_FILE.getKey(),settleClaims)); if(CollectionUtils.isNotEmpty(insetList)){ multifileJoinMapper.insert(insetList); } @@ -510,6 +520,7 @@ || StringUtils.isBlank(multifile.getName()) ){ continue; } + multifile.setId(null); multifile.setCreator(model.getEditor()); multifile.setCreateDate(model.getEditDate()); multifile.setEditor(model.getEditor()); @@ -723,6 +734,122 @@ settleClaims.setOtherFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_OTHER_FILE.getKey())).collect(Collectors.toList())); settleClaims.setPayFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_PAY_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setDzbdFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_DZBD_FILE.getKey())).collect(Collectors.toList())); + + } + + //鏌ヨ鎿嶄綔璁板綍 + List<SettleClaimsLog> settleClaimsLogList = settleClaimsLogJoinMapper.selectJoinList(SettleClaimsLog.class, + new MPJLambdaWrapper<SettleClaimsLog>() + .selectAll(SettleClaimsLog.class) + .selectAs(SystemUser::getRealname,SettleClaimsLog::getCreatorName) + .selectAs(SystemUser::getType,SettleClaimsLog::getCreatorType) + .selectAs(Company::getName,SettleClaimsLog::getCompanyName) + .leftJoin(SystemUser.class,SystemUser::getId,SettleClaimsLog::getCreator) + .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId) + .eq(SettleClaimsLog::getSettleClainmsId,settleClaims.getId()) + .orderByAsc(SettleClaimsLog::getCreateDate) + ); + settleClaims.setSettleClaimsLogList(settleClaimsLogList); + SettleClaimsLog lastConfirm = settleClaimsLogMapper.selectOne(new QueryWrapper<SettleClaimsLog>().lambda() + .eq(SettleClaimsLog::getSettleClainmsId,settleClaims.getId()) + .eq(SettleClaimsLog::getObjType,Constants.SettleClaimsLogType.PLATFORM_CONFIRM_INFORMATION.getKey()) + .orderByDesc(SettleClaimsLog::getCreateDate) + .last(" limit 1") + ); + + Multifile multifile = multifileJoinMapper.selectOne(new QueryWrapper<Multifile>() + .lambda() + .eq(Multifile::getObjId,settleClaims.getId()) + .eq(Multifile::getIsdeleted,Constants.ZERO) + .in(Multifile::getObjType, + Constants.MultiFile.LP_SGXC_FILE.getKey(), + Constants.MultiFile.LP_YGGX_FILE.getKey(), + Constants.MultiFile.LP_MZCL_FILE.getKey(), + Constants.MultiFile.LP_ZYCL_FILE.getKey(), + Constants.MultiFile.LP_SCZL_FILE.getKey(), + Constants.MultiFile.LP_JACL_FILE.getKey()) + .orderByDesc(Multifile::getCreateDate) + .last(" limit 1") + ); + + if(!Objects.isNull(lastConfirm)&&!Objects.isNull(multifile)){ + settleClaims.setFinishDate(lastConfirm.getCreateDate().compareTo(multifile.getCreateDate())>=0?lastConfirm.getCreateDate():multifile.getCreateDate()); + }else if(!Objects.isNull(lastConfirm)&&Objects.isNull(multifile)){ + settleClaims.setFinishDate(lastConfirm.getCreateDate()); + } + return settleClaims; + } + + + @Override + public SettleClaims getSettleClaimsDetailForSd(Integer id){ + MPJLambdaWrapper<SettleClaims> queryWrapper = new MPJLambdaWrapper<SettleClaims>(); + queryWrapper.selectAll(SettleClaims.class) + .selectAs(SettleClaimsExt::getBxOrg,SettleClaims::getCompanyName) + .selectAs(SettleClaimsExt::getBxName,SettleClaims::getSolutionName) + .selectAs(SettleClaimsExt::getMemberName,SettleClaims::getMemberName) + .selectAs(SettleClaimsExt::getMemberIdcard,SettleClaims::getMemberIdcardNo) + .selectAs(SettleClaimsExt::getBxStartdate,SettleClaims::getBaoxianStartTime) + .selectAs(SettleClaimsExt::getBxEnddate,SettleClaims::getBaoxianEndTime) + .selectAs(SettleClaimsExt::getBxCode,SettleClaims::getApplyCode) + .innerJoin(SettleClaimsExt.class,SettleClaimsExt::getSettileClaimsId,SettleClaims::getId) + .eq(SettleClaims::getId,id); + SettleClaims settleClaims = settleClaimsJoinMapper.selectJoinOne(SettleClaims.class,queryWrapper); + if(settleClaims == null){ + throw new BusinessException(ResponseStatus.DATA_EMPTY); + } + if(StringUtils.isNotBlank(settleClaims.getHpAccountContent())){ + settleClaims.setAccountList(JSONArray.parseArray(settleClaims.getHpAccountContent(),CompensationVO.class )); + } + List<Multifile> multifileList = multifileJoinMapper.selectJoinList(Multifile.class, + new MPJLambdaWrapper<Multifile>() + .selectAll(Multifile.class) + .selectAs(SystemUser::getRealname,Multifile::getCreatorName) + .leftJoin(SystemUser.class,SystemUser::getId,Multifile::getCreator) + .eq(Multifile::getObjId,id) + .eq(Multifile::getIsdeleted,Constants.ZERO) + .orderByAsc(Multifile::getCreateDate) + ); + String rPath = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode(); + String path = rPath+ systemDictDataBiz.queryByCode(Constants.OSS,Constants.SETTLE_FILE).getCode(); + if(multifileList!=null){ + for(Multifile f : multifileList){ + if(f!=null&& StringUtils.isNotBlank(f.getFileurl())){ + f.setFileurlFull(path+f.getFileurl()); + } + } + } + Multifile baoxiandanFile = multifileJoinMapper.selectOne(new QueryWrapper<Multifile>() + .lambda().eq(Multifile::getObjId,settleClaims.getInsuranceApplyId()) + .eq(Multifile::getIsdeleted,Constants.ZERO) + .eq(Multifile::getObjType,Constants.MultiFile.BD_DONE_PDF.getKey()) + .last("limit 1")); + if(baoxiandanFile!=null&& StringUtils.isNotBlank(baoxiandanFile.getFileurl())){ + path = rPath+ systemDictDataBiz.queryByCode(Constants.OSS,Constants.APPLY_FILE).getCode(); + baoxiandanFile.setFileurlFull(path+baoxiandanFile.getFileurl()); + } + settleClaims.setBaoxiandanFile(baoxiandanFile);//淇濋櫓鍗� + if(CollectionUtils.isNotEmpty(multifileList)){ + settleClaims.setReportFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_SGXC_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setRelationFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_YGGX_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setOutpatientFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_MZCL_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setHospitalFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_ZYCL_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setDisabilityFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_SCZL_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setCompensationFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_JACL_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setOtherFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_OTHER_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setPayFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_PAY_FILE.getKey())).collect(Collectors.toList())); + + settleClaims.setDzbdFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_DZBD_FILE.getKey())).collect(Collectors.toList())); + } //鏌ヨ鎿嶄綔璁板綍 @@ -771,6 +898,7 @@ .eq(SettleClaimsExt::getSettileClaimsId,settleClaims.getId()) .last("limit 1"))); } + settleClaims.setExtData(settleClaimsExtMapper.selectOne(new QueryWrapper<SettleClaimsExt>().lambda().eq(SettleClaimsExt::getSettileClaimsId,id).last("limit 1"))); return settleClaims; } @@ -912,7 +1040,7 @@ @Override public void deleteById(Integer id) { - settleClaimsMapper.deleteById(id); + settleClaimsMapper.update(new UpdateWrapper<SettleClaims>().lambda().set(SettleClaims::getIsdeleted,Constants.ONE).eq(SettleClaims::getId,id)); } @Override @@ -976,6 +1104,8 @@ .selectAs(Worktype::getName,SettleClaims::getWorktypeName) .selectAs(InsuranceApply::getStartTime,SettleClaims::getBaoxianStartTime) .selectAs(DispatchUnit::getName,SettleClaims::getDuName) + .selectAs(InsuranceApply::getStartTime,SettleClaims::getBaoxianStartTime) + .selectAs(InsuranceApply::getEndTime,SettleClaims::getBaoxianEndTime) .leftJoin(Company.class,Company::getId,SettleClaims::getCompanyId) .leftJoin(Member.class,Member::getId,SettleClaims::getMemberId) .leftJoin(DispatchUnit.class,DispatchUnit::getId,SettleClaims::getDuId) @@ -995,113 +1125,26 @@ //浼佷笟鐢ㄦ埛鍙湅鑷繁鐨勬暟鎹� pageWrap.getModel().setCompanyId(user.getCompanyId()); } + queryWrapper.eq(SettleClaims::getIsdeleted,Constants.ZERO); + queryWrapper.eq(SettleClaims::getOrigin,Constants.ZERO); queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()),Member::getName, pageWrap.getModel().getMemberName()); queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getMemberIdcardNo()),Member::getIdcardNo, pageWrap.getModel().getMemberIdcardNo()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getInformantName()),SettleClaims::getInformantName, pageWrap.getModel().getInformantName()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getDuName()),DispatchUnit::getName, pageWrap.getModel().getDuName()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCreateDateStr()),SettleClaims::getCreateDate, pageWrap.getModel().getCreateDateStr()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getHappenTime()),SettleClaims::getHappenTime, pageWrap.getModel().getHappenTime()); queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getDuName()),DispatchUnit::getName, pageWrap.getModel().getDuName()); queryWrapper.eq(pageWrap.getModel().getBaseSolutionId()!=null,Solutions::getBaseId, pageWrap.getModel().getBaseSolutionId()); queryWrapper.eq(pageWrap.getModel().getBaseDuId()!=null,DispatchUnit::getBaseId, pageWrap.getModel().getBaseDuId()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getSolutionName()),Solutions::getName, pageWrap.getModel().getSolutionName()); + queryWrapper.eq(pageWrap.getModel().getInHospital()!=null,SettleClaims::getInHospital, pageWrap.getModel().getInHospital()); + queryWrapper.eq(pageWrap.getModel().getStatus()!=null,SettleClaims::getStatus, pageWrap.getModel().getStatus()); + queryWrapper.eq(pageWrap.getModel().getCompanyId()!=null,SettleClaims::getCompanyId, pageWrap.getModel().getCompanyId()); + queryWrapper.eq(pageWrap.getModel().getOrigin()!=null,SettleClaims::getOrigin, pageWrap.getModel().getOrigin()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCode()),SettleClaims::getCode, pageWrap.getModel().getCode()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getReportNum()),SettleClaims::getReportNum, pageWrap.getModel().getReportNum()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getApplyCode()),InsuranceApply::getCode, pageWrap.getModel().getApplyCode()); - if (pageWrap.getModel().getId() != null) { - queryWrapper.eq(SettleClaims::getId, pageWrap.getModel().getId()); - } - if (pageWrap.getModel().getCreator() != null) { - queryWrapper.eq(SettleClaims::getCreator, pageWrap.getModel().getCreator()); - } - if (pageWrap.getModel().getCreateDate() != null) { - queryWrapper.ge(SettleClaims::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); - queryWrapper.le(SettleClaims::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); - } - if (pageWrap.getModel().getEditor() != null) { - queryWrapper.eq(SettleClaims::getEditor, pageWrap.getModel().getEditor()); - } - if (pageWrap.getModel().getEditDate() != null) { - queryWrapper.ge(SettleClaims::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); - queryWrapper.le(SettleClaims::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); - } - if (pageWrap.getModel().getIsdeleted() != null) { - queryWrapper.eq(SettleClaims::getIsdeleted, pageWrap.getModel().getIsdeleted()); - } - if (pageWrap.getModel().getRemark() != null) { - queryWrapper.eq(SettleClaims::getRemark, pageWrap.getModel().getRemark()); - } - if (pageWrap.getModel().getSortnum() != null) { - queryWrapper.eq(SettleClaims::getSortnum, pageWrap.getModel().getSortnum()); - } - if (pageWrap.getModel().getSolutionId() != null) { - queryWrapper.eq(SettleClaims::getSolutionId, pageWrap.getModel().getSolutionId()); - } - if (pageWrap.getModel().getCompanyId() != null) { - queryWrapper.eq(SettleClaims::getCompanyId, pageWrap.getModel().getCompanyId()); - } - if (pageWrap.getModel().getMemberId() != null) { - queryWrapper.eq(SettleClaims::getMemberId, pageWrap.getModel().getMemberId()); - } - if (pageWrap.getModel().getHappenTime() != null) { - queryWrapper.eq(SettleClaims::getHappenTime, pageWrap.getModel().getHappenTime()); - } - if (pageWrap.getModel().getIdcardNo() != null) { - queryWrapper.eq(SettleClaims::getIdcardNo, pageWrap.getModel().getIdcardNo()); - - } - if (pageWrap.getModel().getDuId() != null) { - queryWrapper.eq(SettleClaims::getDuId, pageWrap.getModel().getDuId()); - } - if (pageWrap.getModel().getWorktypeId() != null) { - queryWrapper.eq(SettleClaims::getWorktypeId, pageWrap.getModel().getWorktypeId()); - } - if (pageWrap.getModel().getFee() != null) { - queryWrapper.eq(SettleClaims::getFee, pageWrap.getModel().getFee()); - } - if (pageWrap.getModel().getCheckInfo() != null) { - queryWrapper.eq(SettleClaims::getCheckInfo, pageWrap.getModel().getCheckInfo()); - } - if (pageWrap.getModel().getCheckUserId() != null) { - queryWrapper.eq(SettleClaims::getCheckUserId, pageWrap.getModel().getCheckUserId()); - } - if (pageWrap.getModel().getCode() != null) { - queryWrapper.eq(SettleClaims::getCode, pageWrap.getModel().getCode()); - } - if (pageWrap.getModel().getStatus() != null) { - if(pageWrap.getModel().getStatus().equals(Constants.ZERO)){ - queryWrapper.in(SettleClaims::getStatus, Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey() - ,Constants.SettleClaimsStatus.DEAL_ING.getKey() - ,Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey()); - }else{ - queryWrapper.eq(SettleClaims::getStatus, pageWrap.getModel().getStatus()); - } - - - } - if (pageWrap.getModel().getType() != null) { - queryWrapper.eq(SettleClaims::getType, pageWrap.getModel().getType()); - } - if (pageWrap.getModel().getInHospital() != null) { - queryWrapper.eq(SettleClaims::getInHospital, pageWrap.getModel().getInHospital()); - } - if (pageWrap.getModel().getMedicalInsurance() != null) { - queryWrapper.eq(SettleClaims::getMedicalInsurance, pageWrap.getModel().getMedicalInsurance()); - } - if (pageWrap.getModel().getContent() != null) { - queryWrapper.eq(SettleClaims::getContent, pageWrap.getModel().getContent()); - } - if (pageWrap.getModel().getInformantName() != null) { - queryWrapper.eq(SettleClaims::getInformantName, pageWrap.getModel().getInformantName()); - } - if (pageWrap.getModel().getInformantPhone() != null) { - queryWrapper.eq(SettleClaims::getInformantPhone, pageWrap.getModel().getInformantPhone()); - } - if (pageWrap.getModel().getAreaId() != null) { - queryWrapper.eq(SettleClaims::getAreaId, pageWrap.getModel().getAreaId()); - } - if (pageWrap.getModel().getAreaInfo() != null) { - queryWrapper.eq(SettleClaims::getAreaInfo, pageWrap.getModel().getAreaInfo()); - } - if (pageWrap.getModel().getReportNum() != null) { - queryWrapper.eq(SettleClaims::getReportNum, pageWrap.getModel().getReportNum()); - } - if (pageWrap.getModel().getInsuranceApplyId() != null) { - queryWrapper.eq(SettleClaims::getInsuranceApplyId, pageWrap.getModel().getInsuranceApplyId()); - } queryWrapper.orderByDesc(SettleClaims::getCreateDate); /*for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { @@ -1111,8 +1154,51 @@ } }*/ PageData<SettleClaims> pageData = PageData.from(settleClaimsJoinMapper.selectJoinPage(page,SettleClaims.class, queryWrapper)); + for (SettleClaims settleClaims:pageData.getRecords()) { + settleClaims.setStatusName(Constants.SettleClaimsStatus.getName(settleClaims.getStatus())); + settleClaims.setPcAccount(settleClaims.getHpAccount().add(settleClaims.getHpOtherAccount())); + } return pageData; } + + + @Override + public PageData<SettleClaims> findPageForSd(PageWrap<SettleClaims> pageWrap) { + IPage<SettleClaims> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); + LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); + Utils.MP.blankToNull(pageWrap.getModel()); + MPJLambdaWrapper<SettleClaims> queryWrapper = new MPJLambdaWrapper<SettleClaims>(); + queryWrapper.selectAll(SettleClaims.class) + .selectAs(SettleClaimsExt::getBxOrg,SettleClaims::getCompanyName) + .selectAs(SettleClaimsExt::getBxName,SettleClaims::getSolutionName) + .selectAs(SettleClaimsExt::getMemberName,SettleClaims::getMemberName) + .selectAs(SettleClaimsExt::getMemberIdcard,SettleClaims::getMemberIdcardNo) + .selectAs(SettleClaimsExt::getBxStartdate,SettleClaims::getBaoxianStartTime) + .selectAs(SettleClaimsExt::getBxEnddate,SettleClaims::getBaoxianEndTime) + .selectAs(SettleClaimsExt::getBxCode,SettleClaims::getApplyCode) + .innerJoin(SettleClaimsExt.class,SettleClaimsExt::getSettileClaimsId,SettleClaims::getId); + queryWrapper.eq(SettleClaims::getIsdeleted,Constants.ZERO); + queryWrapper.eq(SettleClaims::getOrigin,Constants.ONE); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getReportNum()),SettleClaims::getReportNum, pageWrap.getModel().getReportNum()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),SettleClaimsExt::getBxOrg, pageWrap.getModel().getCompanyName()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getInformantName()),SettleClaims::getInformantName, pageWrap.getModel().getInformantName()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getHappenTime()),SettleClaims::getHappenTime, pageWrap.getModel().getHappenTime()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCreateDateStr()),SettleClaims::getCreateDate, pageWrap.getModel().getCreateDateStr()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()),SettleClaimsExt::getMemberName, pageWrap.getModel().getMemberName()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getSolutionName()),SettleClaimsExt::getBxName, pageWrap.getModel().getSolutionName()); + queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getApplyCode()),SettleClaimsExt::getBxCode, pageWrap.getModel().getApplyCode()); + queryWrapper.eq(pageWrap.getModel().getInHospital()!=null,SettleClaims::getInHospital, pageWrap.getModel().getInHospital()); + queryWrapper.eq(pageWrap.getModel().getStatus()!=null,SettleClaims::getStatus, pageWrap.getModel().getStatus()); + queryWrapper.orderByDesc(SettleClaims::getCreateDate); + PageData<SettleClaims> pageData = PageData.from(settleClaimsJoinMapper.selectJoinPage(page,SettleClaims.class, queryWrapper)); + for (SettleClaims settleClaims:pageData.getRecords()) { + settleClaims.setStatusName(Constants.SettleClaimsStatus.getName(settleClaims.getStatus())); + settleClaims.setPcAccount(settleClaims.getHpAccount().add(settleClaims.getHpOtherAccount())); + } + return pageData; + } + + @Override public long count(SettleClaims settleClaims) { @@ -2203,101 +2289,140 @@ } -// -// public List<SettleParentStatusVO> getParentStatus(SettleClaims settleClaims){ -// List<SettleParentStatusVO> settleParentStatusVOList = new ArrayList<>(); -// List<SettleClaimsLog> settleClaimsLogList = settleClaimsLogMapper -// .selectList(new QueryWrapper<SettleClaimsLog>().lambda().eq(SettleClaimsLog::getObjId,settleClaims.getId()).orderByDesc(SettleClaimsLog::getCreateDate)); -// //绔嬫閫�鍥炵姸鎬佹暟鎹� -// if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.FINISH_ACCEPTANCE.getKey())){ -// SettleParentStatusVO settleParentStatusVO = new SettleParentStatusVO(); -// settleParentStatusVO.setParentTitle("鎶ユ"); -// settleParentStatusVO.setStatus(Constants.ONE); -// settleParentStatusVO.setChildTitle(Constants.SettleClaimsStatus.FINISH_ACCEPTANCE.getName()); -// Optional<SettleClaimsLog> optionalSettleClaimsLog = settleClaimsLogList.stream() -// .filter(i->Constants.equalsInteger(i.getObjType(),Constants.SettleClaimsLogType.PLATFORM_RETURN.getKey())).findFirst(); -// if(optionalSettleClaimsLog.isPresent()){ -// settleParentStatusVO.setOptDate(optionalSettleClaimsLog.get().getCreateDate()); -// } -// settleParentStatusVOList.add(settleParentStatusVO); -// return settleParentStatusVOList; -// } -// //鏆傚瓨鐘舵�� 鏃犱富娴佺▼鏁版嵁 -// if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey())){ -// return settleParentStatusVOList; -// } -// //鍟嗚瀹℃壒涓嶉�氳繃 -// if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.WAIT_DISCUSS_REJECT.getKey())){ -// -// SettleParentStatusVO settleParentStatusBAVO = new SettleParentStatusVO(); -// settleParentStatusBAVO.setParentTitle("鎶ユ"); -// settleParentStatusBAVO.setChildTitle("宸叉姤妗�"); -// settleParentStatusBAVO.setStatus(Constants.ZERO); -// Optional<SettleClaimsLog> optionalSettleClaimsBALog = settleClaimsLogList.stream() -// .filter(i->Constants.equalsInteger(i.getParentStatus(),Constants.ONE)).findFirst(); -// if(optionalSettleClaimsBALog.isPresent()){ -// settleParentStatusBAVO.setOptDate(optionalSettleClaimsBALog.get().getCreateDate()); -// } -// settleParentStatusVOList.add(settleParentStatusBAVO); -// -// SettleParentStatusVO settleParentStatusLAVO = new SettleParentStatusVO(); -// settleParentStatusLAVO.setParentTitle("绔嬫"); -// settleParentStatusLAVO.setChildTitle("宸茬珛妗�"); -// settleParentStatusLAVO.setStatus(Constants.ZERO); -// Optional<SettleClaimsLog> optionalSettleClaimsLALog = settleClaimsLogList.stream() -// .filter(i->Constants.equalsInteger(i.getParentStatus(),Constants.TWO)).findFirst(); -// if(optionalSettleClaimsLALog.isPresent()){ -// settleParentStatusLAVO.setOptDate(optionalSettleClaimsBALog.get().getCreateDate()); -// } -// settleParentStatusVOList.add(settleParentStatusBAVO); -// -// SettleParentStatusVO settleParentStatusSLVO = new SettleParentStatusVO(); -// settleParentStatusSLVO.setParentTitle("鍙楃悊"); -// settleParentStatusSLVO.setChildTitle("鍟嗚鎷掔粷"); -// settleParentStatusSLVO.setStatus(Constants.TWO); -// Optional<SettleClaimsLog> optionalSettleClaimsSLLog = settleClaimsLogList.stream() -// .filter(i->Constants.equalsInteger(i.getParentStatus(),Constants.THREE)).findFirst(); -// if(optionalSettleClaimsSLLog.isPresent()){ -// settleParentStatusSLVO.setOptDate(optionalSettleClaimsSLLog.get().getCreateDate()); -// } -// settleParentStatusVOList.add(settleParentStatusSLVO); -// -// return settleParentStatusVOList; -// } -// -// if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN.getKey())){ -// List<SettleClaimsLog> settleClaimsLogs = settleClaimsLogList.stream() -// .filter(i->i.getParentStatus()<Constants.SettleClaimsStatus.RETURN.getParentKey()).collect(Collectors.toList()); -// -// for (int i = 1; i <= 5; i++) { -// SettleParentStatusVO s = new SettleParentStatusVO(); -// Constants.SettleClaimsLogParentStatus parentStatus = Constants.SettleClaimsLogParentStatus.getAll(i); -// s.setParentTitle(parentStatus.getName()); -// s.set(parentStatus.getInfo()); -// s.setStatus(Constants.ZERO); -// -// } -// SettleParentStatusVO settleParentStatusCHVO = new SettleParentStatusVO(); -// settleParentStatusCHVO.setParentTitle("宸叉挙妗�"); -// settleParentStatusCHVO.setChildTitle("浼佷笟涓诲姩鎾ゆ"); -// settleParentStatusCHVO.setStatus(Constants.TWO); -// Optional<SettleClaimsLog> optionalSettleClaimsSLLog = settleClaimsLogList.stream() -// .filter(i->Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsLogType.RETURN_SETTLE.getKey())).findFirst(); -// if(optionalSettleClaimsSLLog.isPresent()){ -// settleParentStatusCHVO.setOptDate(optionalSettleClaimsSLLog.get().getCreateDate()); -// } -// settleParentStatusVOList.add(settleParentStatusCHVO); -// -// -// return settleParentStatusVOList; -// -// } -// -// -// return settleParentStatusVOList; -// -// -// } + + public List<SettleParentStatusVO> getParentStatus(SettleClaims settleClaims){ + List<SettleParentStatusVO> settleParentStatusVOList = new ArrayList<>(); + List<SettleClaimsLog> settleClaimsLogList = settleClaimsLogMapper + .selectList(new QueryWrapper<SettleClaimsLog>().lambda().eq(SettleClaimsLog::getObjId,settleClaims.getId()).orderByDesc(SettleClaimsLog::getCreateDate)); + //绔嬫閫�鍥炵姸鎬佹暟鎹� + if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.FINISH_ACCEPTANCE.getKey())){ + SettleParentStatusVO settleParentStatusVO = new SettleParentStatusVO(); + settleParentStatusVO.setParentTitle("鎶ユ"); + settleParentStatusVO.setStatus(Constants.ONE); + settleParentStatusVO.setChildTitle(Constants.SettleClaimsStatus.FINISH_ACCEPTANCE.getName()); + Optional<SettleClaimsLog> optionalSettleClaimsLog = settleClaimsLogList.stream() + .filter(i->Constants.equalsInteger(i.getObjType(),Constants.SettleClaimsLogType.PLATFORM_RETURN.getKey())).findFirst(); + if(optionalSettleClaimsLog.isPresent()){ + settleParentStatusVO.setOptDate(optionalSettleClaimsLog.get().getCreateDate()); + } + settleParentStatusVOList.add(settleParentStatusVO); + return settleParentStatusVOList; + } + //鏆傚瓨鐘舵�� 鏃犱富娴佺▼鏁版嵁 + if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey())){ + return settleParentStatusVOList; + } + //鍟嗚瀹℃壒涓嶉�氳繃 + if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.WAIT_DISCUSS_REJECT.getKey())){ + SettleParentStatusVO settleParentStatusBAVO = new SettleParentStatusVO(); + settleParentStatusBAVO.setParentTitle("鎶ユ"); + settleParentStatusBAVO.setChildTitle("宸叉姤妗�"); + settleParentStatusBAVO.setStatus(Constants.ZERO); + Optional<SettleClaimsLog> optionalSettleClaimsBALog = settleClaimsLogList.stream() + .filter(i->Constants.equalsInteger(i.getParentStatus(),Constants.ONE)).findFirst(); + if(optionalSettleClaimsBALog.isPresent()){ + settleParentStatusBAVO.setOptDate(optionalSettleClaimsBALog.get().getCreateDate()); + } + settleParentStatusVOList.add(settleParentStatusBAVO); + + SettleParentStatusVO settleParentStatusLAVO = new SettleParentStatusVO(); + settleParentStatusLAVO.setParentTitle("绔嬫"); + settleParentStatusLAVO.setChildTitle("宸茬珛妗�"); + settleParentStatusLAVO.setStatus(Constants.ZERO); + Optional<SettleClaimsLog> optionalSettleClaimsLALog = settleClaimsLogList.stream() + .filter(i->Constants.equalsInteger(i.getParentStatus(),Constants.TWO)).findFirst(); + if(optionalSettleClaimsLALog.isPresent()){ + settleParentStatusLAVO.setOptDate(optionalSettleClaimsBALog.get().getCreateDate()); + } + settleParentStatusVOList.add(settleParentStatusBAVO); + + SettleParentStatusVO settleParentStatusSLVO = new SettleParentStatusVO(); + settleParentStatusSLVO.setParentTitle("鍙楃悊"); + settleParentStatusSLVO.setChildTitle("鍟嗚鎷掔粷"); + settleParentStatusSLVO.setStatus(Constants.THREE); + Optional<SettleClaimsLog> optionalSettleClaimsSLLog = settleClaimsLogList.stream() + .filter(i->Constants.equalsInteger(i.getParentStatus(),Constants.THREE)).findFirst(); + if(optionalSettleClaimsSLLog.isPresent()){ + settleParentStatusSLVO.setOptDate(optionalSettleClaimsSLLog.get().getCreateDate()); + } + settleParentStatusVOList.add(settleParentStatusSLVO); + + return settleParentStatusVOList; + } + + //涓诲姩鎾ら攢 + if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN.getKey())){ + List<SettleClaimsLog> settleClaimsLogs = settleClaimsLogList.stream() + .filter(i->i.getParentStatus()<Constants.SettleClaimsStatus.RETURN.getParentKey()).collect(Collectors.toList()); + //鑾峰彇褰撳墠鏃ュ織鏈�澶х殑鐖剁姸鎬� + Optional<Integer> optionalInteger = settleClaimsLogs.stream().map(i->i.getParentStatus()).max(Comparator.comparingInt(o -> o)); + if(optionalInteger.isPresent()){ + for (int i = 1; i <= 5; i++) { + SettleParentStatusVO s = new SettleParentStatusVO(); + Constants.SettleClaimsLogParentStatus parentStatus = Constants.SettleClaimsLogParentStatus.getAll(i); + s.setParentTitle(parentStatus.getName()); + s.setChildTitle(parentStatus.getInfo()); + s.setStatus(Constants.ZERO); + //濡傛灉鏄瓑浜庣埗鐘舵�� 鍒欏幓鏌ヨ瀹為檯鐨勪笟鍔$姸鎬� + if(Constants.equalsInteger(i,optionalInteger.get())){ + Optional<SettleClaimsLog> settleClaimsLogOptional = settleClaimsLogList.stream() + .filter(j->Constants.equalsInteger(j.getParentStatus(),optionalInteger.get())).findFirst(); + if(settleClaimsLogOptional.isPresent()){ + s.setChildTitle(Constants.SettleClaimsLogType.getName(settleClaimsLogOptional.get().getObjType())); + } + } + settleParentStatusVOList.add(s); + } + } + //娣诲姞鎾ゆ鏁版嵁 + SettleParentStatusVO settleParentStatusCHVO = new SettleParentStatusVO(); + settleParentStatusCHVO.setParentTitle("宸叉挙妗�"); + settleParentStatusCHVO.setChildTitle("浼佷笟涓诲姩鎾ゆ"); + settleParentStatusCHVO.setStatus(Constants.THREE); + Optional<SettleClaimsLog> optionalSettleClaimsSLLog = settleClaimsLogList.stream() + .filter(i->Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsLogType.RETURN_SETTLE.getKey())).findFirst(); + if(optionalSettleClaimsSLLog.isPresent()){ + settleParentStatusCHVO.setOptDate(optionalSettleClaimsSLLog.get().getCreateDate()); + } + settleParentStatusVOList.add(settleParentStatusCHVO); + return settleParentStatusVOList; + } + + + List<SettleClaimsLog> settleClaimsLogs = settleClaimsLogList.stream() + .filter(i->i.getParentStatus()<Constants.SettleClaimsStatus.RETURN.getParentKey()).collect(Collectors.toList()); + Optional<Integer> optionalInteger = settleClaimsLogs.stream().map(i->i.getParentStatus()).max(Comparator.comparingInt(o -> o)); + if(optionalInteger.isPresent()){ + for (int i = 1; i <= 6; i++) { + SettleParentStatusVO s = new SettleParentStatusVO(); + Constants.SettleClaimsLogParentStatus parentStatus = Constants.SettleClaimsLogParentStatus.getAll(i); + s.setParentTitle(parentStatus.getName()); + if(optionalInteger.get()>i){ + //濡傛灉鏈�澶х殑鐖朵笟鍔$姸鎬� 澶т簬 榛樿鐨�6绫绘暟鎹� 鍒欑洿鎺ユ樉绀洪粯璁ら厤缃� + s.setChildTitle(parentStatus.getInfo()); + s.setStatus(Constants.ZERO); + }else if(optionalInteger.get()<i){ + //濡傛灉鏈�澶х殑鐖朵笟鍔$姸鎬� 灏忎簬 榛樿鐨�6绫绘暟鎹� 鍒欑洿鎺ユ樉绀洪粯璁ゆ湭澶勭悊閰嶇疆 + s.setChildTitle(parentStatus.getWaitInfo()); + s.setStatus(Constants.TWO); + }else{ + //濡傛灉鏄瓑浜庣埗鐘舵�� 鍒欏幓鏌ヨ瀹為檯鐨勪笟鍔$姸鎬� + if(Constants.equalsInteger(i,optionalInteger.get())){ + Optional<SettleClaimsLog> settleClaimsLogOptional = settleClaimsLogList.stream() + .filter(j->Constants.equalsInteger(j.getParentStatus(),optionalInteger.get())).findFirst(); + if(settleClaimsLogOptional.isPresent()){ + s.setChildTitle(Constants.SettleClaimsLogType.getName(settleClaimsLogOptional.get().getObjType())); + } + } + s.setStatus(Constants.ONE); + } + settleParentStatusVOList.add(s); + } + } + return settleParentStatusVOList; + + + } -- Gitblit v1.9.3