Parcourir la source

取价调整为折扣价

eganwu il y a 2 ans
Parent
commit
574d6fb2b3
1 fichiers modifiés avec 11 ajouts et 34 suppressions
  1. 11 34
      src/custom/beans/itemprice/ItemPrice.java

+ 11 - 34
src/custom/beans/itemprice/ItemPrice.java

@@ -118,16 +118,12 @@ public class ItemPrice extends BaseClass {
              * 第一步:查询框架合同并试图获取价格:优先级 商品价格、商品折扣==》类别折扣==》合同折扣
              */
             {
-                Rows contractRows;
-//                if (contractRowscacheMap.containsKey(cachekey)) {
-//                    contractRows = contractRowscacheMap.get(cachekey);
-//                } else {
+
                 SQLFactory contractQuery = new SQLFactory(this, "商户框架合同查询");
                 contractQuery.addParameter("siteid", controller.siteid);
                 contractQuery.addParameter("sys_enterpriseid", sys_enterpriseid);
-                contractRows = dbConnect.runSqlQuery(contractQuery.getSQL());
-//                    contractRowscacheMap.put(cachekey, contractRows);
-//                }
+                Rows contractRows = dbConnect.runSqlQuery(contractQuery.getSQL());
+
                 if (contractRows.size() > 1) {
                     throw new YosException("存在一个以上的价格协议信息:" + itemid);
                 } else if (contractRows.size() == 1) {
@@ -139,15 +135,13 @@ public class ItemPrice extends BaseClass {
                     /*
                      *第三步:如果商品价格还是小于0,则尝试从合同类别折扣协议中去获取价格
                      */
-//                    stepThree(sa_contractid, getGraderateprice());
-                    stepThree(sa_contractid, getMarketprice());
+                    stepThree(sa_contractid, getGraderateprice());
                     /*
                      * 第四步:如果商品价格还是小于0,则从合同折扣协议中去获取价格
                      */
                     BigDecimal discountrate = contractRows.get(0).getBigDecimal("discountrate");//折扣率
                     if (contractprice.compareTo(BigDecimal.ZERO) <= 0 && discountrate.compareTo(BigDecimal.ZERO) > 0) {
-//                        contractprice = getScalePrice(getGraderateprice().multiply(discountrate));
-                        contractprice = getScalePrice(getMarketprice().multiply(discountrate));
+                        contractprice = getScalePrice(getGraderateprice().multiply(discountrate));
 
 
                     }
@@ -157,19 +151,17 @@ public class ItemPrice extends BaseClass {
              * 如果框架合同中没有获取到有效的价格,则返回商户等级价格信息
              */
             if (contractprice.compareTo(BigDecimal.ZERO) <= 0) {
-//                contractprice = getGraderateprice();
-                contractprice = getMarketprice();
+                contractprice = getGraderateprice();
             }
             /*
              * 如果没有获取到有效的价格,则返回原价格信息
              */
             if (contractprice.compareTo(BigDecimal.ZERO) <= 0) {
-//                contractprice = getPrice();
-                contractprice = getMarketprice();
+                contractprice = getPrice();
             }
         }
 
-//        setScalePrice();
+
 
 
         return contractprice;
@@ -225,7 +217,6 @@ public class ItemPrice extends BaseClass {
             }
         }
 
-//        setScalePrice();
 
         return contractprice;
     }
@@ -255,8 +246,7 @@ public class ItemPrice extends BaseClass {
 
             if (type.equals("折扣系数") && discountrate_item.compareTo(BigDecimal.ZERO) > 0) {
 
-//                contractprice = getScalePrice(getGraderateprice().multiply(discountrate_item));
-                contractprice = getScalePrice(getMarketprice().multiply(discountrate_item));
+                contractprice = getScalePrice(getGraderateprice().multiply(discountrate_item));
 
 
             } else if (type.equals("指定单价") && price.compareTo(BigDecimal.ZERO) > 0) {
@@ -447,27 +437,14 @@ public class ItemPrice extends BaseClass {
     }
 
     /**
-     * 对于是乘以折扣的,海盐取整,其他取2位
-     *
      * @param price
      * @return
      */
     public BigDecimal getScalePrice(BigDecimal price) {
-        if (controller.siteid.equals("HY")) {
-            return (price).setScale(0, BigDecimal.ROUND_HALF_UP);
 
-        } else {
-            return (price).setScale(2, BigDecimal.ROUND_HALF_UP);
-        }
-    }
+        return (price).setScale(2, BigDecimal.ROUND_HALF_UP);
 
+    }
 
-//    public void setScalePrice() {
-//        if (controller.siteid.equals("HY")) {
-//            contractprice = contractprice.setScale(0, BigDecimal.ROUND_HALF_UP);
-//        } else {
-//            contractprice = contractprice.setScale(2, BigDecimal.ROUND_HALF_UP);
-//        }
-//    }
 
 }