Jelajahi Sumber

1.掌柜财务结算批量导入时间

wuhp 1 tahun lalu
induk
melakukan
50402e0037

+ 49 - 12
src/main/java/com/ydtech/modules/fnc/entity/InsPlyIncome.java

@@ -9,6 +9,7 @@ import java.time.LocalDateTime;
 import java.time.LocalTime;
 import java.time.format.DateTimeFormatter;
 
+import com.ydtech.utils.StringUtils;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
@@ -545,12 +546,30 @@ public class InsPlyIncome implements Serializable {
         this.insuredName = insuredName;
         this.policyno  = policyno;
         this.syPolicyno = syPolicyno;
-        this.jqPremium = new BigDecimal(jqPremium);
-        this.syPremium = new BigDecimal(syPremium);
-        this.taxamount = new BigDecimal(taxamount);
-        this.jqSuperviseCostsProportion = new BigDecimal(jqSuperviseCostsProportion);
-        this.sySuperviseCostsProportion = new BigDecimal(sySuperviseCostsProportion);
-        this.commissionFeevalue =  new BigDecimal(commissionFeevalue);;
+        if(StringUtils.isNotEmpty(jqPremium)){
+            this.jqPremium = new BigDecimal(jqPremium);
+        }
+        if(StringUtils.isNotEmpty(syPremium)){
+            this.syPremium = new BigDecimal(syPremium);
+        }
+
+        if(StringUtils.isNotEmpty(taxamount)){
+            this.taxamount = new BigDecimal(taxamount);
+        }
+
+        if(StringUtils.isNotEmpty(jqSuperviseCostsProportion)){
+            this.jqSuperviseCostsProportion = new BigDecimal(jqSuperviseCostsProportion);
+        }
+
+        if(StringUtils.isNotEmpty(sySuperviseCostsProportion)){
+            this.sySuperviseCostsProportion = new BigDecimal(sySuperviseCostsProportion);
+        }
+
+
+        if(StringUtils.isNotEmpty(commissionFeevalue)){
+            this.commissionFeevalue =  new BigDecimal(commissionFeevalue);
+        }
+
         this.addType  = addType;
         this.createTime = LocalDateTime.now();
         this.handlingFeesStatus = "0";
@@ -579,12 +598,30 @@ public class InsPlyIncome implements Serializable {
         this.insuredName = insuredName;
         this.policyno  = policyno;
         this.syPolicyno = syPolicyno;
-        this.jqPremium = new BigDecimal(jqPremium);
-        this.syPremium = new BigDecimal(syPremium);
-        this.taxamount = new BigDecimal(taxamount);
-        this.jqOtherCostsProportion = new BigDecimal(jqOtherCostsProportion);
-        this.syOtherCostsProportion = new BigDecimal(syOtherCostsProportion);
-        this.otherFeevalue =  new BigDecimal(otherFeevalue);;
+        if(StringUtils.isNotEmpty(jqPremium)){
+            this.jqPremium = new BigDecimal(jqPremium);
+        }
+
+        if(StringUtils.isNotEmpty(syPremium)){
+            this.syPremium = new BigDecimal(syPremium);
+        }
+
+        if(StringUtils.isNotEmpty(taxamount)){
+            this.taxamount = new BigDecimal(taxamount);
+        }
+
+        if(StringUtils.isNotEmpty(jqOtherCostsProportion)){
+            this.jqOtherCostsProportion = new BigDecimal(jqOtherCostsProportion);
+        }
+
+        if(StringUtils.isNotEmpty(syOtherCostsProportion)){
+            this.syOtherCostsProportion = new BigDecimal(syOtherCostsProportion);
+        }
+
+        if(StringUtils.isNotEmpty(otherFeevalue)){
+            this.otherFeevalue =  new BigDecimal(otherFeevalue);
+        }
+
         this.addType  = addType;
         this.createTime = LocalDateTime.now();
         this.handlingFeesStatus = "0";

+ 2 - 4
src/main/java/com/ydtech/modules/fnc/service/impl/InsPlyIncomeServiceImpl.java

@@ -80,10 +80,7 @@ import java.math.RoundingMode;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.time.LocalTime;
-import java.time.YearMonth;
+import java.time.*;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.function.BinaryOperator;
@@ -3952,6 +3949,7 @@ public class InsPlyIncomeServiceImpl extends ServiceImpl<InsPlyIncomeMapper, Ins
                 }
             }
         }else if("2".equals(type)){
+
             int index=1;
             //车险跟单
             if(cxgdList!=null && cxgdList.size()>0){

+ 9 - 2
src/main/java/com/ydtech/modules/inv/model/excel/AddTypeCXGDExcel.java

@@ -1,6 +1,7 @@
 package com.ydtech.modules.inv.model.excel;
 
 import cn.afterturn.easypoi.excel.annotation.Excel;
+import cn.afterturn.easypoi.excel.annotation.ExcelIgnore;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.baomidou.mybatisplus.annotation.TableField;
 import io.swagger.annotations.ApiModelProperty;
@@ -8,6 +9,7 @@ import lombok.Data;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.util.Date;
 
 /**
  *  @version
@@ -18,8 +20,9 @@ import java.math.BigDecimal;
 @Data
 public class AddTypeCXGDExcel implements Serializable {
 
-    @Excel(name = "签单日期",isImportField = "true")
-    private String signDate;
+
+    @Excel(name = "签单日期",isImportField = "true", databaseFormat = "yyyy/MM/dd")
+    private Date signDateNew;
 
     @Excel(name = "车牌号",isImportField = "true")
     private String licenseno;
@@ -68,4 +71,8 @@ public class AddTypeCXGDExcel implements Serializable {
     @Excel(name = "类型",isImportField = "true")
     private String addType;
 
+
+    @ExcelIgnore
+    private String signDate;
+
 }

+ 8 - 2
src/main/java/com/ydtech/modules/inv/model/excel/AddTypeCXSXFExcel.java

@@ -1,6 +1,7 @@
 package com.ydtech.modules.inv.model.excel;
 
 import cn.afterturn.easypoi.excel.annotation.Excel;
+import cn.afterturn.easypoi.excel.annotation.ExcelIgnore;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.baomidou.mybatisplus.annotation.TableField;
 import io.swagger.annotations.ApiModelProperty;
@@ -10,6 +11,7 @@ import java.io.Serializable;
 import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.util.Date;
 
 /**
  *  @version
@@ -21,8 +23,8 @@ import java.time.LocalDateTime;
 public class AddTypeCXSXFExcel implements Serializable {
 
 
-    @Excel(name = "签单日期",isImportField = "true")
-    private String signDate;
+    @Excel(name = "签单日期",isImportField = "true", databaseFormat = "yyyy/MM/dd")
+    private Date signDateNew;
 
     @Excel(name = "车牌号",isImportField = "true")
     private String licenseno;
@@ -71,4 +73,8 @@ public class AddTypeCXSXFExcel implements Serializable {
     @Excel(name = "类型",isImportField = "true")
     private String addType;
 
+
+    @ExcelIgnore
+    private String signDate;
+
 }

+ 6 - 1
src/main/java/com/ydtech/modules/inv/model/excel/AddTypeFCGDExcel.java

@@ -1,6 +1,7 @@
 package com.ydtech.modules.inv.model.excel;
 
 import cn.afterturn.easypoi.excel.annotation.Excel;
+import cn.afterturn.easypoi.excel.annotation.ExcelIgnore;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.baomidou.mybatisplus.annotation.TableField;
 import io.swagger.annotations.ApiModelProperty;
@@ -8,6 +9,7 @@ import lombok.Data;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.util.Date;
 
 /**
  *  @version
@@ -19,7 +21,7 @@ import java.math.BigDecimal;
 public class AddTypeFCGDExcel implements Serializable {
 
     @Excel(name = "签单日期",isImportField = "true")
-    private String signDate;
+    private Date signDateNew;
 
     @Excel(name = "车牌号",isImportField = "true")
     private String licenseno;
@@ -53,4 +55,7 @@ public class AddTypeFCGDExcel implements Serializable {
 
     @Excel(name = "类型",isImportField = "true")
     private String addType;
+
+    @ExcelIgnore
+    private String signDate;
 }

+ 5 - 1
src/main/java/com/ydtech/modules/inv/model/excel/AddTypeFCSXFExcel.java

@@ -1,6 +1,7 @@
 package com.ydtech.modules.inv.model.excel;
 
 import cn.afterturn.easypoi.excel.annotation.Excel;
+import cn.afterturn.easypoi.excel.annotation.ExcelIgnore;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.baomidou.mybatisplus.annotation.TableField;
 import io.swagger.annotations.ApiModelProperty;
@@ -8,6 +9,7 @@ import lombok.Data;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.util.Date;
 
 /**
  *  @version
@@ -19,7 +21,7 @@ import java.math.BigDecimal;
 public class AddTypeFCSXFExcel implements Serializable {
 
     @Excel(name = "签单日期",isImportField = "true")
-    private String signDate;
+    private Date signDateNew;
 
     @Excel(name = "车牌号",isImportField = "true")
     private String licenseno;
@@ -57,4 +59,6 @@ public class AddTypeFCSXFExcel implements Serializable {
     @Excel(name = "类型",isImportField = "true")
     private String addType;
 
+    @ExcelIgnore
+    private String signDate;
 }

+ 73 - 37
src/main/java/com/ydtech/modules/inv/utils/CheckInsPlyComeUtils.java

@@ -18,10 +18,9 @@ import java.math.BigDecimal;
 import java.text.DateFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.time.LocalTime;
+import java.time.*;
 import java.time.format.DateTimeFormatter;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -184,16 +183,16 @@ public class CheckInsPlyComeUtils {
 
         Map<String,Object>  map =new HashMap<String,Object>();
         String errorMsg ="";
-        if(checkSignDate(dto.getSignDate(), "签单时间")!=null){
-            errorMsg+=checkSignDate(dto.getSignDate(), "签单时间")+"; ";
+//        if(checkSignDate(dto.getSignDate(), "签单时间")!=null){
+//            errorMsg+=checkSignDate(dto.getSignDate(), "签单时间")+"; ";
+//        }
+        if(dto.getSignDateNew()==null){
+            errorMsg+="签单日期 不能为空或格式错误,格式为yyyy-MM-dd";
         }
         //签单日期转换为 yyyy-MM-dd HH:mm:ss
-        if(StringUtils.isNotEmpty(dto.getSignDate())){
-            String singTime = pareTimeLocalDate(dto.getSignDate());
-            dto.setSignDate(singTime);
+        if(dto.getSignDateNew()!=null){
+            dto.setSignDate( pareDateToLocalTime(dto.getSignDateNew()));
         }
-
-
         if(checkIsNull(dto.getLicenseno(), "车牌号")!=null){
             errorMsg+=checkIsNull(dto.getSignDate(), "车牌号")+"; ";
         }
@@ -245,18 +244,18 @@ public class CheckInsPlyComeUtils {
         if(isNumeric(dto.getJqPremium(), "交强险保费")!=null){
             errorMsg+=isNumeric(dto.getJqPremium(), "交强险保费")+"; ";
         }
-        if(isNumeric(dto.getSyPremium(), "商业险保费")!=null){
-            errorMsg+=isNumeric(dto.getSyPremium(), "商业险保费")+"; ";
-        }
+//        if(isNumeric(dto.getSyPremium(), "商业险保费")!=null){
+//            errorMsg+=isNumeric(dto.getSyPremium(), "商业险保费")+"; ";
+//        }
         if(isNumeric(dto.getTaxamount(), "车船税")!=null){
             errorMsg+=isNumeric(dto.getTaxamount(), "车船税")+"; ";
         }
         if(isNumeric(dto.getJqSuperviseCostsProportion(), "交强手续费比例")!=null){
             errorMsg+=isNumeric(dto.getJqSuperviseCostsProportion(), "交强手续费比例")+"; ";
         }
-        if(isNumeric(dto.getSySuperviseCostsProportion(), "商业手续费比例")!=null){
-            errorMsg+=isNumeric(dto.getSySuperviseCostsProportion(), "商业手续费比例")+"; ";
-        }
+//        if(isNumeric(dto.getSySuperviseCostsProportion(), "商业手续费比例")!=null){
+//            errorMsg+=isNumeric(dto.getSySuperviseCostsProportion(), "商业手续费比例")+"; ";
+//        }
         if(isNumeric(dto.getCommissionFeevalue(), "手续费金额")!=null){
             errorMsg+=isNumeric(dto.getCommissionFeevalue(), "手续费金额")+"; ";
         }
@@ -284,6 +283,17 @@ public class CheckInsPlyComeUtils {
         return map;
     }
 
+    private static String pareDateToLocalTime(Date getSignDateNew) {
+
+        Instant instant = getSignDateNew.toInstant();
+        ZoneId zoneId = ZoneId.systemDefault();
+        LocalDate localDate = instant.atZone(zoneId).toLocalDate();
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+        String formattedDate = localDate.format(formatter);
+        String singTime = pareTimeLocalDate(formattedDate);
+         return  singTime;
+    }
+
     private static String pareTimeLocalDate(String signDate) {
         // 定义输入格式(仅日期)
         DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
@@ -315,13 +325,21 @@ public class CheckInsPlyComeUtils {
 
         Map<String,Object>  map =new HashMap<String,Object>();
         String errorMsg ="";
-        if(checkSignDate(dto.getSignDate(), "签单时间")!=null){
-            errorMsg+=checkSignDate(dto.getSignDate(), "签单时间")+"; ";
+//        if(checkSignDate(dto.getSignDate(), "签单时间")!=null){
+//            errorMsg+=checkSignDate(dto.getSignDate(), "签单时间")+"; ";
+//        }
+//        //签单日期转换为 yyyy-MM-dd HH:mm:ss
+//        if(StringUtils.isNotEmpty(dto.getSignDate())){
+//            String singTime = pareTimeLocalDate(dto.getSignDate());
+//            dto.setSignDate(singTime);
+//        }
+
+        if(dto.getSignDateNew()==null){
+            errorMsg+="签单日期 不能为空或格式错误,格式为yyyy-MM-dd";
         }
         //签单日期转换为 yyyy-MM-dd HH:mm:ss
-        if(StringUtils.isNotEmpty(dto.getSignDate())){
-            String singTime = pareTimeLocalDate(dto.getSignDate());
-            dto.setSignDate(singTime);
+        if(dto.getSignDateNew()!=null){
+            dto.setSignDate( pareDateToLocalTime(dto.getSignDateNew()));
         }
 
         if(checkIsNull(dto.getLicenseno(), "车牌号")!=null){
@@ -376,18 +394,18 @@ public class CheckInsPlyComeUtils {
         if(isNumeric(dto.getJqPremium(), "交强险保费")!=null){
             errorMsg+=isNumeric(dto.getJqPremium(), "交强险保费")+"; ";
         }
-        if(isNumeric(dto.getSyPremium(), "商业险保费")!=null){
-            errorMsg+=isNumeric(dto.getSyPremium(), "商业险保费")+"; ";
-        }
+//        if(isNumeric(dto.getSyPremium(), "商业险保费")!=null){
+//            errorMsg+=isNumeric(dto.getSyPremium(), "商业险保费")+"; ";
+//        }
         if(isNumeric(dto.getTaxamount(), "车船税")!=null){
             errorMsg+=isNumeric(dto.getTaxamount(), "车船税")+"; ";
         }
         if(isNumeric(dto.getJqOtherCostsProportion(), "交强跟单比例")!=null){
             errorMsg+=isNumeric(dto.getJqOtherCostsProportion(), "交强跟单比例")+"; ";
         }
-        if(isNumeric(dto.getSyOtherCostsProportion(), "商业跟单比例")!=null){
-            errorMsg+=isNumeric(dto.getSyOtherCostsProportion(), "商业跟单比例")+"; ";
-        }
+//        if(isNumeric(dto.getSyOtherCostsProportion(), "商业跟单比例")!=null){
+//            errorMsg+=isNumeric(dto.getSyOtherCostsProportion(), "商业跟单比例")+"; ";
+//        }
         if(isNumeric(dto.getOtherFeevalue(), "跟单费金额")!=null){
             errorMsg+=isNumeric(dto.getOtherFeevalue(), "跟单费金额")+"; ";
         }
@@ -422,15 +440,24 @@ public class CheckInsPlyComeUtils {
      */
     public static Map<String, Object> checkDataDto3(AddTypeFCSXFExcel dto) {
 
+
         Map<String,Object>  map =new HashMap<String,Object>();
         String errorMsg ="";
-        if(checkSignDate(dto.getSignDate(), "签单时间")!=null){
-            errorMsg+=checkSignDate(dto.getSignDate(), "签单时间")+"; ";
+//        if(checkSignDate(dto.getSignDate(), "签单时间")!=null){
+//            errorMsg+=checkSignDate(dto.getSignDate(), "签单时间")+"; ";
+//        }
+//        //签单日期转换为 yyyy-MM-dd HH:mm:ss
+//        if(StringUtils.isNotEmpty(dto.getSignDate())){
+//            String singTime = pareTimeLocalDate(dto.getSignDate());
+//            dto.setSignDate(singTime);
+//        }
+
+        if(dto.getSignDateNew()==null){
+            errorMsg+="签单日期 不能为空或格式错误,格式为yyyy-MM-dd";
         }
         //签单日期转换为 yyyy-MM-dd HH:mm:ss
-        if(StringUtils.isNotEmpty(dto.getSignDate())){
-            String singTime = pareTimeLocalDate(dto.getSignDate());
-            dto.setSignDate(singTime);
+        if(dto.getSignDateNew()!=null){
+            dto.setSignDate( pareDateToLocalTime(dto.getSignDateNew()));
         }
 
         if(checkIsNull(dto.getLicenseno(), "车牌号")!=null){
@@ -517,14 +544,23 @@ public class CheckInsPlyComeUtils {
     public static Map<String, Object> checkDataDto4(AddTypeFCGDExcel dto) {
         Map<String,Object>  map =new HashMap<String,Object>();
         String errorMsg ="";
-        if(checkSignDate(dto.getSignDate(), "签单时间")!=null){
-            errorMsg+=checkSignDate(dto.getSignDate(), "签单时间")+"; ";
+//        if(checkSignDate(dto.getSignDate(), "签单时间")!=null){
+//            errorMsg+=checkSignDate(dto.getSignDate(), "签单时间")+"; ";
+//        }
+//
+//        //签单日期转换为 yyyy-MM-dd HH:mm:ss
+//        if(StringUtils.isNotEmpty(dto.getSignDate())){
+//            String singTime = pareTimeLocalDate(dto.getSignDate());
+//            dto.setSignDate(singTime);
+//        }
+        if(dto.getSignDateNew()==null){
+            errorMsg+="签单日期 不能为空或格式错误,格式为yyyy-MM-dd";
         }
         //签单日期转换为 yyyy-MM-dd HH:mm:ss
-        if(StringUtils.isNotEmpty(dto.getSignDate())){
-            String singTime = pareTimeLocalDate(dto.getSignDate());
-            dto.setSignDate(singTime);
+        if(dto.getSignDateNew()!=null){
+            dto.setSignDate( pareDateToLocalTime(dto.getSignDateNew()));
         }
+
         if(checkIsNull(dto.getLicenseno(), "车牌号")!=null){
             errorMsg+=checkIsNull(dto.getSignDate(), "车牌号")+"; ";
         }