Browse Source

添加乙方

rainwer 6 months ago
parent
commit
9c04f46a41

+ 3 - 0
src/main/java/cn/ezhizao/project/business/order/domain/OrderExcelImportLoopNewModel.java

@@ -41,6 +41,9 @@ public class OrderExcelImportLoopNewModel {
     @Excel(name = "签约类型")
     private String contractType;
 
+    @Excel(name = "乙方")
+    private String party;
+
 
     // 代理记账
     @Excel(name = "代理记账")

+ 7 - 4
src/main/java/cn/ezhizao/project/business/order/service/impl/BizArchiveInputServiceImpl.java

@@ -1358,6 +1358,7 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
             archiveInput.setTrueAmount(item.getAmount());
             archiveInput.setFormDate(new Date());
             archiveInput.setContractNo(item.getContractNo());
+            archiveInput.setParty(item.getParty());
             SysUser user = userService.selectUserByNickName(item.getSignerName(), tenantId);
 
             // 判断下订单总价单价是否和录入相符
@@ -1471,7 +1472,7 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
             }
 
             archiveInput.setSignerId(user != null ? user.getUserId() : null);
-            archiveInput.setContractType("新签".equals(item.getContractType()) ? 0 : "续签".equals(item.getContractType()) ? 1 : 3);
+            archiveInput.setContractType("新签合同".equals(item.getContractType()) ? 0 : "续签合同".equals(item.getContractType()) ? 1 : 3);
             archiveInput.setServiceType(1);
             archiveInput.setTenantId(tenantId);
             archiveInput.setId(snowflakeIdWorker.nextId());
@@ -1511,7 +1512,8 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
                 detail.setAmount(item.getKeepAccountAmount());
                 // 计算单价
                 BigDecimal price = getPrice(item.getKeepAccountAmount(), item.getKeepAccountMonth());
-                detail.setDiscountAmount(price.multiply(new BigDecimal(item.getKeepAccountMonth())).subtract(item.getKeepAccountAmount()));
+                detail.setDiscountAmount(price.multiply(Objects.isNull(item.getKeepAccountMonth()) ? BigDecimal.ZERO : new BigDecimal(item.getKeepAccountMonth()))
+                        .subtract(Objects.isNull(item.getKeepAccountAmount()) ? BigDecimal.ZERO : item.getKeepAccountAmount()));
                 detail.setPrice(price);
                 detail.setServiceNum(item.getKeepAccountMonth());
                 detail.setFreeNum(item.getKeepAccountFreeMonth());
@@ -1561,7 +1563,8 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
                 detail.setAmount(item.getSocialSecurityAmount());
                 // 计算单价
                 BigDecimal price = getPrice(item.getSocialSecurityAmount(), item.getSocialSecurityMonth());
-                detail.setDiscountAmount(price.multiply(new BigDecimal(item.getSocialSecurityMonth())).subtract(item.getSocialSecurityAmount()));
+                detail.setDiscountAmount(price.multiply(Objects.isNull(item.getSocialSecurityMonth()) ? BigDecimal.ZERO : new BigDecimal(item.getSocialSecurityMonth()))
+                        .subtract(Objects.isNull(item.getSocialSecurityAmount()) ? BigDecimal.ZERO : item.getSocialSecurityAmount()));
                 detail.setPrice(price);
 //                detail.setDiscountAmount(item.getSocialSecurityFreeAmount());
 //                detail.setPrice(item.getSocialSecurityPrice());
@@ -1729,7 +1732,7 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
     }
 
     private BigDecimal getPrice(BigDecimal amount, Integer month) {
-        if(amount.equals(BigDecimal.ZERO) || month == 0) {
+        if(Objects.isNull(amount) || BigDecimal.ZERO.equals(amount) || Objects.isNull(month) || month == 0) {
             return BigDecimal.ZERO;
         }
         BigDecimal res = amount.divide(new BigDecimal(month), 2, BigDecimal.ROUND_CEILING);