server/company/src/main/java/com/doumee/api/business/ApplyDetailController.java
@@ -126,6 +126,13 @@ } @ApiOperation("æ¥è¯¢äººå坿¥æ¡æ°æ®") @GetMapping("/getMemberSettleClaimsList") public ApiResponse<List<ApplyDetail>> getMemberSettleClaimsList(@RequestParam Integer memberId) { return ApiResponse.success(applyDetailService.getMemberSettleClaimsList(memberId)); } } server/company/src/main/java/com/doumee/api/business/SettleRiskController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,71 @@ package com.doumee.api.business; import com.doumee.api.BaseController; import com.doumee.core.annotation.pr.PreventRepeat; import com.doumee.core.model.ApiResponse; import com.doumee.dao.business.dto.CompensationDTO; import com.doumee.dao.business.dto.OptSettleClaimsDTO; import com.doumee.dao.business.dto.SaveSupplementDescribeDTO; import com.doumee.dao.business.dto.SettleClaimsDTO; import com.doumee.service.business.SettleClaimsService; import com.doumee.service.system.impl.SystemDictDataServiceImpl; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; /** * @author æ±è¹è¹ * @date 2024/01/16 10:03 */ @Api(tags = "æ¥æ¡çèµï¼æ°ï¼") @RestController @RequestMapping("/business/settleRisk") public class SettleRiskController extends BaseController { @Autowired private SystemDictDataServiceImpl systemDictDataService; @Autowired private SettleClaimsService settleClaimsService; @PreventRepeat @ApiOperation("çèµæ¥æ¡") @PostMapping("/saveSettleClaims") public ApiResponse saveSettleClaims(@RequestBody SettleClaimsDTO settleClaimsDTO) { settleClaimsService.saveSettleClaims(settleClaimsDTO,systemDictDataService); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("æ·»å ææ") @PostMapping("/saveSupplementFile") public ApiResponse saveSupplementFile(@RequestBody SaveSupplementDescribeDTO dto) { settleClaimsService.saveSupplementFile(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("æ¤éæ¥æ¡") @PostMapping("/returnSettle") public ApiResponse returnSettle(@RequestBody OptSettleClaimsDTO dto) { settleClaimsService.returnSettle(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("确认éé¢") @GetMapping("/confirmFee") public ApiResponse confirmFee(@RequestParam Integer id) { settleClaimsService.confirmFee(id); return ApiResponse.success(null); } } server/platform/src/main/java/com/doumee/api/business/RiskConfigController.java
ÎļþÒÑɾ³ý server/platform/src/main/java/com/doumee/api/business/SettleRiskController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,159 @@ package com.doumee.api.business; import com.doumee.api.BaseController; import com.doumee.core.annotation.pr.PreventRepeat; import com.doumee.core.model.ApiResponse; import com.doumee.dao.business.dto.*; import com.doumee.dao.business.vo.CompensationVO; import com.doumee.dao.business.vo.RiskConfigVO; import com.doumee.service.business.SettleClaimsService; import com.doumee.service.system.SystemDictDataService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; /** * @author æ±è¹è¹ * @date 2024/01/16 10:03 */ @Api(tags = "æ¥æ¡çèµï¼æ°ï¼") @RestController @RequestMapping("/business/settleRisk") public class SettleRiskController extends BaseController { @Autowired private SystemDictDataService systemDictDataService; @Autowired private SettleClaimsService settleClaimsService; @ApiOperation("è·åé£é©é ç½®") @GetMapping("/getRiskConfig") public ApiResponse<RiskConfigVO> getRiskConfig() { return ApiResponse.success(systemDictDataService.getRiskConfig()); } @ApiOperation("æ´æ°é£é©é ç½®") @PostMapping("/updRiskConfig") public ApiResponse updRiskConfig(@RequestBody RiskConfigDTO riskConfigDTO) { systemDictDataService.updRiskConfig(riskConfigDTO); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("è¡¥å 说æ") @PostMapping("/saveSupplementDescribe") public ApiResponse saveSupplementDescribe(@RequestBody SaveSupplementDescribeDTO dto) { settleClaimsService.saveSupplementDescribe(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("æ·»å ææ") @PostMapping("/saveSupplementFile") public ApiResponse saveSupplementFile(@RequestBody SaveSupplementDescribeDTO dto) { settleClaimsService.saveSupplementFile(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("å¹³å°ç«æ¡æéå") @PostMapping("/register") public ApiResponse register(@RequestBody OptSettleClaimsDTO dto) { settleClaimsService.register(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("æ·»å æ¥æ¡å·") @PostMapping("/addReportNum") public ApiResponse addReportNum(@RequestBody OptSettleClaimsDTO dto) { settleClaimsService.addReportNum(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("æ·»å 夿³¨") @PostMapping("/addRemark") public ApiResponse addRemark(@RequestBody OptSettleClaimsDTO dto) { settleClaimsService.addRemark(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("åçä¸å¡") @PostMapping("/acceptance") public ApiResponse acceptance(@RequestBody AcceptanceSettleClaimsDTO dto) { settleClaimsService.acceptance(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("çèµè´¹ç¨é¡¹ä¿¡æ¯") @GetMapping("/getCompensation") public ApiResponse<List<CompensationVO>> getCompensation(@RequestParam Integer id) { return ApiResponse.success(settleClaimsService.getCompensation(id)); } @PreventRepeat @ApiOperation("çèµ") @PostMapping("/compensation") public ApiResponse compensation(@RequestBody CompensationDTO dto) { settleClaimsService.compensation(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("å议审æ¹") @PostMapping("/discussAudit") public ApiResponse discussAudit(@RequestBody DiscussAuditDTO dto) { settleClaimsService.discussAudit(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("æ ¸èµ") @PostMapping("/nuclearCompensation") public ApiResponse nuclearCompensation(@RequestBody CompensationDTO dto) { settleClaimsService.nuclearCompensation(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("ä¿®æ¹éé¢") @PostMapping("/updFee") public ApiResponse updFee(@RequestBody CompensationDTO dto) { settleClaimsService.updFee(dto); return ApiResponse.success(null); } @PreventRepeat @ApiOperation("ä¿®æ¹æ¡ä»¶ç±»å") @PostMapping("/updCaseType") public ApiResponse updCaseType(@RequestBody CaseTypeDTO dto) { settleClaimsService.updCaseType(dto); return ApiResponse.success(null); } } server/platform/src/main/java/com/doumee/api/business/UnionChangeController.java
@@ -120,6 +120,7 @@ return ApiResponse.success(unionChangeService.getSignLink(smsCheckDTO)); } @ApiOperation("ä¸ä¼ ä¿é©å") @PostMapping("/uploadBXD") @RequiresPermissions("business:unionchange:uploadBXD") server/service/src/main/java/com/doumee/core/utils/Constants.java
@@ -1934,26 +1934,28 @@ public enum SettleClaimsStatus { //ç¶æ 0æåä¸ 1å·²æ¥æ¡ 2å¾ ç«æ¡ 3å·²ç«æ¡ 4ç«æ¡éå 5å¾ åç 6æç»åç 7åè®®å¾ å®¡æ¹ // 8åè®®å®¡æ¹æç» 9å·²åç 10å¾ æ ¸èµ 11å·²æ ¸èµ 12å¾ ç»æ¡ 13å·²ç»æ¡ 14å·²æ¤æ¡ // 8åè®®å®¡æ¹æç» 9å·²åç 10å¾ æ ¸èµ 11å·²æ ¸èµ 12已确认éé¢ 13å·²ç»æ¡ 14å·²æ¤æ¡ WAIT_ACCEPTANCE(0, "æåä¸"), RETURN_ACCEPTANCE(1, "å·²æ¥æ¡"), DEAL_ING(2, "å¾ ç«æ¡"), DEAL_ING(2, "å¾ ç«æ¡ ï¼å¼ç¨ï¼"), CONFIRM_INFORMATION(3, "å·²ç«æ¡"), FINISH_ACCEPTANCE(4, "ç«æ¡éå"), WAIT_DEAL(5, "å¾ åç"), REJECT_DEAL(6, "æç»åç"), WAIT_DISCUSS_AUDIT(7, "å¾ å议审æ¹"), WAIT_DISCUSS_REJECT(8, "åè®®å®¡æ¹æç»"), ACCEPTANCE(9, "å·²åç"), ACCEPTANCE(9, "å·²åç"),//å¾ çç® WAIT_AUDIT_COMPENSATION(10, "å¾ æ ¸èµ"), COMPENSATION(11, "å·²æ ¸èµ"), WAIT_CLOSE_CASE(12, "å¾ ç»æ¡"), CLOSE_CASE(13, "å¾ ç»æ¡"), CONFIRM_FEE(12, "已确认éé¢"), CLOSE_CASE(13, "å·²ç»æ¡"), RETURN(14, "å·²æ¤æ¡"), ; // æååé private String name; private int key; private String name;//ä¸å¡æè¿° private int key;//ä¸å¡ç¶æ private int companyParentKey;//ä¼ä¸ä¸»æµç¨ private int platformParentKey;//å¹³å°ä¸»æµç¨ // æé æ¹æ³ SettleClaimsStatus(int key, String name) { @@ -1996,12 +1998,25 @@ PLATFORM_FINISH(3, "ç»æ¡æäº¤","æäº¤æè§ï¼${param}"), UPDATE_DATA(4, "ä¿®æ¹ä¿¡æ¯","æäº¤æè§ï¼${param}"), SUPPLEMENT(5, "è¡¥å 说æ","æäº¤æè§ï¼${param}"), PLATFORM_LP_DEAL(6, "å¹³å°çèµå¤ç","æäº¤æè§ï¼${param}"), PLATFORM_LP_DEAL(6, "å¹³å°çèµå¤ç","å·²å¨å¹³å°å®æçèµ"), PLATFORM_REMARK(7, "å¹³å°å¤æ³¨æ ç¾","${param}"), PLATFORM_ADDCODE(8, "平尿·»å æ¥æ¡å·","夿¡å·ï¼${param}"), PLATFORM_UN_AGREE_BACK(9, "ä¼ä¸ä¸è½½èµæ",""), PLATFORM_DOWNLOAD(10, "å¹³å°ä¸è½½èµæ",""), PLATFORM_CHECK_PASS(11, "å¹³å°ä¸ä¼ èµæ",""), SUPPLEMENT_DESCRIBE(12, "å¹³å°å¡«åéè¡¥å å 容",""), RETURN_SETTLE(13, "æ¤éæ¥æ¡",""), PLATFORM_REGISTER(14, "å¹³å°ç«æ¡",""), PLATFORM_ACCEPTANCE(15, "åç-å·²åç",""), PLATFORM_REFUSE_ACCEPTANCE(16, "åç-æç»åç","æç»åå ï¼${param}"), PLATFORM_DISCUSS(17, "åç-åè®®",""), PLATFORM_DISCUSS_PASS(18, "åç-åè®®éè¿",""), PLATFORM_DISCUSS_REFUSE(19, "åç-åè®®æç»","æç»åå ï¼${param}"), PLATFORM_WAIT_DISCUSS(20, "åç-åè®®å¾ å®¡æ¹",""), PLATFORM_HP_DEAL(21, "æ ¸èµ-æäº¤æ ¸èµéé¢","å·²æäº¤èµä»éé¢ï¼å¾ ç¨æ·ç¡®è®¤"), PLATFORM_UPD_FEE(22, "æ ¸èµ-ä¿®æ¹éé¢",""), CONFIRM_FEE(22, "æ ¸èµ-客æ·ç¡®è®¤éé¢","已确认éé¢"), UPD_CASE_TYPE(23, "åç-确认æ¡ä»¶ç±»å","已确认æ¡ä»¶ç±»å"), ; // æååé private String name; @@ -2621,5 +2636,73 @@ } /** * èµä»é¡¹ */ public enum compensation{ YL_COMPENSATION(0, "å»ççèµ",1), WG_COMPENSATION(1, "误工çèµ",1), SC_COMPENSATION(2, "伤æ®çèµ",1), SW_COMPENSATION(3, "æ»äº¡çèµ",1), HSF_FEE(4, "ä¼é£è´¹",2), XY_FEE(5, "ç»å»è´¹",2), YY_FEE(6, "è¥å »è´¹",2), HL_FEE(7, "æ¤çè´¹",2), ZDJB_FEE(8, "é大ç¾ç èµå¿é",2), TB_FEE(9, "ç¹å«è´¹ç¨",2), ZS_FEE(10, "ä½å®¿è´¹",2), JT_FEE(11, "津贴",2), CJ_FEE(12, "æ®ç¾èµå¿é",2), BFYR_FEE(13, "被æå »äººç活费",2), SCF_FEE(14, "丧è¬è´¹",2), JSFXJ_FEE(15, "ç²¾ç¥ææ¤é",2), JD_FEE(16, "é´å®è´¹",2), SS_FEE(17, "è¯è®¼è´¹",2), LS_FEE(18, "å¾å¸è´¹",2), TRAFFIC_FEE(19, "交éè´¹",2), CJQJ_FEE(20, "æ®ç¾å¨å ·è´¹",2), QT_FEE(21, "å ¶ä»è´¹ç¨",2), ; // æååé private String name; private int key; private int type; // æé æ¹æ³ compensation(int key, String name, int type) { this.name = name; this.key = key; this.type = type; } // get set æ¹æ³ public String getName() { return name; } public void setName(String name) { this.name = name; } public int getKey() { return key; } public void setKey(int key) { this.key = key; } public int getType() { return type; } public void setType(int type) { this.type = type; } } } server/service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -113,6 +113,33 @@ } } public static long getBetweenMin(Date fromDate, Date toDate) { long m_intervalday = 0;// åå§åæ¶é´é´éçå¼ä¸º0 // 使ç¨çæ¶é´æ ¼å¼ä¸ºyyyy-MM-dd try { m_intervalday = toDate.getTime() - fromDate.getTime();// è®¡ç®æå¾ä¸ºå¾®ç§æ° m_intervalday = m_intervalday / 1000 / 60 ;// è®¡ç®æå¾çå¤©æ° return m_intervalday + 1; } catch (Exception e) { return Integer.MIN_VALUE; } } public static long getBetweenDay(Date fromDate, Date toDate) { long m_intervalday = 0;// åå§åæ¶é´é´éçå¼ä¸º0 // 使ç¨çæ¶é´æ ¼å¼ä¸ºyyyy-MM-dd try { m_intervalday = toDate.getTime() - fromDate.getTime();// è®¡ç®æå¾ä¸ºå¾®ç§æ° m_intervalday = m_intervalday / 1000 / 60 / 60 / 24 ;// è®¡ç®æå¾çå¤©æ° return m_intervalday + 1; } catch (Exception e) { return Integer.MIN_VALUE; } } /** * @author Pablo Descrption:ȡ�õ�ǰ����getgetg get Date format * Exampleï¼2008.03.15 @@ -889,95 +916,95 @@ * @return 转æ¢å¾å°çæ¥æ */ @SuppressWarnings("unchecked") public static Date stringToDate(String strDate, String oracleFormat) { if (strDate == null) return null; Hashtable<Integer, String> h = new Hashtable<Integer, String>(); String javaFormat = new String(); String s = oracleFormat.toLowerCase(); if (s.indexOf("yyyy") != -1) h.put(new Integer(s.indexOf("yyyy")), "yyyy"); else if (s.indexOf("yy") != -1) h.put(new Integer(s.indexOf("yy")), "yy"); if (s.indexOf("mm") != -1) h.put(new Integer(s.indexOf("mm")), "MM"); if (s.indexOf("dd") != -1) h.put(new Integer(s.indexOf("dd")), "dd"); if (s.indexOf("hh24") != -1) h.put(new Integer(s.indexOf("hh24")), "HH"); if (s.indexOf("mi") != -1) h.put(new Integer(s.indexOf("mi")), "mm"); if (s.indexOf("ss") != -1) h.put(new Integer(s.indexOf("ss")), "ss"); int intStart = 0; while (s.indexOf("-", intStart) != -1) { intStart = s.indexOf("-", intStart); h.put(new Integer(intStart), "-"); intStart++; } intStart = 0; while (s.indexOf("/", intStart) != -1) { intStart = s.indexOf("/", intStart); h.put(new Integer(intStart), "/"); intStart++; } intStart = 0; while (s.indexOf(" ", intStart) != -1) { intStart = s.indexOf(" ", intStart); h.put(new Integer(intStart), " "); intStart++; } intStart = 0; while (s.indexOf(":", intStart) != -1) { intStart = s.indexOf(":", intStart); h.put(new Integer(intStart), ":"); intStart++; } if (s.indexOf("å¹´") != -1) h.put(new Integer(s.indexOf("å¹´")), "å¹´"); if (s.indexOf("æ") != -1) h.put(new Integer(s.indexOf("æ")), "æ"); if (s.indexOf("æ¥") != -1) h.put(new Integer(s.indexOf("æ¥")), "æ¥"); if (s.indexOf("æ¶") != -1) h.put(new Integer(s.indexOf("æ¶")), "æ¶"); if (s.indexOf("å") != -1) h.put(new Integer(s.indexOf("å")), "å"); if (s.indexOf("ç§") != -1) h.put(new Integer(s.indexOf("ç§")), "ç§"); int i = 0; while (h.size() != 0) { Enumeration e = h.keys(); int n = 0; while (e.hasMoreElements()) { i = ((Integer) e.nextElement()).intValue(); if (i >= n) n = i; } String temp = (String) h.get(new Integer(n)); h.remove(new Integer(n)); javaFormat = temp + javaFormat; } SimpleDateFormat df = new SimpleDateFormat(javaFormat); Date myDate = new Date(); try { myDate = df.parse(strDate); } catch (Exception e) { // e.printStackTrace(); return null; } return myDate; } // public static Date stringToDate(String strDate, String oracleFormat) { // if (strDate == null) // return null; // Hashtable<Integer, String> h = new Hashtable<Integer, String>(); // String javaFormat = new String(); // String s = oracleFormat.toLowerCase(); // if (s.indexOf("yyyy") != -1) // h.put(new Integer(s.indexOf("yyyy")), "yyyy"); // else if (s.indexOf("yy") != -1) // h.put(new Integer(s.indexOf("yy")), "yy"); // if (s.indexOf("mm") != -1) // h.put(new Integer(s.indexOf("mm")), "MM"); // // if (s.indexOf("dd") != -1) // h.put(new Integer(s.indexOf("dd")), "dd"); // if (s.indexOf("hh24") != -1) // h.put(new Integer(s.indexOf("hh24")), "HH"); // if (s.indexOf("mi") != -1) // h.put(new Integer(s.indexOf("mi")), "mm"); // if (s.indexOf("ss") != -1) // h.put(new Integer(s.indexOf("ss")), "ss"); // // int intStart = 0; // while (s.indexOf("-", intStart) != -1) { // intStart = s.indexOf("-", intStart); // h.put(new Integer(intStart), "-"); // intStart++; // } // // intStart = 0; // while (s.indexOf("/", intStart) != -1) { // intStart = s.indexOf("/", intStart); // h.put(new Integer(intStart), "/"); // intStart++; // } // // intStart = 0; // while (s.indexOf(" ", intStart) != -1) { // intStart = s.indexOf(" ", intStart); // h.put(new Integer(intStart), " "); // intStart++; // } // // intStart = 0; // while (s.indexOf(":", intStart) != -1) { // intStart = s.indexOf(":", intStart); // h.put(new Integer(intStart), ":"); // intStart++; // } // // if (s.indexOf("å¹´") != -1) // h.put(new Integer(s.indexOf("å¹´")), "å¹´"); // if (s.indexOf("æ") != -1) // h.put(new Integer(s.indexOf("æ")), "æ"); // if (s.indexOf("æ¥") != -1) // h.put(new Integer(s.indexOf("æ¥")), "æ¥"); // if (s.indexOf("æ¶") != -1) // h.put(new Integer(s.indexOf("æ¶")), "æ¶"); // if (s.indexOf("å") != -1) // h.put(new Integer(s.indexOf("å")), "å"); // if (s.indexOf("ç§") != -1) // h.put(new Integer(s.indexOf("ç§")), "ç§"); // // int i = 0; // while (h.size() != 0) { // Enumeration e = h.keys(); // int n = 0; // while (e.hasMoreElements()) { // i = ((Integer) e.nextElement()).intValue(); // if (i >= n) // n = i; // } // String temp = (String) h.get(new Integer(n)); // h.remove(new Integer(n)); // // javaFormat = temp + javaFormat; // } // SimpleDateFormat df = new SimpleDateFormat(javaFormat); // // Date myDate = new Date(); // try { // myDate = df.parse(strDate); // } catch (Exception e) { // // e.printStackTrace(); // return null; // } // // return myDate; // } public static Date StringToDate(String DATE1) { DateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); @@ -3084,7 +3111,25 @@ return cal.getTime(); } /** * è·åæä¸ªæ¶é´Xåéåçæ¶é´ * @param minutes * @param date * @return */ public static Date afterMinutesByDate(Integer minutes,Date date){ Calendar cal = Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.MINUTE,minutes); return cal.getTime(); } public static Date afterDayByDate(Integer days,Date date){ Calendar cal = Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.DATE,days); return cal.getTime(); } /** * 计ç®å¤å°èªç¶å¹´/æ/æ¥åçæ¥æ * @param startDate å¼å§æ¥æ @@ -3157,7 +3202,8 @@ public static void main(String[] args) throws Exception{ System.out.println(DateUtil.getLongDateTime(new Date()));; System.out.println(DateUtil.StringToDate("2025-05-16 13:49:40").getTime()); // System.out.println(DateUtil.getLongDateTime(new Date()));; } /** server/service/src/main/java/com/doumee/dao/business/dto/AcceptanceSettleClaimsDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,24 @@ package com.doumee.dao.business.dto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * åå¨ è¡¥å 说æ */ @Data public class AcceptanceSettleClaimsDTO { @ApiModelProperty(value = "ä¸å¡ä¸»é®") private Integer id; @ApiModelProperty(value = "0=åçï¼1=æç»åçï¼2=å议审æ¹ï¼3=åè®®ä¸å®¡æ¹") private Integer status; @ApiModelProperty(value = "说æã夿³¨") private String describe; @ApiModelProperty(value = "é®é¢ç±»åï¼å¤ä¸ªç¨è±æéå·éå¼") private String syProblemOpts; } server/service/src/main/java/com/doumee/dao/business/dto/CaseTypeDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,16 @@ package com.doumee.dao.business.dto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data public class CaseTypeDTO { @ApiModelProperty(value = "ä¸å¡ä¸»é®") private Integer id; @ApiModelProperty(value = "æ¡ä»¶ç±»åï¼1=å»çï¼2=伤æ®ï¼3=æ»äº¡") private Integer caseType; } server/service/src/main/java/com/doumee/dao/business/dto/CompensationDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,15 @@ package com.doumee.dao.business.dto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data public class CompensationDTO { @ApiModelProperty(value = "ä¸å¡ä¸»é®") private Integer id; @ApiModelProperty(value = "çèµéé¢json串") private String compensationJson; } server/service/src/main/java/com/doumee/dao/business/dto/DiscussAuditDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,18 @@ package com.doumee.dao.business.dto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data public class DiscussAuditDTO { @ApiModelProperty(value = "ä¸å¡ä¸»é®") private Integer id; @ApiModelProperty(value = "0=审æ¹éè¿ï¼1=å®¡æ¹æç»") private Integer status; @ApiModelProperty(value = "说æ") private String describe; } server/service/src/main/java/com/doumee/dao/business/dto/OptSettleClaimsDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,29 @@ package com.doumee.dao.business.dto; import com.doumee.dao.business.model.Multifile; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * åå¨ è¡¥å 说æ */ @Data public class OptSettleClaimsDTO { @ApiModelProperty(value = "ä¸å¡ä¸»é®") private Integer id; @ApiModelProperty(value = "ç«æ¡ä¸å¡ç¶æï¼3=ç«æ¡ï¼4=ç«æ¡éå") private Integer registerStatus; @ApiModelProperty(value = "说æã夿³¨") private String describe; @ApiModelProperty(value = "æ¥æ¡å·") private String reportNum; @ApiModelProperty(value = "åçä¸å¡ç¶æï¼9=åçï¼6=æç»åçï¼") private Integer acceptanceStatus; } server/service/src/main/java/com/doumee/dao/business/dto/PayCashDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,24 @@ package com.doumee.dao.business.dto; import com.doumee.dao.business.model.Multifile; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * åå¨ è¡¥å 说æ */ @Data public class PayCashDTO { @ApiModelProperty(value = "ä¸å¡ä¸»é®") private Integer id; @ApiModelProperty(value = "说æã夿³¨") private String describe; @ApiModelProperty(value = "ææ¬¾å¾ç") private List<Multifile> multifileList; } server/service/src/main/java/com/doumee/dao/business/dto/RiskConfigDTO.java
@@ -26,7 +26,7 @@ @ApiModelProperty(value = "é£é©æé设置-ç´¢èµæ¬¡æ°", example = "1") private String riskClaimTimes; @ApiModelProperty(value = "é£é©æé设置-æ°åå·¥åºé©æéæ¯å¦å¼å¯ï¼0=å¦ï¼1=æ¯;", example = "1") private String riskNewMemberOepn; private String riskNewMemberOpen; @ApiModelProperty(value = "é£é©æé设置-æ°åå·¥åºé©æéæ¶é´åä½ï¼0åé 1å°æ¶ 2天", example = "1") private String riskNewMemberTimeUnit; @ApiModelProperty(value = "é£é©æé设置-æ°åå·¥åºé©æéæ¶é´", example = "1") server/service/src/main/java/com/doumee/dao/business/dto/SaveSupplementDescribeDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,26 @@ package com.doumee.dao.business.dto; import com.doumee.dao.business.model.Multifile; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * åå¨ è¡¥å 说æ */ @Data public class SaveSupplementDescribeDTO { @ApiModelProperty(value = "ä¸å¡ä¸»é®") private Integer id; @ApiModelProperty(value = "è¡¥å 说æ") private String describe; @ApiModelProperty(value = "è¡¥å 说ææä»¶") private List<Multifile> supplementFileList; } server/service/src/main/java/com/doumee/dao/business/dto/SettleClaimsDTO.java
@@ -23,6 +23,12 @@ @ApiModelProperty(value = "åºé©äºº") private Integer memberId; @ApiModelProperty(value = "æä¿ç³è¯·ç¼ç ", example = "1") private Integer insuranceApplyId; @ApiModelProperty(value = "æä¿ç³è¯·æç»ç¼ç ", example = "1") private Integer applyDetailId; @ApiModelProperty(value = "åºé©äºº") private String idcardNo; server/service/src/main/java/com/doumee/dao/business/model/SettleClaims.java
@@ -106,8 +106,8 @@ @ExcelColumn(name="åå·") private String code; @ApiModelProperty(value = "ç¶æ å¼ç¨(0å¾ åçï¼å¤çä¸ï¼ 1éååçï¼å·²æ¤æ¡ï¼2åçä¸ 3ç¡®è®¤èµæï¼å¤çä¸ï¼ 4宿åçï¼å·²ç»æ¡ï¼) 5å¾ åç 6åçéå 7å¾ åè®® 8åè®®å¾ å®¡æ¹ 9åè®®å®¡æ¹æç» 10å·²åç", example = "1") @ExcelColumn(name="ç¶æ 0å¾ åçï¼å¤çä¸ï¼ 1éååçï¼å·²æ¤æ¡ï¼ 2ç¡®è®¤èµæï¼å¤çä¸ï¼ 3宿åçï¼å·²ç»æ¡ï¼") @ApiModelProperty(value = "ç¶æ 0æåä¸ 1å·²æ¥æ¡ 2å¾ ç«æ¡ 3å·²ç«æ¡ 4ç«æ¡éå 5å¾ åç 6æç»åç 7åè®®å¾ å®¡æ¹ 8åè®®å®¡æ¹æç» 9å·²åç 10å¾ æ ¸èµ 11å·²æ ¸èµ 12å¾ ç»æ¡ 13å·²ç»æ¡ 14å·²æ¤æ¡", example = "1") @ExcelColumn(name="ç¶æ 0æåä¸ 1å·²æ¥æ¡ 2å¾ ç«æ¡ 3å·²ç«æ¡ 4ç«æ¡éå 5å¾ åç 6æç»åç 7åè®®å¾ å®¡æ¹ 8åè®®å®¡æ¹æç» 9å·²åç 10å¾ æ ¸èµ 11å·²æ ¸èµ 12å¾ ç»æ¡ 13å·²ç»æ¡ 14å·²æ¤æ¡") private Integer status; @ApiModelProperty(value = "äºæ ç±»å 0工使é´å伤 1ä¸ä¸çéä¸å伤 2é工使¶é´å伤 3æå¤å伤", example = "1") @@ -177,37 +177,37 @@ private String shouliType; @ApiModelProperty(value = "çèµæ¥æº 0ä¼ä¸ 1å¹³å°å½å ¥ 2å ¶ä» ") @ExcelColumn(name="çèµæ¥æº 0ä¼ä¸ 1å¹³å°å½å ¥ 2å ¶ä»") private Integer origin; private String origin; @ApiModelProperty(value = "åçåè®®é®é¢ 0èµæç¼ºå¤±ï¼1å»¶è¿æ¥æ¡ 2è¶ èä¸ç±»å« 3å ¶ä»ï¼å¤ä¸ªç¨è±æéå·éå¼ï¼") @ExcelColumn(name="åçåè®®é®é¢ 0èµæç¼ºå¤±ï¼1å»¶è¿æ¥æ¡ 2è¶ èä¸ç±»å« 3å ¶ä»ï¼å¤ä¸ªç¨è±æéå·éå¼ï¼") private String syProblemOpts; @ApiModelProperty(value = "æ¯å¦é£é©æ¡ä»¶ 0å¦ 1æ¯") @ExcelColumn(name="æ¯å¦é£é©æ¡ä»¶ 0å¦ 1æ¯") private String isRisk; private Integer isRisk; @ApiModelProperty(value = "æ¯å¦å¤æ¬¡åºé©é£é© 0å¦1æ¯ ") @ExcelColumn(name="æ¯å¦å¤æ¬¡åºé©é£é© 0å¦1æ¯ ") private String riskTimesCx; private Integer riskTimesCx; @ApiModelProperty(value = "æ¯å¦çä¼¼é夿¥æ¡é£é© 0å¦1æ¯ ") @ExcelColumn(name="æ¯å¦çä¼¼é夿¥æ¡é£é© 0å¦1æ¯ ") private String riskRepeat; private Integer riskRepeat; @ApiModelProperty(value = "æ¯å¦ç´¢èµå¤æ¬¡è¿å¤é£é© 0å¦1æ¯") @ExcelColumn(name="æ¯å¦ç´¢èµå¤æ¬¡è¿å¤é£é© 0å¦1æ¯") private String riskTimesSp; private Integer riskTimesSp; @ApiModelProperty(value = "æ¯å¦æ°åå·¥åºé©é£é© 0å¦1æ¯") @ExcelColumn(name="æ¯å¦æ°åå·¥åºé©é£é© 0å¦1æ¯") private String riskNewUser ; private Integer riskNewUser ; @ApiModelProperty(value = "设计ææè¯ï¼å¤ä¸ªè±æéå·éå¼") @ExcelColumn(name="设计ææè¯ï¼å¤ä¸ªè±æéå·éå¼") private String riskSensitive; @ApiModelProperty(value = "æ¥æ¡å·è®¾ç½®ç¶æ 0æªè®¾ç½® 1已设置 2已修æ¹") @ExcelColumn(name="æ¥æ¡å·è®¾ç½®ç¶æ 0æªè®¾ç½® 1已设置 2已修æ¹") private String reportNumStatus; private Integer reportNumStatus; @ApiModelProperty(value = "ææèµä»é¡¹ä¿¡æ¯ï¼jsonæ°ç»[{name:âä¼é£è´¹â,val:100,info:âä¼é£è´¹è¯´æâ,type:0}]ï¼,type:0主è¦èµä»é¡¹ 1å ¶ä»èµä»é¡¹ 2å®ææ¹æ¡è´¹ç¨\t") @ExcelColumn(name="ææèµä»é¡¹ä¿¡æ¯") private String accountContent; @ApiModelProperty(value = "å ¶ä»èµä»é¡¹æ»é¢") @ExcelColumn(name="å ¶ä»èµä»é¡¹æ»é¢") private String otherAccount; private BigDecimal otherAccount; @ApiModelProperty(value = "æ¯å¦å¯èµä»å»ä¿å¤ç¨è¯") @ExcelColumn(name="æ¯å¦å¯èµä»å»ä¿å¤ç¨è¯") private String payForYbwyy; @@ -227,10 +227,19 @@ @ExcelColumn(name="æ¶æ¬¾è´¦æ·") private String receiveAccount; @ApiModelProperty(value = "é£é©ä¿¡æ¯éå") private String riskContent; @ApiModelProperty(value = "æ¯å¦å¾ è¡¥å ææ:0=å¦ï¼1=æ¯") private Integer waitSupplement; @ApiModelProperty(value = "è´¹ç¨æ¯å¦åçåæ´:0=å¦ï¼1=æ¯ï¼") private Integer feeUpdate; @ApiModelProperty(value = "æ¡ä»¶ç±»åï¼0=æªè®¾ç½®ï¼1=å»çï¼2=伤æ®ï¼3=æ»äº¡") private Integer caseType; @ApiModelProperty(value = "ä¿é©åéä»¶") @TableField(exist = false) @@ -259,6 +268,12 @@ @TableField(exist = false) private List<Multifile> compensationFileList; @ApiModelProperty(value = "å ¶ä»èµæ") @TableField(exist = false) private List<Multifile> otherFileList; @ApiModelProperty(value = "æ¥å¿å表") @TableField(exist = false) List<SettleClaimsLog> settleClaimsLogList; server/service/src/main/java/com/doumee/dao/business/model/SolutionsBase.java
@@ -158,8 +158,8 @@ @ApiModelProperty(value = "é£é©è®¾ç½®-å 许对æ°å工已æä¿æªçæä¿é©è¿è¡ä¿é 0ä¸å 许 1å 许") @ExcelColumn(name="é£é©è®¾ç½®-å 许对æ°å工已æä¿æªçæä¿é©è¿è¡ä¿é 0ä¸å 许 1å 许") private Integer riskNewUserStatus; @ApiModelProperty(value = "é£é©è®¾ç½®-å 许æ°åå·¥åºé©æ¶é´æåæ¶é´åä½ 0åé 1å°æ¶ 2天") @ExcelColumn(name="é£é©è®¾ç½®-å 许æ°åå·¥åºé©æ¶é´æåæ¶é´åä½ 0åé 1å°æ¶ 2天") @ApiModelProperty(value = "é£é©è®¾ç½®-å 许æ°åå·¥åºé©æ¶é´æåæ¶é´åä½ 1å°æ¶ 2天") @ExcelColumn(name="é£é©è®¾ç½®-å 许æ°åå·¥åºé©æ¶é´æåæ¶é´åä½ 1å°æ¶ 2天") private Integer riskNewUserUnit; @ApiModelProperty(value = "é£é©è®¾ç½®-å 许æ°åå·¥åºé©æ¶é´æåæ¶é´") @ExcelColumn(name="é£é©è®¾ç½®-å 许æ°åå·¥åºé©æ¶é´æåæ¶é´") server/service/src/main/java/com/doumee/dao/business/vo/CompensationVO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,27 @@ package com.doumee.dao.business.vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; /** * åå¨ è¡¥å 说æ */ @Data public class CompensationVO { @ApiModelProperty(value = "èµä»ç±»åï¼1=主è¦èµä»é¡¹ï¼2=å ¶ä»èµä»é¡¹") private Integer type; @ApiModelProperty(value = "èµä»é¡¹") private String name; @ApiModelProperty(value = "è´¹ç¨è¯´æ") private String describe; @ApiModelProperty(value = "èµä»è´¹ç¨") private BigDecimal fee; } server/service/src/main/java/com/doumee/dao/business/vo/RiskConfigVO.java
@@ -19,7 +19,7 @@ private String riskTimesReportTimes; @ApiModelProperty(value = "é£é©æé设置-é夿¥æ¡æ¯å¦å¼å¯ï¼0=å¦ï¼1=æ¯", example = "1") private String riskRepeatReportOpen; @ApiModelProperty(value = "é£é©æé设置-é夿¥æ¡æ¶é´åä½ï¼0åé 1å°æ¶ 2天", example = "1") @ApiModelProperty(value = "é£é©æé设置-é夿¥æ¡æ¶é´åä½ï¼1å°æ¶ 2天", example = "1") private String riskRepeatReportTimeUnit; @ApiModelProperty(value = "é£é©æé设置-é夿¥æ¡æ¶é´", example = "1") private String riskRepeatReportTime; @@ -28,8 +28,8 @@ @ApiModelProperty(value = "é£é©æé设置-ç´¢èµæ¬¡æ°", example = "1") private String riskClaimTimes; @ApiModelProperty(value = "é£é©æé设置-æ°åå·¥åºé©æéæ¯å¦å¼å¯ï¼0=å¦ï¼1=æ¯;", example = "1") private String riskNewMemberOepn; @ApiModelProperty(value = "é£é©æé设置-æ°åå·¥åºé©æéæ¶é´åä½ï¼0åé 1å°æ¶ 2天", example = "1") private String riskNewMemberOpen; @ApiModelProperty(value = "é£é©æé设置-æ°åå·¥åºé©æéæ¶é´åä½ï¼1å°æ¶ 2天", example = "1") private String riskNewMemberTimeUnit; @ApiModelProperty(value = "é£é©æé设置-æ°åå·¥åºé©æéæ¶é´", example = "1") private String riskNewMemberTime; server/service/src/main/java/com/doumee/service/business/ApplyDetailService.java
@@ -107,4 +107,6 @@ * @return */ List<ApplyDetail> getMemberApplyList(Integer memberId); List<ApplyDetail> getMemberSettleClaimsList(Integer memberId); } server/service/src/main/java/com/doumee/service/business/SettleClaimsService.java
@@ -2,8 +2,10 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.dto.SCSupplementDTO; import com.doumee.dao.business.dto.*; import com.doumee.dao.business.model.SettleClaims; import com.doumee.dao.business.vo.CompensationVO; import com.doumee.service.system.impl.SystemDictDataServiceImpl; import io.swagger.models.auth.In; import javax.servlet.http.HttpServletResponse; @@ -132,4 +134,107 @@ Integer delFile(Integer id, Integer fileId); Integer createSys(SettleClaims settleClaims); /************************************************************************æ°ä¸å¡******************************************************************************************/ /** * ä¼ä¸æ¥æ¡æäº¤ * @param settleClaimsDTO * @param systemDictDataService */ void saveSettleClaims(SettleClaimsDTO settleClaimsDTO, SystemDictDataServiceImpl systemDictDataService); /** * è¡¥å 说æ * å¹³å°ç«¯ä½¿ç¨ * @param dto */ void saveSupplementDescribe(SaveSupplementDescribeDTO dto); /** * æ·»å è¡¥å ææ * @param dto */ void saveSupplementFile(SaveSupplementDescribeDTO dto); /** * æ¤éæ¥æ¡ * @param dto */ void returnSettle(OptSettleClaimsDTO dto); /** * å¹³å°ç«æ¡æéå * @param dto */ void register(OptSettleClaimsDTO dto); /** * æ·»å æ¥æ¡å· * @param param * @return */ Integer addReportNum(OptSettleClaimsDTO param); /** * æ·»å 夿³¨ * @param param * @return */ Integer addRemark(OptSettleClaimsDTO param); /** * åçä¸å¡ * @param dto */ void acceptance(AcceptanceSettleClaimsDTO dto); /** * çèµéé¢é¡¹ * @param id * @return */ List<CompensationVO> getCompensation(Integer id); /** * çèµä¸å¡ * @param dto */ void compensation(CompensationDTO dto); /** * åè®®å®¡æ¹ * @param dto */ void discussAudit(DiscussAuditDTO dto); /** * 平尿 ¸èµ * @param dto */ void nuclearCompensation(CompensationDTO dto); /** * ä¿®æ¹éé¢ * @param dto */ void updFee(CompensationDTO dto); /** * 客æ·ç¡®è®¤éé¢ * @param id */ void confirmFee(Integer id); /** * ä¿®æ¹æ¡ä»¶ç±»å * @param dto */ void updCaseType(CaseTypeDTO dto); } server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
@@ -1200,6 +1200,14 @@ List<ApplyChagneDetail> delDetailList = applyChange.getDelDetailList(); //å ä¿æ°æ® List<ApplyChagneDetail> addDetailList = applyChange.getAddDetailList(); //æ¢åä¸å¡ List<ApplyChagneDetail> changeDetailList = applyChange.getChangeDetailList(); if(CollectionUtils.isEmpty(delDetailList) && CollectionUtils.isEmpty(addDetailList) && CollectionUtils.isEmpty(changeDetailList)){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼æªæ·»å äººåæ°æ®æ æ³è¿è¡æäº¤"); } if (CollectionUtils.isNotEmpty(addDetailList)) { if(Objects.isNull(solutions.getCanAdd()) || solutions.getCanAdd().equals(Constants.ZERO)){ @@ -1238,7 +1246,6 @@ } //æ¢åä¸å¡ List<ApplyChagneDetail> changeDetailList = applyChange.getChangeDetailList(); if (CollectionUtils.isNotEmpty(changeDetailList)) { if(Objects.isNull(solutions.getCanChangeUnit()) || solutions.getCanChangeUnit().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "该ä¿é©æ¹æ¡æ æ³è¿è¡æ¢åæä½"); @@ -1358,6 +1365,7 @@ } //æ¥è¯¢åå·¥æ¯å¨ä¸»åä¸ æ¯å¦åå¨çæä¸çæ°æ® List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectList(new QueryWrapper<ApplyDetail>().lambda() .eq(ApplyDetail::getIsdeleted,Constants.ZERO) .eq(ApplyDetail::getApplyId, applyChange.getApplyId()) .eq(ApplyDetail::getMemberId, applyChagneDetail.getMemberId()) // .le(ApplyDetail::getStartTime,DateUtil.getMontageDate(applyChange.getDelValidTime(),1)) @@ -1616,6 +1624,7 @@ } //æ¥è¯¢åå·¥æ¯å¨ä¸»åä¸ æ¯å¦åå¨çæä¸çæ°æ® List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectList(new QueryWrapper<ApplyDetail>().lambda() .eq(ApplyDetail::getIsdeleted,Constants.ZERO) .eq(ApplyDetail::getApplyId, applyChange.getApplyId()) .eq(ApplyDetail::getMemberId, applyChagneDetail.getMemberId()) .le(ApplyDetail::getStartTime,DateUtil.getMontageDate(applyChange.getApplyStartTime(),1)) server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
@@ -2,6 +2,7 @@ import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; @@ -18,6 +19,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -215,6 +217,7 @@ queryWrapper.leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId); queryWrapper.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId); queryWrapper.leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId); queryWrapper.eq(ApplyDetail::getIsdeleted,Constants.ZERO); ApplyDetailPageDTO applyDetailPageDTO = pageWrap.getModel(); @@ -366,6 +369,37 @@ } /** * æ¥è¯¢äººå坿¥æ¡æ°æ® * @param memberId * @return */ @Override public List<ApplyDetail> getMemberSettleClaimsList(Integer memberId){ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectJoinList(ApplyDetail.class, new MPJLambdaWrapper<ApplyDetail>() .selectAll(ApplyDetail.class) .selectAs(InsuranceApply::getCode,ApplyDetail::getApplyCode) .selectAs(InsuranceApply::getStartTime,ApplyDetail::getParentStartTime) .selectAs(InsuranceApply::getEndTime,ApplyDetail::getParentEndTime) .selectAs(Company::getName,ApplyDetail::getCompanyName) .selectAs(Solutions::getName,ApplyDetail::getSolutionName) .selectAs(Worktype::getName,ApplyDetail::getWorkTypeName) .selectAs(DispatchUnit::getName,ApplyDetail::getDuName) .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId) .leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId) .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId) .leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId) .leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId) .in(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey(), Constants.InsuranceApplyStatus.WTB_DONE.getKey()) .eq(ApplyDetail::getIsdeleted,Constants.ZERO) .eq(InsuranceApply::getCompanyId,user.getCompanyId()) .eq(ApplyDetail::getMemberId,memberId) ); return applyDetailList; } } server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -3776,6 +3776,11 @@ return applyPowerVO; } } server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java
@@ -7,7 +7,9 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; import com.doumee.dao.business.AreasMapper; import com.doumee.dao.business.KnowledgeMapper; import com.doumee.dao.business.model.Areas; import com.doumee.dao.business.model.Knowledge; import com.doumee.service.business.KnowledgeService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -35,15 +37,16 @@ @Autowired private KnowledgeMapper knowledgeMapper; @Autowired private AreasMapper areasMapper; @Override public Integer create(Knowledge knowledge) { LoginUserInfo user= (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(Objects.isNull(knowledge) || StringUtils.isBlank(knowledge.getTitle()) || StringUtils.isBlank(knowledge.getLink()) // || StringUtils.isBlank(knowledge.getCityName()) // || Objects.isNull(knowledge.getCityId()) || StringUtils.isBlank(knowledge.getProvinceName()) || Objects.isNull(knowledge.getProvinceId()) || StringUtils.isBlank(knowledge.getYearInfo()) || StringUtils.isBlank(knowledge.getTitle()) @@ -53,6 +56,18 @@ } if(knowledge.getLabels().split(",").length>10){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æ ç¾æ°æå¤æ·»å å个"); } Areas province = areasMapper.selectById(knowledge.getProvinceId()); if(Objects.isNull(province)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"ç份信æ¯é误"); } knowledge.setProvinceName(province.getName()); if(Objects.nonNull(knowledge.getCityId())){ Areas city = areasMapper.selectById(knowledge.getCityId()); if(Objects.isNull(city)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"å¸åºä¿¡æ¯é误"); } knowledge.setCityName(city.getName()); } knowledge.setIsdeleted(Constants.ZERO); knowledge.setCreateDate(new Date()); @@ -88,8 +103,6 @@ || Objects.isNull(knowledge.getId()) || StringUtils.isBlank(knowledge.getTitle()) || StringUtils.isBlank(knowledge.getLink()) || StringUtils.isBlank(knowledge.getProvinceName()) // || StringUtils.isBlank(knowledge.getCityName()) // || Objects.isNull(knowledge.getCityId()) || Objects.isNull(knowledge.getProvinceId()) || StringUtils.isBlank(knowledge.getYearInfo()) @@ -101,6 +114,18 @@ if(knowledge.getLabels().split(",").length>10){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æ ç¾æ°æå¤æ·»å å个"); } Areas province = areasMapper.selectById(knowledge.getProvinceId()); if(Objects.isNull(province)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"ç份信æ¯é误"); } knowledge.setProvinceName(province.getName()); if(Objects.nonNull(knowledge.getCityId())){ Areas city = areasMapper.selectById(knowledge.getCityId()); if(Objects.isNull(city)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"å¸åºä¿¡æ¯é误"); } knowledge.setCityName(city.getName()); } knowledge.setEditDate(new Date()); knowledge.setEditor(user.getId()); knowledgeMapper.updateById(knowledge); server/service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java
@@ -42,9 +42,14 @@ || StringUtils.isEmpty(labels.getName())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } if(labelsMapper.selectCount(new QueryWrapper<Labels>().lambda().eq(Labels::getIsdeleted,Constants.ZERO).eq(Labels::getStatus,Constants.ZERO))>=5){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼æå¤é ç½®50个æ ç¾~"); } labelsMapper.delete(new QueryWrapper<Labels>().lambda().eq(Labels::getName,labels.getName())); labels.setCreateDate(new Date()); labels.setCreator(user.getId()); labels.setStatus(Constants.ZERO); labels.setIsdeleted(Constants.ZERO); labelsMapper.insert(labels); return labels.getId(); } server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
@@ -1,5 +1,6 @@ package com.doumee.service.business.impl; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.constants.ResponseStatus; @@ -8,16 +9,16 @@ 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.dto.SCSupplementDTO; import com.doumee.dao.business.dto.SettleClaimsDTO; import com.doumee.dao.business.*; import com.doumee.dao.business.dto.*; 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.CompensationVO; 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; @@ -25,6 +26,7 @@ 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; @@ -32,15 +34,18 @@ 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 org.springframework.transaction.annotation.Transactional; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.math.BigDecimal; import java.net.URLEncoder; import java.nio.charset.Charset; import java.util.*; @@ -73,6 +78,19 @@ @Autowired private NoticesMapper noticesMapper; @Autowired private InsuranceApplyMapper insuranceApplyMapper; @Autowired private SolutionsMapper solutionsMapper; @Autowired private SolutionsBaseMapper solutionsBaseMapper; @Autowired private ApplyDetailMapper applyDetailMapper; /** * å é¤éä»¶ * @return @@ -355,8 +373,9 @@ SettleClaimsLog log = new SettleClaimsLog(update,applyLogType.getName(), info,update.getId(),applyLogType.getKey(), JSONObject.toJSONString(model), JSONObject.toJSONString(update)); settleClaimsLogMapper.insert(log); return 1; } @Override public Integer createSys(SettleClaims settleClaims) { LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); @@ -612,6 +631,8 @@ settleClaims.setDisabilityFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_SCZL_FILE.getKey())).collect(Collectors.toList())); settleClaims.setCompensationFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_JACL_FILE.getKey())).collect(Collectors.toList())); settleClaims.setOtherFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_OTHER_FILE.getKey())).collect(Collectors.toList())); } //æ¥è¯¢æä½è®°å½ @@ -755,7 +776,6 @@ ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } SettleClaims settleClaims = settleClaimsMapper.selectById(scSupplementDTO.getId()); if(!(settleClaims.getStatus().equals(Constants.SettleClaimsStatus.WAIT_ACCEPTANCE.getKey()) || settleClaims.getStatus().equals(Constants.SettleClaimsStatus.DEAL_ING.getKey()) @@ -1005,7 +1025,9 @@ } public void saveSettleClaims(SettleClaimsDTO settleClaimsDTO){ @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void saveSettleClaims(SettleClaimsDTO settleClaimsDTO,SystemDictDataServiceImpl systemDictDataService){ LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ONE)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"éä¼ä¸åå·¥æ æ³è¿è¡è¯¥æä½"); @@ -1014,6 +1036,7 @@ || Objects.isNull(settleClaimsDTO.getSaveType()) || Objects.isNull(settleClaimsDTO.getMemberId()) ||StringUtils.isBlank(settleClaimsDTO.getIdcardNo()) || Objects.isNull(settleClaimsDTO.getInsuranceApplyId()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } @@ -1038,9 +1061,17 @@ } SettleClaims settleClaims = new SettleClaims(); BeanUtils.copyProperties(settleClaimsDTO,settleClaims); settleClaims.setReportNumStatus(Constants.ZERO); if(Objects.nonNull(settleClaims.getId())){ settleClaims.setEditDate(new Date()); settleClaims.setEditor(loginUserInfo.getId()); 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)){ //å¤çé£é©ä¿¡æ¯ this.saveRisk(settleClaims,settleClaimsDTO,systemDictDataService); } settleClaimsMapper.updateById(settleClaims); }else{ settleClaims.setCreateDate(new Date()); @@ -1048,15 +1079,207 @@ 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)){ //å¤çé£é©ä¿¡æ¯ this.saveRisk(settleClaims,settleClaimsDTO,systemDictDataService); } settleClaims.setCreator(loginUserInfo.getId()); settleClaims.setCheckUserId(loginUserInfo.getId()); settleClaimsMapper.insert(settleClaims); } this.saveFile(settleClaims,settleClaimsDTO,loginUserInfo); //è®°å½æ¥å¿ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.UPLOAD,null); } 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); } } //çä¼¼æ°åå·¥åºé© if(StringUtils.isNotBlank(riskConfigVO.getRiskNewMemberOpen()) && StringUtils.equals(riskConfigVO.getRiskNewMemberOpen(),Constants.ONE+"") && StringUtils.isNotBlank(riskConfigVO.getRiskNewMemberTimeUnit()) && StringUtils.isNotBlank(riskConfigVO.getRiskNewMemberTime()) ){ Map<String,String> map = new HashMap<>(); map.put("title","çä¼¼æ°åå·¥åºé©"); if(riskConfigVO.getRiskNewMemberTimeUnit().equals(Constants.ONE+"")){ if(DateUtil.afterMinutesByDate(Integer.valueOf(riskConfigVO.getRiskNewMemberTime())*60,insuranceApply.getStartTime()).getTime() < happenTime.getTime()){ map.put("info","ä¿é©çææ¶é´ä¸º"+DateUtil.getFomartDate(insuranceApply.getStartTime(),"yyyy-MM-dd")+""); riskList.add(map); settleClaims.setRiskNewUser(Constants.ONE); }; }else if(Constants.equalsInteger(solutionsBase.getRiskDelayUnit(),Constants.TWO)){ if(DateUtil.afterDayByDate(Integer.valueOf(riskConfigVO.getRiskNewMemberTime()),insuranceApply.getStartTime()).getTime() < happenTime.getTime()){ map.put("info","ä¿é©çææ¶é´ä¸º"+DateUtil.getFomartDate(insuranceApply.getStartTime(),"yyyy-MM-dd")+""); riskList.add(map); settleClaims.setRiskNewUser(Constants.ONE); } } } settleClaims.setRiskContent(JSONObject.toJSONString(riskList)); if(riskList.size()>Constants.ZERO){ settleClaims.setIsRisk(Constants.ONE); }else{ settleClaims.setIsRisk(Constants.ZERO); settleClaims.setStatus(Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey()); } } public void saveFile(SettleClaims settleClaims,SettleClaimsDTO settleClaimsDTO,LoginUserInfo loginUserInfo){ multifileJoinMapper.delete(new QueryWrapper<Multifile>().lambda() @@ -1188,14 +1411,670 @@ multifile.setSortnum(i+1); multifileJoinMapper.insert(multifile); } } } // public void getRiskSettleDetail(Integer id){ // settleClaimsJoinMapper.selectJoinOne(SettleClaims.class,new MPJLambdaWrapper<SettleClaims>() // .selectAll(SettleClaims.class) // .selectAs(DispatchUnit::getName,SettleClaims::getDuName) // .selectAs(Worktype::getName,SettleClaims::getWorktypeName) // .selectAs(Solutions::getName,SettleClaims::getSolutionName) // .selectAs(InsuranceApply::getStartTime,SettleClaims::getBaoxianStartTime) // .selectAs(InsuranceApply::getEndTime,SettleClaims::getBaoxianEndTime) // .leftJoin(Solutions.class,Solutions::getId,SettleClaims::getSolutionId) // .leftJoin(DispatchUnit.class,DispatchUnit::getId,SettleClaims::getDuId) // .leftJoin(Worktype.class,Worktype::getId,SettleClaims::getWorktypeId) // .leftJoin(InsuranceApply.class,InsuranceApply::getId,SettleClaims::getInsuranceApplyId) // // // .eq(SettleClaims::getId,id) // .last(" limit 1 ") // ); // } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void saveSupplementDescribe(SaveSupplementDescribeDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || Objects.isNull(dto.getDescribe())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!Constants.equalsInteger(Constants.SettleClaimsStatus.ACCEPTANCE.getKey(),settleClaims.getStatus())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } if(Constants.equalsInteger(settleClaims.getWaitSupplement(),Constants.ONE)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"å¾ ä¼ä¸è¡¥å æä»¶ï¼è¯·çå¾ ä¼ä¸è¡¥å æä»¶"); } //å卿¥å¿ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT_DESCRIBE,dto.getDescribe()); settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda() .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getWaitSupplement,Constants.ONE)); } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void saveSupplementFile(SaveSupplementDescribeDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || CollectionUtils.isEmpty(dto.getSupplementFileList())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!(loginUserInfo.getType().equals(Constants.ZERO)||loginUserInfo.getType().equals(Constants.ONE))){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"éå¹³å°ä¸ä¼ä¸åå·¥æ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(loginUserInfo.getType().equals(Constants.ZERO)){ if(!(Constants.equalsInteger(Constants.SettleClaimsStatus.ACCEPTANCE.getKey(),settleClaims.getStatus()) || Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey(),settleClaims.getStatus()) )){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } }else{ //妿æ¯ä¼ä¸ æ¥è¯¢æ¯å¦æ¯èªå·±ä¼ä¸çæ°æ® if(!Constants.equalsInteger(settleClaims.getCompanyId(),loginUserInfo.getCompanyId())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鿍ä¼ä¸çæ°æ®ï¼æ¨æ æ³è¿è¡è¯¥æä½"); } if(!Constants.equalsInteger(settleClaims.getWaitSupplement(),Constants.ONE)) { throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "å½åä¸å¡æ éè¿è¡æ·»å ææ"); } if(!(Constants.equalsInteger(Constants.SettleClaimsStatus.ACCEPTANCE.getKey(),settleClaims.getStatus()) || Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey(),settleClaims.getStatus()) || Constants.equalsInteger(Constants.SettleClaimsStatus.REJECT_DEAL.getKey(),settleClaims.getStatus()) || Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_DISCUSS_REJECT.getKey(),settleClaims.getStatus()) )){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda() .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getWaitSupplement,Constants.ZERO)); } multifileJoinMapper.delete(new QueryWrapper<Multifile>().lambda().eq(Multifile::getObjId,dto.getId()).eq(Multifile::getObjType,Constants.MultiFile.LP_OTHER_FILE.getKey())); List<Multifile> fileList = dto.getSupplementFileList(); if(CollectionUtils.isNotEmpty(fileList)){ for (int i = 0; i < fileList.size(); i++) { Multifile multifile = fileList.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); } } //å卿¥å¿ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT,null); } /** * æ¤éæ¥æ¡ * @param dto */ @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void returnSettle(OptSettleClaimsDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ONE)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"éä¼ä¸äººåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } //妿æ¯ä¼ä¸ æ¥è¯¢æ¯å¦æ¯èªå·±ä¼ä¸çæ°æ® 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(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } //å卿¥å¿ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.RETURN_SETTLE,null); settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda() .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getStatus,Constants.SettleClaimsStatus.RETURN.getKey())); } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void updCaseType(CaseTypeDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || Objects.isNull(dto.getCaseType()) || !(dto.getCaseType()>=Constants.ONE&&dto.getCaseType()<=Constants.THREE) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!Constants.equalsInteger(Constants.SettleClaimsStatus.ACCEPTANCE.getKey(),settleClaims.getStatus())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.UPD_CASE_TYPE,Constants.SettleClaimsLogType.UPD_CASE_TYPE.getInfo()); settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda() .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()) .set(SettleClaims::getEditor,loginUserInfo.getId()) .set(SettleClaims::getCaseType,dto.getCaseType())); } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void register(OptSettleClaimsDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || Objects.isNull(dto.getRegisterStatus()) || !(Constants.equalsInteger(dto.getRegisterStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())||Constants.equalsInteger(dto.getRegisterStatus(),Constants.SettleClaimsStatus.FINISH_ACCEPTANCE.getKey())) || (Constants.equalsInteger(dto.getRegisterStatus(),Constants.SettleClaimsStatus.FINISH_ACCEPTANCE.getKey())&&StringUtils.isBlank(dto.getDescribe())) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!Constants.equalsInteger(Constants.SettleClaimsStatus.RETURN_ACCEPTANCE.getKey(),settleClaims.getStatus())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } Constants.SettleClaimsStatus settleClaimsStatus = Constants.equalsInteger(dto.getRegisterStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())?Constants.SettleClaimsStatus.CONFIRM_INFORMATION:Constants.SettleClaimsStatus.FINISH_ACCEPTANCE; //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.equalsInteger(dto.getRegisterStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())?Constants.SettleClaimsLogType.PLATFORM_REGISTER:Constants.SettleClaimsLogType.PLATFORM_RETURN,dto.getDescribe()); settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda() .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate, DateUtil.getCurrDateTime()).set(SettleClaims::getStatus,settleClaimsStatus.getKey())); } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public Integer addReportNum(OptSettleClaimsDTO param){ if(param.getId() == null ||StringUtils.isBlank( param.getReportNum()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } SettleClaims model = settleClaimsMapper.selectById(param.getId()); if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey()) || Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey()) ) ){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!user.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } if(Constants.equalsInteger(model.getReportNumStatus(),Constants.TWO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"ä» å¯ä¿®æ¹ä¸æ¬¡æ¥æ¡å·"); } if(!((Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey())&&Constants.equalsInteger(model.getReportNumStatus(),Constants.ONE)) ||(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.WAIT_DEAL.getKey())&&Constants.equalsInteger(model.getReportNumStatus(),Constants.ZERO)))){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"ä» å¯ä¿®æ¹ä¸æ¬¡æ¥æ¡å·"); } // //æ¥è¯¢æ¯å¦ææ¥æ¡å·æ´æ¹è®°å½ // if(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey()) // && settleClaimsLogMapper.selectCount(new QueryWrapper<SettleClaimsLog>().lambda() // .eq(SettleClaimsLog::getObjType,Constants.SettleClaimsLogType.PLATFORM_ADDCODE.getKey()) // .eq(SettleClaimsLog::getSettleClainmsId,param.getId()))>=Constants.ONE){ // throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"ä» å¯ä¿®æ¹ä¸æ¬¡æ¥æ¡å·"); // } // 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()); update.setEditor(user.getId()); update.setReportNumStatus(model.getReportNumStatus()+Constants.ONE); update.setId(model.getId()); update.setCheckDate(update.getEditDate()); update.setCheckInfo("æ·»å 夿¡å·"); update.setCheckUserId(user.getId()); update.setReportNum(param.getReportNum()); settleClaimsMapper.updateById(update); Constants.SettleClaimsLogType applyLogType = Constants.SettleClaimsLogType.PLATFORM_ADDCODE; 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)); settleClaimsLogMapper.insert(log); return 1; } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public Integer addRemark(OptSettleClaimsDTO param){ if(param.getId() == null ||StringUtils.isBlank( param.getDescribe()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } SettleClaims model = settleClaimsMapper.selectById(param.getId()); if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey()) ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey()) ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.REJECT_DEAL.getKey()) ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.WAIT_DISCUSS_AUDIT.getKey()) ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.WAIT_DISCUSS_REJECT.getKey()) ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey()) ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.COMPENSATION.getKey()) ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.CONFIRM_FEE.getKey()) ||Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.CLOSE_CASE.getKey()) )){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼è¯¥ç³è¯·å½å䏿¯æè¯¥æä½~"); } LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); SettleClaims update = new SettleClaims(); update.setEditDate(new Date()); update.setEditor(user.getId()); update.setCheckDate(update.getEditDate()); update.setCheckInfo("æ·»å 夿³¨æ ç¾"); update.setCheckUserId(user.getId()); update.setId(model.getId()); settleClaimsMapper.updateById(update); Constants.SettleClaimsLogType applyLogType = Constants.SettleClaimsLogType.PLATFORM_REMARK; 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)); settleClaimsLogMapper.insert(log); return 1; } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void acceptance(AcceptanceSettleClaimsDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || Objects.isNull(dto.getStatus()) || StringUtils.isBlank(dto.getDescribe()) || !(dto.getStatus()>=Constants.ZERO||dto.getStatus()<=Constants.THREE) || ((Constants.equalsInteger(dto.getStatus(),Constants.THREE) ||Constants.equalsInteger(dto.getStatus(),Constants.TWO)) && StringUtils.isBlank(dto.getSyProblemOpts()) ) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_DEAL.getKey(),settleClaims.getStatus())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } 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()) .set(SettleClaims::getStatus,Constants.SettleClaimsStatus.ACCEPTANCE.getKey())); //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.equalsInteger(dto.getStatus(),Constants.ZERO)?Constants.SettleClaimsLogType.PLATFORM_ACCEPTANCE:Constants.SettleClaimsLogType.PLATFORM_DISCUSS, dto.getDescribe()); }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()) .set(SettleClaims::getStatus,Constants.SettleClaimsStatus.REJECT_DEAL.getKey())); //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.PLATFORM_REFUSE_ACCEPTANCE, Constants.SettleClaimsLogType.PLATFORM_REFUSE_ACCEPTANCE.getInfo().replace("{param}",dto.getDescribe())); }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()) .set(SettleClaims::getStatus,Constants.SettleClaimsStatus.REJECT_DEAL.getKey())); //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.PLATFORM_WAIT_DISCUSS, dto.getDescribe()); } } @Override public List<CompensationVO> getCompensation(Integer id){ SettleClaims settleClaims = settleClaimsMapper.selectById(id); List<CompensationVO> modelList = new ArrayList<>(); if (Objects.nonNull(settleClaims)&&StringUtils.isNotBlank(settleClaims.getAccountContent())) { modelList = JSONArray.parseArray(settleClaims.getAccountContent(),CompensationVO.class); } Constants.compensation [] compensations = Constants.compensation.values(); List<CompensationVO> list = new ArrayList<>(); for (Constants.compensation c:compensations) { CompensationVO compensationVO = new CompensationVO(); compensationVO.setType(c.getType()); compensationVO.setName(c.getName()); if(CollectionUtils.isNotEmpty(modelList)){ Optional<CompensationVO> optionalModel = modelList.stream().filter(i->i.getName().equals(c.getName())).findFirst(); if(optionalModel.isPresent()){ CompensationVO oldModel = optionalModel.get(); compensationVO.setFee(oldModel.getFee()); compensationVO.setDescribe(oldModel.getDescribe()); } } list.add(compensationVO); } return list; } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void compensation(CompensationDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || StringUtils.isBlank(dto.getCompensationJson()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!(Constants.equalsInteger(Constants.SettleClaimsStatus.ACCEPTANCE.getKey(),settleClaims.getStatus()))||Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey(),settleClaims.getStatus())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } List<CompensationVO> modelList = JSONArray.parseArray(settleClaims.getAccountContent(),CompensationVO.class); SettleClaims update = new SettleClaims(); update.setEditDate(new Date()); update.setEditor(loginUserInfo.getId()); update.setYlClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.YL_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setWgClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.WG_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setScClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.SC_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setSwClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.SW_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setOtherAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setAccountContent(dto.getCompensationJson()); update.setId(settleClaims.getId()); update.setStatus(Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey()); settleClaimsMapper.updateById(update); //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.PLATFORM_LP_DEAL, Constants.SettleClaimsLogType.PLATFORM_LP_DEAL.getInfo()); } /** * åè®®å®¡æ¹ * @param dto */ @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void discussAudit(DiscussAuditDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || Objects.isNull(dto.getStatus()) || !(Constants.equalsInteger(dto.getStatus(),Constants.ZERO)||Constants.equalsInteger(dto.getStatus(),Constants.ONE)) || (Constants.equalsInteger(dto.getStatus(),Constants.ONE)&&StringUtils.isBlank(dto.getDescribe())) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_DISCUSS_AUDIT.getKey(),settleClaims.getStatus())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } Constants.SettleClaimsStatus settleClaimsStatus = Constants.equalsInteger(dto.getStatus(),Constants.ZERO)?Constants.SettleClaimsStatus.ACCEPTANCE:Constants.SettleClaimsStatus.WAIT_DISCUSS_REJECT; //å卿¥å¿ Constants.SettleClaimsLogType settleClaimsLogType = Constants.equalsInteger(dto.getStatus(),Constants.ZERO) ?Constants.SettleClaimsLogType.PLATFORM_DISCUSS_PASS:Constants.SettleClaimsLogType.PLATFORM_DISCUSS_REFUSE; this.saveSettleClaimsLog(settleClaims, settleClaimsLogType ,settleClaimsLogType.getInfo().replace("${param}",dto.getDescribe())); settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda() .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate, DateUtil.getCurrDateTime()) .set(SettleClaims::getEditor,loginUserInfo.getId()) .set(SettleClaims::getStatus,settleClaimsStatus.getKey())); } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void nuclearCompensation(CompensationDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || StringUtils.isBlank(dto.getCompensationJson()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey(),settleClaims.getStatus())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } List<CompensationVO> modelList = JSONArray.parseArray(settleClaims.getAccountContent(),CompensationVO.class); SettleClaims update = new SettleClaims(); update.setEditDate(new Date()); update.setEditor(loginUserInfo.getId()); update.setYlClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.YL_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setWgClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.WG_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setScClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.SC_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setSwClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.SW_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setOtherAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setAccountContent(dto.getCompensationJson()); update.setId(settleClaims.getId()); update.setStatus(Constants.SettleClaimsStatus.COMPENSATION.getKey()); settleClaimsMapper.updateById(update); //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.PLATFORM_HP_DEAL, Constants.SettleClaimsLogType.PLATFORM_HP_DEAL.getInfo()); } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void updFee(CompensationDTO dto){ if(Objects.isNull(dto) || Objects.isNull(dto.getId()) || StringUtils.isBlank(dto.getCompensationJson()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!(Constants.equalsInteger(Constants.SettleClaimsStatus.COMPENSATION.getKey(),settleClaims.getStatus()) || Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_FEE.getKey(),settleClaims.getStatus())) ){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } List<CompensationVO> modelList = JSONArray.parseArray(dto.getCompensationJson(),CompensationVO.class); SettleClaims update = new SettleClaims(); update.setEditDate(new Date()); update.setEditor(loginUserInfo.getId()); if(Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_FEE.getKey(),settleClaims.getStatus())){ update.setFeeUpdate(Constants.ONE); } update.setYlClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.YL_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setWgClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.WG_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setScClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.SC_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setSwClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&i.getName().equals(Constants.compensation.SW_COMPENSATION.getName())).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); update.setClaimAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add)); //å¤çå岿°æ® List<CompensationVO> oldList = JSONArray.parseArray(settleClaims.getAccountContent(),CompensationVO.class); for (CompensationVO compensationVO:oldList) { if(compensationVO.getName().equals(Constants.compensation.YL_COMPENSATION.getName())){ compensationVO.setFee(update.getYlClaimAccount()); }else if(compensationVO.getName().equals(Constants.compensation.WG_COMPENSATION.getName())){ compensationVO.setFee(update.getWgClaimAccount()); }else if(compensationVO.getName().equals(Constants.compensation.SC_COMPENSATION.getName())){ compensationVO.setFee(update.getScClaimAccount()); }else if(compensationVO.getName().equals(Constants.compensation.SW_COMPENSATION.getName())){ compensationVO.setFee(update.getSwClaimAccount()); }else{ continue; } } update.setAccountContent(dto.getCompensationJson()); update.setAccountContent(JSONArray.toJSONString(oldList)); update.setId(settleClaims.getId()); settleClaimsMapper.updateById(update); //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.PLATFORM_UPD_FEE, Constants.SettleClaimsLogType.PLATFORM_UPD_FEE.getInfo()); } @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void confirmFee(Integer id){ LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(!loginUserInfo.getType().equals(Constants.ZERO)){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); } SettleClaims settleClaims = settleClaimsJoinMapper.selectById(id); if(Objects.isNull(settleClaims)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!Constants.equalsInteger(Constants.SettleClaimsStatus.COMPENSATION.getKey(),settleClaims.getStatus())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); } SettleClaims update = new SettleClaims(); update.setEditDate(new Date()); update.setEditor(loginUserInfo.getId()); update.setStatus(Constants.SettleClaimsStatus.WAIT_DEAL.getKey()); update.setId(settleClaims.getId()); settleClaimsMapper.updateById(update); //å卿¥å¿ this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.CONFIRM_FEE, Constants.SettleClaimsLogType.CONFIRM_FEE.getInfo()); } // @Override // @Transactional(rollbackFor = {BusinessException.class,Exception.class}) // public void payCash(PayCashDTO dto){ // if(Objects.isNull(dto) // || Objects.isNull(dto.getId()) // || StringUtils.isBlank(dto.getDescribe()) // ){ // throw new BusinessException(ResponseStatus.BAD_REQUEST); // } // LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); // if(!loginUserInfo.getType().equals(Constants.ZERO)){ // throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"é管çåæ æ³è¿è¡è¯¥æä½"); // } // SettleClaims settleClaims = settleClaimsJoinMapper.selectById(dto.getId()); // if(Objects.isNull(settleClaims)){ // throw new BusinessException(ResponseStatus.DATA_EMPTY); // } // if(!Constants.equalsInteger(Constants.SettleClaimsStatus.COMPENSATION.getKey(),settleClaims.getStatus())){ // throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ä¸å¡ç¶æå·²æµè½¬~"); // } // SettleClaims update = new SettleClaims(); // update.setEditDate(new Date()); // update.setEditor(loginUserInfo.getId()); // update.setStatus(Constants.SettleClaimsStatus.WAIT_DEAL.getKey()); // update.setId(settleClaims.getId()); // settleClaimsMapper.updateById(update); // // //å卿¥å¿ // this.saveSettleClaimsLog(settleClaims, // Constants.SettleClaimsLogType.CONFIRM_FEE, // Constants.SettleClaimsLogType.CONFIRM_FEE.getInfo()); // } } server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java
@@ -32,12 +32,14 @@ import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.*; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** @@ -694,215 +696,187 @@ } @Autowired private RedisTemplate redisTemplate;// Redisæä½ç±»ï¼å¯¹è¿ä¸ªä½¿ç¨ä¸çæçï¼å¯ä»¥åèåé¢çå客 private static final String KEY_PREFIX = "unionchange:upload:"; @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public void uploadBXD(UnionChangeBXDDTO unionChangeBXDDTO){ if(Objects.isNull(unionChangeBXDDTO) || Objects.isNull(unionChangeBXDDTO.getId()) || Objects.isNull(unionChangeBXDDTO.getApplyDate()) // || StringUtils.isBlank(unionChangeBXDDTO.getName()) // || StringUtils.isBlank(unionChangeBXDDTO.getFileurl()) || StringUtils.isBlank(unionChangeBXDDTO.getCode()) || CollectionUtils.isEmpty(unionChangeBXDDTO.getPidanFileList()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); UnionChange unionChange = unionChangeMapper.selectById(unionChangeBXDDTO.getId()); if(Objects.isNull(unionChange)||!Constants.equalsInteger(unionChange.getIsdeleted(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } if(!Constants.equalsInteger(unionChange.getType(),Constants.ONE)&& unionChangeBXDDTO.getDelValidTime() == null ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } unionChangeBXDDTO.setApplyId(unionChange.getUnionApplyId()); unionChange.setStatus(Constants.formatIntegerNum(unionChange.getStatus())); unionChange.setShopId(Constants.formatIntegerNum(unionChange.getShopId())); if(Constants.equalsInteger(user.getType(),Constants.TWO) && !unionChange.getShopId().equals(user.getCompanyId())){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对ä¸èµ·éæ¨çåå¹¶åï¼æ¨æ æ³è¿è¡æä½ï¼"); } if(unionChange.getStatus().equals(Constants.UnionChangeStatus.FINISH.getKey())){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对ä¸èµ·ï¼åå¹¶åä¸å¡å·²å®ç»ï¼æ¨æ æ³è¿è¡è¯¥æä½ï¼"); } if(unionChange.getStatus().equals(Constants.UnionChangeStatus.CLOSE.getKey())){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对ä¸èµ·ï¼åå¹¶åä¸å¡å·²å ³é"); } if(!unionChange.getStatus().equals(Constants.UnionChangeStatus.UPLOAD_INSURANCE_POLICY.getKey())){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对ä¸èµ·ï¼åå¹¶åç¶æå·²æµè½¬"); } UnionApply unionApply = unionApplyMapper.selectById(unionChange.getUnionApplyId()); if(Objects.isNull(unionApply)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"æªæ¥è¯¢å°åå¹¶ä¿åä¿¡æ¯"); } Solutions solutions = solutionsMapper.selectById(unionApply.getSolutionId()); if(Objects.isNull(solutions)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"æªæ¥è¯¢å°ä¿é©æ¹æ¡"); } if(unionChange.getType().equals(Constants.ZERO)){ //夿æ¹åæ¥æ åå¹¶åçæ¹åçææå¨ä¸º ä¿åèµ·æçæ¬¡æ¥ å°ä¿åæ¢æ //è·åå¼å§æ¥ææ¬¡æ¥ if(unionChangeBXDDTO.getApplyDate().getTime()<unionApply.getStartTime().getTime() || unionChangeBXDDTO.getApplyDate().getTime()> unionApply.getEndTime().getTime()){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"åå¹¶åçæ¹åå ä¿çææé误"); try{ if(Objects.nonNull(redisTemplate.opsForValue().get(KEY_PREFIX+unionChangeBXDDTO.getId()))){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"请å¿éå¤æäº¤"); }; redisTemplate.opsForValue().set(KEY_PREFIX+unionChangeBXDDTO.getId(), unionChangeBXDDTO.getId(), 30000, TimeUnit.SECONDS); if(Objects.isNull(unionChangeBXDDTO) || Objects.isNull(unionChangeBXDDTO.getId()) || Objects.isNull(unionChangeBXDDTO.getApplyDate()) // || StringUtils.isBlank(unionChangeBXDDTO.getName()) // || StringUtils.isBlank(unionChangeBXDDTO.getFileurl()) || StringUtils.isBlank(unionChangeBXDDTO.getCode()) || CollectionUtils.isEmpty(unionChangeBXDDTO.getPidanFileList()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } if(unionChangeBXDDTO.getDelValidTime().getTime()<unionApply.getStartTime().getTime() || unionChangeBXDDTO.getDelValidTime().getTime()> unionApply.getEndTime().getTime()){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"åå¹¶åçæ¹ååä¿çææé误"); LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); UnionChange unionChange = unionChangeMapper.selectById(unionChangeBXDDTO.getId()); if(Objects.isNull(unionChange)||!Constants.equalsInteger(unionChange.getIsdeleted(),Constants.ZERO)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } }else{ if(unionChangeBXDDTO.getApplyDate().getTime()<unionChange.getApplyStartTime().getTime()){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æ¹åæ¥æå¿ é¡»å¤§äºç³è¯·æ¥æ"); if(!Constants.equalsInteger(unionChange.getType(),Constants.ONE)&& unionChangeBXDDTO.getDelValidTime() == null ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } } List<ApplyChange> applyChangeList = applyChangeJoinMapper.selectJoinList(ApplyChange.class, new MPJLambdaWrapper<ApplyChange>() .selectAll(ApplyChange.class) .selectAs(InsuranceApply::getSolutionId,ApplyChange::getSolutionsId) .selectAs(InsuranceApply::getCode,ApplyChange::getApplyCode) .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId) .eq(ApplyChange::getUnionChangeId,unionChange.getId())); List<Multifile> pidanFileList = unionChangeBXDDTO.getPidanFileList(); for (Multifile pidanFile:pidanFileList) { if(StringUtils.isBlank( pidanFile.getFileurl()) ||StringUtils.isBlank( pidanFile .getName())) { throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"æ¹åæä»¶åæ°é误"); unionChangeBXDDTO.setApplyId(unionChange.getUnionApplyId()); unionChange.setStatus(Constants.formatIntegerNum(unionChange.getStatus())); unionChange.setShopId(Constants.formatIntegerNum(unionChange.getShopId())); if(Constants.equalsInteger(user.getType(),Constants.TWO) && !unionChange.getShopId().equals(user.getCompanyId())){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对ä¸èµ·éæ¨çåå¹¶åï¼æ¨æ æ³è¿è¡æä½ï¼"); } pidanFile.setIsdeleted(Constants.ZERO); pidanFile.setCreator(user.getId()); pidanFile.setObjId(unionChange.getId()); pidanFile.setCreateDate(new Date()); pidanFile.setObjType(Constants.MultiFile.WTB_CA_DONE_PDF.getKey()); pidanFile.setType(Constants.TWO); } multifileMapper.insertBatchSomeColumn(pidanFileList); for (ApplyChange applyChange:applyChangeList) { for (Multifile pidanFile:pidanFileList) { Multifile m = new Multifile(); m.setId(null); m.setIsdeleted(Constants.ZERO); m.setCreator(user.getId()); m.setCreateDate(new Date()); m.setObjId(applyChange.getId()); m.setFileurl(pidanFile.getFileurl()); m.setName(pidanFile.getName()); m.setObjType(Constants.MultiFile.CA_PD_PDF.getKey()); m.setType(Constants.TWO); multifileMapper.insert(m); if(unionChange.getStatus().equals(Constants.UnionChangeStatus.FINISH.getKey())){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对ä¸èµ·ï¼åå¹¶åä¸å¡å·²å®ç»ï¼æ¨æ æ³è¿è¡è¯¥æä½ï¼"); } } //åå¨åå¹¶åä¿é©å /* Multifile multifile = new Multifile(); multifile.setIsdeleted(Constants.ZERO); multifile.setCreator(user.getId()); multifile.setCreateDate(new Date()); multifile.setObjId(unionChangeBXDDTO.getId()); multifile.setCreateDate(new Date()); multifile.setObjType(Constants.MultiFile.WTB_CA_DONE_PDF.getKey()); multifile.setType(Constants.TWO); multifile.setFileurl(unionChangeBXDDTO.getFileurl()); multifile.setName(unionChangeBXDDTO.getName()); multifileMapper.insert(multifile);*/ // if(CollectionUtils.isNotEmpty(unionChangeBXDDTO.getApplyChangeBXDList())){ // //æ¥è¯¢æ¯å¦ä¸åå¨å½ååå¹¶åçæ°æ® // if(applyChangeJoinMapper.selectCount(new QueryWrapper<ApplyChange>() // .lambda().ne(ApplyChange::getUnionChangeId,unionChangeBXDDTO.getId()) // .in(ApplyChange::getId, // unionChangeBXDDTO.getApplyChangeBXDList().stream().map(m->m.getObjId()).collect(Collectors.toList()) // ) // )>Constants.ZERO){ // throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æ¹åæç»è®°å½åå¨éæ¬åå¹¶åæ°æ®"); // }; // for (Multifile m:unionChangeBXDDTO.getApplyChangeBXDList()) { // if(StringUtils.isBlank(m.getName()) // || StringUtils.isBlank(m.getFileurl()) ){ // continue; // } // if(Objects.isNull(m.getObjId()) // ||StringUtils.isBlank(m.getFileurl()) // ||StringUtils.isBlank(m.getName()) // ){ // throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æ¹åæä»¶ä¿¡æ¯ç¼ºå¤±"); // } // m.setId(null); // m.setIsdeleted(Constants.ZERO); // m.setCreator(user.getId()); // m.setCreateDate(new Date()); // m.setObjType(Constants.MultiFile.CA_PD_PDF.getKey()); // m.setType(Constants.TWO); // multifileMapper.insert(m); // } // } if(CollectionUtils.isNotEmpty(applyChangeList)){ for (ApplyChange applyChange:applyChangeList) { ApplyChange oldModel = applyChange; applyChange.setApplyStartTime(unionChangeBXDDTO.getApplyDate()); applyChange.setDelValidTime(unionChangeBXDDTO.getDelValidTime()); // applyChange.setValidTime(unionChangeBXDDTO.getApplyDate()); applyChange.setEditDate(new Date()); applyChange.setEditor(user.getId()); applyChange.setStatus(Constants.ApplyChangeStatus.APPROVE.getKey()); applyChange.setCode(unionChangeBXDDTO.getCode()); applyChange.setValidCode(unionChangeBXDDTO.getCode()); applyChange.setCheckUserId(user.getId()); List<ApplyChagneDetail> allList = applyChagneDetailJoinMapper.selectJoinList(ApplyChagneDetail.class, new MPJLambdaWrapper<ApplyChagneDetail>() .selectAll(ApplyChagneDetail.class) .selectAs(Member::getIdcardNo,ApplyChagneDetail::getIdcardNo) .selectAs(Solutions::getTimeUnit, ApplyChagneDetail::getSolutionTimeUnit) .selectAs(Solutions::getPrice, ApplyChagneDetail::getSolutionPrice) .selectAs(Worktype::getName, ApplyChagneDetail::getWorkTypeName) .selectAs(DispatchUnit::getName, ApplyChagneDetail::getDuName) .selectAs(Member::getName, ApplyChagneDetail::getMemberName) .selectAs(Solutions::getName,ApplyChagneDetail::getSolutionsName) .selectAs(InsuranceApply::getCode,ApplyChagneDetail::getApplyCode) .selectAs(InsuranceApply::getServerCost,ApplyChagneDetail::getServerCost) .leftJoin(ApplyChange.class, ApplyChange::getId, ApplyChagneDetail::getApplyChangeId) .leftJoin(Member.class, Member::getId, ApplyChagneDetail::getMemberId) .leftJoin(InsuranceApply.class, InsuranceApply::getId, ApplyChange::getApplyId) .leftJoin(Solutions.class, Solutions::getId, InsuranceApply::getSolutionId) .leftJoin(Worktype.class, Worktype::getId, ApplyChagneDetail::getWorktypeId) .leftJoin(DispatchUnit.class, DispatchUnit::getId, ApplyChagneDetail::getDuId) .eq(ApplyChagneDetail::getApplyChangeId,applyChange.getId())); this.dealApplyChangeDetail(applyChange,allList,solutions); applyChangeJoinMapper.updateById(applyChange); //å卿¹åå®æä¿¡æ¯ Constants.ApplyLogType applyLogType = Constants.ApplyLogType.CA_PLATFORM_APPROVE; String info = ""; if(applyChange.getValidTime()!=null && applyChange.getValidTime().getTime()/1000!= applyChange.getApplyStartTime().getTime()/1000){ info =applyLogType.getInfo(); info = info.replace("${param1}",DateUtil.getPlusTime2(applyChange.getValidTime())); info = info.replace("${param2}",DateUtil.getPlusTime2(applyChange.getApplyStartTime())); if(unionChange.getStatus().equals(Constants.UnionChangeStatus.CLOSE.getKey())){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对ä¸èµ·ï¼åå¹¶åä¸å¡å·²å ³é"); } if(!unionChange.getStatus().equals(Constants.UnionChangeStatus.UPLOAD_INSURANCE_POLICY.getKey())){ throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对ä¸èµ·ï¼åå¹¶åç¶æå·²æµè½¬"); } UnionApply unionApply = unionApplyMapper.selectById(unionChange.getUnionApplyId()); if(Objects.isNull(unionApply)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"æªæ¥è¯¢å°åå¹¶ä¿åä¿¡æ¯"); } Solutions solutions = solutionsMapper.selectById(unionApply.getSolutionId()); if(Objects.isNull(solutions)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"æªæ¥è¯¢å°ä¿é©æ¹æ¡"); } if(unionChange.getType().equals(Constants.ZERO)){ //夿æ¹åæ¥æ åå¹¶åçæ¹åçææå¨ä¸º ä¿åèµ·æçæ¬¡æ¥ å°ä¿åæ¢æ //è·åå¼å§æ¥ææ¬¡æ¥ if(unionChangeBXDDTO.getApplyDate().getTime()<unionApply.getStartTime().getTime() || unionChangeBXDDTO.getApplyDate().getTime()> unionApply.getEndTime().getTime()){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"åå¹¶åçæ¹åå ä¿çææé误"); } ApplyLog log = new ApplyLog(applyChange,applyLogType.getName(), info,applyChange.getId(),applyLogType.getKey(),JSONObject.toJSONString(oldModel), JSONObject.toJSONString(applyChange)); applyLogMapper.insert(log); if(unionChangeBXDDTO.getDelValidTime().getTime()<unionApply.getStartTime().getTime() || unionChangeBXDDTO.getDelValidTime().getTime()> unionApply.getEndTime().getTime()){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"åå¹¶åçæ¹ååä¿çææé误"); } }else{ if(unionChangeBXDDTO.getApplyDate().getTime()<unionChange.getApplyStartTime().getTime()){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"æ¹åæ¥æå¿ é¡»å¤§äºç³è¯·æ¥æ"); } } List<ApplyChange> applyChangeList = applyChangeJoinMapper.selectJoinList(ApplyChange.class, new MPJLambdaWrapper<ApplyChange>() .selectAll(ApplyChange.class) .selectAs(InsuranceApply::getSolutionId,ApplyChange::getSolutionsId) .selectAs(InsuranceApply::getCode,ApplyChange::getApplyCode) .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId) .eq(ApplyChange::getUnionChangeId,unionChange.getId())); List<Multifile> pidanFileList = unionChangeBXDDTO.getPidanFileList(); for (Multifile pidanFile:pidanFileList) { if(StringUtils.isBlank( pidanFile.getFileurl()) ||StringUtils.isBlank( pidanFile .getName())) { throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"æ¹åæä»¶åæ°é误"); } pidanFile.setIsdeleted(Constants.ZERO); pidanFile.setCreator(user.getId()); pidanFile.setObjId(unionChange.getId()); pidanFile.setCreateDate(new Date()); pidanFile.setObjType(Constants.MultiFile.WTB_CA_DONE_PDF.getKey()); pidanFile.setType(Constants.TWO); } multifileMapper.insertBatchSomeColumn(pidanFileList); for (ApplyChange applyChange:applyChangeList) { for (Multifile pidanFile:pidanFileList) { Multifile m = new Multifile(); m.setId(null); m.setIsdeleted(Constants.ZERO); m.setCreator(user.getId()); m.setCreateDate(new Date()); m.setObjId(applyChange.getId()); m.setFileurl(pidanFile.getFileurl()); m.setName(pidanFile.getName()); m.setObjType(Constants.MultiFile.CA_PD_PDF.getKey()); m.setType(Constants.TWO); multifileMapper.insert(m); } } if(CollectionUtils.isNotEmpty(applyChangeList)){ for (ApplyChange applyChange:applyChangeList) { ApplyChange oldModel = applyChange; applyChange.setApplyStartTime(unionChangeBXDDTO.getApplyDate()); applyChange.setDelValidTime(unionChangeBXDDTO.getDelValidTime()); // applyChange.setValidTime(unionChangeBXDDTO.getApplyDate()); applyChange.setEditDate(new Date()); applyChange.setEditor(user.getId()); applyChange.setStatus(Constants.ApplyChangeStatus.APPROVE.getKey()); applyChange.setCode(unionChangeBXDDTO.getCode()); applyChange.setValidCode(unionChangeBXDDTO.getCode()); applyChange.setCheckUserId(user.getId()); List<ApplyChagneDetail> allList = applyChagneDetailJoinMapper.selectJoinList(ApplyChagneDetail.class, new MPJLambdaWrapper<ApplyChagneDetail>() .selectAll(ApplyChagneDetail.class) .selectAs(Member::getIdcardNo,ApplyChagneDetail::getIdcardNo) .selectAs(Solutions::getTimeUnit, ApplyChagneDetail::getSolutionTimeUnit) .selectAs(Solutions::getPrice, ApplyChagneDetail::getSolutionPrice) .selectAs(Worktype::getName, ApplyChagneDetail::getWorkTypeName) .selectAs(DispatchUnit::getName, ApplyChagneDetail::getDuName) .selectAs(Member::getName, ApplyChagneDetail::getMemberName) .selectAs(Solutions::getName,ApplyChagneDetail::getSolutionsName) .selectAs(InsuranceApply::getCode,ApplyChagneDetail::getApplyCode) .selectAs(InsuranceApply::getServerCost,ApplyChagneDetail::getServerCost) .leftJoin(ApplyChange.class, ApplyChange::getId, ApplyChagneDetail::getApplyChangeId) .leftJoin(Member.class, Member::getId, ApplyChagneDetail::getMemberId) .leftJoin(InsuranceApply.class, InsuranceApply::getId, ApplyChange::getApplyId) .leftJoin(Solutions.class, Solutions::getId, InsuranceApply::getSolutionId) .leftJoin(Worktype.class, Worktype::getId, ApplyChagneDetail::getWorktypeId) .leftJoin(DispatchUnit.class, DispatchUnit::getId, ApplyChagneDetail::getDuId) .eq(ApplyChagneDetail::getApplyChangeId,applyChange.getId())); this.dealApplyChangeDetail(applyChange,allList,solutions); applyChangeJoinMapper.updateById(applyChange); //å卿¹åå®æä¿¡æ¯ Constants.ApplyLogType applyLogType = Constants.ApplyLogType.CA_PLATFORM_APPROVE; String info = ""; if(applyChange.getValidTime()!=null && applyChange.getValidTime().getTime()/1000!= applyChange.getApplyStartTime().getTime()/1000){ info =applyLogType.getInfo(); info = info.replace("${param1}",DateUtil.getPlusTime2(applyChange.getValidTime())); info = info.replace("${param2}",DateUtil.getPlusTime2(applyChange.getApplyStartTime())); } ApplyLog log = new ApplyLog(applyChange,applyLogType.getName(), info,applyChange.getId(),applyLogType.getKey(),JSONObject.toJSONString(oldModel), JSONObject.toJSONString(applyChange)); applyLogMapper.insert(log); } } unionChangeMapper.update(null,new UpdateWrapper<UnionChange>().lambda() .set(UnionChange::getStatus,Constants.UnionChangeStatus.FINISH.getKey()) .set(UnionChange::getEditDate,new Date()) .set(UnionChange::getEditor,user.getId()) .set(UnionChange::getValidTime,unionChangeBXDDTO.getApplyDate()) .set(UnionChange::getDelValidTime,unionChangeBXDDTO.getDelValidTime()) .set(UnionChange::getApplyStartTime,unionChangeBXDDTO.getApplyDate()) .set(UnionChange::getCode,unionChangeBXDDTO.getCode()) .eq(UnionChange::getId,unionChangeBXDDTO.getId()) ); Constants.ApplyLogType applyLogType = Constants.ApplyLogType.CA_HBD_UPLOAD_INSURANCE; ApplyLog log = new ApplyLog(unionChange,applyLogType.getName(), null ,unionChange.getId(),applyLogType.getKey(),null, JSONObject.toJSONString(unionChange)); applyLogMapper.insert(log); }catch (Exception e){ e.printStackTrace(); }finally { redisTemplate.delete(KEY_PREFIX + unionChangeBXDDTO.getId()); } unionChangeMapper.update(null,new UpdateWrapper<UnionChange>().lambda() .set(UnionChange::getStatus,Constants.UnionChangeStatus.FINISH.getKey()) .set(UnionChange::getEditDate,new Date()) .set(UnionChange::getEditor,user.getId()) .set(UnionChange::getValidTime,unionChangeBXDDTO.getApplyDate()) .set(UnionChange::getDelValidTime,unionChangeBXDDTO.getDelValidTime()) .set(UnionChange::getApplyStartTime,unionChangeBXDDTO.getApplyDate()) .set(UnionChange::getCode,unionChangeBXDDTO.getCode()) .eq(UnionChange::getId,unionChangeBXDDTO.getId()) ); Constants.ApplyLogType applyLogType = Constants.ApplyLogType.CA_HBD_UPLOAD_INSURANCE; ApplyLog log = new ApplyLog(unionChange,applyLogType.getName(), null ,unionChange.getId(),applyLogType.getKey(),null, JSONObject.toJSONString(unionChange)); applyLogMapper.insert(log); } server/service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java
@@ -151,7 +151,7 @@ }else if(systemDictData.getLabel().equals(Constants.RISK_CLAIM_TIMES)){ riskConfigVO.setRiskClaimTimes(systemDictData.getCode()); }else if(systemDictData.getLabel().equals(Constants.RISK_NEW_MEMBER_OPEN)){ riskConfigVO.setRiskNewMemberOepn(systemDictData.getCode()); riskConfigVO.setRiskNewMemberOpen(systemDictData.getCode()); }else if(systemDictData.getLabel().equals(Constants.RISK_NEW_MEMBER_TIME_UNIT)){ riskConfigVO.setRiskNewMemberTimeUnit(systemDictData.getCode()); }else if(systemDictData.getLabel().equals(Constants.RISK_NEW_MEMBER_TIME)){ @@ -202,7 +202,7 @@ }else if(systemDictData.getLabel().equals(Constants.RISK_CLAIM_TIMES)){ systemDictData.setCode(riskConfigDTO.getRiskClaimTimes()); }else if(systemDictData.getLabel().equals(Constants.RISK_NEW_MEMBER_OPEN)){ systemDictData.setCode(riskConfigDTO.getRiskNewMemberOepn()); systemDictData.setCode(riskConfigDTO.getRiskNewMemberOpen()); }else if(systemDictData.getLabel().equals(Constants.RISK_NEW_MEMBER_TIME_UNIT)){ systemDictData.setCode(riskConfigDTO.getRiskNewMemberTimeUnit()); }else if(systemDictData.getLabel().equals(Constants.RISK_NEW_MEMBER_TIME)){