k94314517
2025-07-04 50fb58286ed3b718c39a97e0987ee7561a295651
server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
@@ -406,20 +406,22 @@
        settleClaims.setOrigin(Constants.ONE);
        if(Objects.isNull(settleClaims)
                || Objects.isNull(settleClaims.getExtData())
                || Objects.isNull(settleClaims.getExtData().getBxName())
                || Objects.isNull(settleClaims.getExtData().getMemberName())
                || Objects.isNull(settleClaims.getExtData().getMemberIdcardType())
                || Objects.isNull(settleClaims.getExtData().getMemberIdcard())){
                || Objects.isNull(settleClaims.getExtData().getMemberIdcard())
                || Objects.isNull(settleClaims.getStatus())
        ){
            throw new BusinessException(ResponseStatus.BAD_REQUEST);
        }
        if(!Constants.equalsObject(settleClaims.getStatus(),Constants.ZERO)
                &&(  Objects.isNull(settleClaims.getExtData().getBxName())
                || Objects.isNull(settleClaims.getExtData().getReportDate())
                || Objects.isNull(settleClaims.getExtData().getBxCode())
                || Objects.isNull(settleClaims.getExtData().getBxEnddate())
                || Objects.isNull(settleClaims.getExtData().getBxOrg())
                || Objects.isNull(settleClaims.getInformantPhone()) )){
            throw new BusinessException(ResponseStatus.BAD_REQUEST);
        }
//        if(!Constants.equalsObject(settleClaims.getStatus(),Constants.ZERO)
//                &&( Objects.isNull(settleClaims.getExtData().getReportDate())
//                || Objects.isNull(settleClaims.getExtData().getBxCode())
//                || Objects.isNull(settleClaims.getExtData().getBxEnddate())
//                || Objects.isNull(settleClaims.getExtData().getBxOrg())
//                || Objects.isNull(settleClaims.getInformantPhone()) )){
//            throw new BusinessException(ResponseStatus.BAD_REQUEST);
//        }
        if(!Constants.equalsInteger(loginUserInfo.getType(),Constants.ZERO)){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非平台管理员无法进行该操作");
        }
@@ -1146,7 +1148,7 @@
    public void saveSettleClaimsLog(SettleClaims settleClaims, Constants.SettleClaimsLogType settleClaimsLogType, String content,Constants.SettleClaimsStatus settleClaimsStatus){
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); 
        SettleClaimsLog settleClaimsLog = new SettleClaimsLog();
        settleClaimsLog.setCreateDate(new Date());
        settleClaimsLog.setCreateDate(Objects.isNull(settleClaims.getEditDate())?new Date():settleClaims.getEditDate());
        settleClaimsLog.setCreator(loginUserInfo.getId());
        settleClaimsLog.setIsdeleted(Constants.ZERO);
        settleClaimsLog.setSettleClainmsId(settleClaims.getId());
@@ -1311,7 +1313,7 @@
        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().getExtData().getMemberName()),SettleClaimsExt::getMemberName, pageWrap.getModel().getExtData().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());
@@ -1364,9 +1366,9 @@
                    ||Objects.isNull(settleClaimsDTO.getMedicalInsurance())
                    ||StringUtils.isBlank(settleClaimsDTO.getInformantName())
                    ||StringUtils.isBlank(settleClaimsDTO.getInformantPhone())
                    ||StringUtils.isBlank(settleClaimsDTO.getReceiveUserName())
                    ||StringUtils.isBlank(settleClaimsDTO.getReceiveBank())
                    ||StringUtils.isBlank(settleClaimsDTO.getReceiveAccount())
//                    ||StringUtils.isBlank(settleClaimsDTO.getReceiveUserName())
//                    ||StringUtils.isBlank(settleClaimsDTO.getReceiveBank())
//                    ||StringUtils.isBlank(settleClaimsDTO.getReceiveAccount())
            ){
                throw new BusinessException(ResponseStatus.BAD_REQUEST);
            }
