|  |  |  | 
|---|
|  |  |  | import java.math.RoundingMode; | 
|---|
|  |  |  | import java.net.URL; | 
|---|
|  |  |  | import java.net.URLDecoder; | 
|---|
|  |  |  | import java.time.Instant; | 
|---|
|  |  |  | import java.time.LocalDate; | 
|---|
|  |  |  | import java.time.Period; | 
|---|
|  |  |  | import java.time.ZoneId; | 
|---|
|  |  |  | import java.time.temporal.ChronoUnit; | 
|---|
|  |  |  | import java.util.*; | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | 
|---|
|  |  |  | public static final String COMPANY_USER_APPLY ="COMPANY_USER_APPLY" ; | 
|---|
|  |  |  | public static final String INSURANCE ="INSURANCE" ; | 
|---|
|  |  |  | public static final String CONTRACT ="CONTRACT" ; | 
|---|
|  |  |  | public static final String DISCUSS_PROBLEM_TYPE ="DISCUSS_PROBLEM_TYPE" ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static final String SETTLE_FILE ="SETTLE_FILE" ; | 
|---|
|  |  |  | public static final String DU_FILE ="DU_FILE" ; | 
|---|
|  |  |  | 
|---|
|  |  |  | return  Constants.equalsInteger(model.getStatus(), UnionApplyStatus.FINISH.getKey())?"保险生效止期":"预计生效止期"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static BigDecimal getBigDecimalNoNull(BigDecimal bigDecimal){ | 
|---|
|  |  |  | if(Objects.isNull(bigDecimal)){ | 
|---|
|  |  |  | return  BigDecimal.ZERO; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return bigDecimal; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return Constants.countPriceVO(countCyclePriceDTO.getStartDate(),countCyclePriceDTO.getSolutions()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static int calculateAge(String idCard,Date dateDate) { | 
|---|
|  |  |  | if (idCard == null || idCard.length() != 18) { | 
|---|
|  |  |  | throw new IllegalArgumentException("身份证号码必须是18位"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 提取出生日期 | 
|---|
|  |  |  | String birthDateStr = idCard.substring(6, 14); // 例如:19900101 | 
|---|
|  |  |  | LocalDate birthDate = LocalDate.parse(birthDateStr); | 
|---|
|  |  |  | Instant instant = dateDate.toInstant(); | 
|---|
|  |  |  | // 获取当前日期 | 
|---|
|  |  |  | LocalDate currentDate = instant.atZone(ZoneId.systemDefault()).toLocalDate(); // 转换为 LocalDate | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 计算年龄 | 
|---|
|  |  |  | Period period = Period.between(birthDate, currentDate); | 
|---|
|  |  |  | int age = period.getYears(); // 直接获取年份差即为年龄 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return age; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static CountCyclePriceVO countPriceVO(Date startDate, Solutions solutions){ | 
|---|
|  |  |  | CountCyclePriceVO countCyclePriceVO = new CountCyclePriceVO(); | 
|---|
|  |  |  | 
|---|
|  |  |  | LP_FILE(32, "保险公司上传理赔材料一览表", "保险公司上传理赔材料一览表"), | 
|---|
|  |  |  | LP_OTHER_FILE(33, "理赔其他材料", "理赔其他材料"), | 
|---|
|  |  |  | LP_PAY_FILE(34, "打款凭证", "打款凭证"), | 
|---|
|  |  |  | LP_DZBD_FILE(35, "电子保单", "电子保单"), | 
|---|
|  |  |  | LP_SUPPLEMENT_FILE(36, "补充材料", "补充材料"), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ; | 
|---|
|  |  |  | // 成员变量 | 
|---|
|  |  |  | 
|---|
|  |  |  | CHANGE_FACTORY(2, "员工换厂申请","保险方案"), | 
|---|
|  |  |  | DISPATCH_UNIT(3, "派遣单位申请","派遣单位"), | 
|---|
|  |  |  | TAXES(4, "开票申请","开票金额"), | 
|---|
|  |  |  | SETTLE_CLAIMS(5, "报案理赔","报案人"), | 
|---|
|  |  |  | SETTLE_CLAIMS(5, "理赔提醒","报案信息"), | 
|---|
|  |  |  | CONTRACT(6, "合同签署","合同签署"), | 
|---|
|  |  |  | SOLUTIONS(7, "方案签署","方案签署"), | 
|---|
|  |  |  | COMPANY_USER_APPLY(8, "集团申请","集团申请"), | 
|---|
|  |  |  | SETTLE_CLAIMS_APPLY_ADMIN(9, "报案理赔","待立案"), | 
|---|
|  |  |  | ; | 
|---|
|  |  |  | // 成员变量 | 
|---|
|  |  |  | private int key; | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public  enum NoticeType { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ZERO(0, "待审核","","","待审核","待处理","处理中","待签署","待签署"), | 
|---|
|  |  |  | ONE(1, "企业待签署","","","工种待审核","","已结案","",""), | 
|---|
|  |  |  | TWO(2, "待出单","待审核","待审核","","","","",""), | 
|---|
|  |  |  | THREE(3, "申请退回","申请退回","申请退回","","","","",""), | 
|---|
|  |  |  | FOUR(4, "已退回","已退回","已退回","","","已撤销","",""), | 
|---|
|  |  |  | FIVE(5, "申请驳回","申请驳回","申请驳回","","","","",""), | 
|---|
|  |  |  | ZERO(0, "待审核","","","待审核","待处理","风险案件待审核","待签署","待签署"), | 
|---|
|  |  |  | //理赔通知企业(非待办) | 
|---|
|  |  |  | ONE(1, "企业待签署","","","工种待审核","","风险案件立案退回","",""), | 
|---|
|  |  |  | TWO(2, "待出单","待审核","待审核","","","已立案待受理","",""), | 
|---|
|  |  |  | THREE(3, "申请退回","申请退回","申请退回","","","已受理,需要补充材料","",""), | 
|---|
|  |  |  | //理赔通知企业(非待办) | 
|---|
|  |  |  | FOUR(4, "已退回","已退回","已退回","","","已拒绝受理","",""), | 
|---|
|  |  |  | FIVE(5, "申请驳回","申请驳回","申请驳回","","","商议待领导审批","",""), | 
|---|
|  |  |  | //续保通知 | 
|---|
|  |  |  | SIX(6, "","","","","","","",""), | 
|---|
|  |  |  | //商户端 委托保 - 投保待审核 加减保 换厂 待审核 | 
|---|
|  |  |  | SEVEN(7, "待审核","待审核","待审核","","","","",""), | 
|---|
|  |  |  | SIX(6, "","","","","","商议审批拒绝","",""), | 
|---|
|  |  |  | //商户端 委托保 - 投保待审核 加减保 换厂 待审核, 理赔通知企业(非待办) | 
|---|
|  |  |  | SEVEN(7, "待审核","待审核","待审核","","","商议审批拒绝通知","",""), | 
|---|
|  |  |  | //待复审 | 
|---|
|  |  |  | EIGHT(8, "待审核","","","","","","",""), | 
|---|
|  |  |  | NINE(9, "","","","","","","",""), | 
|---|
|  |  |  | EIGHT(8, "待审核","","","","","待理算","",""), | 
|---|
|  |  |  | NINE(9, "","","","","","待核赔","",""), | 
|---|
|  |  |  | TEN(10, "","","","","","待核赔确认","",""), | 
|---|
|  |  |  | ELEVEN(11, "","","","","","赔付金额已变更","",""), | 
|---|
|  |  |  | TWELVE(12, "","","","","","待结案","",""), | 
|---|
|  |  |  | //理赔通知平台(非代办) | 
|---|
|  |  |  | THIRTEEN(13, "","","","","","已结案,赔付款项将在1-3个工作日内到账","",""), | 
|---|
|  |  |  | //理赔通知平台(非代办) | 
|---|
|  |  |  | FOURTEEN(14, "","","","","","已撤案","",""), | 
|---|
|  |  |  | //理赔通知企业(非待办) | 
|---|
|  |  |  | FIFTEEN(15, "","","","","","已受理待理算","",""), | 
|---|
|  |  |  | //理赔通知企业(非待办) | 
|---|
|  |  |  | SIXTEEN(16, "","","","","","受理审批中","",""), | 
|---|
|  |  |  | //理赔通知企业(非待办) | 
|---|
|  |  |  | SEVENTEEN(17, "","","","","","已理算待核赔","",""), | 
|---|
|  |  |  | //理赔通知企业(非待办) | 
|---|
|  |  |  | EIGHTEEN(18, "","","","","","待结案,赔付金额已变更","",""), | 
|---|
|  |  |  | ; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 成员变量 | 
|---|
|  |  |  | 
|---|
|  |  |  | // 8商议审批拒绝 9已受理 10待核赔  11已核赔 12已确认金额 13已结案 14已撤案 | 
|---|
|  |  |  | WAIT_ACCEPTANCE(0, "暂存中",0), | 
|---|
|  |  |  | RETURN_ACCEPTANCE(1, "已报案",1), | 
|---|
|  |  |  | DEAL_ING(2, "待立案 (弃用)",0), | 
|---|
|  |  |  | CONFIRM_INFORMATION(3, "已立案",1), | 
|---|
|  |  |  | FINISH_ACCEPTANCE(4, "立案退回",1), | 
|---|
|  |  |  | WAIT_DEAL(5, "待受理",2), | 
|---|
|  |  |  | REJECT_DEAL(6, "拒绝受理",2), | 
|---|
|  |  |  | WAIT_DISCUSS_AUDIT(7, "待商议审批",2), | 
|---|
|  |  |  | DEAL_ING(2, "待立案",0),//弃用 | 
|---|
|  |  |  | CONFIRM_INFORMATION(3, "已立案",2), | 
|---|
|  |  |  | FINISH_ACCEPTANCE(4, "立案退回",2), | 
|---|
|  |  |  | WAIT_DEAL(5, "待受理",3),//弃用 | 
|---|
|  |  |  | REJECT_DEAL(6, "拒绝受理",3), | 
|---|
|  |  |  | WAIT_DISCUSS_AUDIT(7, "待商议审批",3), | 
|---|
|  |  |  | WAIT_DISCUSS_REJECT(8, "商议审批拒绝",3), | 
|---|
|  |  |  | ACCEPTANCE(9, "已受理",3),//待理算 | 
|---|
|  |  |  | WAIT_AUDIT_COMPENSATION(10, "待核赔",4), | 
|---|
|  |  |  | COMPENSATION(11, "已核赔",5), | 
|---|
|  |  |  | CONFIRM_FEE(12, "已确认金额",5), | 
|---|
|  |  |  | CLOSE_CASE(13, "已结案",6), | 
|---|
|  |  |  | RETURN(14, "已撤案",6), | 
|---|
|  |  |  | RETURN(14, "已撤案",7), | 
|---|
|  |  |  | ; | 
|---|
|  |  |  | // 成员变量 | 
|---|
|  |  |  | private String name;//业务描述 | 
|---|
|  |  |  | 
|---|
|  |  |  | UPLOAD(0, "提交报案","提交意见:${param}"), | 
|---|
|  |  |  | PLATFORM_RETURN(1, "平台退回","提交意见:${param}"), | 
|---|
|  |  |  | PLATFORM_CONFIRM_INFORMATION(2, "平台确认资料",""), | 
|---|
|  |  |  | PLATFORM_FINISH(3, "结案","提交意见:${param}"), | 
|---|
|  |  |  | PLATFORM_FINISH(3, "已结案","提交意见:${param}"), | 
|---|
|  |  |  | UPDATE_DATA(4, "修改信息","提交意见:${param}"), | 
|---|
|  |  |  | SUPPLEMENT(5, "补充说明","提交意见:${param}"), | 
|---|
|  |  |  | PLATFORM_LP_DEAL(6, "平台理赔处理","已在平台完成理赔"), | 
|---|
|  |  |  | PLATFORM_REMARK(7, "平台备注标签","${param}"), | 
|---|
|  |  |  | PLATFORM_REMARK(7, "备注标签","${param}"), | 
|---|
|  |  |  | PLATFORM_ADDCODE(8, "平台添加报案号","备案号:${param}"), | 
|---|
|  |  |  | PLATFORM_UN_AGREE_BACK(9, "企业下载资料",""), | 
|---|
|  |  |  | PLATFORM_DOWNLOAD(10, "平台下载资料",""), | 
|---|
|  |  |  | 
|---|
|  |  |  | PLATFORM_UPD_FEE(22, "核赔-修改金额",""), | 
|---|
|  |  |  | CONFIRM_FEE(22, "核赔-客户确认金额","已确认金额"), | 
|---|
|  |  |  | UPD_CASE_TYPE(23, "受理-确认案件类型","已确认案件类型"), | 
|---|
|  |  |  | UPD_HURT_TYPE(24, "修改伤残类型信息","是否伤残修改为“{param}”"), | 
|---|
|  |  |  | UPD_RECEIVE_INFO(25, "收款信息变更","修改收款信息"), | 
|---|
|  |  |  | ; | 
|---|
|  |  |  | // 成员变量 | 
|---|
|  |  |  | private String name; | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 普通方法 | 
|---|
|  |  |  | public static String getName(int index) { | 
|---|
|  |  |  | for (ApplyLogType c : ApplyLogType.values()) { | 
|---|
|  |  |  | for (SettleClaimsLogType c : SettleClaimsLogType.values()) { | 
|---|
|  |  |  | if (c.getKey() == index) { | 
|---|
|  |  |  | return c.name; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | return null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | public static String getInfo(int index) { | 
|---|
|  |  |  | for (ApplyLogType c : ApplyLogType.values()) { | 
|---|
|  |  |  | for (SettleClaimsLogType c : SettleClaimsLogType.values()) { | 
|---|
|  |  |  | if (c.getKey() == index) { | 
|---|
|  |  |  | return c.info; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public  enum SettleClaimsLogParentStatus { | 
|---|
|  |  |  | BA(1, "报案","已报案"), | 
|---|
|  |  |  | LA(2, "立案","已立案"), | 
|---|
|  |  |  | SL(3, "受理","已受理"), | 
|---|
|  |  |  | LS(4, "理算","已理算"), | 
|---|
|  |  |  | HP(5, "核赔","已核赔"), | 
|---|
|  |  |  | JA(6, "结案","已结案"), | 
|---|
|  |  |  | BA(1, "报案","已报案","已报案"), | 
|---|
|  |  |  | LA(2, "立案","已立案","待立案"), | 
|---|
|  |  |  | SL(3, "受理","已受理","待受理"), | 
|---|
|  |  |  | LS(4, "理算","已理算","待理算"), | 
|---|
|  |  |  | HP(5, "核赔","已核赔","待核赔"), | 
|---|
|  |  |  | JA(6, "结案","已结案","待结案"), | 
|---|
|  |  |  | ; | 
|---|
|  |  |  | // 成员变量 | 
|---|
|  |  |  | private String name; | 
|---|
|  |  |  | private String info; | 
|---|
|  |  |  | private String waitInfo; | 
|---|
|  |  |  | private int key; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 构造方法 | 
|---|
|  |  |  | SettleClaimsLogParentStatus(int key, String name,String info) { | 
|---|
|  |  |  | SettleClaimsLogParentStatus(int key, String name,String info,String waitInfo) { | 
|---|
|  |  |  | this.name = name; | 
|---|
|  |  |  | this.info = info; | 
|---|
|  |  |  | this.key = key; | 
|---|
|  |  |  | this.waitInfo = waitInfo; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 普通方法 | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 普通方法 | 
|---|
|  |  |  | public static SettleClaimsLogParentStatus getAll(int index) { | 
|---|
|  |  |  | 
|---|
|  |  |  | public void setInfo(String info) { | 
|---|
|  |  |  | this.info = info; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public String getWaitInfo() { | 
|---|
|  |  |  | return waitInfo; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void setWaitInfo(String waitInfo) { | 
|---|
|  |  |  | this.waitInfo = waitInfo; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|