فهرست منبع

付款计划调整

zhangyao 1 ماه پیش
والد
کامیت
cd52f5f4c6
1فایلهای تغییر یافته به همراه16 افزوده شده و 4 حذف شده
  1. 16 4
      com.awspaas.user.apps.donenow_ctt/src/com/awspaas/user/apps/donenow_ctt/service/contractService.java

+ 16 - 4
com.awspaas.user.apps.donenow_ctt/src/com/awspaas/user/apps/donenow_ctt/service/contractService.java

@@ -1506,8 +1506,11 @@ public class contractService {
 
 
                         //采购
                         //采购
                         contractCost.put("PURCHASE_PERIOD_TYPE", service.getString("PURCHASE_PERIOD_TYPE"));//采购周期
                         contractCost.put("PURCHASE_PERIOD_TYPE", service.getString("PURCHASE_PERIOD_TYPE"));//采购周期
-                        contractCost.put("PURCHASE_START_DATE", service.getString("PURCHASE_START_DATE"));//采购开始日期
-                        contractCost.put("CONTRACT_START_DATE", service.getString("START_DATE"));
+                        String PURCHASE_START_DATE = service.getString("PURCHASE_START_DATE");
+                        if (StringUtils.isBlank(PURCHASE_START_DATE))
+                            PURCHASE_START_DATE = contract.getString("START_DATE");
+                        contractCost.put("PURCHASE_START_DATE", PURCHASE_START_DATE);//采购开始日期
+                        contractCost.put("CONTRACT_START_DATE", contract.getString("START_DATE"));
                         contractCost.put("CONTRACT_END_DATE", contract.getString("END_DATE"));//采购结束日期
                         contractCost.put("CONTRACT_END_DATE", contract.getString("END_DATE"));//采购结束日期
 
 
 
 
@@ -1539,8 +1542,12 @@ public class contractService {
 
 
                     //采购
                     //采购
                     contractCost.put("PURCHASE_PERIOD_TYPE", service.getString("PURCHASE_PERIOD_TYPE"));//采购周期
                     contractCost.put("PURCHASE_PERIOD_TYPE", service.getString("PURCHASE_PERIOD_TYPE"));//采购周期
-                    contractCost.put("PURCHASE_START_DATE", service.getString("PURCHASE_START_DATE"));//采购开始日期
-                    contractCost.put("CONTRACT_START_DATE", service.getString("START_DATE"));
+
+                    String PURCHASE_START_DATE = service.getString("PURCHASE_START_DATE");
+                    if (StringUtils.isBlank(PURCHASE_START_DATE))
+                        PURCHASE_START_DATE = contract.getString("START_DATE");
+
+                    contractCost.put("CONTRACT_START_DATE", contract.getString("START_DATE"));
                     contractCost.put("CONTRACT_END_DATE", contract.getString("END_DATE"));//采购结束日期
                     contractCost.put("CONTRACT_END_DATE", contract.getString("END_DATE"));//采购结束日期
 
 
                     PRODUCT_ID = AddContractServiceProduct(uc, conn, contractCost);
                     PRODUCT_ID = AddContractServiceProduct(uc, conn, contractCost);
@@ -1629,6 +1636,8 @@ public class contractService {
 
 
         BigDecimal EXTENDED_COST = divideToBigDecimal(service.get("UNIT_COST"), contractCost.get("QUANTITY"));
         BigDecimal EXTENDED_COST = divideToBigDecimal(service.get("UNIT_COST"), contractCost.get("QUANTITY"));
 
 
+        contractServiceLogger.info("计算合同成本周期:" + service);
+
         // 需要通过采购计算总成本
         // 需要通过采购计算总成本
         List<PeriodCalculationUtil.Period> periodList = PeriodCalculationUtil.getPeriodList(service.get("PURCHASE_PERIOD_TYPE"), LocalDate.parse(service.get("CONTRACT_START_DATE").substring(0, 10)), LocalDate.parse(service.get("PURCHASE_START_DATE").substring(0, 10)), LocalDate.parse(service.get("CONTRACT_END_DATE").substring(0, 10)), service.get("PURCHASE_PERIOD_TYPE").equals("610"));
         List<PeriodCalculationUtil.Period> periodList = PeriodCalculationUtil.getPeriodList(service.get("PURCHASE_PERIOD_TYPE"), LocalDate.parse(service.get("CONTRACT_START_DATE").substring(0, 10)), LocalDate.parse(service.get("PURCHASE_START_DATE").substring(0, 10)), LocalDate.parse(service.get("CONTRACT_END_DATE").substring(0, 10)), service.get("PURCHASE_PERIOD_TYPE").equals("610"));
 
 
@@ -1636,6 +1645,9 @@ public class contractService {
         EXTENDED_COST = EXTENDED_COST.multiply(rate);
         EXTENDED_COST = EXTENDED_COST.multiply(rate);
         contractCost.set("EXTENDED_COST", EXTENDED_COST);
         contractCost.set("EXTENDED_COST", EXTENDED_COST);
 
 
+        //单元成本
+        contractCost.set("UNIT_COST", divideToBigDecimal(contractCost.get("EXTENDED_COST"), contractCost.get("QUANTITY")));
+
         //总价格
         //总价格
         contractCost.set("EXTENDED_PRICE", DBSql.getDouble(conn, "SELECT SUM(PERIOD_ADJUSTED_PRICE) as PRICE FROM BO_EU_DNCTT_CONTRACT_SERVICE_PERIOD WHERE CONTRACT_SERVICE_ID='" + service.get("SERVICE_ID") + "'", "PRICE"));
         contractCost.set("EXTENDED_PRICE", DBSql.getDouble(conn, "SELECT SUM(PERIOD_ADJUSTED_PRICE) as PRICE FROM BO_EU_DNCTT_CONTRACT_SERVICE_PERIOD WHERE CONTRACT_SERVICE_ID='" + service.get("SERVICE_ID") + "'", "PRICE"));