@@ -1388,6 +1390,7 @@
        }
        SettleClaims settleClaims = new SettleClaims();
        BeanUtils.copyProperties(settleClaimsDTO,settleClaims);
        settleClaims.setEditDate(new Date());
        settleClaims.setReportNumStatus(Constants.ZERO);
        settleClaims.setCompanyId(loginUserInfo.getCompanyId());
        settleClaims.setOrigin(Constants.ZERO);
@@ -1409,7 +1412,9 @@
            if(Objects.isNull(model)){
                throw new BusinessException(ResponseStatus.DATA_EMPTY);
            }
            if(!(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey())||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey()))){
            if(!(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey())
                    ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey())
                    ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.FINISH_ACCEPTANCE.getKey()))){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"数据状态已流转,无法进行修改");
            }
            settleClaims.setEditDate(new Date());
@@ -1560,7 +1565,7 @@
                    .ne(Objects.nonNull(settleClaims.getId()),SettleClaims::getId,settleClaims.getId())
                    .apply(" HAPPEN_TIME > DATE_SUB(now(), INTERVAL 365 DAY)  ")
            );
            if(cxcs>Integer.valueOf(riskConfigVO.getRiskTimesReportTimes())){
            if(cxcs>=Integer.valueOf(riskConfigVO.getRiskTimesReportTimes())){
                Map<String,String> map = new HashMap<>();
                map.put("title","疑似多次出险");
                map.put("info","出险人一年内已出险"+cxcs+"次");
@@ -1576,10 +1581,10 @@
            Long cxcs = settleClaimsMapper.selectCount(new QueryWrapper<SettleClaims>().lambda()
                    .eq(SettleClaims::getMemberId,settleClaimsDTO.getMemberId())
                    .ne(Objects.nonNull(settleClaims.getId()),SettleClaims::getId,settleClaims.getId())
                    .apply(riskConfigVO.getRiskRepeatReportTimeUnit().equals("1")," HAPPEN_TIME > DATE_SUB(now(), INTERVAL "+riskConfigVO.getRiskRepeatReportTime()+" HOUR)  ")
                    .apply(riskConfigVO.getRiskRepeatReportTimeUnit().equals("2")," HAPPEN_TIME > DATE_SUB(now(), INTERVAL "+riskConfigVO.getRiskRepeatReportTime()+" DAY)  ")
                    .apply(riskConfigVO.getRiskRepeatReportTimeUnit().equals("1")," CREATE_DATE > DATE_SUB(now(), INTERVAL "+riskConfigVO.getRiskRepeatReportTime()+" HOUR)  ")
                    .apply(riskConfigVO.getRiskRepeatReportTimeUnit().equals("2")," CREATE_DATE > DATE_SUB(now(), INTERVAL "+riskConfigVO.getRiskRepeatReportTime()+" DAY)  ")
            );
            if(cxcs >= Constants.TWO){
            if(cxcs >= Constants.ONE){
                Map<String,String> map = new HashMap<>();
                map.put("title","疑似重复报案");
                map.put("info","该出险人在"+riskConfigVO.getRiskRepeatReportTime()+(riskConfigVO.getRiskRepeatReportTimeUnit().equals("1")?"小时":"天")+"内已报案"+cxcs+"次");
@@ -1863,6 +1868,7 @@
        if(Constants.equalsInteger(settleClaims.getWaitSupplement(),Constants.ONE)){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"待企业补充文件,请等待企业补充文件");
        }
        settleClaims.setEditDate(new Date());
        //存储日志
        this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT_DESCRIBE,dto.getDescribe(),null);
        settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
@@ -1937,6 +1943,7 @@
                multifileJoinMapper.insert(multifile);
            }
        }
        settleClaims.setEditDate(new Date());
        //存储日志
        this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT,null,null);
        //删除企业的代办通知------
@@ -1969,13 +1976,12 @@
        if(!Constants.equalsInteger(settleClaims.getCompanyId(),loginUserInfo.getCompanyId())){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非您企业的数据,您无法进行该操作");
        }
