浏览代码

修改直降 立减满减 业务逻辑

jk-GitHub-coder 4 年之前
父节点
当前提交
66788231f0

+ 29 - 15
YijiaRestful/src/main/java/com/platform/yijia/controller/CustomerGradeController.java

@@ -113,20 +113,23 @@ public class CustomerGradeController {
                         resultData = ResultData.success(customerGradeInfoList.get(0));
                     }
                 }else {
-                    //如果该油站使用优惠或者立减
-                    List<Map<String, Object>> customerGradeInfoByYouHuiList = customerGradeServices.getCustomerGradeInfoByYouHui(params);
-                    //只存在一个等级时
-                    if(customerGradeInfoByYouHuiList !=null && customerGradeInfoByYouHuiList.size() ==1){
-                        resultData = ResultData.success(customerGradeInfoByYouHuiList);
-                    }else if(customerGradeInfoByYouHuiList !=null && customerGradeInfoByYouHuiList.size() > 1){
-                        //存在多个等级时 查询出结果按优惠的值升序排列取第一个即可
-                        resultData = ResultData.success(customerGradeInfoByYouHuiList.get(0));
-                    }else {
-                        resultData = ResultData.success(customerGradeInfoByYouHuiList);
+                    switch (discountPlanType){
+                        case "2":
+                            params.put("discountPlanType", "1");
+                            break;
+                        case "3":
+                            params.put("discountPlanType", "2");
+                            break;
+                        case "4":
+                            params.put("discountPlanType", "3");
+                            break;
                     }
+                    //立减满减表查询站的优惠
+                    List<Map> customerMarkertPlanList = customerGradeServices.getCustomerMarkertPlanList(params);
+                    resultData = ResultData.success(customerMarkertPlanList);
                 }
             }else{
-                //否则该客户此油品已下过订单 存在等级
+                //否则该客户此油品已下过订单
                 String memberGrade = existCustomer.getMemberGrade();
                 if(memberGrade != null && memberGrade !=""){
                     params.put("grade", memberGrade);
@@ -135,10 +138,21 @@ public class CustomerGradeController {
                     //如果该油站使用是直降
                     List<Map<String, Object>> customerGradeInfoList = customerGradeServices.getCustomerGradeInfo(params);
                     resultData = ResultData.success(customerGradeInfoList);
-                }else {
-                    //如果该油站使用优惠或者立减
-                    List<Map<String, Object>> customerGradeInfoYouHuiList = customerGradeServices.getCustomerGradeInfoByYouHui(params);
-                    resultData = ResultData.success(customerGradeInfoYouHuiList);
+                }else{
+                    switch (discountPlanType){
+                        case "2":
+                            params.put("discountPlanType", "1");
+                            break;
+                        case "3":
+                            params.put("discountPlanType", "2");
+                            break;
+                        case "4":
+                            params.put("discountPlanType", "3");
+                            break;
+                    }
+                    //立减满减表查询站的优惠
+                    List<Map> customerMarkertPlanList = customerGradeServices.getCustomerMarkertPlanList(params);
+                    resultData = ResultData.success(customerMarkertPlanList);
                 }
             }
         }else {

+ 8 - 8
YijiaRestful/src/main/java/com/platform/yijia/controller/PayController.java

@@ -606,8 +606,8 @@ public class PayController {
                                     if(customerMarkertPlanList !=null && customerMarkertPlanList.size() >0){
                                         for(Map m: customerMarkertPlanList){
                                             if(Double.valueOf(customerManage.getAmt().toString()) >= Double.valueOf(m.get("discountAmt").toString())){
-                                                customerManage.setGrade(m.get("grade").toString());     //存入等级名称
-                                                customerManage.setMemberGrade(m.get("id").toString());     //存入等级ID
+                                                //customerManage.setGrade(m.get("grade").toString());     //存入等级名称
+                                                //customerManage.setMemberGrade(m.get("id").toString());     //存入等级ID
                                                 break;
                                             }
 
@@ -621,8 +621,8 @@ public class PayController {
                                     if(customerMarkertPlanList !=null && customerMarkertPlanList.size() >0){
                                         for(Map m: customerMarkertPlanList){
                                             if(Double.valueOf(customerManage.getAmt().toString()) >= Double.valueOf(m.get("discountAmt").toString())){
-                                                customerManage.setGrade(m.get("grade").toString());     //存入等级名称
-                                                customerManage.setMemberGrade(m.get("id").toString());     //存入等级ID
+                                                //customerManage.setGrade(m.get("grade").toString());     //存入等级名称
+                                                //customerManage.setMemberGrade(m.get("id").toString());     //存入等级ID
                                                 break;
                                             }
                                         }
@@ -653,8 +653,8 @@ public class PayController {
                                     if(customerMarkertPlanList !=null && customerMarkertPlanList.size() >0){
                                         for(Map m: customerMarkertPlanList){
                                             if(Double.valueOf(customerManage.getAmt().toString()) >= Double.valueOf(m.get("discountAmt").toString())){
-                                                customerManage.setGrade(m.get("grade").toString());     //存入等级名称
-                                                customerManage.setMemberGrade(m.get("id").toString());     //存入等级ID
+                                                //customerManage.setGrade(m.get("grade").toString());     //存入等级名称
+                                                //customerManage.setMemberGrade(m.get("id").toString());     //存入等级ID
                                                 break;
                                             }
                                         }
@@ -667,8 +667,8 @@ public class PayController {
                                     if(customerMarkertPlanList !=null && customerMarkertPlanList.size() >0){
                                         for(Map m: customerMarkertPlanList){
                                             if(Double.valueOf(customerManage.getAmt().toString()) >= Double.valueOf(m.get("discountAmt").toString())){
-                                                customerManage.setGrade(m.get("grade").toString());     //存入等级名称
-                                                customerManage.setMemberGrade(m.get("id").toString());     //存入等级ID
+                                                //customerManage.setGrade(m.get("grade").toString());     //存入等级名称
+                                                //customerManage.setMemberGrade(m.get("id").toString());     //存入等级ID
                                                 break;
                                             }
                                         }

+ 7 - 4
YijiaRestful/src/main/resources/mapper/CustomerGradeMapper.xml

@@ -24,6 +24,7 @@
             grade                       AS grade,
             discount_term               AS discountTerm,
             discount_amt                AS discountAmt,
+            gasoil_discount_amt         AS gasoilDiscountAmt,
             station_id                  AS stationId,
             vip_discounty_plus          AS vipDiscountyPlus,
             coupon_plus                 AS couponPlus,
@@ -38,6 +39,9 @@
             <if test="oilName != null and oilName != ''">
                 AND oil_name = #{oilName}
             </if>
+            <if test="discountPlanType != null and discountPlanType !=''">
+                AND discount_plan_type = #{discountPlanType}
+            </if>
         </where>
         ORDER BY discount_amt DESC
     </select>
@@ -51,7 +55,6 @@
         grade                       AS grade,
         discount_way                AS discountWay,
         gasoil_discount_litre       AS gasoilDiscountLitre,
-        gasoil_discount_litre       AS dieseloilDiscountLitre,
         member_condit               AS memberCondit,
         station_id                  AS stationId,
         member_condit_start         AS memberConditStart,
@@ -63,9 +66,9 @@
       <if test="stationId != null and stationId != ''">
           station_id = #{stationId}
       </if>
-        <if test="oilName != null and oilName != ''">
-            AND oil_name = #{oilName}
-        </if>
+      <if test="oilName != null and oilName != ''">
+        AND oil_name = #{oilName}
+      </if>
     </where>
   </select>