yumeng 2 gadi atpakaļ
vecāks
revīzija
bfd4917c50

+ 6 - 1
ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouRuleSettlementDataController.java

@@ -62,7 +62,12 @@ public class KuaishouRuleSettlementDataController extends BaseController {
 
     @GetMapping("/testData")
     public JSONObject testData(Long relateId, Long promoterId, Long ruleId, Long validOrderNum) {
-        return kuaishouRuleSettlementDataService.getOrderRuleData(relateId, promoterId, ruleId, validOrderNum);
+        JSONObject data = kuaishouRuleSettlementDataService.getData();
+        JSONArray array = new JSONArray();
+        array.add(data);
+        kuaishouRuleSettlementDataService.data(20230911L, array);
+        return  null;
+       //  return kuaishouRuleSettlementDataService.getOrderRuleData(relateId, promoterId, ruleId, validOrderNum);
 
     }
 

+ 2 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/mapper/KuaishouRuleSettlementDataMapper.java

@@ -86,4 +86,6 @@ public interface KuaishouRuleSettlementDataMapper {
     List<JSONObject> getPromoterSettlementDetail(@Param("date") Long date, @Param("promoterId") Long promoterId, @Param("settlementStatus") Integer settlementStatus);
 
     JSONObject getRuleJson(Long ruleId);
+
+    JSONObject getData();
 }

+ 2 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/service/IKuaishouRuleSettlementDataService.java

@@ -72,5 +72,7 @@ public interface IKuaishouRuleSettlementDataService {
     void updatePromoterStatus(Long statDate, Long promoterId, Integer status);
 
     List<JSONObject> getPromoterSettlementDetail(Long date, Long promoterId,Integer settlementStatus);
+
+    JSONObject getData();
 }
 

+ 11 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/service/impl/KuaishouRuleSettlementDataServiceImpl.java

@@ -446,7 +446,13 @@ public class KuaishouRuleSettlementDataServiceImpl implements IKuaishouRuleSettl
         }
         Integer itemCount = ruleJson.getInteger("startItemCount"); // 规则单数
         BigDecimal ruleAnchorAmount = ruleJson.getBigDecimal("anchorAmount"); // 规则达人激励金额
+        if(Check.isNull(ruleAnchorAmount)){
+            ruleAnchorAmount = new BigDecimal(0);
+        }
         BigDecimal ruleReferenceAmount = ruleJson.getBigDecimal("referenceAmount"); // 规则达人激励金额
+        if(Check.isNull(ruleReferenceAmount)){
+            ruleReferenceAmount = new BigDecimal(0);
+        }
 
         if (validOrderNum < itemCount) {
             returnJson.put("sonRuleId", 0);
@@ -505,5 +511,10 @@ public class KuaishouRuleSettlementDataServiceImpl implements IKuaishouRuleSettl
     public List<JSONObject> getPromoterSettlementDetail(Long date, Long promoterId, Integer settlementStatus) {
         return kuaishouRuleSettlementDataMapper.getPromoterSettlementDetail(date, promoterId, settlementStatus);
     }
+
+    @Override
+    public JSONObject getData() {
+        return kuaishouRuleSettlementDataMapper.getData();
+    }
 }
 

+ 35 - 0
ruixuan-live/src/main/resources/mapper/isc/KuaishouRuleSettlementDataMapper.xml

@@ -364,6 +364,41 @@
         from kuaishou_rule_detail where rule_id = #{ruleId}
         order by  create_time desc limit 1
     </select>
+    <select id="getData" resultType="com.alibaba.fastjson.JSONObject">
+  select t.*, tt.rule_type
+      from (select *
+      from (select t1.relate_id                                 as 'relateId',
+                   (case
+                        when t2.rule_id is not null
+                            then t2.rule_id
+                        else 1
+                       end
+                       )                                        as 'ruleId',
+                   group_concat(t1.item_id)                     as 'itemIds',
+                   t1.promoter_id                               as 'promoterId',
+                   t1.promoter_name                             as 'promoterName',
+                   t1.item_create_id                            as 'itemCreateId',
+                   t1.item_create_name                          as 'itemCreateName',
+                   t1.promoter_create_id                        as 'promoterCreateId',
+                   t1.promoter_create_name                      as 'promoterCreateName',
+                   ifnull(sum(t1.order_num), 0)                 as 'orderNum',
+                   ifnull(sum(t1.valid_order_num), 0)           as 'validOrderNum',
+                   ifnull(sum(t1.yesterday_order_num), 0)       as 'yesterdayOrderNum',
+                   ifnull(sum(t1.yesterday_valid_order_num), 0) as 'yesterdayValidOrderNum',
+                   t1.stat_date                                 as 'statDate',
+                   round(t2.item_price / 100, 2)                as 'itemPrice'
+            from ruixuan.kuaishou_rule_order_data t1
+                     left join ruixuan.kuaishou_item_list t2 on t1.item_id = t2.item_id
+            where t1.item_id  = 21112531910237
+            and t1.promoter_id = 3469906734
+            and t1.stat_date = 20230911
+              and t1.relate_id is not null
+            group by t1.relate_id, t1.promoter_id) t
+      where t.itemPrice >= 6
+      order by t.validOrderNum desc) t
+         left join ruixuan.kuaishou_settlement_rules tt
+                   on t.ruleId = tt.id
+    </select>
 
     <insert id="replaceDatas">
         replace into kuaishou_rule_settlement_data(