//        if(!Constants.equalsInteger(Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey(),settleClaims.getStatus())){
//            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,业务状态已流转~");
//        }
        settleClaims.setEditDate(new Date());
        //存储日志
        this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.RETURN_SETTLE,null,Constants.SettleClaimsStatus.RETURN);
        settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getStatus,Constants.SettleClaimsStatus.RETURN.getKey()));
                .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,settleClaims.getEditDate())
                .set(SettleClaims::getStatus,Constants.SettleClaimsStatus.RETURN.getKey()));
        deletedNoticeBiz(null,settleClaims);//删除通知
        //给企业发通知,已结案-------------
        sendNoticeBiz(Constants.ZERO,settleClaims ,Constants.NoticeType.FOURTEEN);
@@ -2005,11 +2011,12 @@
        ){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,业务状态已流转~");
        }
        settleClaims.setEditDate(new Date());
        //存储日志
        this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.UPD_CASE_TYPE,Constants.SettleClaimsLogType.UPD_CASE_TYPE.getInfo(),null);
        settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                .eq(SettleClaims::getId,dto.getId())
                .set(SettleClaims::getEditDate,DateUtil.getCurrDateTime())
                .set(SettleClaims::getEditDate,settleClaims.getEditDate())
                .set(SettleClaims::getEditor,loginUserInfo.getId())
                .set(SettleClaims::getCaseType,dto.getCaseType()));
    }
@@ -2041,10 +2048,11 @@
        Constants.SettleClaimsStatus settleClaimsStatus =
                Constants.equalsInteger(dto.getRegisterStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())?Constants.SettleClaimsStatus.CONFIRM_INFORMATION:Constants.SettleClaimsStatus.FINISH_ACCEPTANCE;
        //存储日志
        settleClaims.setEditDate(new Date());
        this.saveSettleClaimsLog(settleClaims, Constants.equalsInteger(dto.getRegisterStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())?Constants.SettleClaimsLogType.PLATFORM_REGISTER:Constants.SettleClaimsLogType.PLATFORM_RETURN,dto.getDescribe(),settleClaimsStatus);
        settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                .eq(SettleClaims::getId,dto.getId())
                .set(SettleClaims::getEditDate, DateUtil.getCurrDateTime())
                .set(SettleClaims::getEditDate, settleClaims.getEditDate())
                .set(SettleClaims::getEditor,loginUserInfo.getId())
                .set(SettleClaims::getStatus,settleClaimsStatus.getKey()));
@@ -2108,12 +2116,14 @@
//        if(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())&&StringUtils.isNotBlank(model.getReportNum())){
//            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"已修改报案号,无法再次修改");
//        }
        settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                .eq(SettleClaims::getId,param.getId()).set(SettleClaims::getEditDate,
                        DateUtil.getCurrDateTime()).set(SettleClaims::getReportNum,param.getReportNum()));
        SettleClaims update = new SettleClaims();
        update.setEditDate(new Date());
        settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                .eq(SettleClaims::getId,param.getId()).set(SettleClaims::getEditDate,
                        update.getEditDate()).set(SettleClaims::getReportNum,param.getReportNum()));
        update.setEditor(user.getId());
        update.setReportNumStatus(model.getReportNumStatus()+Constants.ONE);
        update.setId(model.getId());
@@ -2127,6 +2137,7 @@
        String info =applyLogType.getInfo();
        info = info.replace("${param}", update.getReportNum());
        SettleClaimsLog log = new SettleClaimsLog(update,applyLogType.getName(), info,update.getId(),applyLogType.getKey(), JSONObject.toJSONString(model), JSONObject.toJSONString(update));
        log.setCreateDate(update.getEditDate());
        settleClaimsLogMapper.insert(log);
        return  1;
@@ -2170,6 +2181,7 @@
        String info =applyLogType.getInfo();
        info = info.replace("${param}", param.getDescribe());
        SettleClaimsLog log = new SettleClaimsLog(update,applyLogType.getName(), info,update.getId(),applyLogType.getKey(), JSONObject.toJSONString(model), JSONObject.toJSONString(update));
        log.setCreateDate(update.getEditDate());
        settleClaimsLogMapper.insert(log);
        return  1;
