| | |
| | | package com.doumee.service.business.impl; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.extension.api.R; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.NoticesMapper; |
| | | import com.doumee.dao.business.SettleClaimsLogMapper; |
| | | import com.doumee.dao.business.SettleClaimsMapper; |
| | | import com.doumee.dao.business.*; |
| | | import com.doumee.dao.business.dto.SCSupplementDTO; |
| | | import com.doumee.dao.business.dto.SettleClaimsDTO; |
| | | import com.doumee.dao.business.join.MultifileJoinMapper; |
| | | import com.doumee.dao.business.join.SettleClaimsJoinMapper; |
| | | import com.doumee.dao.business.join.SettleClaimsLogJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.business.vo.RiskConfigVO; |
| | | import com.doumee.dao.system.model.SystemUser; |
| | | import com.doumee.service.business.SettleClaimsLogService; |
| | | import com.doumee.service.business.SettleClaimsService; |
| | |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.doumee.service.system.impl.SystemDictDataServiceImpl; |
| | | import com.github.xiaoymin.knife4j.core.util.CollectionUtils; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; |
| | | import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.shiro.SecurityUtils; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | import java.io.FileInputStream; |
| | | import java.io.IOException; |
| | | import java.net.URLEncoder; |
| | | import java.nio.charset.Charset; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | |
| | | @Autowired |
| | | private NoticesMapper noticesMapper; |
| | | |
| | | @Autowired |
| | | private InsuranceApplyMapper insuranceApplyMapper; |
| | | |
| | | @Autowired |
| | | private SolutionsMapper solutionsMapper; |
| | | |
| | | @Autowired |
| | | private SolutionsBaseMapper solutionsBaseMapper; |
| | | |
| | | @Autowired |
| | | private ApplyDetailMapper applyDetailMapper; |
| | | |
| | | /** |
| | | * 删除附件 |
| | | * @return |
| | |
| | | update.setId(model.getId()); |
| | | settleClaimsMapper.updateById(update); |
| | | |
| | | // Constants.SettleClaimsLogType applyLogType = Constants.SettleClaimsLogType.PLATFORM_REMARK; |
| | | // String info =applyLogType.getInfo(); |
| | | // info = info.replace("${param}", param.getCheckInfo()); |
| | | // SettleClaimsLog log = new SettleClaimsLog(update,applyLogType.getName(), info,update.getId(),applyLogType.getKey(), JSONObject.toJSONString(model), JSONObject.toJSONString(update)); |
| | | // settleClaimsLogMapper.insert(log); |
| | | Constants.SettleClaimsLogType applyLogType = Constants.SettleClaimsLogType.PLATFORM_REMARK; |
| | | String info =applyLogType.getInfo(); |
| | | info = info.replace("${param}", param.getCheckInfo()); |
| | | SettleClaimsLog log = new SettleClaimsLog(update,applyLogType.getName(), info,update.getId(),applyLogType.getKey(), JSONObject.toJSONString(model), JSONObject.toJSONString(update)); |
| | | settleClaimsLogMapper.insert(log); |
| | | return 1; |
| | | |
| | | } |
| | |
| | | |
| | | List<File> fileList = new ArrayList<>(); |
| | | List<Multifile> multifileList = multifileJoinMapper.selectList(new QueryWrapper<Multifile>().lambda() |
| | | .eq(Multifile::getIsdeleted,Constants.ZERO) |
| | | .eq(Multifile::getObjId,id) |
| | | .isNotNull(Multifile::getFileurl) |
| | | .in(Multifile::getObjType, Arrays.asList(new Integer[]{ |
| | |
| | | if(fileList == null || fileList.size() == 0){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY); |
| | | } |
| | | String fileName = model.getInformantName() +"理赔资料下_"+System.currentTimeMillis()+".zip" ; |
| | | String encodeFileName = URLEncoder.encode(fileName); |
| | | String fileName = model.getInformantName() +"-理赔资料-" +System.currentTimeMillis(); |
| | | String encodeFileName =URLEncoder.encode(fileName, Charset.forName("UTF-8").toString())+".zip"; |
| | | response.setHeader("Content-Disposition","attachment;filename=" + encodeFileName); |
| | | response.setContentType("application/octet-stream"); |
| | | response.setHeader("eva-opera-type", "download"); |
| | | response.setHeader("eva-download-filename", encodeFileName); |
| | | Constants.packFilesToZip(fileList,response.getOutputStream()); |
| | | } catch (IOException e) { |
| | | } catch (Exception e) { |
| | | throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR, e); |
| | | } |
| | | } |
| | |
| | | .leftJoin(InsuranceApply.class,InsuranceApply::getId,SettleClaims::getInsuranceApplyId) |
| | | .leftJoin(Solutions.class,Solutions::getId,SettleClaims::getSolutionId); |
| | | queryWrapper.eq(DispatchUnit::getIsdeleted,Constants.ZERO); |
| | | queryWrapper.eq(SettleClaims::getIsdeleted,Constants.ZERO); |
| | | if(Constants.equalsInteger(user.getType(),Constants.ZERO)){ |
| | | //只能看权限范围内 |
| | | if(user.getCompanyIdList() == null || user.getCompanyIdList().size() == 0){ |
| | |
| | | QueryWrapper<SettleClaims> wrapper = new QueryWrapper<>(settleClaims); |
| | | return settleClaimsMapper.selectCount(wrapper); |
| | | } |
| | | |
| | | |
| | | public void saveSettleClaims(SettleClaimsDTO settleClaimsDTO){ |
| | | LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | if(!loginUserInfo.getType().equals(Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非企业员工无法进行该操作"); |
| | | } |
| | | if(Objects.isNull(settleClaimsDTO) |
| | | || Objects.isNull(settleClaimsDTO.getSaveType()) |
| | | || Objects.isNull(settleClaimsDTO.getMemberId()) |
| | | ||StringUtils.isBlank(settleClaimsDTO.getIdcardNo()) |
| | | || Objects.isNull(settleClaimsDTO.getInsuranceApplyId()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | if(Constants.equalsInteger(settleClaimsDTO.getSaveType(),Constants.ONE)){ |
| | | if(Objects.isNull(settleClaimsDTO.getSolutionId()) |
| | | ||Objects.isNull(settleClaimsDTO.getWorktypeId()) |
| | | ||Objects.isNull(settleClaimsDTO.getDuId()) |
| | | ||StringUtils.isBlank(settleClaimsDTO.getHappenTime()) |
| | | ||StringUtils.isBlank(settleClaimsDTO.getContent()) |
| | | ||Objects.isNull(settleClaimsDTO.getType()) |
| | | ||Objects.isNull(settleClaimsDTO.getInHospital()) |
| | | ||Objects.isNull(settleClaimsDTO.getHurtType()) |
| | | ||Objects.isNull(settleClaimsDTO.getMedicalInsurance()) |
| | | ||StringUtils.isBlank(settleClaimsDTO.getInformantName()) |
| | | ||StringUtils.isBlank(settleClaimsDTO.getInformantPhone()) |
| | | ||StringUtils.isBlank(settleClaimsDTO.getReceiveUserName()) |
| | | ||StringUtils.isBlank(settleClaimsDTO.getReceiveBank()) |
| | | ||StringUtils.isBlank(settleClaimsDTO.getReceiveAccount()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | } |
| | | SettleClaims settleClaims = new SettleClaims(); |
| | | BeanUtils.copyProperties(settleClaimsDTO,settleClaims); |
| | | if(Objects.nonNull(settleClaims.getId())){ |
| | | settleClaims.setEditDate(new Date()); |
| | | settleClaims.setEditor(loginUserInfo.getId()); |
| | | 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()); |
| | | settleClaims.setCreator(loginUserInfo.getId()); |
| | | settleClaims.setCheckUserId(loginUserInfo.getId()); |
| | | settleClaimsMapper.insert(settleClaims); |
| | | } |
| | | this.saveFile(settleClaims,settleClaimsDTO,loginUserInfo); |
| | | //处理风险信息 |
| | | |
| | | |
| | | } |
| | | |
| | | public void saveRisk(SettleClaims settleClaims, SettleClaimsDTO settleClaimsDTO, SystemDictDataServiceImpl systemDictDataService){ |
| | | //根据保单信息 查询出主方案 |
| | | InsuranceApply insuranceApply = insuranceApplyMapper.selectById(settleClaims.getInsuranceApplyId()); |
| | | if(Objects.isNull(insuranceApply)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到保单数据"); |
| | | } |
| | | Date happenTime = DateUtil.StringToDate(settleClaims.getHappenTime()); |
| | | if(happenTime.getTime() < insuranceApply.getStartTime().getTime() || happenTime.getTime() > insuranceApply.getEndTime().getTime()){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"事故发生事件未在保单生效范围内"); |
| | | } |
| | | Solutions solutions = solutionsMapper.selectById(insuranceApply.getSolutionId()); |
| | | if(Objects.isNull(solutions)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到子方案信息"); |
| | | } |
| | | SolutionsBase solutionsBase = solutionsBaseMapper.selectById(solutions.getParentId()); |
| | | if(Objects.isNull(solutionsBase)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到主方案信息"); |
| | | } |
| | | List<Map<String,String>> riskList = new ArrayList<>(); |
| | | //查询保单明细数据 |
| | | ApplyDetail applyDetail = applyDetailMapper.selectOne(new QueryWrapper<ApplyDetail>().lambda().eq(ApplyDetail::getApplyId,settleClaims.getInsuranceApplyId()).eq(ApplyDetail::getId,settleClaimsDTO.getApplyDetailId()).last("limit 1 ")); |
| | | //是否开启 新员工报案 0不允许 1允许 |
| | | if(Constants.equalsInteger(solutionsBase.getRiskNewUserStatus(),Constants.ONE) |
| | | && Objects.nonNull(solutionsBase.getRiskNewUserUnit()) |
| | | && Objects.nonNull(solutionsBase.getRiskNewUserTime()) |
| | | ){ |
| | | if(happenTime.getTime() > applyDetail.getEndTime().getTime()){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"事故发生时间未在人员保障日期范围内"); |
| | | } |
| | | Map<String,String> map = new HashMap<>(); |
| | | map.put("title","保单已投保未生效"); |
| | | Date startDate = applyDetail.getStartTime(); |
| | | if(Constants.equalsInteger(solutionsBase.getRiskNewUserUnit(),Constants.ONE)){ |
| | | startDate = DateUtil.afterMinutesByDate(-solutionsBase.getRiskNewUserTime()*60,startDate); |
| | | }else if(Constants.equalsInteger(solutionsBase.getRiskNewUserUnit(),Constants.TWO)){ |
| | | startDate = DateUtil.afterDayByDate(-solutionsBase.getRiskNewUserTime(),happenTime); |
| | | }else{ |
| | | if(happenTime.getTime() < applyDetail.getStartTime().getTime() || happenTime.getTime() > applyDetail.getEndTime().getTime()){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"事故发生时间未在人员保障日期范围内"); |
| | | } |
| | | } |
| | | if(happenTime.getTime() < startDate.getTime() ){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"事故发生时间未在人员保障日期范围内"); |
| | | }else{ |
| | | map.put("info","事故发生时间早于保单生效时间"+solutionsBase.getRiskNewUserUnit()+(Constants.equalsInteger(solutionsBase.getRiskNewUserUnit(),Constants.ONE)?"小时内":"天内")); |
| | | riskList.add(map); |
| | | } |
| | | }else{ |
| | | if(happenTime.getTime() < applyDetail.getStartTime().getTime() || happenTime.getTime() > applyDetail.getEndTime().getTime()){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"事故发生时间未在人员保障日期范围内"); |
| | | } |
| | | } |
| | | |
| | | //是否开启 延迟报案提醒是否开启 0不允许 1允许 |
| | | if(Constants.equalsInteger(solutionsBase.getRiskDelayStatus(),Constants.ONE)){ |
| | | Map<String,String> map = new HashMap<>(); |
| | | map.put("title","延迟报案提醒"); |
| | | //根据配置 查询 延迟报案提醒时间单位 0分钟 1小时 2天 |
| | | if(Constants.equalsInteger(solutionsBase.getRiskDelayUnit(),Constants.ZERO)){ |
| | | if(DateUtil.getBetweenMin(happenTime,new Date())>solutionsBase.getRiskDelayTime()){ |
| | | map.put("info","报案时间超过案发时间"+solutionsBase.getRiskDelayUnit()+"分钟"); |
| | | riskList.add(map); |
| | | } |
| | | }else if(Constants.equalsInteger(solutionsBase.getRiskDelayUnit(),Constants.ONE)){ |
| | | if(DateUtil.getBetweenHours(happenTime,new Date())>solutionsBase.getRiskDelayTime()){ |
| | | map.put("info","报案时间超过案发时间"+solutionsBase.getRiskDelayUnit()+"小时"); |
| | | riskList.add(map); |
| | | } |
| | | }else if(Constants.equalsInteger(solutionsBase.getRiskDelayUnit(),Constants.TWO)){ |
| | | if(DateUtil.getBetweenDay(happenTime,new Date())>solutionsBase.getRiskDelayTime()){ |
| | | map.put("info","报案时间超过案发时间"+solutionsBase.getRiskDelayUnit()+"天"); |
| | | riskList.add(map); |
| | | } |
| | | } |
| | | } |
| | | |
| | | //查询字典值配置信息 |
| | | RiskConfigVO riskConfigVO = systemDictDataService.getRiskConfig(); |
| | | //多次出险提醒 |
| | | if(StringUtils.isNotBlank(riskConfigVO.getRiskTimesOpen()) && StringUtils.equals(riskConfigVO.getRiskTimesOpen(),Constants.ONE+"") |
| | | && StringUtils.isNotBlank(riskConfigVO.getRiskTimesReportTimes())){ |
| | | Integer cxcs = settleClaimsMapper.selectCount(new QueryWrapper<SettleClaims>().lambda() |
| | | .eq(SettleClaims::getMemberId,settleClaimsDTO.getMemberId()) |
| | | .ne(Objects.nonNull(settleClaims.getId()),SettleClaims::getId,settleClaims.getId()) |
| | | .apply(" HAPPEN_TIME > DATE_SUB(now(), INTERVAL 365 DAY) ") |
| | | ); |
| | | if(cxcs>Integer.valueOf(riskConfigVO.getRiskTimesReportTimes())){ |
| | | Map<String,String> map = new HashMap<>(); |
| | | map.put("title","疑似多次出险"); |
| | | map.put("info","出险人一年内已出险"+cxcs+"次"); |
| | | riskList.add(map); |
| | | settleClaims.setRiskTimesCx(Constants.ONE); |
| | | }; |
| | | } |
| | | //疑似重复报案 |
| | | if(StringUtils.isNotBlank(riskConfigVO.getRiskRepeatReportOpen()) |
| | | && StringUtils.equals(riskConfigVO.getRiskRepeatReportOpen(),Constants.ONE+"") |
| | | && StringUtils.isNotBlank(riskConfigVO.getRiskRepeatReportTimeUnit()) |
| | | && StringUtils.isNotBlank(riskConfigVO.getRiskRepeatReportTime())){ |
| | | Integer 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) ") |
| | | ); |
| | | if(cxcs > Constants.TWO){ |
| | | Map<String,String> map = new HashMap<>(); |
| | | map.put("title","疑似重复报案"); |
| | | map.put("info","该出险人在"+riskConfigVO.getRiskRepeatReportTime()+(riskConfigVO.getRiskRepeatReportTimeUnit().equals("1")?"小时":"天")+"内已报案"+cxcs+"次"); |
| | | riskList.add(map); |
| | | settleClaims.setRiskRepeat(Constants.ONE); |
| | | } |
| | | } |
| | | |
| | | |
| | | //索赔次数过多提醒 |
| | | if(StringUtils.isNotBlank(riskConfigVO.getRiskClaimTimesOpen()) |
| | | && StringUtils.equals(riskConfigVO.getRiskClaimTimesOpen(),Constants.ONE+"") |
| | | && StringUtils.isNotBlank(riskConfigVO.getRiskClaimTimes())){ |
| | | Integer cxcs = settleClaimsMapper.selectCount(new QueryWrapper<SettleClaims>().lambda() |
| | | .eq(SettleClaims::getInsuranceApplyId,settleClaimsDTO.getInsuranceApplyId()) |
| | | .ne(Objects.nonNull(settleClaims.getId()),SettleClaims::getId,settleClaims.getId()) |
| | | .apply(" HAPPEN_TIME > DATE_SUB(now(), INTERVAL 365 DAY) ") |
| | | ); |
| | | if(cxcs > Integer.valueOf(riskConfigVO.getRiskClaimTimes())){ |
| | | Map<String,String> map = new HashMap<>(); |
| | | map.put("title","该保单索赔次数过多"); |
| | | map.put("info","累计索赔次数已到达"+cxcs+"次"); |
| | | riskList.add(map); |
| | | settleClaims.setRiskTimesSp(Constants.ONE); |
| | | } |
| | | } |
| | | |
| | | //设计敏感词汇 |
| | | if(StringUtils.isNotBlank(riskConfigVO.getRiskSensitiveWordsOpen()) |
| | | && StringUtils.equals(riskConfigVO.getRiskSensitiveWordsOpen(),Constants.ONE+"") |
| | | && StringUtils.isNotBlank(riskConfigVO.getRiskSensitiveWords())){ |
| | | String [] words = riskConfigVO.getRiskSensitiveWords().split(","); |
| | | String sensitiveWord = ""; |
| | | for (String word:words) { |
| | | if(settleClaims.getContent().indexOf(word)>=Constants.ZERO){ |
| | | if(Constants.equalsInteger(sensitiveWord.length(),Constants.ZERO)){ |
| | | sensitiveWord = word; |
| | | }else{ |
| | | sensitiveWord = sensitiveWord + "、" + word ; |
| | | } |
| | | } |
| | | } |
| | | if(!Constants.equalsInteger(sensitiveWord.length(),Constants.ZERO)){ |
| | | Map<String,String> map = new HashMap<>(); |
| | | map.put("title","涉及敏感词"); |
| | | map.put("info","检测到敏感词:"+sensitiveWord); |
| | | riskList.add(map); |
| | | settleClaims.setRiskSensitive(sensitiveWord); |
| | | } |
| | | } |
| | | |
| | | //疑似新员工出险 |
| | | |
| | | } |
| | | |
| | | public void saveFile(SettleClaims settleClaims,SettleClaimsDTO settleClaimsDTO,LoginUserInfo loginUserInfo){ |
| | | multifileJoinMapper.delete(new QueryWrapper<Multifile>().lambda() |
| | | .eq(Multifile::getObjId,settleClaims.getId()) |
| | | .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_OTHER_FILE.getKey(), |
| | | Constants.MultiFile.LP_SCZL_FILE.getKey() |
| | | ) |
| | | ); |
| | | List<Multifile> reportVideo = settleClaimsDTO.getReportFileList(); |
| | | if(CollectionUtils.isNotEmpty(reportVideo)){ |
| | | for (int i = 0; i < reportVideo.size(); i++) { |
| | | Multifile multifile = reportVideo.get(i); |
| | | if(Objects.isNull(multifile.getFileurl()) |
| | | || Objects.isNull(multifile.getType()) |
| | | || StringUtils.isBlank(multifile.getName()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"附件内容异常"); |
| | | } |
| | | multifile.setCreator(loginUserInfo.getId()); |
| | | multifile.setCreateDate(new Date()); |
| | | multifile.setIsdeleted(Constants.ZERO); |
| | | multifile.setObjId(settleClaims.getId()); |
| | | multifile.setObjType(Constants.MultiFile.LP_SGXC_FILE.getKey()); |
| | | multifile.setSortnum(i+1); |
| | | multifileJoinMapper.insert(multifile); |
| | | } |
| | | } |
| | | |
| | | List<Multifile> relationFileList = settleClaimsDTO.getRelationFileList(); |
| | | if(CollectionUtils.isNotEmpty(relationFileList)){ |
| | | for (int i = 0; i < reportVideo.size(); i++) { |
| | | Multifile multifile = reportVideo.get(i); |
| | | if(Objects.isNull(multifile.getFileurl()) |
| | | || Objects.isNull(multifile.getType()) |
| | | || StringUtils.isBlank(multifile.getName()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"附件内容异常"); |
| | | } |
| | | multifile.setCreator(loginUserInfo.getId()); |
| | | multifile.setCreateDate(new Date()); |
| | | multifile.setIsdeleted(Constants.ZERO); |
| | | multifile.setObjId(settleClaims.getId()); |
| | | multifile.setObjType(Constants.MultiFile.LP_YGGX_FILE.getKey()); |
| | | multifile.setSortnum(i+1); |
| | | multifileJoinMapper.insert(multifile); |
| | | } |
| | | } |
| | | |
| | | List<Multifile> outpatientFileList = settleClaimsDTO.getOutpatientFileList(); |
| | | if(CollectionUtils.isNotEmpty(outpatientFileList)){ |
| | | for (int i = 0; i < reportVideo.size(); i++) { |
| | | Multifile multifile = reportVideo.get(i); |
| | | if(Objects.isNull(multifile.getFileurl()) |
| | | || Objects.isNull(multifile.getType()) |
| | | || StringUtils.isBlank(multifile.getName()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"附件内容异常"); |
| | | } |
| | | multifile.setCreator(loginUserInfo.getId()); |
| | | multifile.setCreateDate(new Date()); |
| | | multifile.setIsdeleted(Constants.ZERO); |
| | | multifile.setObjId(settleClaims.getId()); |
| | | multifile.setObjType(Constants.MultiFile.LP_MZCL_FILE.getKey()); |
| | | multifile.setSortnum(i+1); |
| | | multifileJoinMapper.insert(multifile); |
| | | } |
| | | } |
| | | |
| | | List<Multifile> hospitalFileList = settleClaimsDTO.getHospitalFileList(); |
| | | if(CollectionUtils.isNotEmpty(hospitalFileList)){ |
| | | for (int i = 0; i < reportVideo.size(); i++) { |
| | | Multifile multifile = reportVideo.get(i); |
| | | if(Objects.isNull(multifile.getFileurl()) |
| | | || Objects.isNull(multifile.getType()) |
| | | || StringUtils.isBlank(multifile.getName()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"附件内容异常"); |
| | | } |
| | | multifile.setCreator(loginUserInfo.getId()); |
| | | multifile.setCreateDate(new Date()); |
| | | multifile.setIsdeleted(Constants.ZERO); |
| | | multifile.setObjId(settleClaims.getId()); |
| | | multifile.setObjType(Constants.MultiFile.LP_ZYCL_FILE.getKey()); |
| | | multifile.setSortnum(i+1); |
| | | multifileJoinMapper.insert(multifile); |
| | | } |
| | | } |
| | | |
| | | List<Multifile> disabilityFileList = settleClaimsDTO.getDisabilityFileList(); |
| | | if(CollectionUtils.isNotEmpty(disabilityFileList)){ |
| | | for (int i = 0; i < reportVideo.size(); i++) { |
| | | Multifile multifile = reportVideo.get(i); |
| | | if(Objects.isNull(multifile.getFileurl()) |
| | | || Objects.isNull(multifile.getType()) |
| | | || StringUtils.isBlank(multifile.getName()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"附件内容异常"); |
| | | } |
| | | multifile.setCreator(loginUserInfo.getId()); |
| | | multifile.setCreateDate(new Date()); |
| | | multifile.setIsdeleted(Constants.ZERO); |
| | | multifile.setObjId(settleClaims.getId()); |
| | | multifile.setObjType(Constants.MultiFile.LP_SCZL_FILE.getKey()); |
| | | multifile.setSortnum(i+1); |
| | | multifileJoinMapper.insert(multifile); |
| | | } |
| | | } |
| | | |
| | | List<Multifile> otherFileList = settleClaimsDTO.getOtherFileList(); |
| | | if(CollectionUtils.isNotEmpty(otherFileList)){ |
| | | for (int i = 0; i < reportVideo.size(); i++) { |
| | | Multifile multifile = reportVideo.get(i); |
| | | if(Objects.isNull(multifile.getFileurl()) |
| | | || Objects.isNull(multifile.getType()) |
| | | || StringUtils.isBlank(multifile.getName()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"附件内容异常"); |
| | | } |
| | | multifile.setCreator(loginUserInfo.getId()); |
| | | multifile.setCreateDate(new Date()); |
| | | multifile.setIsdeleted(Constants.ZERO); |
| | | multifile.setObjId(settleClaims.getId()); |
| | | multifile.setObjType(Constants.MultiFile.LP_OTHER_FILE.getKey()); |
| | | multifile.setSortnum(i+1); |
| | | multifileJoinMapper.insert(multifile); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |