jiangping
2025-05-20 f4d7a1d8322c37349aeee87287eceb7eb56ce49a
提交一把
已添加1个文件
已修改5个文件
110 ■■■■■ 文件已修改
server/platform/src/main/java/com/doumee/api/business/SettleClaimsController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/dao/business/model/SettleClaims.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/dao/business/vo/SettleClaimsMoneyVO.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/SettleClaimsService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/platform/src/main/java/com/doumee/api/business/SettleClaimsController.java
@@ -40,6 +40,13 @@
    public ApiResponse create(@RequestBody SettleClaims settleClaims) {
        return ApiResponse.success(settleClaimsService.create(settleClaims));
    }
    @PreventRepeat
    @ApiOperation("平台系统案件录入")
    @PostMapping("/createSys")
    @RequiresPermissions("business:settleclaims:create")
    public ApiResponse createSys(@RequestBody SettleClaims settleClaims) {
        return ApiResponse.success(settleClaimsService.createSys(settleClaims));
    }
    @ApiOperation("添加报案号")
    @PostMapping("/addCode")
    @RequiresPermissions("business:settleclaims:addCode")
server/service/src/main/java/com/doumee/dao/business/model/SettleClaims.java
@@ -2,13 +2,14 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import com.doumee.dao.business.vo.SettleClaimsMoneyVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import java.math.BigDecimal;
import java.util.List;
@@ -176,7 +177,7 @@
    private String shouliType;
    @ApiModelProperty(value = "理赔来源 0企业 1平台录入 2其他 ")
    @ExcelColumn(name="理赔来源 0企业 1平台录入 2其他")
    private String origin;
    private Integer origin;
    @ApiModelProperty(value = "受理商议问题 0资料缺失,1延迟报案 2超职业类别 3其他(多个用英文逗号隔开)")
    @ExcelColumn(name="受理商议问题 0资料缺失,1延迟报案 2超职业类别 3其他(多个用英文逗号隔开)")
    private String syProblemOpts;
@@ -301,5 +302,11 @@
    @ApiModelProperty(value = "派遣单位基表编码(关联solutions)", example = "1")
    @TableField(exist = false)
    private Integer baseDuId;
    @ApiModelProperty(value = "系统录入案件扩展属性对象", example = "1")
    @TableField(exist = false)
    private SettleClaimsExt extData;
    @ApiModelProperty(value = "费用对象集合", example = "1")
    @TableField(exist = false)
    private List<SettleClaimsMoneyVO> accountList;
}
server/service/src/main/java/com/doumee/dao/business/vo/SettleClaimsMoneyVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
package com.doumee.dao.business.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
 * æŠ•保单 å¯æ“ä½œæƒé™
 * @author RenKang
 */
@Data
public class SettleClaimsMoneyVO {
    @ApiModelProperty(value = "费用名称", example = "1")
    private String   name;
    @ApiModelProperty(value = "费用", example = "1")
    private BigDecimal money;
    @ApiModelProperty(value = "费用类型")
    private Integer type;
    @ApiModelProperty(value = "费用说明")
    private String info;
}
server/service/src/main/java/com/doumee/service/business/SettleClaimsService.java
@@ -130,4 +130,6 @@
    Integer back(SettleClaims settleClaims);
    Integer delFile(Integer id, Integer fileId);
    Integer createSys(SettleClaims settleClaims);
}
server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
@@ -1447,7 +1447,7 @@
                    .eq(ApplyDetail::getApplyId,applyChange.getApplyId())
                    .eq(ApplyDetail::getIdcardNo,applyChagneDetail.getIdcardNo())
                    .le(ApplyDetail::getStartTime,DateUtil.getMontageDate(applyChange.getApplyStartTime(),1))
                            .ge(ApplyDetail::getEndTime,DateUtil.getMontageDate(insuranceApply.getEndTime(),2))
                    .ge(ApplyDetail::getEndTime,DateUtil.getMontageDate(insuranceApply.getEndTime(),2))
            )>Constants.ZERO){
                throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "当前保单下,加保人员【" + applyChagneDetail.getMemberName() + "】存在日期冲突的数据");
            }
server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
@@ -358,6 +358,66 @@
    }
    @Override
    public Integer createSys(SettleClaims settleClaims) {
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        settleClaims.setOrigin(Constants.ONE);
        if(Objects.isNull(settleClaims)
                || Objects.isNull(settleClaims.getMemberName())
                || Objects.isNull(settleClaims.getSolutionName())
                || Objects.isNull(settleClaims.getDuId())
                || Objects.isNull(settleClaims.getWorktypeId())
                || Objects.isNull(settleClaims.getHappenTime())
                || Objects.isNull(settleClaims.getType())
                || Objects.isNull(settleClaims.getInHospital())
                || Objects.isNull(settleClaims.getMedicalInsurance())
                || Objects.isNull(settleClaims.getContent())
                || Objects.isNull(settleClaims.getInformantName())
                || Objects.isNull(settleClaims.getInformantPhone())){
            throw new BusinessException(ResponseStatus.BAD_REQUEST);
        }
        if(!loginUserInfo.getType().equals(Constants.ONE)){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非企业员工无法进行该操作");
        }
        //查询是否存在已提报的数据  æ ¹æ®äººå‘˜å’Œä¿é™©æ–¹æ¡ˆè¿›è¡Œè¿‡æ»¤ æ˜¯å¦å­˜åœ¨è¿›è¡Œä¸­çš„æ•°æ®
        if(settleClaimsMapper.selectCount(new QueryWrapper<SettleClaims>().lambda()
                .eq(SettleClaims::getSolutionId,settleClaims.getSolutionId())
                .eq(SettleClaims::getMemberId,loginUserInfo.getId())
                .in(SettleClaims::getStatus,Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey(),
                        Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())
        )>Constants.ZERO){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"存在提报中的报案数据!");
        }
        settleClaims.setCreateDate(new Date());
        settleClaims.setIsdeleted(Constants.ZERO);
        settleClaims.setCompanyId(loginUserInfo.getCompanyId());
        settleClaims.setStatus(Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey());
        settleClaims.setCreator(loginUserInfo.getId());
        settleClaims.setCheckUserId(loginUserInfo.getId());
        settleClaimsMapper.insert(settleClaims);
        List<Multifile> reportVideo = settleClaims.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.ONE);
                multifile.setSortnum(i+1);
                multifileJoinMapper.insert(multifile);
            }
        }
        return  settleClaims.getId();
    }
    @Override
    public Integer create(SettleClaims settleClaims) {
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(Objects.isNull(settleClaims)