@@ -2203,10 +2215,11 @@
        if(!Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey(),settleClaims.getStatus())){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,业务状态已流转~");
        }
        settleClaims.setEditDate(new Date());
        if(Constants.equalsInteger(dto.getStatus(),Constants.ZERO) || Constants.equalsInteger(dto.getStatus(),Constants.THREE)){
            //受理
            settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                    .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getEditor,loginUserInfo.getId())
                    .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,settleClaims.getEditDate()).set(SettleClaims::getEditor,loginUserInfo.getId())
                    .set(SettleClaims::getStatus,Constants.SettleClaimsStatus.ACCEPTANCE.getKey()));
            //存储日志
            this.saveSettleClaimsLog(settleClaims,
@@ -2216,7 +2229,7 @@
        }else if(Constants.equalsInteger(dto.getStatus(),Constants.ONE)){
            //拒绝受理
            settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                    .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getEditor,loginUserInfo.getId())
                    .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,settleClaims.getEditDate()).set(SettleClaims::getEditor,loginUserInfo.getId())
                    .set(SettleClaims::getStatus,Constants.SettleClaimsStatus.REJECT_DEAL.getKey()));
            //存储日志
            this.saveSettleClaimsLog(settleClaims,
@@ -2225,7 +2238,7 @@
        }else if(Constants.equalsInteger(dto.getStatus(),Constants.TWO)){
            //受理商议审批
            settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                    .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getEditor,loginUserInfo.getId())
                    .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,settleClaims.getEditDate()).set(SettleClaims::getEditor,loginUserInfo.getId())
                    .set(SettleClaims::getStatus,Constants.SettleClaimsStatus.WAIT_DISCUSS_AUDIT.getKey()));
            //存储日志
            this.saveSettleClaimsLog(settleClaims,
@@ -2337,7 +2350,7 @@
        }
        List<CompensationVO> modelList = JSONArray.parseArray(dto.getCompensationJson(),CompensationVO.class);
        settleClaims.setEditDate(new Date());
        SettleClaims update = new SettleClaims();
        update.setEditDate(new Date());
        update.setEditor(loginUserInfo.getId());
@@ -2394,10 +2407,11 @@
        //存储日志
        Constants.SettleClaimsLogType settleClaimsLogType = Constants.equalsInteger(dto.getStatus(),Constants.ZERO)
                ?Constants.SettleClaimsLogType.PLATFORM_DISCUSS_PASS:Constants.SettleClaimsLogType.PLATFORM_DISCUSS_REFUSE;
        settleClaims.setEditDate(new Date());
        this.saveSettleClaimsLog(settleClaims, settleClaimsLogType
                ,settleClaimsLogType.getInfo().replace("${param}",dto.getDescribe()),settleClaimsStatus);
        settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
                .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate, DateUtil.getCurrDateTime())
                .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate, settleClaims.getEditDate())
                        .set(SettleClaims::getEditor,loginUserInfo.getId())
                .set(SettleClaims::getStatus,settleClaimsStatus.getKey()));
        deletedNoticeBiz(null,settleClaims);//删除通知
@@ -2438,9 +2452,9 @@
        List<CompensationVO> modelList = JSONArray.parseArray(dto.getCompensationJson(),CompensationVO.class);
        settleClaims.setEditDate(new Date());
        SettleClaims update = new SettleClaims();
        update.setEditDate(new Date());
        update.setEditDate(settleClaims.getEditDate());
        update.setEditor(loginUserInfo.getId());
        update.setHpAccountContent(dto.getCompensationJson());
        update.setHpAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ZERO)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add));
