jiangping
2025-05-29 2b0a139f88adbbb67bc6feed69dc1ee9ff158cb9
server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
@@ -67,6 +67,8 @@
    @Autowired
    private SettleClaimsMapper settleClaimsMapper;
    @Autowired
    private MemberMapper memberMapper;
    @Autowired
    private SettleClaimsExtMapper settleClaimsExtMapper;
    @Autowired
@@ -1347,10 +1349,17 @@
                throw new BusinessException(ResponseStatus.BAD_REQUEST);
            }
        }
        Member member =memberMapper.selectById(settleClaimsDTO.getMemberId());
        if(member == null){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,出险人信息不正确!");
        }
        SettleClaims settleClaims = new SettleClaims();
        BeanUtils.copyProperties(settleClaimsDTO,settleClaims);
        settleClaims.setReportNumStatus(Constants.ZERO);
        settleClaims.setCompanyId(loginUserInfo.getCompanyId());
        settleClaims.setOrigin(Constants.ZERO);
        settleClaims.setMemberName(member.getName());
        settleClaims.setCreateDate(new Date());
        if(Constants.equalsInteger(settleClaimsDTO.getSaveType(),Constants.ONE)&&StringUtils.isBlank(settleClaims.getCode())){
            Long nextCode = settleClaimsMapper.selectCount(new QueryWrapper<SettleClaims>().lambda().ne(SettleClaims::getStatus,Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey())
                    .eq(SettleClaims::getOrigin,Constants.ZERO) .like(SettleClaims::getCreateDate,DateUtil.getDate(new Date(),"yyyy-MM-dd"))
@@ -1370,9 +1379,7 @@
            }
            settleClaimsMapper.updateById(settleClaims);
        }else{
            settleClaims.setCreateDate(new Date());
            settleClaims.setIsdeleted(Constants.ZERO);
            settleClaims.setCompanyId(loginUserInfo.getCompanyId());
            settleClaims.setStatus(Constants.equalsInteger(settleClaimsDTO.getSaveType(),Constants.ONE)?
                    Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey():Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey());
            if(Constants.equalsInteger(settleClaimsDTO.getSaveType(),Constants.ONE)){
@@ -1390,7 +1397,21 @@
                this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.PLATFORM_REGISTER,null,Constants.SettleClaimsStatus.CONFIRM_INFORMATION);
            }
        }
        if( Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey()) ||
                Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())){
            //-如果是待立案或者已立案待审核,发待办通知-------------
            Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.SETTLE_CLAIMS;
            noticesMapper.delete(new QueryWrapper<Notices>().lambda().eq(Notices::getObjType,noticeObjectType.getKey()).eq(Notices::getObjId,settleClaims.getId()));
            Notices notices = new Notices(noticeObjectType,Constants.ZERO,settleClaims.getId(),getNoticeConttent(settleClaims),
                    settleClaims.getCompanyId(),
                    Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey())?Constants.NoticeType.ZERO:Constants.NoticeType.TWO);
            noticesMapper.insert(notices);
        }
        return settleClaims.getId();
    }
    private String getNoticeConttent(SettleClaims settleClaims) {
        return  "报案号:"+StringUtils.defaultString(settleClaims.getCode(),"")+"  出险人:"+StringUtils.defaultString(settleClaims.getMemberName(),"");
    }
    public void saveRisk(SettleClaims settleClaims, SettleClaimsDTO settleClaimsDTO, SystemDictDataServiceImpl systemDictDataService){
@@ -2131,6 +2152,17 @@
                    Constants.SettleClaimsLogType.PLATFORM_WAIT_DISCUSS,
                    dto.getDescribe(),Constants.SettleClaimsStatus.WAIT_DISCUSS_AUDIT);
        }
        if( Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey()) ||
                Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.WAIT_DISCUSS_AUDIT.getKey())){
            //-如果是待立案或者已立案待审核,发待办通知-------------
            Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.SETTLE_CLAIMS;
            noticesMapper.delete(new QueryWrapper<Notices>().lambda().eq(Notices::getObjType,noticeObjectType.getKey()).eq(Notices::getObjId,settleClaims.getId()));
            Notices notices = new Notices(noticeObjectType,Constants.ZERO,settleClaims.getId(),getNoticeConttent(settleClaims),
                    settleClaims.getCompanyId(),
                    Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey())?Constants.NoticeType.ZERO:Constants.NoticeType.TWO);
            noticesMapper.insert(notices);
        }
    }