From 81d7f91fa38e74cab052eb4413bd3e12686935a4 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期一, 26 五月 2025 14:07:34 +0800
Subject: [PATCH] git ch
---
server/service/src/main/java/com/doumee/dao/business/model/SettleClaims.java | 21 +
server/service/src/main/java/com/doumee/service/business/SettleClaimsService.java | 23 +
server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java | 3
server/service/src/main/java/com/doumee/dao/business/dto/CompensationDTO.java | 4
server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java | 465 +++++++++++++++++++++++++-----
server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java | 4
server/service/src/main/java/com/doumee/dao/business/dto/UpdReceiveInfoDTO.java | 29 +
server/company/src/main/resources/application.yml | 2
server/service/src/main/java/com/doumee/dao/business/dto/SettleClaimsDTO.java | 11
server/service/src/main/java/com/doumee/core/utils/DateUtil.java | 15
server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/DataListVO.java | 22 +
server/service/src/main/java/com/doumee/dao/business/dto/UpdHurtTypeDTO.java | 22 +
server/platform/src/main/java/com/doumee/api/business/SettleRiskController.java | 20 +
server/service/src/main/java/com/doumee/core/utils/Constants.java | 31 +
server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java | 70 +++-
server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/SettleClaimsDataVO.java | 43 ++
server/company/src/main/java/com/doumee/api/business/SettleRiskController.java | 19
server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsLog.java | 2
server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/InsuranceDataVO.java | 43 ++
server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java | 6
20 files changed, 726 insertions(+), 129 deletions(-)
diff --git a/server/company/src/main/java/com/doumee/api/business/SettleRiskController.java b/server/company/src/main/java/com/doumee/api/business/SettleRiskController.java
index 29fefa0..3e9ae03 100644
--- a/server/company/src/main/java/com/doumee/api/business/SettleRiskController.java
+++ b/server/company/src/main/java/com/doumee/api/business/SettleRiskController.java
@@ -3,14 +3,12 @@
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.dao.business.dto.*;
import com.doumee.service.business.SettleClaimsService;
import com.doumee.service.system.impl.SystemDictDataServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.models.auth.In;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -33,9 +31,8 @@
@PreventRepeat
@ApiOperation("鐞嗚禂鎶ユ")
@PostMapping("/saveSettleClaims")
- public ApiResponse saveSettleClaims(@RequestBody SettleClaimsDTO settleClaimsDTO) {
- settleClaimsService.saveSettleClaims(settleClaimsDTO,systemDictDataService);
- return ApiResponse.success(null);
+ public ApiResponse<Integer> saveSettleClaims(@RequestBody SettleClaimsDTO settleClaimsDTO) {
+ return ApiResponse.success(settleClaimsService.saveSettleClaims(settleClaimsDTO,systemDictDataService));
}
@@ -66,6 +63,12 @@
return ApiResponse.success(null);
}
-
+ @PreventRepeat
+ @ApiOperation("淇敼鏀舵淇℃伅")
+ @PostMapping("/updReceiveInfo")
+ public ApiResponse updReceiveInfo(@RequestBody UpdReceiveInfoDTO dto) {
+ settleClaimsService.updReceiveInfo(dto);
+ return ApiResponse.success(null);
+ }
}
diff --git a/server/company/src/main/resources/application.yml b/server/company/src/main/resources/application.yml
index 2107f6a..dba634a 100644
--- a/server/company/src/main/resources/application.yml
+++ b/server/company/src/main/resources/application.yml
@@ -12,7 +12,7 @@
# application:git
# name: doumeemes
profiles:
- active: pro
+ active: dev
# JSON杩斿洖閰嶇疆
jackson:
diff --git a/server/platform/src/main/java/com/doumee/api/business/SettleRiskController.java b/server/platform/src/main/java/com/doumee/api/business/SettleRiskController.java
index 347f530..9f7e5d9 100644
--- a/server/platform/src/main/java/com/doumee/api/business/SettleRiskController.java
+++ b/server/platform/src/main/java/com/doumee/api/business/SettleRiskController.java
@@ -109,7 +109,7 @@
@PreventRepeat
- @ApiOperation("鐞嗚禂")
+ @ApiOperation("鐞嗙畻")
@PostMapping("/compensation")
public ApiResponse compensation(@RequestBody CompensationDTO dto) {
settleClaimsService.compensation(dto);
@@ -156,7 +156,7 @@
@PreventRepeat
- @ApiOperation("缁撴鎻愪氦")
+ @ApiOperation("纭鎵撴")
@PostMapping("/payCash")
public ApiResponse payCash(@RequestBody PayCashDTO dto) {
settleClaimsService.payCash(dto);
@@ -164,4 +164,20 @@
}
+ @PreventRepeat
+ @ApiOperation("淇敼浼ゆ畫绫诲瀷")
+ @PostMapping("/updHurtType")
+ public ApiResponse updHurtType(@RequestBody UpdHurtTypeDTO dto) {
+ settleClaimsService.updHurtType(dto);
+ return ApiResponse.success(null);
+ }
+
+
+ @ApiOperation("鑾峰彇鍟嗚闂绫诲瀷鍐呭")
+ @GetMapping("/getDiscussProblemType")
+ public ApiResponse<List<String>> getDiscussProblemType() {
+ return ApiResponse.success(settleClaimsService.getDiscussProblemType());
+ }
+
+
}
diff --git a/server/service/src/main/java/com/doumee/core/utils/Constants.java b/server/service/src/main/java/com/doumee/core/utils/Constants.java
index cd651c8..fbc5eea 100644
--- a/server/service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/service/src/main/java/com/doumee/core/utils/Constants.java
@@ -99,6 +99,7 @@
public static final String COMPANY_USER_APPLY ="COMPANY_USER_APPLY" ;
public static final String INSURANCE ="INSURANCE" ;
public static final String CONTRACT ="CONTRACT" ;
+ public static final String DISCUSS_PROBLEM_TYPE ="DISCUSS_PROBLEM_TYPE" ;
public static final String SETTLE_FILE ="SETTLE_FILE" ;
public static final String DU_FILE ="DU_FILE" ;
@@ -194,6 +195,13 @@
return Constants.equalsInteger(model.getStatus(), UnionApplyStatus.FINISH.getKey())?"淇濋櫓鐢熸晥姝㈡湡":"棰勮鐢熸晥姝㈡湡";
}
+ }
+
+ public static BigDecimal getBigDecimalNoNull(BigDecimal bigDecimal){
+ if(Objects.isNull(bigDecimal)){
+ return BigDecimal.ZERO;
+ }
+ return bigDecimal;
}
/**
@@ -770,6 +778,7 @@
LP_OTHER_FILE(33, "鐞嗚禂鍏朵粬鏉愭枡", "鐞嗚禂鍏朵粬鏉愭枡"),
LP_PAY_FILE(34, "鎵撴鍑瘉", "鎵撴鍑瘉"),
LP_DZBD_FILE(35, "鐢靛瓙淇濆崟", "鐢靛瓙淇濆崟"),
+ LP_SUPPLEMENT_FILE(36, "琛ュ厖鏉愭枡", "琛ュ厖鏉愭枡"),
;
// 鎴愬憳鍙橀噺
@@ -1939,19 +1948,19 @@
// 8鍟嗚瀹℃壒鎷掔粷 9宸插彈鐞� 10寰呮牳璧� 11宸叉牳璧� 12宸茬‘璁ら噾棰� 13宸茬粨妗� 14宸叉挙妗�
WAIT_ACCEPTANCE(0, "鏆傚瓨涓�",0),
RETURN_ACCEPTANCE(1, "宸叉姤妗�",1),
- DEAL_ING(2, "寰呯珛妗�",0),
- CONFIRM_INFORMATION(3, "宸茬珛妗�",1),
- FINISH_ACCEPTANCE(4, "绔嬫閫�鍥�",1),
- WAIT_DEAL(5, "寰呭彈鐞�",2),
- REJECT_DEAL(6, "鎷掔粷鍙楃悊",2),
- WAIT_DISCUSS_AUDIT(7, "寰呭晢璁鎵�",2),
+ DEAL_ING(2, "寰呯珛妗�",0),//寮冪敤
+ CONFIRM_INFORMATION(3, "宸茬珛妗�",2),
+ FINISH_ACCEPTANCE(4, "绔嬫閫�鍥�",2),
+ WAIT_DEAL(5, "寰呭彈鐞�",3),//寮冪敤
+ REJECT_DEAL(6, "鎷掔粷鍙楃悊",3),
+ WAIT_DISCUSS_AUDIT(7, "寰呭晢璁鎵�",3),
WAIT_DISCUSS_REJECT(8, "鍟嗚瀹℃壒鎷掔粷",3),
ACCEPTANCE(9, "宸插彈鐞�",3),//寰呯悊绠�
WAIT_AUDIT_COMPENSATION(10, "寰呮牳璧�",4),
COMPENSATION(11, "宸叉牳璧�",5),
CONFIRM_FEE(12, "宸茬‘璁ら噾棰�",5),
CLOSE_CASE(13, "宸茬粨妗�",6),
- RETURN(14, "宸叉挙妗�",6),
+ RETURN(14, "宸叉挙妗�",7),
;
// 鎴愬憳鍙橀噺
private String name;//涓氬姟鎻忚堪
@@ -2003,7 +2012,7 @@
UPLOAD(0, "鎻愪氦鎶ユ","鎻愪氦鎰忚锛�${param}"),
PLATFORM_RETURN(1, "骞冲彴閫�鍥�","鎻愪氦鎰忚锛�${param}"),
PLATFORM_CONFIRM_INFORMATION(2, "骞冲彴纭璧勬枡",""),
- PLATFORM_FINISH(3, "缁撴","鎻愪氦鎰忚锛�${param}"),
+ PLATFORM_FINISH(3, "宸茬粨妗�","鎻愪氦鎰忚锛�${param}"),
UPDATE_DATA(4, "淇敼淇℃伅","鎻愪氦鎰忚锛�${param}"),
SUPPLEMENT(5, "琛ュ厖璇存槑","鎻愪氦鎰忚锛�${param}"),
PLATFORM_LP_DEAL(6, "骞冲彴鐞嗚禂澶勭悊","宸插湪骞冲彴瀹屾垚鐞嗚禂"),
@@ -2025,6 +2034,8 @@
PLATFORM_UPD_FEE(22, "鏍歌禂-淇敼閲戦",""),
CONFIRM_FEE(22, "鏍歌禂-瀹㈡埛纭閲戦","宸茬‘璁ら噾棰�"),
UPD_CASE_TYPE(23, "鍙楃悊-纭妗堜欢绫诲瀷","宸茬‘璁ゆ浠剁被鍨�"),
+ UPD_HURT_TYPE(24, "淇敼浼ゆ畫绫诲瀷淇℃伅","鏄惁浼ゆ畫淇敼涓衡�渰param}鈥�"),
+ UPD_RECEIVE_INFO(25, "鏀舵淇℃伅鍙樻洿","淇敼鏀舵淇℃伅"),
;
// 鎴愬憳鍙橀噺
private String name;
@@ -2040,7 +2051,7 @@
// 鏅�氭柟娉�
public static String getName(int index) {
- for (ApplyLogType c : ApplyLogType.values()) {
+ for (SettleClaimsLogType c : SettleClaimsLogType.values()) {
if (c.getKey() == index) {
return c.name;
}
@@ -2048,7 +2059,7 @@
return null;
}
public static String getInfo(int index) {
- for (ApplyLogType c : ApplyLogType.values()) {
+ for (SettleClaimsLogType c : SettleClaimsLogType.values()) {
if (c.getKey() == index) {
return c.info;
}
diff --git a/server/service/src/main/java/com/doumee/core/utils/DateUtil.java b/server/service/src/main/java/com/doumee/core/utils/DateUtil.java
index 6860dfb..be3b15b 100644
--- a/server/service/src/main/java/com/doumee/core/utils/DateUtil.java
+++ b/server/service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -94,10 +94,12 @@
/**
* 寰楀嚭涓や釜鏃ユ湡涔嬮棿鐨勯棿闅斿皬鏃�
*
- * @param fromDate
+ * @param fromDate 闈犲墠鐨勬椂闂�
* 鏍煎紡涓簓yyy-MM-dd
- * @param toDate
+ * @param toDate 闈犲悗鐨勬椂闂�
* 鏍煎紡涓簓yyy-MM-dd
+ * DateUtil.getBetweenHours(DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss","2025-05-26 10:46:43"),
+ * DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss","2025-05-26 07:41:43")) 杩斿洖 -2灏忔椂
* @return int
*/
public static long getBetweenHours(Date fromDate, Date toDate) {
@@ -3202,7 +3204,14 @@
public static void main(String[] args) throws Exception{
- System.out.println(DateUtil.StringToDate("2025-05-16 13:49:40").getTime());
+// System.out.println(DateUtil.DateToStr(
+// DateUtil.afterDateByType(new Date(),1,-1),"yyyy-MM")
+// );
+
+ System.out.println(DateUtil.getBetweenHours(DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss","2025-05-26 10:46:43"),
+ DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss","2025-05-26 07:41:43")));
+ ;
+
// System.out.println(DateUtil.getLongDateTime(new Date()));;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/dto/CompensationDTO.java b/server/service/src/main/java/com/doumee/dao/business/dto/CompensationDTO.java
index dd47673..bf6971f 100644
--- a/server/service/src/main/java/com/doumee/dao/business/dto/CompensationDTO.java
+++ b/server/service/src/main/java/com/doumee/dao/business/dto/CompensationDTO.java
@@ -12,4 +12,8 @@
@ApiModelProperty(value = "鐞嗚禂閲戦json涓�")
private String compensationJson;
+
+ @ApiModelProperty(value = "璇存槑")
+ private String describe;
+
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/dto/SettleClaimsDTO.java b/server/service/src/main/java/com/doumee/dao/business/dto/SettleClaimsDTO.java
index 9a61e6d..758f49d 100644
--- a/server/service/src/main/java/com/doumee/dao/business/dto/SettleClaimsDTO.java
+++ b/server/service/src/main/java/com/doumee/dao/business/dto/SettleClaimsDTO.java
@@ -17,6 +17,9 @@
@Data
public class SettleClaimsDTO {
+ @ApiModelProperty(value = "涓氬姟涓婚敭")
+ private Integer id;
+
@ApiModelProperty(value = "瀛樺偍绫诲瀷锛�1=淇濆瓨锛�0=鏆傚瓨锛�")
private Integer saveType;
@@ -63,7 +66,7 @@
private Integer inHospital;
@ApiModelProperty(value = "鏄惁浼ゆ畫锛� 0鏄� 1鍚� 2寰呯‘瀹�")
- private String hurtType;
+ private Integer hurtType;
@ApiModelProperty(value = "鏄惁鏈夊尰鐤椾繚闄� 0鏄� 1鍚�", example = "1")
private Integer medicalInsurance;
@@ -76,6 +79,9 @@
@ApiModelProperty(value = "鎶ユ浜鸿仈绯绘柟寮�")
private String informantPhone;
+
+ @ApiModelProperty(value = "璇︾粏鍦板潃")
+ private String address;
@ApiModelProperty(value = "鍛樺伐鍏崇郴璧勬枡")
private List<Multifile> relationFileList;
@@ -92,6 +98,9 @@
@ApiModelProperty(value = "鍏朵粬璧勬枡")
private List<Multifile> otherFileList;
+ @ApiModelProperty(value = "琛ュ厖璧勬枡")
+ private List<Multifile> supplementFileList;
+
@ApiModelProperty(value = "鏀舵閾惰")
private String receiveBank;
diff --git a/server/service/src/main/java/com/doumee/dao/business/dto/UpdHurtTypeDTO.java b/server/service/src/main/java/com/doumee/dao/business/dto/UpdHurtTypeDTO.java
new file mode 100644
index 0000000..986d181
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/dto/UpdHurtTypeDTO.java
@@ -0,0 +1,22 @@
+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 UpdHurtTypeDTO {
+
+ @ApiModelProperty(value = "涓氬姟涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鏄惁浼ゆ畫锛� 0鏄� 1鍚�")
+ private Integer hurtType;
+
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/dto/UpdReceiveInfoDTO.java b/server/service/src/main/java/com/doumee/dao/business/dto/UpdReceiveInfoDTO.java
new file mode 100644
index 0000000..9c6b5ae
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/dto/UpdReceiveInfoDTO.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 UpdReceiveInfoDTO {
+
+ @ApiModelProperty(value = "涓氬姟涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鏀舵閾惰")
+ private String receiveBank;
+
+ @ApiModelProperty(value = "鏀舵浜�")
+ private String receiveUserName;
+
+ @ApiModelProperty(value = "鏀舵璐︽埛")
+ private String receiveAccount;
+
+
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/SettleClaims.java b/server/service/src/main/java/com/doumee/dao/business/model/SettleClaims.java
index ae7178e..385b94c 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/SettleClaims.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/SettleClaims.java
@@ -4,6 +4,7 @@
import com.doumee.core.annotation.excel.ExcelColumn;
import com.doumee.dao.business.vo.CompensationVO;
import com.doumee.dao.business.vo.SettleClaimsMoneyVO;
+import com.doumee.dao.business.vo.SettleParentStatusVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
@@ -183,6 +184,9 @@
@ApiModelProperty(value = "鏄惁寰呰ˉ鍏呮潗鏂�:0=鍚︼紱1=鏄�")
private Integer waitSupplement;
+ @ApiModelProperty(value = "琛ュ厖鏉愭枡璇存槑")
+ private String waitSupplementInfo;
+
@ApiModelProperty(value = "璐圭敤鏄惁鍙戠敓鍙樻洿:0=鍚︼紱1=鏄紱")
private Integer feeUpdate;
@@ -199,6 +203,12 @@
@ApiModelProperty(value = "鏍歌禂鍏朵粬閲戦")
private BigDecimal hpOtherAccount;
+
+ @ApiModelProperty(value = "璇︾粏鍦板潃")
+ private String address;
+
+ @ApiModelProperty(value = "淇濆崟鏄庣粏琛屼富閿�")
+ private Integer applyDetailId;
@ApiModelProperty(value = "璧斿伩閲戦")
@TableField(exist = false)
@@ -244,6 +254,11 @@
@ApiModelProperty(value = "鍏朵粬璧勬枡")
@TableField(exist = false)
private List<Multifile> otherFileList;
+
+ @ApiModelProperty(value = "琛ュ厖璇存槑鏂囦欢")
+ @TableField(exist = false)
+ private List<Multifile> supplementFileList;
+
@ApiModelProperty(value = "鎵撴鍑瘉")
@TableField(exist = false)
@@ -307,9 +322,15 @@
@TableField(exist = false)
private List<CompensationVO> accountList;
+ @ApiModelProperty(value = "娴佺▼璇︽儏淇℃伅", example = "1")
+ @TableField(exist = false)
+ private List<SettleParentStatusVO> parentStatusVOList;
@ApiModelProperty(value = "鎶ユ鏃堕棿 鏌ヨ浣跨敤 yyyy-MM-dd")
@TableField(exist = false)
private String createDateStr;
+ @ApiModelProperty(value = "娴佺▼鑰楁椂",hidden = true)
+ @TableField(exist = false)
+ private Integer totalHours;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsLog.java b/server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsLog.java
index 731352d..dbf18a2 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsLog.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/SettleClaimsLog.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
+import com.doumee.core.utils.Constants;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
@@ -29,6 +30,7 @@
this.createDate =apply.getEditDate();
this.creator =apply.getEditor();
this.objId=objId;
+ this.isdeleted = Constants.ZERO;
this.objType = objType;
this.beforeContent=before;
this.settleClainmsId=apply.getId();
diff --git a/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/DataListVO.java b/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/DataListVO.java
new file mode 100644
index 0000000..99ef2ad
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/DataListVO.java
@@ -0,0 +1,22 @@
+package com.doumee.dao.business.vo.dataBoard;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * 鎶曚繚鍗� 鍙搷浣滄潈闄�
+ * @author RenKang
+ */
+@Data
+public class DataListVO {
+
+ @ApiModelProperty(value = "绗竴涓弬鏁� - 妯悜鍧愭爣", example = "1")
+ private String dataFirst;
+
+ @ApiModelProperty(value = "绗簩涓弬鏁� - 绾靛悜鍧愭爣", example = "1")
+ private String dataSecond;
+
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/InsuranceDataVO.java b/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/InsuranceDataVO.java
new file mode 100644
index 0000000..81fcdd8
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/InsuranceDataVO.java
@@ -0,0 +1,43 @@
+package com.doumee.dao.business.vo.dataBoard;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * 鎶曚繚鍗� 鍙搷浣滄潈闄�
+ * @author RenKang
+ */
+@Data
+public class InsuranceDataVO {
+
+ @ApiModelProperty(value = "淇濋櫓鍏徃鎬绘暟", example = "1")
+ private Integer insuranceTotal;
+
+ @ApiModelProperty(value = "鏈湀淇濋櫓鍏徃鏂板鏁伴噺", example = "1")
+ private Integer insuranceAddTotal;
+
+ @ApiModelProperty(value = "淇濆崟鏁�")
+ private Integer insuranceApplyTotal;
+
+ @ApiModelProperty(value = "鏈湀鎶曚繚鏂板鏁伴噺")
+ private Integer insuranceApplyAddTotal;
+
+ @ApiModelProperty(value = "鍦ㄤ繚浜烘暟")
+ private Integer insuranceUserTotal;
+
+ @ApiModelProperty(value = "鏈湀鏂板鍦ㄤ繚浜烘暟")
+ private Integer insuranceUserAddTotal;
+
+ @ApiModelProperty(value = "宸叉敹璐瑰悎璁�")
+ private BigDecimal totalFee;
+
+ @ApiModelProperty(value = "鏈湀鏂板鏀惰垂鍚堣")
+ private BigDecimal totalAddFee;
+
+
+
+
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/SettleClaimsDataVO.java b/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/SettleClaimsDataVO.java
new file mode 100644
index 0000000..fca212e
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/vo/dataBoard/SettleClaimsDataVO.java
@@ -0,0 +1,43 @@
+package com.doumee.dao.business.vo.dataBoard;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 鎶曚繚鍗� 鍙搷浣滄潈闄�
+ * @author RenKang
+ */
+@Data
+public class SettleClaimsDataVO {
+
+ @ApiModelProperty(value = "鍙楃悊鐜� 鐧惧垎姣�(0.45) ", example = "1")
+ private BigDecimal acceptanceRata;
+
+ @ApiModelProperty(value = "鎷掕禂鐜� 鐧惧垎姣�(0.45)", example = "1")
+ private BigDecimal refuseRata;
+
+ @ApiModelProperty(value = "缁撴鐜� 鐧惧垎姣�(0.45)")
+ private BigDecimal closeCaseRata;
+
+ @ApiModelProperty(value = "鎬荤悊璧旈噾棰�")
+ private BigDecimal settleClaimsTotalFee;
+
+ @ApiModelProperty(value = "鎬荤悊璧旀浠舵暟")
+ private Integer settleClaimsTotal;
+
+ @ApiModelProperty(value = "骞冲潎鐞嗚禂鏃堕暱 鍗曚綅 澶�")
+ private BigDecimal averageSettleClaimsTime;
+
+ @ApiModelProperty(value = "鐞嗚禂閲戦鏇茬嚎鍥� 杩�6涓湀")
+ private List<DataListVO> settleClaimsFeeList;
+
+ @ApiModelProperty(value = "鐞嗚禂妗堜欢鎬绘暟鏇茬嚎鍥� 杩�6涓湀")
+ private List<DataListVO> settleClaimsTotalList;
+
+ @ApiModelProperty(value = "骞冲潎鐞嗚禂澶勭悊鏃堕暱 杩�6涓湀")
+ private List<DataListVO> averageSettleClaimsList;
+
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java b/server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java
index 1cd2051..2c36e68 100644
--- a/server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java
+++ b/server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java
@@ -7,6 +7,7 @@
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.vo.ApplyPowerVO;
import com.doumee.dao.business.vo.CountCyclePriceVO;
+import com.doumee.dao.business.vo.dataBoard.InsuranceDataVO;
import com.doumee.service.business.impl.UnionApplyServiceImpl;
import com.jzq.common.bean.sign.NotifyDataReq;
@@ -186,5 +187,10 @@
ApplyPowerVO getApplyPower(ApplyPowerDTO applyPowerDTO);
void testSendEmail();
+
+
+// InsuranceDataVO getInsuranceDataVO();
+
+
}
diff --git a/server/service/src/main/java/com/doumee/service/business/SettleClaimsService.java b/server/service/src/main/java/com/doumee/service/business/SettleClaimsService.java
index 333c190..f6db356 100644
--- a/server/service/src/main/java/com/doumee/service/business/SettleClaimsService.java
+++ b/server/service/src/main/java/com/doumee/service/business/SettleClaimsService.java
@@ -5,6 +5,7 @@
import com.doumee.dao.business.dto.*;
import com.doumee.dao.business.model.SettleClaims;
import com.doumee.dao.business.vo.CompensationVO;
+import com.doumee.dao.business.vo.dataBoard.SettleClaimsDataVO;
import com.doumee.service.system.impl.SystemDictDataServiceImpl;
import io.swagger.models.auth.In;
@@ -146,7 +147,7 @@
* @param settleClaimsDTO
* @param systemDictDataService
*/
- void saveSettleClaims(SettleClaimsDTO settleClaimsDTO, SystemDictDataServiceImpl systemDictDataService);
+ Integer saveSettleClaims(SettleClaimsDTO settleClaimsDTO, SystemDictDataServiceImpl systemDictDataService);
/**
@@ -246,4 +247,24 @@
* @param dto
*/
void payCash(PayCashDTO dto);
+
+ /**
+ * 淇敼浼ゆ畫绫诲瀷
+ * @param dto
+ */
+ void updHurtType(UpdHurtTypeDTO dto);
+
+ /**
+ * 鑾峰彇鍟嗚闂绫诲瀷鍐呭
+ * @return
+ */
+ List<String> getDiscussProblemType();
+
+ /**
+ * 淇敼鏀舵淇℃伅
+ * @param dto
+ */
+ void updReceiveInfo(UpdReceiveInfoDTO dto);
+
+ SettleClaimsDataVO getSettleClaimsDataVO();
}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
index e2b12c6..0134629 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
@@ -306,9 +306,12 @@
queryWrapper.selectAs(InsuranceApply::getCode,ApplyDetail::getApplyCode);
queryWrapper.selectAs(Solutions::getId,ApplyDetail::getSolutionId);
queryWrapper.selectAs(Solutions::getName,ApplyDetail::getSolutionName);
+ queryWrapper.selectAs(Solutions::getType,ApplyDetail::getSolutionType);
queryWrapper.selectAs(Worktype::getName,ApplyDetail::getWorkTypeName);
queryWrapper.selectAs(Member::getIdcardNo,ApplyDetail::getIdcardNo);
queryWrapper.selectAs(Member::getName,ApplyDetail::getMemberName);
+ queryWrapper.selectAs(InsuranceApply::getStartTime,ApplyDetail::getParentStartTime);
+ queryWrapper.selectAs(InsuranceApply::getEndTime,ApplyDetail::getParentEndTime);
queryWrapper.leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId);
queryWrapper.leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId);
queryWrapper.leftJoin(Member.class,Member::getId,ApplyDetail::getMemberId);
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
index ac0a8a6..3e5853d 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -19,6 +19,7 @@
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.ApplyPowerVO;
import com.doumee.dao.business.vo.CountCyclePriceVO;
+import com.doumee.dao.business.vo.dataBoard.InsuranceDataVO;
import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.InsuranceApplyService;
@@ -64,7 +65,6 @@
private SmsEmailService smsEmailService;
@Autowired
private ApplyChangeJoinMapper applyChangeMapper;
-
@Autowired
private SystemDictDataBiz systemDictDataBiz;
@Autowired
@@ -73,25 +73,20 @@
private CompanyMapper companyMapper;
@Autowired
private MemberInsuranceJoinMapper memberInsuranceJoinMapper;
-
@Autowired
private ApplyDetailMapper applyDetailMapper;
@Autowired
private ApplyDetailJoinMapper applyDetailJoinMapper;
-
@Autowired
private ApplyLogMapper applyLogMapper;
@Autowired
private SignService signService;
@Autowired
private MultifileMapper multifileMapper;
-
@Autowired
private ApplyLogJoinMapper applyLogJoinMapper;
-
@Autowired
private SolutionsMapper solutionsMapper;
-
@Autowired
private MemberMapper memberMapper;
@Autowired
@@ -106,7 +101,6 @@
private DuWorkTypeJoinMapper duWorkTypeJoinMapper;
@Autowired
private SolutionWorktypeJoinMapper solutionWorktypeJoinMapper;
-
@Autowired
private NoticesMapper noticesMapper;
@Autowired
@@ -121,7 +115,8 @@
private SystemUserMapper systemUserMapper;
@Autowired
private CompanyDepartmentMapper companyDepartmentMapper;
-
+ @Autowired
+ private InsuranceMapper insuranceMapper;
@Override
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
@@ -152,7 +147,6 @@
}
update.setStatus(Constants.InsuranceApplyStatus.WTB_RETURN.getKey());
}
-
update.setEditDate(new Date());
update.setEditor(user.getId());
update.setCheckDate(update.getEditDate());
@@ -160,7 +154,6 @@
update.setCheckUserId(user.getId());
update.setId(model.getId());
insuranceApplyMapper.updateById(update);
-
//瀛樺偍寰呭姙淇℃伅
Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.INSURANCE_APPLY;
//鍒犻櫎鍏朵粬寰呭姙
@@ -170,8 +163,6 @@
Notices notices = new Notices(noticeObjectType,Constants.ONE,insuranceApply.getId(),solutions.getName(),
model.getCompanyId(), Constants.NoticeType.FOUR);
noticesMapper.insert(notices);
-
-
Constants.ApplyLogType applyLogType = Constants.ApplyLogType.PLATFORM_RETURN;
String info =applyLogType.getInfo();
info = info.replace("${param}", update.getCheckInfo());
@@ -225,7 +216,6 @@
||StringUtils.isBlank( insuranceApply.getBaoxiandanFile() .getName())){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
-
InsuranceApply model = insuranceApplyMapper.selectById(insuranceApply.getId());
if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
@@ -3776,8 +3766,58 @@
return applyPowerVO;
}
-
-
+// @Override
+// public InsuranceDataVO getInsuranceDataVO(){
+// InsuranceDataVO insuranceDataVO = new InsuranceDataVO();
+// insuranceDataVO.setInsuranceTotal(Constants.ZERO);
+// insuranceDataVO.setInsuranceAddTotal(Constants.ZERO);
+// insuranceDataVO.setInsuranceApplyTotal(Constants.ZERO);
+// insuranceDataVO.setInsuranceApplyAddTotal(Constants.ZERO);
+// insuranceDataVO.setInsuranceUserTotal(Constants.ZERO);
+// insuranceDataVO.setInsuranceUserAddTotal(Constants.ZERO);
+// insuranceDataVO.setTotalAddFee(BigDecimal.ZERO);
+// insuranceDataVO.setTotalFee(BigDecimal.ZERO);
+// //鏈湀鏃ユ湡
+// String monthData = DateUtil.DateToStr(new Date(),"yyyy-MM");
+// //淇濋櫓鍏徃鏁伴噺
+// List<Insurance> insuranceList = insuranceMapper.selectList(new QueryWrapper<Insurance>().lambda().eq(Insurance::getIsdeleted,Constants.ZERO).eq(Insurance::getStatus,Constants.ZERO));
+// if(CollectionUtils.isNotEmpty(insuranceList)){
+// insuranceDataVO.setInsuranceTotal(insuranceList.size());
+// insuranceDataVO.setInsuranceAddTotal(insuranceList.stream().filter(i->Objects.nonNull(i.getCreateDate())&&DateUtil.DateToStr(i.getCreateDate(),"yyyy-MM").equals(monthData)).collect(Collectors.toList()).size());
+// }
+//
+// //淇濆崟鏁伴噺
+// List<InsuranceApply> insuranceApplyList = insuranceApplyMapper.selectList(new QueryWrapper<InsuranceApply>()
+// .lambda().eq(InsuranceApply::getIsdeleted,Constants.ZERO).in(InsuranceApply::getStatus,
+// Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey(),Constants.InsuranceApplyStatus.WTB_DONE.getKey())
+// );
+// if(CollectionUtils.isNotEmpty(insuranceApplyList)){
+// insuranceDataVO.setInsuranceApplyTotal(insuranceApplyList.size());
+// insuranceDataVO.setInsuranceApplyAddTotal(insuranceApplyList.stream().filter(i->Objects.nonNull(i.getCreateDate())&&DateUtil.DateToStr(i.getCreateDate(),"yyyy-MM").equals(monthData)).collect(Collectors.toList()).size());
+// }
+//
+// //鍦ㄤ繚浜烘暟
+// List<ApplyDetail> applyDetailList = applyDetailJoinMapper.selectJoinList(ApplyDetail.class,new MPJLambdaWrapper<ApplyDetail>().selectAll(ApplyDetail.class)
+// .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId)
+// .eq(InsuranceApply::getIsdeleted,Constants.ZERO).in(InsuranceApply::getStatus,
+// Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey(),Constants.InsuranceApplyStatus.WTB_DONE.getKey())
+// .eq(ApplyDetail::getIsdeleted,Constants.ZERO)
+// .apply(" ( t.START_TIME >= now() and t.END_TIME <= now() ) ")
+// );
+// if(CollectionUtils.isNotEmpty(applyDetailList)){
+// insuranceDataVO.setInsuranceUserTotal(applyDetailList.size());
+// insuranceDataVO.setInsuranceUserAddTotal(
+// applyDetailList.stream().filter(i->Objects.nonNull(i.getCreateDate())&&DateUtil.DateToStr(i.getCreateDate(),"yyyy-MM")
+// .equals(monthData)).collect(Collectors.toList()).size());
+//
+// insuranceDataVO.setTotalFee(applyDetailList.stream().map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add));
+// insuranceDataVO.setTotalAddFee(applyDetailList.stream()
+// .filter(i->Objects.nonNull(i.getCreateDate())&&DateUtil.DateToStr(i.getCreateDate(),"yyyy-MM")
+// .equals(monthData)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add));
+// }
+//
+// return insuranceDataVO;
+// }
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java
index 5922a7e..8b6f279 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/KnowledgeServiceImpl.java
@@ -46,7 +46,7 @@
if(Objects.isNull(knowledge)
|| StringUtils.isBlank(knowledge.getTitle())
|| StringUtils.isBlank(knowledge.getLink())
-// || Objects.isNull(knowledge.getCityId())
+ || Objects.isNull(knowledge.getCityId())
|| Objects.isNull(knowledge.getProvinceId())
|| StringUtils.isBlank(knowledge.getYearInfo())
|| StringUtils.isBlank(knowledge.getTitle())
@@ -103,7 +103,7 @@
|| Objects.isNull(knowledge.getId())
|| StringUtils.isBlank(knowledge.getTitle())
|| StringUtils.isBlank(knowledge.getLink())
-// || Objects.isNull(knowledge.getCityId())
+ || Objects.isNull(knowledge.getCityId())
|| Objects.isNull(knowledge.getProvinceId())
|| StringUtils.isBlank(knowledge.getYearInfo())
|| StringUtils.isBlank(knowledge.getTitle())
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
index b143150..e752211 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
@@ -22,6 +22,8 @@
import com.doumee.dao.business.vo.RiskConfigVO;
import com.doumee.dao.business.vo.SettleClaimsMoneyVO;
import com.doumee.dao.business.vo.SettleParentStatusVO;
+import com.doumee.dao.business.vo.dataBoard.DataListVO;
+import com.doumee.dao.business.vo.dataBoard.SettleClaimsDataVO;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.SettleClaimsLogService;
import com.doumee.service.business.SettleClaimsService;
@@ -593,9 +595,7 @@
}
}
//璁板綍鏃ュ織
- this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.UPLOAD,null);
-
-
+ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.UPLOAD,null,null);
//瀛樺偍寰呭姙淇℃伅
Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.SETTLE_CLAIMS;
//鍒犻櫎鍏朵粬寰呭姙
@@ -737,6 +737,7 @@
settleClaims.setDzbdFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_DZBD_FILE.getKey())).collect(Collectors.toList()));
+ settleClaims.setSupplementFileList(multifileList.stream().filter(m->m.getObjType().equals(Constants.MultiFile.LP_SUPPLEMENT_FILE.getKey())).collect(Collectors.toList()));
}
//鏌ヨ鎿嶄綔璁板綍
@@ -779,6 +780,9 @@
}else if(!Objects.isNull(lastConfirm)&&Objects.isNull(multifile)){
settleClaims.setFinishDate(lastConfirm.getCreateDate());
}
+ List<SettleParentStatusVO> parentStatusVOList = this.getParentStatus(settleClaims);
+ settleClaims.setParentStatusVOList(parentStatusVOList);
+ settleClaims.setStatusName(Constants.SettleClaimsStatus.getName(settleClaims.getStatus()));
return settleClaims;
}
@@ -899,6 +903,7 @@
.last("limit 1")));
}
settleClaims.setExtData(settleClaimsExtMapper.selectOne(new QueryWrapper<SettleClaimsExt>().lambda().eq(SettleClaimsExt::getSettileClaimsId,id).last("limit 1")));
+ settleClaims.setStatusName(Constants.SettleClaimsStatus.getName(settleClaims.getStatus()));
return settleClaims;
}
@@ -951,7 +956,7 @@
settleClaimsMapper.updateById(oldSettleClaims);
//璁板綍鏃ュ織
Constants.SettleClaimsLogType settleClaimsLogType = Constants.SettleClaimsLogType.UPDATE_DATA;
- this.saveSettleClaimsLog(settleClaims,settleClaimsLogType,null);
+ this.saveSettleClaimsLog(settleClaims,settleClaimsLogType,null,null);
return oldSettleClaims.getId();
}
@@ -983,7 +988,7 @@
Constants.SettleClaimsLogType settleClaimsLogType = Constants.SettleClaimsLogType.SUPPLEMENT;
String content = settleClaimsLogType.getInfo().replace("${param}", scSupplementDTO.getSupplement());
- this.saveSettleClaimsLog(settleClaims,settleClaimsLogType,content);
+ this.saveSettleClaimsLog(settleClaims,settleClaimsLogType,content,null);
}
@@ -1024,7 +1029,7 @@
- public void saveSettleClaimsLog(SettleClaims settleClaims, Constants.SettleClaimsLogType settleClaimsLogType, String content){
+ public void saveSettleClaimsLog(SettleClaims settleClaims, Constants.SettleClaimsLogType settleClaimsLogType, String content,Constants.SettleClaimsStatus settleClaimsStatus){
LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
SettleClaimsLog settleClaimsLog = new SettleClaimsLog();
settleClaimsLog.setCreateDate(new Date());
@@ -1035,6 +1040,10 @@
settleClaimsLog.setContent(content);
settleClaimsLog.setObjType(settleClaimsLogType.getKey());
settleClaimsLog.setObjId(settleClaims.getId());
+ if(Objects.nonNull(settleClaimsStatus)){
+ settleClaimsLog.setParentStatus(settleClaimsStatus.getParentKey());
+ settleClaimsLog.setStatus(settleClaimsStatus.getKey());
+ }
settleClaimsLogMapper.insert(settleClaimsLog);
}
@@ -1156,7 +1165,8 @@
PageData<SettleClaims> pageData = PageData.from(settleClaimsJoinMapper.selectJoinPage(page,SettleClaims.class, queryWrapper));
for (SettleClaims settleClaims:pageData.getRecords()) {
settleClaims.setStatusName(Constants.SettleClaimsStatus.getName(settleClaims.getStatus()));
- settleClaims.setPcAccount(settleClaims.getHpAccount().add(settleClaims.getHpOtherAccount()));
+
+ settleClaims.setPcAccount(Constants.getBigDecimalNoNull(settleClaims.getHpAccount()).add(Constants.getBigDecimalNoNull(settleClaims.getHpOtherAccount())));
}
return pageData;
}
@@ -1209,7 +1219,7 @@
@Override
@Transactional(rollbackFor = {BusinessException.class,Exception.class})
- public void saveSettleClaims(SettleClaimsDTO settleClaimsDTO,SystemDictDataServiceImpl systemDictDataService){
+ public Integer saveSettleClaims(SettleClaimsDTO settleClaimsDTO,SystemDictDataServiceImpl systemDictDataService){
LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
if(!loginUserInfo.getType().equals(Constants.ONE)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炰紒涓氬憳宸ユ棤娉曡繘琛岃鎿嶄綔");
@@ -1217,8 +1227,9 @@
if(Objects.isNull(settleClaimsDTO)
|| Objects.isNull(settleClaimsDTO.getSaveType())
|| Objects.isNull(settleClaimsDTO.getMemberId())
- ||StringUtils.isBlank(settleClaimsDTO.getIdcardNo())
+ || StringUtils.isBlank(settleClaimsDTO.getIdcardNo())
|| Objects.isNull(settleClaimsDTO.getInsuranceApplyId())
+ || Objects.isNull(settleClaimsDTO.getApplyDetailId())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
@@ -1270,9 +1281,13 @@
settleClaimsMapper.insert(settleClaims);
}
this.saveFile(settleClaims,settleClaimsDTO,loginUserInfo);
-
- //璁板綍鏃ュ織
- this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.UPLOAD,null);
+ if(Constants.equalsInteger(settleClaimsDTO.getSaveType(),Constants.ONE)){
+ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.UPLOAD,null,Constants.SettleClaimsStatus.RETURN_ACCEPTANCE);
+ if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())){
+ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.PLATFORM_REGISTER,null,Constants.SettleClaimsStatus.CONFIRM_INFORMATION);
+ }
+ }
+ return settleClaims.getId();
}
public void saveRisk(SettleClaims settleClaims, SettleClaimsDTO settleClaimsDTO, SystemDictDataServiceImpl systemDictDataService){
@@ -1295,7 +1310,9 @@
}
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 "));
+ 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())
@@ -1485,6 +1502,7 @@
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢鍐呭寮傚父");
}
+ multifile.setId(null);
multifile.setCreator(loginUserInfo.getId());
multifile.setCreateDate(new Date());
multifile.setIsdeleted(Constants.ZERO);
@@ -1497,14 +1515,15 @@
List<Multifile> relationFileList = settleClaimsDTO.getRelationFileList();
if(CollectionUtils.isNotEmpty(relationFileList)){
- for (int i = 0; i < reportVideo.size(); i++) {
- Multifile multifile = reportVideo.get(i);
+ for (int i = 0; i < relationFileList.size(); i++) {
+ Multifile multifile = relationFileList.get(i);
if(Objects.isNull(multifile.getFileurl())
|| Objects.isNull(multifile.getType())
|| StringUtils.isBlank(multifile.getName())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢鍐呭寮傚父");
}
+ multifile.setId(null);
multifile.setCreator(loginUserInfo.getId());
multifile.setCreateDate(new Date());
multifile.setIsdeleted(Constants.ZERO);
@@ -1517,14 +1536,15 @@
List<Multifile> outpatientFileList = settleClaimsDTO.getOutpatientFileList();
if(CollectionUtils.isNotEmpty(outpatientFileList)){
- for (int i = 0; i < reportVideo.size(); i++) {
- Multifile multifile = reportVideo.get(i);
+ for (int i = 0; i < outpatientFileList.size(); i++) {
+ Multifile multifile = outpatientFileList.get(i);
if(Objects.isNull(multifile.getFileurl())
|| Objects.isNull(multifile.getType())
|| StringUtils.isBlank(multifile.getName())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢鍐呭寮傚父");
}
+ multifile.setId(null);
multifile.setCreator(loginUserInfo.getId());
multifile.setCreateDate(new Date());
multifile.setIsdeleted(Constants.ZERO);
@@ -1537,14 +1557,15 @@
List<Multifile> hospitalFileList = settleClaimsDTO.getHospitalFileList();
if(CollectionUtils.isNotEmpty(hospitalFileList)){
- for (int i = 0; i < reportVideo.size(); i++) {
- Multifile multifile = reportVideo.get(i);
+ for (int i = 0; i < hospitalFileList.size(); i++) {
+ Multifile multifile = hospitalFileList.get(i);
if(Objects.isNull(multifile.getFileurl())
|| Objects.isNull(multifile.getType())
|| StringUtils.isBlank(multifile.getName())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢鍐呭寮傚父");
}
+ multifile.setId(null);
multifile.setCreator(loginUserInfo.getId());
multifile.setCreateDate(new Date());
multifile.setIsdeleted(Constants.ZERO);
@@ -1557,14 +1578,15 @@
List<Multifile> disabilityFileList = settleClaimsDTO.getDisabilityFileList();
if(CollectionUtils.isNotEmpty(disabilityFileList)){
- for (int i = 0; i < reportVideo.size(); i++) {
- Multifile multifile = reportVideo.get(i);
+ for (int i = 0; i < disabilityFileList.size(); i++) {
+ Multifile multifile = disabilityFileList.get(i);
if(Objects.isNull(multifile.getFileurl())
|| Objects.isNull(multifile.getType())
|| StringUtils.isBlank(multifile.getName())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢鍐呭寮傚父");
}
+ multifile.setId(null);
multifile.setCreator(loginUserInfo.getId());
multifile.setCreateDate(new Date());
multifile.setIsdeleted(Constants.ZERO);
@@ -1577,14 +1599,15 @@
List<Multifile> otherFileList = settleClaimsDTO.getOtherFileList();
if(CollectionUtils.isNotEmpty(otherFileList)){
- for (int i = 0; i < reportVideo.size(); i++) {
- Multifile multifile = reportVideo.get(i);
+ for (int i = 0; i < otherFileList.size(); i++) {
+ Multifile multifile = otherFileList.get(i);
if(Objects.isNull(multifile.getFileurl())
|| Objects.isNull(multifile.getType())
|| StringUtils.isBlank(multifile.getName())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢鍐呭寮傚父");
}
+ multifile.setId(null);
multifile.setCreator(loginUserInfo.getId());
multifile.setCreateDate(new Date());
multifile.setIsdeleted(Constants.ZERO);
@@ -1593,7 +1616,27 @@
multifile.setSortnum(i+1);
multifileJoinMapper.insert(multifile);
}
- }
+ }
+ List<Multifile> supplementFileList = settleClaimsDTO.getSupplementFileList();
+ if(CollectionUtils.isNotEmpty(supplementFileList)){
+ for (int i = 0; i < supplementFileList.size(); i++) {
+ Multifile multifile = supplementFileList.get(i);
+ if(Objects.isNull(multifile.getFileurl())
+ || Objects.isNull(multifile.getType())
+ || StringUtils.isBlank(multifile.getName())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢鍐呭寮傚父");
+ }
+ multifile.setId(null);
+ multifile.setCreator(loginUserInfo.getId());
+ multifile.setCreateDate(new Date());
+ multifile.setIsdeleted(Constants.ZERO);
+ multifile.setObjId(settleClaims.getId());
+ multifile.setObjType(Constants.MultiFile.LP_SUPPLEMENT_FILE.getKey());
+ multifile.setSortnum(i+1);
+ multifileJoinMapper.insert(multifile);
+ }
+ }
}
// public void getRiskSettleDetail(Integer id){
@@ -1638,9 +1681,11 @@
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"寰呬紒涓氳ˉ鍏呮枃浠讹紝璇风瓑寰呬紒涓氳ˉ鍏呮枃浠�");
}
//瀛樺偍鏃ュ織
- this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT_DESCRIBE,dto.getDescribe());
+ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT_DESCRIBE,dto.getDescribe(),null);
settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
- .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getWaitSupplement,Constants.ONE));
+ .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime())
+ .set(SettleClaims::getWaitSupplementInfo,dto.getDescribe())
+ .set(SettleClaims::getWaitSupplement,Constants.ONE));
}
@Override
@@ -1699,13 +1744,13 @@
multifile.setIsdeleted(Constants.ZERO);
multifile.setObjId(settleClaims.getId());
//娣诲姞鏉愭枡鏀惧叆 鍏朵粬鏉愭枡涓氬姟鍐�
- multifile.setObjType(Constants.MultiFile.LP_OTHER_FILE.getKey());
+ multifile.setObjType(Constants.MultiFile.LP_SUPPLEMENT_FILE.getKey());
multifile.setSortnum(i+1);
multifileJoinMapper.insert(multifile);
}
}
//瀛樺偍鏃ュ織
- this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT,null);
+ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.SUPPLEMENT,null,null);
}
@@ -1732,11 +1777,11 @@
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(),"瀵逛笉璧凤紝涓氬姟鐘舵�佸凡娴佽浆~");
- }
+// 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);
+ this.saveSettleClaimsLog(settleClaims,Constants.SettleClaimsLogType.RETURN_SETTLE,null,Constants.SettleClaimsStatus.RETURN);
settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
.eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime()).set(SettleClaims::getStatus,Constants.SettleClaimsStatus.RETURN.getKey()));
}
@@ -1760,13 +1805,16 @@
if(Objects.isNull(settleClaims)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
- if(!Constants.equalsInteger(Constants.SettleClaimsStatus.ACCEPTANCE.getKey(),settleClaims.getStatus())){
+ 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(),"瀵逛笉璧凤紝涓氬姟鐘舵�佸凡娴佽浆~");
}
//瀛樺偍鏃ュ織
- this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.UPD_CASE_TYPE,Constants.SettleClaimsLogType.UPD_CASE_TYPE.getInfo());
+ this.saveSettleClaimsLog(settleClaims, Constants.SettleClaimsLogType.UPD_CASE_TYPE,Constants.SettleClaimsLogType.UPD_CASE_TYPE.getInfo(),null);
settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
- .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,DateUtil.getCurrDateTime())
+ .eq(SettleClaims::getId,dto.getId())
+ .set(SettleClaims::getEditDate,DateUtil.getCurrDateTime())
.set(SettleClaims::getEditor,loginUserInfo.getId())
.set(SettleClaims::getCaseType,dto.getCaseType()));
}
@@ -1798,10 +1846,12 @@
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());
+ this.saveSettleClaimsLog(settleClaims, Constants.equalsInteger(dto.getRegisterStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())?Constants.SettleClaimsLogType.PLATFORM_REGISTER:Constants.SettleClaimsLogType.PLATFORM_RETURN,dto.getDescribe(),settleClaimsStatus);
settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
- .eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate,
- DateUtil.getCurrDateTime()).set(SettleClaims::getStatus,settleClaimsStatus.getKey()));
+ .eq(SettleClaims::getId,dto.getId())
+ .set(SettleClaims::getEditDate, DateUtil.getCurrDateTime())
+ .set(SettleClaims::getEditor,loginUserInfo.getId())
+ .set(SettleClaims::getStatus,settleClaimsStatus.getKey()));
}
@@ -1829,8 +1879,14 @@
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)))){
+ if(!(
+ (Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey())&&Constants.equalsInteger(model.getReportNumStatus(),Constants.ONE))
+ ||(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey())
+ &&Constants.equalsInteger(model.getReportNumStatus(),Constants.ZERO))
+// ||(Constants.equalsInteger(model.getStatus(),Constants.SettleClaimsStatus.WAIT_DEAL.getKey())
+// &&Constants.equalsInteger(model.getReportNumStatus(),Constants.ZERO))
+ )
+ ){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"浠呭彲淇敼涓�娆℃姤妗堝彿");
}
@@ -1937,7 +1993,7 @@
if(Objects.isNull(settleClaims)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
- if(!Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_DEAL.getKey(),settleClaims.getStatus())){
+ if(!Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_INFORMATION.getKey(),settleClaims.getStatus())){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝涓氬姟鐘舵�佸凡娴佽浆~");
}
if(Constants.equalsInteger(dto.getStatus(),Constants.ZERO) || Constants.equalsInteger(dto.getStatus(),Constants.THREE)){
@@ -1948,7 +2004,7 @@
//瀛樺偍鏃ュ織
this.saveSettleClaimsLog(settleClaims,
Constants.equalsInteger(dto.getStatus(),Constants.ZERO)?Constants.SettleClaimsLogType.PLATFORM_ACCEPTANCE:Constants.SettleClaimsLogType.PLATFORM_DISCUSS,
- dto.getDescribe());
+ dto.getDescribe(),Constants.SettleClaimsStatus.ACCEPTANCE);
}else if(Constants.equalsInteger(dto.getStatus(),Constants.ONE)){
//鎷掔粷鍙楃悊
settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
@@ -1957,7 +2013,7 @@
//瀛樺偍鏃ュ織
this.saveSettleClaimsLog(settleClaims,
Constants.SettleClaimsLogType.PLATFORM_REFUSE_ACCEPTANCE,
- Constants.SettleClaimsLogType.PLATFORM_REFUSE_ACCEPTANCE.getInfo().replace("{param}",dto.getDescribe()));
+ Constants.SettleClaimsLogType.PLATFORM_REFUSE_ACCEPTANCE.getInfo().replace("{param}",dto.getDescribe()),Constants.SettleClaimsStatus.REJECT_DEAL);
}else if(Constants.equalsInteger(dto.getStatus(),Constants.TWO)){
//鍙楃悊鍟嗚瀹℃壒
settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
@@ -1966,7 +2022,7 @@
//瀛樺偍鏃ュ織
this.saveSettleClaimsLog(settleClaims,
Constants.SettleClaimsLogType.PLATFORM_WAIT_DISCUSS,
- dto.getDescribe());
+ dto.getDescribe(),Constants.SettleClaimsStatus.REJECT_DEAL);
}
}
@@ -1984,9 +2040,9 @@
}
List<CompensationVO> modelList = new ArrayList<>();
if (Objects.nonNull(settleClaims)) {
- if(Constants.equalsInteger(compensationFeeDTO.getType(),Constants.ZERO)&&StringUtils.isNotBlank(settleClaims.getAccountContent())){
+ if(Constants.equalsInteger(compensationFeeDTO.getType(),Constants.ONE)&&StringUtils.isNotBlank(settleClaims.getAccountContent())){
modelList = JSONArray.parseArray(settleClaims.getAccountContent(),CompensationVO.class);
- }else if(Constants.equalsInteger(compensationFeeDTO.getType(),Constants.ONE)&&StringUtils.isNotBlank(settleClaims.getHpAccountContent())){
+ }else if(Constants.equalsInteger(compensationFeeDTO.getType(),Constants.TWO)&&StringUtils.isNotBlank(settleClaims.getHpAccountContent())){
modelList = JSONArray.parseArray(settleClaims.getHpAccountContent(),CompensationVO.class);
}
}
@@ -2027,7 +2083,8 @@
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())){
+ 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(),"瀵逛笉璧凤紝涓氬姟鐘舵�佸凡娴佽浆~");
}
@@ -2050,7 +2107,7 @@
//瀛樺偍鏃ュ織
this.saveSettleClaimsLog(settleClaims,
Constants.SettleClaimsLogType.PLATFORM_LP_DEAL,
- Constants.SettleClaimsLogType.PLATFORM_LP_DEAL.getInfo());
+ Constants.SettleClaimsLogType.PLATFORM_LP_DEAL.getInfo(),Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION);
}
@@ -2086,7 +2143,7 @@
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()));
+ ,settleClaimsLogType.getInfo().replace("${param}",dto.getDescribe()),settleClaimsStatus);
settleClaimsMapper.update(null,new UpdateWrapper<SettleClaims>().lambda()
.eq(SettleClaims::getId,dto.getId()).set(SettleClaims::getEditDate, DateUtil.getCurrDateTime())
.set(SettleClaims::getEditor,loginUserInfo.getId())
@@ -2128,8 +2185,6 @@
update.setHpAccountContent(dto.getCompensationJson());
update.setHpAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ZERO)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add));
update.setHpOtherAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add));
-
-
update.setId(settleClaims.getId());
update.setStatus(Constants.SettleClaimsStatus.COMPENSATION.getKey());
settleClaimsMapper.updateById(update);
@@ -2137,7 +2192,7 @@
//瀛樺偍鏃ュ織
this.saveSettleClaimsLog(settleClaims,
Constants.SettleClaimsLogType.PLATFORM_HP_DEAL,
- Constants.SettleClaimsLogType.PLATFORM_HP_DEAL.getInfo());
+ Constants.SettleClaimsLogType.PLATFORM_HP_DEAL.getInfo(),Constants.SettleClaimsStatus.COMPENSATION);
}
@@ -2176,30 +2231,32 @@
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.getHpAccountContent(),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(JSONArray.toJSONString(oldList));
+// 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.getHpAccountContent(),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.setHpAccountContent(dto.getCompensationJson());
+ update.setHpAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ZERO)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add));
+ update.setHpOtherAccount(modelList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)).map(i->i.getFee()).reduce(BigDecimal.ZERO,BigDecimal::add));
update.setId(settleClaims.getId());
settleClaimsMapper.updateById(update);
//瀛樺偍鏃ュ織
this.saveSettleClaimsLog(settleClaims,
Constants.SettleClaimsLogType.PLATFORM_UPD_FEE,
- Constants.SettleClaimsLogType.PLATFORM_UPD_FEE.getInfo());
+ dto.getDescribe(),null);
}
@@ -2207,27 +2264,28 @@
@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(),"闈炵鐞嗗憳鏃犳硶杩涜璇ユ搷浣�");
+ if(!loginUserInfo.getType().equals(Constants.ONE)){
+ 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(),"瀵逛笉璧凤紝涓氬姟鐘舵�佸凡娴佽浆~");
+ //濡傛灉鏄紒涓� 鏌ヨ鏄惁鏄嚜宸变紒涓氱殑鏁版嵁
+ if(!Constants.equalsInteger(settleClaims.getCompanyId(),loginUserInfo.getCompanyId())){
+ 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.setStatus(Constants.SettleClaimsStatus.CONFIRM_FEE.getKey());
update.setId(settleClaims.getId());
settleClaimsMapper.updateById(update);
//瀛樺偍鏃ュ織
this.saveSettleClaimsLog(settleClaims,
Constants.SettleClaimsLogType.CONFIRM_FEE,
- Constants.SettleClaimsLogType.CONFIRM_FEE.getInfo());
+ Constants.SettleClaimsLogType.CONFIRM_FEE.getInfo(),Constants.SettleClaimsStatus.CONFIRM_FEE);
}
@@ -2255,6 +2313,9 @@
update.setEditDate(new Date());
update.setEditor(loginUserInfo.getId());
update.setStatus(Constants.SettleClaimsStatus.CLOSE_CASE.getKey());
+ update.setCheckDate(new Date());
+ update.setCheckUserId(loginUserInfo.getId());
+ update.setCheckInfo(Constants.SettleClaimsStatus.CLOSE_CASE.name());
update.setId(settleClaims.getId());
settleClaimsMapper.updateById(update);
@@ -2285,7 +2346,7 @@
//瀛樺偍鏃ュ織
this.saveSettleClaimsLog(settleClaims,
Constants.SettleClaimsLogType.PLATFORM_FINISH,
- dto.getDescribe());
+ dto.getDescribe(),Constants.SettleClaimsStatus.CLOSE_CASE);
}
@@ -2293,7 +2354,9 @@
public List<SettleParentStatusVO> getParentStatus(SettleClaims settleClaims){
List<SettleParentStatusVO> settleParentStatusVOList = new ArrayList<>();
List<SettleClaimsLog> settleClaimsLogList = settleClaimsLogMapper
- .selectList(new QueryWrapper<SettleClaimsLog>().lambda().eq(SettleClaimsLog::getObjId,settleClaims.getId()).orderByDesc(SettleClaimsLog::getCreateDate));
+ .selectList(new QueryWrapper<SettleClaimsLog>().lambda().eq(SettleClaimsLog::getObjId,settleClaims.getId())
+ .isNotNull(SettleClaimsLog::getParentStatus)
+ .orderByDesc(SettleClaimsLog::getId));
//绔嬫閫�鍥炵姸鎬佹暟鎹�
if(Constants.equalsInteger(settleClaims.getStatus(),Constants.SettleClaimsStatus.FINISH_ACCEPTANCE.getKey())){
SettleParentStatusVO settleParentStatusVO = new SettleParentStatusVO();
@@ -2357,21 +2420,22 @@
//鑾峰彇褰撳墠鏃ュ織鏈�澶х殑鐖剁姸鎬�
Optional<Integer> optionalInteger = settleClaimsLogs.stream().map(i->i.getParentStatus()).max(Comparator.comparingInt(o -> o));
if(optionalInteger.isPresent()){
- for (int i = 1; i <= 5; i++) {
+
+ for (int i = 1; i <= (optionalInteger.get()<5?optionalInteger.get():5); i++) {
SettleParentStatusVO s = new SettleParentStatusVO();
Constants.SettleClaimsLogParentStatus parentStatus = Constants.SettleClaimsLogParentStatus.getAll(i);
s.setParentTitle(parentStatus.getName());
s.setChildTitle(parentStatus.getInfo());
s.setStatus(Constants.ZERO);
//濡傛灉鏄瓑浜庣埗鐘舵�� 鍒欏幓鏌ヨ瀹為檯鐨勪笟鍔$姸鎬�
- if(Constants.equalsInteger(i,optionalInteger.get())){
- Optional<SettleClaimsLog> settleClaimsLogOptional = settleClaimsLogList.stream()
- .filter(j->Constants.equalsInteger(j.getParentStatus(),optionalInteger.get())).findFirst();
- if(settleClaimsLogOptional.isPresent()){
- s.setChildTitle(Constants.SettleClaimsLogType.getName(settleClaimsLogOptional.get().getObjType()));
- }
+ Optional<SettleClaimsLog> settleClaimsLogOptional = settleClaimsLogList.stream()
+ .filter(j->Constants.equalsInteger(j.getParentStatus(),optionalInteger.get())).findFirst();
+ if(settleClaimsLogOptional.isPresent()){
+ s.setChildTitle(Constants.SettleClaimsLogType.getName(settleClaimsLogOptional.get().getObjType()));
+ s.setOptDate(settleClaimsLogOptional.get().getCreateDate());
}
settleParentStatusVOList.add(s);
+
}
}
//娣诲姞鎾ゆ鏁版嵁
@@ -2380,7 +2444,7 @@
settleParentStatusCHVO.setChildTitle("浼佷笟涓诲姩鎾ゆ");
settleParentStatusCHVO.setStatus(Constants.THREE);
Optional<SettleClaimsLog> optionalSettleClaimsSLLog = settleClaimsLogList.stream()
- .filter(i->Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsLogType.RETURN_SETTLE.getKey())).findFirst();
+ .filter(i->Constants.equalsInteger(i.getObjType(),Constants.SettleClaimsLogType.RETURN_SETTLE.getKey())).findFirst();
if(optionalSettleClaimsSLLog.isPresent()){
settleParentStatusCHVO.setOptDate(optionalSettleClaimsSLLog.get().getCreateDate());
}
@@ -2401,9 +2465,28 @@
//濡傛灉鏈�澶х殑鐖朵笟鍔$姸鎬� 澶т簬 榛樿鐨�6绫绘暟鎹� 鍒欑洿鎺ユ樉绀洪粯璁ら厤缃�
s.setChildTitle(parentStatus.getInfo());
s.setStatus(Constants.ZERO);
+ int finalI = i;
+ Optional<SettleClaimsLog> optionalSettleClaimsLog = settleClaimsLogList.stream()
+ .filter(j->Constants.equalsInteger(j.getParentStatus(), finalI)).findFirst();
+ if(optionalSettleClaimsLog.isPresent()){
+ s.setOptDate(optionalSettleClaimsLog.get().getCreateDate());
+ }
}else if(optionalInteger.get()<i){
//濡傛灉鏈�澶х殑鐖朵笟鍔$姸鎬� 灏忎簬 榛樿鐨�6绫绘暟鎹� 鍒欑洿鎺ユ樉绀洪粯璁ゆ湭澶勭悊閰嶇疆
s.setChildTitle(parentStatus.getWaitInfo());
+ if(Constants.equalsInteger(i,Constants.SettleClaimsLogParentStatus.LS.getKey())){
+// //鎶ユ瀹℃壒閫氳繃鍚庤鏄剧ず
+ Optional<SettleClaimsLog> settleClaimsLogOptional = settleClaimsLogList.stream()
+ .filter(j->
+ Constants.equalsInteger(j.getObjType(),Constants.SettleClaimsLogType.PLATFORM_ACCEPTANCE.getKey())
+ || Constants.equalsInteger(j.getObjType(),Constants.SettleClaimsLogType.PLATFORM_DISCUSS_PASS.getKey())
+ ).findFirst();
+ if(settleClaimsLogOptional.isPresent()){
+ s.setStatus(Constants.ONE);
+ settleParentStatusVOList.add(s);
+ continue;
+ }
+ }
s.setStatus(Constants.TWO);
}else{
//濡傛灉鏄瓑浜庣埗鐘舵�� 鍒欏幓鏌ヨ瀹為檯鐨勪笟鍔$姸鎬�
@@ -2412,6 +2495,7 @@
.filter(j->Constants.equalsInteger(j.getParentStatus(),optionalInteger.get())).findFirst();
if(settleClaimsLogOptional.isPresent()){
s.setChildTitle(Constants.SettleClaimsLogType.getName(settleClaimsLogOptional.get().getObjType()));
+ s.setOptDate(settleClaimsLogOptional.get().getCreateDate());
}
}
s.setStatus(Constants.ONE);
@@ -2420,10 +2504,219 @@
}
}
return settleParentStatusVOList;
+ }
+
+
+ @Override
+ @Transactional(rollbackFor = {BusinessException.class,Exception.class})
+ public void updHurtType(UpdHurtTypeDTO dto){
+ if(Objects.isNull(dto)
+ || Objects.isNull(dto.getId())
+ || Objects.isNull(dto.getHurtType())
+ || !(Constants.equalsInteger(dto.getHurtType(),Constants.ZERO) || Constants.equalsInteger(dto.getHurtType(),Constants.ONE))
+ ){
+ 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.CONFIRM_INFORMATION.getKey(),settleClaims.getStatus())
+ || Constants.equalsInteger(Constants.SettleClaimsStatus.ACCEPTANCE.getKey(),settleClaims.getStatus())
+ // || Constants.equalsInteger(Constants.SettleClaimsStatus.WAIT_DEAL.getKey(),settleClaims.getStatus())
+ )){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝涓氬姟鐘舵�佸凡娴佽浆~");
+ }
+ if(!Constants.equalsInteger(settleClaims.getHurtType(),Constants.TWO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"宸蹭慨鏀硅繃锛屾棤娉曞啀娆′慨鏀�");
+ }
+ SettleClaims update = new SettleClaims();
+ update.setEditDate(new Date());
+ update.setEditor(loginUserInfo.getId());
+ update.setHurtType(dto.getHurtType());
+ update.setId(settleClaims.getId());
+ settleClaimsMapper.updateById(update);
+
+ //瀛樺偍鏃ュ織
+ this.saveSettleClaimsLog(settleClaims,
+ Constants.SettleClaimsLogType.UPD_HURT_TYPE,
+ Constants.SettleClaimsLogType.UPD_HURT_TYPE.getInfo(),null);
+ }
+
+
+
+ @Override
+ @Transactional(rollbackFor = {BusinessException.class,Exception.class})
+ public void updReceiveInfo(UpdReceiveInfoDTO dto){
+ if(Objects.isNull(dto)
+ || Objects.isNull(dto.getId())
+ || StringUtils.isBlank(dto.getReceiveBank())
+ || StringUtils.isBlank(dto.getReceiveAccount())
+ || StringUtils.isBlank(dto.getReceiveUserName())
+ ){
+ 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.COMPENSATION.getKey(),settleClaims.getStatus()) || Constants.equalsInteger(Constants.SettleClaimsStatus.CONFIRM_FEE.getKey(),settleClaims.getStatus()) )
+ ){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝涓氬姟鐘舵�佸凡娴佽浆~");
+ }
+
+ SettleClaims update = new SettleClaims();
+ update.setEditDate(new Date());
+ update.setEditor(loginUserInfo.getId());
+ update.setReceiveBank(dto.getReceiveBank());
+ update.setReceiveAccount(dto.getReceiveAccount());
+ update.setReceiveUserName(dto.getReceiveUserName());
+ update.setId(settleClaims.getId());
+ settleClaimsMapper.updateById(update);
+
+ //瀛樺偍鏃ュ織
+ this.saveSettleClaimsLog(settleClaims,
+ Constants.SettleClaimsLogType.UPD_RECEIVE_INFO,
+ Constants.SettleClaimsLogType.UPD_RECEIVE_INFO.getInfo(),null);
+ }
+
+
+
+ @Override
+ public List<String> getDiscussProblemType(){
+ String types = systemDictDataBiz.queryByCode(Constants.PROTOCOL,Constants.DISCUSS_PROBLEM_TYPE).getCode();
+ if(StringUtils.isNotBlank(types)){
+ return Arrays.asList(types.split(","));
+ }
+ return null;
+ }
+
+
+ @Override
+ public SettleClaimsDataVO getSettleClaimsDataVO(){
+ SettleClaimsDataVO settleClaimsDataVO = new SettleClaimsDataVO();
+ settleClaimsDataVO.setSettleClaimsTotal(Constants.ZERO);
+ settleClaimsDataVO.setAverageSettleClaimsTime(BigDecimal.ZERO);
+ settleClaimsDataVO.setSettleClaimsTotalFee(BigDecimal.ZERO);
+ settleClaimsDataVO.setRefuseRata(BigDecimal.ZERO);
+ settleClaimsDataVO.setAcceptanceRata(BigDecimal.ZERO);
+ settleClaimsDataVO.setCloseCaseRata(BigDecimal.ZERO);
+
+
+ List<SettleClaims> settleClaimsList = settleClaimsMapper.selectList(new QueryWrapper<SettleClaims>().lambda().eq(SettleClaims::getIsdeleted,Constants.ZERO));
+ if(CollectionUtils.isNotEmpty(settleClaimsList)){
+ Integer totalSettleClaimsNum = settleClaimsList.size();
+ List<SettleClaims> closeCaseList = settleClaimsList.stream().filter(i->Objects.nonNull(i.getStatus())
+ &&Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsStatus.CLOSE_CASE.getKey())).collect(Collectors.toList());
+ for (SettleClaims settleClaims:closeCaseList) {
+ if(Objects.nonNull(settleClaims.getCheckDate())&&Objects.nonNull(settleClaims.getCreateDate())){
+ settleClaims.setTotalHours(
+ (int)DateUtil.getBetweenHours(settleClaims.getCreateDate(),settleClaims.getCheckDate())
+ );
+ }else{
+ settleClaims.setTotalHours(Constants.ZERO);
+ }
+ }
+ Integer closeCaseNum = closeCaseList.size();
+ //鏈寘鍚� 绔嬫閫�鍥� 绔嬫閫�鍥炲彲浠ュ啀娆℃彁浜ょ殑
+ Integer refuseNum = settleClaimsList.stream().filter(i->Objects.nonNull(i.getStatus())&&
+ (Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsStatus.REJECT_DEAL.getKey())
+ ||Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsStatus.WAIT_DISCUSS_REJECT.getKey()))
+ ).collect(Collectors.toList()).size();
+ Integer acceptanceNum = settleClaimsList.stream().filter(i->Objects.nonNull(i.getStatus())&&
+ (Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsStatus.ACCEPTANCE.getKey())
+ ||Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsStatus.WAIT_AUDIT_COMPENSATION.getKey())
+ ||Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsStatus.COMPENSATION.getKey())
+ ||Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsStatus.CONFIRM_FEE.getKey())
+ ||Constants.equalsInteger(i.getStatus(),Constants.SettleClaimsStatus.CLOSE_CASE.getKey())
+ )
+ ).collect(Collectors.toList()).size();
+ if(Objects.nonNull(closeCaseNum)&&!Constants.equalsInteger(closeCaseNum,Constants.ZERO)){
+ settleClaimsDataVO.setCloseCaseRata(new BigDecimal(closeCaseNum.toString()).divide(new BigDecimal(totalSettleClaimsNum.toString()),4,BigDecimal.ROUND_HALF_UP));
+ }
+ if(Objects.nonNull(refuseNum)&&!Constants.equalsInteger(refuseNum,Constants.ZERO)){
+ settleClaimsDataVO.setRefuseRata(new BigDecimal(refuseNum.toString()).divide(new BigDecimal(totalSettleClaimsNum.toString()),4,BigDecimal.ROUND_HALF_UP));
+ }
+ if(Objects.nonNull(acceptanceNum)&&!Constants.equalsInteger(acceptanceNum,Constants.ZERO)){
+ settleClaimsDataVO.setAcceptanceRata(new BigDecimal(acceptanceNum.toString()).divide(new BigDecimal(totalSettleClaimsNum.toString()),4,BigDecimal.ROUND_HALF_UP));
+ }
+
+ List<DataListVO> settleClaimsTotalList = new ArrayList<>();
+ List<DataListVO> settleClaimsFeeList = new ArrayList<>();
+ List<DataListVO> averageSettleClaimsList = new ArrayList<>();
+
+ for (int i = 5; i >=0 ; i--) {
+ //姣忎釜鏈堢殑鏁版嵁
+ String monthData = DateUtil.DateToStr(DateUtil.afterDateByType(new Date(),1,i*-1),"yyyy-MM");
+ DataListVO settleClaimsTotal = new DataListVO();
+ DataListVO settleClaimsFee = new DataListVO();
+ DataListVO averageSettleClaims = new DataListVO();
+
+ settleClaimsTotal.setDataFirst(monthData);
+ settleClaimsTotal.setDataSecond(
+ settleClaimsList.stream().filter(j->DateUtil.DateToStr(j.getCreateDate(),"yyyy-MM").equals(monthData)).collect(Collectors.toList()).toString()
+ );
+
+ settleClaimsFee.setDataFirst(monthData);
+ List<SettleClaims> closeCaseMonthList = closeCaseList.stream().filter(j->Objects.nonNull(j.getCheckDate())&&DateUtil.DateToStr(j.getCheckDate(),"yyyy-MM").equals(monthData)).collect(Collectors.toList());
+ settleClaimsFee.setDataSecond(closeCaseMonthList.stream().map(j->j.getHpAccount().add(j.getHpOtherAccount())).reduce(BigDecimal.ZERO,BigDecimal::add).toString());
+
+ averageSettleClaims.setDataFirst(monthData);
+ Integer sumHours = closeCaseMonthList.stream().map(j->
+ j.getTotalHours()).reduce(Constants.ZERO,Integer::sum);
+ averageSettleClaims.setDataSecond(
+ new BigDecimal(sumHours.toString()).divide(new BigDecimal((closeCaseMonthList.size()*24)+"")).toString()
+ );
+
+ settleClaimsTotalList.add(settleClaimsTotal);
+ settleClaimsFeeList.add(settleClaimsFee);
+ averageSettleClaimsList.add(averageSettleClaims);
+
+ }
+ settleClaimsDataVO.setSettleClaimsFeeList(settleClaimsFeeList);
+ settleClaimsDataVO.setAverageSettleClaimsList(averageSettleClaimsList);
+ settleClaimsDataVO.setSettleClaimsTotalList(settleClaimsTotalList);
+
+ //鎬荤悊璧旈噾棰�
+ settleClaimsDataVO.setSettleClaimsTotalFee(closeCaseList.stream().map(i->i.getHpAccount().add(i.getHpOtherAccount())).reduce(BigDecimal.ZERO,BigDecimal::add));
+
+ //鎬荤悊璧旀浠舵暟
+ settleClaimsDataVO.setSettleClaimsTotal(settleClaimsList.size());
+
+ //骞冲潎鐞嗚禂澶勭悊鏃堕暱澶╂暟 鎬昏澶勭悊鏃堕暱锛堝崟浣嶅皬鏃讹級闄や互 璁板綍鏁� 鎹㈢畻鍒板ぉ
+ settleClaimsDataVO.setAverageSettleClaimsTime(
+ new BigDecimal(closeCaseList.stream().map(i->i.getTotalHours()).reduce(Constants.ZERO,Integer::sum).toString())
+ .divide(new BigDecimal((closeCaseList.size()*24)+"") ,2,BigDecimal.ROUND_HALF_UP)
+
+ );
+
+ }
+
+
+ return settleClaimsDataVO;
}
+
+
+
+
+
+
+
}
--
Gitblit v1.9.3