@@ -2483,9 +2497,9 @@
        }
        List<CompensationVO> modelList = JSONArray.parseArray(dto.getCompensationJson(),CompensationVO.class);
        settleClaims.setEditDate(new Date());
        SettleClaims update = new SettleClaims();
        update.setEditDate(new Date());
        update.setEditDate(settleClaims.getEditDate());
        update.setEditor(loginUserInfo.getId());
        if(Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_FEE.getKey(),settleClaims.getStatus())){
            update.setFeeUpdate(Constants.ONE);
@@ -2542,8 +2556,9 @@
        if(!Constants.equalsInteger(settleClaims.getCompanyId(),loginUserInfo.getCompanyId())){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非您企业的数据,您无法进行该操作");
        }
        settleClaims.setEditDate(new Date());
        SettleClaims update = new SettleClaims();
        update.setEditDate(new Date());
        update.setEditDate(settleClaims.getEditDate());
        update.setEditor(loginUserInfo.getId());
        update.setStatus(Constants.SettleClaimsStatus.CONFIRM_FEE.getKey());
        update.setId(settleClaims.getId());
@@ -2579,8 +2594,9 @@
        if(!Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_FEE.getKey(),settleClaims.getStatus())){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,业务状态已流转~");
        }
        settleClaims.setEditDate(new Date());
        SettleClaims update = new SettleClaims();
        update.setEditDate(new Date());
        update.setEditDate(settleClaims.getEditDate());
        update.setEditor(loginUserInfo.getId());
        update.setStatus(Constants.SettleClaimsStatus.CLOSE_CASE.getKey());
        update.setCheckDate(new Date());
@@ -2801,15 +2817,18 @@
        }
        if(!(Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey(),settleClaims.getStatus())
        || Constants.equalsInteger(Constants.SettleClaimsStatus.ACCEPTANCE.getKey(),settleClaims.getStatus())
        //        || Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_DEAL.getKey(),settleClaims.getStatus())
                || Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_FEE.getKey(),settleClaims.getStatus())
                || Constants.equalsInteger(Constants.SettleClaimsStatus.COMPENSATION.getKey(),settleClaims.getStatus())
                || Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey(),settleClaims.getStatus())
        )){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,业务状态已流转~");
        }
        if(!Constants.equalsInteger(settleClaims.getHurtType(),Constants.TWO)){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"已修改过,无法再次修改");
        }
        settleClaims.setEditDate(new Date());
        SettleClaims update = new SettleClaims();
        update.setEditDate(new Date());
        update.setEditDate(settleClaims.getEditDate());
        update.setEditor(loginUserInfo.getId());
        update.setHurtType(dto.getHurtType());
        update.setId(settleClaims.getId());
@@ -2850,9 +2869,9 @@
        ){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,业务状态已流转~");
        }
        settleClaims.setEditDate(new Date());
        SettleClaims update = new SettleClaims();
        update.setEditDate(new Date());
        update.setEditDate(settleClaims.getEditDate());
        update.setEditor(loginUserInfo.getId());
        update.setReceiveBank(dto.getReceiveBank());
        update.setReceiveAccount(dto.getReceiveAccount());
@@ -2975,10 +2994,13 @@
            settleClaimsDataVO.setSettleClaimsTotal(settleClaimsList.size());
            
            //平均理赔处理时长天数 总计处理时长(单位小时)除以 记录数  换算到天
            settleClaimsDataVO.setAverageSettleClaimsTime(
                    new BigDecimal(closeCaseList.stream().map(i->i.getTotalHours()).reduce(Constants.ZERO,Integer::sum).toString())
                            .divide(new BigDecimal((closeCaseList.size()*24)+"") ,2,BigDecimal.ROUND_HALF_UP)
            );
            if(CollectionUtils.isNotEmpty(closeCaseList)){
                settleClaimsDataVO.setAverageSettleClaimsTime(
                        new BigDecimal(closeCaseList.stream().map(i->i.getTotalHours()).reduce(Constants.ZERO,Integer::sum).toString())
                                .divide(new BigDecimal((closeCaseList.size()*24)+"") ,2,BigDecimal.ROUND_HALF_UP)
                );
            }
            String monthDate = DateUtil.getFomartDate(new Date(),"yyyy-MM");
            Calendar calendar = Calendar.getInstance();