yumeng 2 years ago
parent
commit
bca59785f1
27 changed files with 654 additions and 200 deletions
  1. 9 1
      ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouItemCollectSamplesController.java
  2. 18 1
      ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouItemListController.java
  3. 5 7
      ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouRuleDetailController.java
  4. 132 9
      ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouRuleSettlementDataController.java
  5. 55 58
      ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouSettlementRulesController.java
  6. 2 1
      ruixuan-live/src/main/java/com/ruixuan/isc/controller/SupplyChainController.java
  7. 12 0
      ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouItemCollectSamples.java
  8. 11 0
      ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouItemList.java
  9. 66 58
      ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouRuleDetail.java
  10. 0 3
      ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouRuleSettlementData.java
  11. 23 21
      ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouSettlementRules.java
  12. 2 0
      ruixuan-live/src/main/java/com/ruixuan/isc/mapper/KuaishouItemListMapper.java
  13. 8 0
      ruixuan-live/src/main/java/com/ruixuan/isc/mapper/KuaishouRuleDetailMapper.java
  14. 6 0
      ruixuan-live/src/main/java/com/ruixuan/isc/mapper/KuaishouRuleSettlementDataMapper.java
  15. 7 0
      ruixuan-live/src/main/java/com/ruixuan/isc/mapper/KuaishouSettlementRulesMapper.java
  16. 2 0
      ruixuan-live/src/main/java/com/ruixuan/isc/service/IKuaishouItemListService.java
  17. 6 0
      ruixuan-live/src/main/java/com/ruixuan/isc/service/IKuaishouRuleSettlementDataService.java
  18. 8 0
      ruixuan-live/src/main/java/com/ruixuan/isc/service/IKuaishouSettlementRulesService.java
  19. 5 0
      ruixuan-live/src/main/java/com/ruixuan/isc/service/impl/KuaishouItemListServiceImpl.java
  20. 15 0
      ruixuan-live/src/main/java/com/ruixuan/isc/service/impl/KuaishouRuleSettlementDataServiceImpl.java
  21. 61 0
      ruixuan-live/src/main/java/com/ruixuan/isc/service/impl/KuaishouSettlementRulesServiceImpl.java
  22. 9 1
      ruixuan-live/src/main/resources/mapper/isc/KuaishouItemCollectSamplesMapper.xml
  23. 23 8
      ruixuan-live/src/main/resources/mapper/isc/KuaishouItemListMapper.xml
  24. 48 16
      ruixuan-live/src/main/resources/mapper/isc/KuaishouRuleDetailMapper.xml
  25. 61 2
      ruixuan-live/src/main/resources/mapper/isc/KuaishouRuleSettlementDataMapper.xml
  26. 46 13
      ruixuan-live/src/main/resources/mapper/isc/KuaishouSettlementRulesMapper.xml
  27. 14 1
      ruixuan-live/src/main/resources/mapper/isc/SupplyChainMapper.xml

+ 9 - 1
ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouItemCollectSamplesController.java

@@ -82,7 +82,7 @@ public class KuaishouItemCollectSamplesController extends BaseController {
      */
     @GetMapping("/list")
     public TableDataInfo list(Long itemId, Long promoterId, Long userId, Integer collectSampleStatus, String itemTitle, String promoterNickName, String promoterPhone,
-                              String consignee, Long itemCreateId, Long collectSampleId
+                              String consignee, Long itemCreateId, Long collectSampleId, String fieId, String sort
     ) {
         TableDataInfo tableDataInfo = new TableDataInfo();
         try {
@@ -132,6 +132,12 @@ public class KuaishouItemCollectSamplesController extends BaseController {
             if (!Check.isNull(collectSampleId)) {
                 requestMap.put("collectSampleId", collectSampleId);
             }
+            if (!Check.isNull(fieId)) {
+                requestMap.put("fieId", fieId);
+            }
+            if (!Check.isNull(sort)) {
+                requestMap.put("sort", sort);
+            }
             startPage();
             List<KuaishouItemCollectSamples> list = kuaishouItemCollectSamplesService.selectKuaishouItemCollectSamplesList(requestMap);
             return getDataTable(list);
@@ -259,6 +265,7 @@ public class KuaishouItemCollectSamplesController extends BaseController {
                 sampleLog.setCollectSampleStatus(4);
                 kuaishouItemCollectSamples.setCollectSampleStatus(4);
                 kuaishouItemCollectSamples.setCollectSampleDesc("商品已发货");
+                kuaishouItemCollectSamples.setCourierNumberTime(new Date());
                 // 调用快递接口
                 kuaishouItemCollectSamplesService.subscribe(id, courierNumber, kuaishouItemCollectSamples.getCompanyCode());
             }
@@ -367,6 +374,7 @@ public class KuaishouItemCollectSamplesController extends BaseController {
             KuaishouItemCollectSamples kuaishouItemCollectSamples = new KuaishouItemCollectSamples();
             kuaishouItemCollectSamples.setId(id);
             kuaishouItemCollectSamples.setCourierNumber(courierNumber);
+            kuaishouItemCollectSamples.setCourierNumberTime(new Date());
             int i = kuaishouItemCollectSamplesService.updateKuaishouItemCollectSamples(kuaishouItemCollectSamples);
             if (i > 0) {
                 kuaishouItemCollectSamplesService.subscribe(id, courierNumber, companyCode);

+ 18 - 1
ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouItemListController.java

@@ -351,7 +351,6 @@ public class KuaishouItemListController extends BaseController {
     }
 
 
-    @Log(title = "修改", businessType = BusinessType.UPDATE)
     @GetMapping("/editRelateByItemId")
     public JSONObject editRelateByItemId(Long itemId, Long relateId) {
         JSONObject returnJson = new JSONObject();
@@ -375,5 +374,23 @@ public class KuaishouItemListController extends BaseController {
         return returnJson;
     }
 
+
+    @GetMapping("/getListByRelateId")
+    public JSONObject getListByRelateId(Long relateId) {
+        JSONObject returnJson = new JSONObject();
+        try {
+            List<JSONObject> list = kuaishouItemListService.getListByRelateId(relateId);
+            returnJson.put("code", 0);
+            returnJson.put("data", list);
+            returnJson.put("message", "修改成功");
+
+        } catch (Exception e) {
+            returnJson.put("code", 500);
+            returnJson.put("message", e.getMessage());
+        }
+        return returnJson;
+    }
+
+
 }
 

+ 5 - 7
ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouRuleDetailController.java

@@ -30,7 +30,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @date 2023-05-15
  */
 @RestController
-@RequestMapping("/system/detail")
+@RequestMapping("/detail")
 public class KuaishouRuleDetailController extends BaseController {
     @Autowired
     private IKuaishouRuleDetailService kuaishouRuleDetailService;
@@ -70,9 +70,8 @@ public class KuaishouRuleDetailController extends BaseController {
     /**
      * 新增【请填写功能名称】
      */
-    @PreAuthorize("@ss.hasPermi('system:detail:add')")
-    @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT)
-    @PostMapping
+
+    @PostMapping("/add")
     public AjaxResult add(@RequestBody KuaishouRuleDetail kuaishouRuleDetail) {
         return toAjax(kuaishouRuleDetailService.insertKuaishouRuleDetail(kuaishouRuleDetail));
     }
@@ -80,9 +79,8 @@ public class KuaishouRuleDetailController extends BaseController {
     /**
      * 修改【请填写功能名称】
      */
-    @PreAuthorize("@ss.hasPermi('system:detail:edit')")
-    @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE)
-    @PutMapping
+
+    @PutMapping("/edit")
     public AjaxResult edit(@RequestBody KuaishouRuleDetail kuaishouRuleDetail) {
         return toAjax(kuaishouRuleDetailService.updateKuaishouRuleDetail(kuaishouRuleDetail));
     }

+ 132 - 9
ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouRuleSettlementDataController.java

@@ -1,8 +1,12 @@
 package com.ruixuan.isc.controller;
 
+import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
+import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import com.alibaba.fastjson.JSONArray;
@@ -14,10 +18,11 @@ import com.ruixuan.common.core.page.TableDataInfo;
 import com.ruixuan.common.enums.BusinessType;
 import com.ruixuan.common.utils.Check;
 import com.ruixuan.common.utils.poi.ExcelUtil;
-import com.ruixuan.isc.entity.KuaishouPromoter;
+import com.ruixuan.data.utils.ExportExcelUtils;
 import com.ruixuan.isc.entity.KuaishouRuleSettlementData;
 import com.ruixuan.isc.service.IKuaishouRuleSettlementDataService;
 import io.swagger.annotations.ApiOperation;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -45,7 +50,6 @@ public class KuaishouRuleSettlementDataController extends BaseController {
         if (Check.isNull(data)) {
             return;
         }
-     //   kuaishouRuleSettlementDataService.data(statDate, data);
         executorService.submit(new Runnable() {
             @Override
             public void run() {
@@ -66,14 +70,116 @@ public class KuaishouRuleSettlementDataController extends BaseController {
     /**
      * 查询【请填写功能名称】列表
      */
-    @PreAuthorize("@ss.hasPermi('system:data:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(KuaishouRuleSettlementData kuaishouRuleSettlementData) {
+    @GetMapping("/getSettlementList")
+    public TableDataInfo list(String statDate, Long promoterId, String promoterName) {
+        Long date = Long.valueOf(statDate.replace("-", ""));
         startPage();
-        List<KuaishouRuleSettlementData> list = kuaishouRuleSettlementDataService.selectKuaishouRuleSettlementDataList(kuaishouRuleSettlementData);
+        List<JSONObject> list = kuaishouRuleSettlementDataService.getSettlementDate(date, promoterId, promoterName);
+        return getDataTable(list);
+    }
+
+
+    @RequestMapping(value = "/exportSettlementList")
+    @ResponseBody
+    public void exportSettlementList(HttpServletRequest request, HttpServletResponse response, @RequestBody JSONObject requestJson) throws Exception {
+        Long date = Long.valueOf(requestJson.getString("statDate").replace("-", ""));
+        List<JSONObject> list = kuaishouRuleSettlementDataService.getSettlementDate(date, null, null);
+        List<List<Object>> exportList = new ArrayList<>();
+        if (!Check.isNull(list)) {
+            for (int i = 0; i < list.size(); i++) {
+                JSONObject data = list.get(i);
+                List<Object> export = new ArrayList();
+                export.add(data.getString("promoterId"));
+                export.add(data.getString("promoterName"));
+                export.add(data.getString("anchorAmount"));
+                export.add(data.getString("referenceAmount"));
+                exportList.add(export);
+            }
+        }
+        String[] headers = {"达人ID", "达人名称", "达人激励", "推荐人激励"};
+        OutputStream os = response.getOutputStream();
+        ExportExcelUtils eeu = new ExportExcelUtils();
+        XSSFWorkbook workbook = new XSSFWorkbook();
+        eeu.exportExcel(workbook, 0, "达人激励", headers, exportList);
+        this.setResponseHeader(response, "达人激励.xls");
+        workbook.write(os);
+        os.flush();
+        os.close();
+    }
+
+    @GetMapping("/updatePromoterStatus")
+    public JSONObject updatePromoterStatus(String statDate, Long promoterId, Integer status) {
+        JSONObject returnJson = new JSONObject();
+        try {
+            if (Check.isNull(statDate)) {
+                throw new Exception("请输入日期");
+            }
+            if (Check.isNull(promoterId)) {
+                throw new Exception("请输入达人ID");
+            }
+
+            if (Check.isNull(status)) {
+                throw new Exception("请输入状态");
+            }
+            Long date = Long.valueOf(statDate.replace("-", ""));
+            kuaishouRuleSettlementDataService.updatePromoterStatus(date, promoterId, status);
+        } catch (Exception e) {
+            e.printStackTrace();
+            returnJson.put("code", 500);
+            returnJson.put("message", e.getMessage());
+        }
+
+        return returnJson;
+    }
+
+
+    @GetMapping("/getPromoterSettlementDetail")
+    public TableDataInfo getPromoterSettlementDetail(String statDate, Long promoterId,Integer settlementStatus) {
+        Long date = Long.valueOf(statDate.replace("-", ""));
+        startPage();
+        List<JSONObject> list = kuaishouRuleSettlementDataService.getPromoterSettlementDetail(date, promoterId,settlementStatus);
         return getDataTable(list);
     }
 
+    @RequestMapping(value = "/exportPromoterSettlementDetail")
+    @ResponseBody
+    public void exportPromoterSettlementDetail(HttpServletRequest request, HttpServletResponse response, @RequestBody JSONObject requestJson) throws Exception {
+        Long date = Long.valueOf(requestJson.getString("statDate").replace("-", ""));
+        Long promoterId = requestJson.getLong("promoterId");
+
+        List<JSONObject> list = kuaishouRuleSettlementDataService.getPromoterSettlementDetail(date, promoterId,null);
+        List<List<Object>> exportList = new ArrayList<>();
+        if (!Check.isNull(list)) {
+            for (int i = 0; i < list.size(); i++) {
+                JSONObject data = list.get(i);
+                List<Object> export = new ArrayList();
+                export.add(data.getString("ruleName"));
+                export.add(data.getString("itemIds"));
+                export.add(data.getString("promoterId"));
+                export.add(data.getString("promoterName"));
+                export.add(data.getString("itemCreateName"));
+                export.add(data.getString("promoterCreateName"));
+                export.add(data.getString("orderNum"));
+                export.add(data.getString("validOrderNum"));
+                export.add(data.getString("lastSettlementOrderNum"));
+                export.add(data.getString("anchorAmount"));
+                export.add(data.getString("referenceAmount"));
+                export.add(data.getString("settlementStatusStr"));
+                exportList.add(export);
+            }
+        }
+        String[] headers = {"规则名称", "结算商品ID", "达人ID", "达人名称", "商品创建人", "达人归属人", "结算单量", "有效结算单量", "上次结算单量", "达人激励金额", "推荐人激励金额", "结算状态"};
+        OutputStream os = response.getOutputStream();
+        ExportExcelUtils eeu = new ExportExcelUtils();
+        XSSFWorkbook workbook = new XSSFWorkbook();
+        eeu.exportExcel(workbook, 0, "达人激励", headers, exportList);
+        this.setResponseHeader(response, "达人激励.xls");
+        workbook.write(os);
+        os.flush();
+        os.close();
+    }
+
+
     /**
      * 导出【请填写功能名称】列表
      */
@@ -108,9 +214,8 @@ public class KuaishouRuleSettlementDataController extends BaseController {
     /**
      * 修改【请填写功能名称】
      */
-    @PreAuthorize("@ss.hasPermi('system:data:edit')")
-    @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE)
-    @PutMapping
+
+    @PutMapping("/edit")
     public AjaxResult edit(@RequestBody KuaishouRuleSettlementData kuaishouRuleSettlementData) {
         return toAjax(kuaishouRuleSettlementDataService.updateKuaishouRuleSettlementData(kuaishouRuleSettlementData));
     }
@@ -124,5 +229,23 @@ public class KuaishouRuleSettlementDataController extends BaseController {
     public AjaxResult remove(@PathVariable Long[] ids) {
         return toAjax(kuaishouRuleSettlementDataService.deleteKuaishouRuleSettlementDataByIds(ids));
     }
+
+    //发送响应流方法
+    public void setResponseHeader(HttpServletResponse response, String fileName) {
+        try {
+            try {
+                fileName = new String(fileName.getBytes(), "ISO8859-1");
+            } catch (UnsupportedEncodingException e) {
+                e.printStackTrace();
+            }
+            response.setContentType("application/octet-stream;charset=ISO8859-1");
+            response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
+            response.addHeader("Pargam", "no-cache");
+            response.addHeader("Cache-Control", "no-cache");
+        } catch (Exception ex) {
+            ex.printStackTrace();
+        }
+    }
+
 }
 

+ 55 - 58
ruixuan-live/src/main/java/com/ruixuan/isc/controller/KuaishouSettlementRulesController.java

@@ -1,26 +1,18 @@
 package com.ruixuan.isc.controller;
 
 import java.util.List;
-import javax.servlet.http.HttpServletResponse;
 
-import com.ruixuan.common.annotation.Log;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.ruixuan.common.core.controller.BaseController;
 import com.ruixuan.common.core.domain.AjaxResult;
 import com.ruixuan.common.core.page.TableDataInfo;
-import com.ruixuan.common.enums.BusinessType;
-import com.ruixuan.common.utils.poi.ExcelUtil;
+import com.ruixuan.common.utils.Check;
+import com.ruixuan.isc.entity.KuaishouRuleDetail;
 import com.ruixuan.isc.entity.KuaishouSettlementRules;
 import com.ruixuan.isc.service.IKuaishouSettlementRulesService;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 /**
  * 【请填写功能名称】Controller
@@ -29,7 +21,7 @@ import org.springframework.web.bind.annotation.RestController;
  * @date 2023-05-15
  */
 @RestController
-@RequestMapping("/system/rules")
+@RequestMapping("/rules")
 public class KuaishouSettlementRulesController extends BaseController {
     @Autowired
     private IKuaishouSettlementRulesService kuaishouSettlementRulesService;
@@ -37,62 +29,67 @@ public class KuaishouSettlementRulesController extends BaseController {
     /**
      * 查询【请填写功能名称】列表
      */
-    @PreAuthorize("@ss.hasPermi('system:rules:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(KuaishouSettlementRules kuaishouSettlementRules) {
+    @GetMapping("/getRuleList")
+    public TableDataInfo list(Long userId, String ruleName) {
         startPage();
-        List<KuaishouSettlementRules> list = kuaishouSettlementRulesService.selectKuaishouSettlementRulesList(kuaishouSettlementRules);
+        List<JSONObject> list = kuaishouSettlementRulesService.getRuleList(userId, ruleName);
         return getDataTable(list);
     }
 
-    /**
-     * 导出【请填写功能名称】列表
-     */
-    @PreAuthorize("@ss.hasPermi('system:rules:export')")
-    @Log(title = "【请填写功能名称】", businessType = BusinessType.EXPORT)
-    @PostMapping("/export")
-    public void export(HttpServletResponse response, KuaishouSettlementRules kuaishouSettlementRules) {
-        List<KuaishouSettlementRules> list = kuaishouSettlementRulesService.selectKuaishouSettlementRulesList(kuaishouSettlementRules);
-        ExcelUtil<KuaishouSettlementRules> util = new ExcelUtil<KuaishouSettlementRules>(KuaishouSettlementRules.class);
-        util.exportExcel(response, list, "【请填写功能名称】数据");
+    @GetMapping("/getRuleListNoPage")
+    public JSONObject getRuleListNoPage(Long userId, String ruleNam) {
+        JSONObject returnJson = new JSONObject();
+        List<JSONObject> data = kuaishouSettlementRulesService.getRuleList(userId, ruleNam);
+        returnJson.put("code", 0);
+        returnJson.put("message", "true");
+        returnJson.put("data", data);
+        return returnJson;
     }
 
-    /**
-     * 获取【请填写功能名称】详细信息
-     */
-    @PreAuthorize("@ss.hasPermi('system:rules:query')")
-    @GetMapping(value = "/{id}")
-    public AjaxResult getInfo(@PathVariable("id") Long id) {
-        return AjaxResult.success(kuaishouSettlementRulesService.selectKuaishouSettlementRulesById(id));
-    }
 
-    /**
-     * 新增【请填写功能名称】
-     */
-    @PreAuthorize("@ss.hasPermi('system:rules:add')")
-    @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody KuaishouSettlementRules kuaishouSettlementRules) {
-        return toAjax(kuaishouSettlementRulesService.insertKuaishouSettlementRules(kuaishouSettlementRules));
+    @PostMapping("/addRule")
+    public JSONObject addRule(@RequestBody JSONObject requestJson) {
+        JSONObject returnJson = new JSONObject();
+        try {
+            if (Check.isNull(requestJson)) {
+                throw new Exception("入参不能为空");
+            }
+            JSONArray ruleDetails = requestJson.getJSONArray("ruleDetails");
+            if (Check.isNull(ruleDetails)) {
+                throw new Exception("请输入规则详情");
+            }
+            kuaishouSettlementRulesService.addRules(requestJson);
+            returnJson.put("code", 0);
+            returnJson.put("message", "新增成功");
+        } catch (Exception e) {
+            e.printStackTrace();
+            returnJson.put("code", 500);
+            returnJson.put("message", e.getMessage());
+        }
+        return returnJson;
     }
 
-    /**
-     * 修改【请填写功能名称】
-     */
-    @PreAuthorize("@ss.hasPermi('system:rules:edit')")
-    @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE)
-    @PutMapping
+
+    @PutMapping("/edit")
     public AjaxResult edit(@RequestBody KuaishouSettlementRules kuaishouSettlementRules) {
         return toAjax(kuaishouSettlementRulesService.updateKuaishouSettlementRules(kuaishouSettlementRules));
     }
 
-    /**
-     * 删除【请填写功能名称】
-     */
-    @PreAuthorize("@ss.hasPermi('system:rules:remove')")
-    @Log(title = "【请填写功能名称】", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{ids}")
-    public AjaxResult remove(@PathVariable Long[] ids) {
-        return toAjax(kuaishouSettlementRulesService.deleteKuaishouSettlementRulesByIds(ids));
+
+    @DeleteMapping("/remove")
+    public AjaxResult remove( Long id) {
+        return toAjax(kuaishouSettlementRulesService.deleteKuaishouSettlementRulesById(id));
     }
+
+    @GetMapping("/getRuleDetailByRuleId")
+    public JSONObject getRuleDetailByRuleId(Long ruleId) {
+        JSONObject returnJson = new JSONObject();
+        List<KuaishouRuleDetail> data = kuaishouSettlementRulesService.getRuleDetailByRuleId(ruleId);
+        returnJson.put("code", 0);
+        returnJson.put("message", "true");
+        returnJson.put("data", data);
+        return returnJson;
+    }
+
+
 }

+ 2 - 1
ruixuan-live/src/main/java/com/ruixuan/isc/controller/SupplyChainController.java

@@ -730,10 +730,11 @@ public class SupplyChainController extends BaseController {
                 export.add(date.getString("validRadio"));
                 export.add(date.getString("deliveryNum"));
                 export.add(date.getString("deliveryRadio"));
+                export.add(date.getString("activityItemStatus"));
                 exportList.add(export);
             }
         }
-        String[] headers = {"达人", "商品", "商品封面", "订单数", "有效订单数", "有效订单率", "发货数", "发货率"};
+        String[] headers = {"达人", "商品", "商品封面", "订单数", "有效订单数", "有效订单率", "发货数", "发货率", "商品状态"};
         OutputStream os = response.getOutputStream();
         ExportExcelUtils eeu = new ExportExcelUtils();
         XSSFWorkbook workbook = new XSSFWorkbook();

+ 12 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouItemCollectSamples.java

@@ -6,6 +6,8 @@ import com.ruixuan.common.core.domain.BaseEntity;
 
 import org.springframework.data.annotation.Transient;
 
+import java.util.Date;
+
 
 /**
  * 【请填写功能名称】对象 kuaishou_item_collect_samples
@@ -136,6 +138,7 @@ public class KuaishouItemCollectSamples extends BaseEntity {
      */
     @Excel(name = "快递单号")
     private String courierNumber;
+    private Date courierNumberTime;
 
     /**
      * 作业地址
@@ -352,6 +355,14 @@ public class KuaishouItemCollectSamples extends BaseEntity {
         this.courierNumber = courierNumber;
     }
 
+    public Date getCourierNumberTime() {
+        return courierNumberTime;
+    }
+
+    public void setCourierNumberTime(Date courierNumberTime) {
+        this.courierNumberTime = courierNumberTime;
+    }
+
     public String getTaskFileUrl() {
         return taskFileUrl;
     }
@@ -465,6 +476,7 @@ public class KuaishouItemCollectSamples extends BaseEntity {
                 ", promoterUrl='" + promoterUrl + '\'' +
                 ", consignee='" + consignee + '\'' +
                 ", courierNumber='" + courierNumber + '\'' +
+                ", courierNumberTime=" + courierNumberTime +
                 ", taskFileUrl='" + taskFileUrl + '\'' +
                 ", collectSampleStatus=" + collectSampleStatus +
                 ", collectSampleDesc='" + collectSampleDesc + '\'' +

+ 11 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouItemList.java

@@ -223,6 +223,8 @@ public class KuaishouItemList extends BaseEntity {
     private Long validOrderNum;
     @Transient
     private Long validAmount;
+    @Transient
+    private String ruleName;
     private Integer samplesReceived;
     private Integer samplesPeoples;
 
@@ -537,6 +539,14 @@ public class KuaishouItemList extends BaseEntity {
         this.validAmount = validAmount;
     }
 
+    public String getRuleName() {
+        return ruleName;
+    }
+
+    public void setRuleName(String ruleName) {
+        this.ruleName = ruleName;
+    }
+
     public Integer getSamplesReceived() {
         return samplesReceived;
     }
@@ -610,6 +620,7 @@ public class KuaishouItemList extends BaseEntity {
                 ", detailUrl='" + detailUrl + '\'' +
                 ", validOrderNum=" + validOrderNum +
                 ", validAmount=" + validAmount +
+                ", ruleName='" + ruleName + '\'' +
                 ", samplesReceived=" + samplesReceived +
                 ", samplesPeoples=" + samplesPeoples +
                 ", relateId=" + relateId +

+ 66 - 58
ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouRuleDetail.java

@@ -1,9 +1,10 @@
 package com.ruixuan.isc.entity;
+
 import java.math.BigDecimal;
+
 import com.ruixuan.common.annotation.Excel;
 import com.ruixuan.common.core.domain.BaseEntity;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
+
 
 
 /**
@@ -12,114 +13,121 @@ import org.apache.commons.lang3.builder.ToStringStyle;
  * @author ruoyi
  * @date 2023-05-15
  */
-public class KuaishouRuleDetail extends BaseEntity
-{
+public class KuaishouRuleDetail extends BaseEntity {
     private static final long serialVersionUID = 1L;
 
-    /** 规则ID */
+    /**
+     * 规则ID
+     */
     private Long id;
 
-    /** 规则名称 */
+    /**
+     * 规则名称
+     */
     @Excel(name = "规则名称")
-    private String ruleId;
+    private Long ruleId;
 
-    /** 起始单数 */
+    /**
+     * 起始单数
+     */
     @Excel(name = "起始单数")
     private Integer startItemCount;
 
-    /** 结束单数 */
+    /**
+     * 结束单数
+     */
     @Excel(name = "结束单数")
     private Integer endItemCount;
 
-    /** 主播奖励金额 */
+    /**
+     * 主播奖励金额
+     */
     @Excel(name = "主播奖励金额")
     private BigDecimal anchorAmount;
 
-    /** 推荐人奖励金额 */
+    /**
+     * 推荐人奖励金额
+     */
     @Excel(name = "推荐人奖励金额")
     private BigDecimal referenceAmount;
 
-    /** 排序 */
+    /**
+     * 排序
+     */
     @Excel(name = "排序")
     private Integer sortCount;
 
-    public void setId(Long id)
-    {
-        this.id = id;
+    public static long getSerialVersionUID() {
+        return serialVersionUID;
     }
 
-    public Long getId()
-    {
+    public Long getId() {
         return id;
     }
-    public void setRuleId(String ruleId)
-    {
-        this.ruleId = ruleId;
+
+    public void setId(Long id) {
+        this.id = id;
     }
 
-    public String getRuleId()
-    {
+    public Long getRuleId() {
         return ruleId;
     }
-    public void setStartItemCount(Integer startItemCount)
-    {
-        this.startItemCount = startItemCount;
+
+    public void setRuleId(Long ruleId) {
+        this.ruleId = ruleId;
     }
 
-    public Integer getStartItemCount()
-    {
+    public Integer getStartItemCount() {
         return startItemCount;
     }
-    public void setEndItemCount(Integer endItemCount)
-    {
-        this.endItemCount = endItemCount;
+
+    public void setStartItemCount(Integer startItemCount) {
+        this.startItemCount = startItemCount;
     }
 
-    public Integer getEndItemCount()
-    {
+    public Integer getEndItemCount() {
         return endItemCount;
     }
-    public void setAnchorAmount(BigDecimal anchorAmount)
-    {
-        this.anchorAmount = anchorAmount;
+
+    public void setEndItemCount(Integer endItemCount) {
+        this.endItemCount = endItemCount;
     }
 
-    public BigDecimal getAnchorAmount()
-    {
+    public BigDecimal getAnchorAmount() {
         return anchorAmount;
     }
-    public void setReferenceAmount(BigDecimal referenceAmount)
-    {
-        this.referenceAmount = referenceAmount;
+
+    public void setAnchorAmount(BigDecimal anchorAmount) {
+        this.anchorAmount = anchorAmount;
     }
 
-    public BigDecimal getReferenceAmount()
-    {
+    public BigDecimal getReferenceAmount() {
         return referenceAmount;
     }
-    public void setSortCount(Integer sortCount)
-    {
-        this.sortCount = sortCount;
+
+    public void setReferenceAmount(BigDecimal referenceAmount) {
+        this.referenceAmount = referenceAmount;
     }
 
-    public Integer getSortCount()
-    {
+    public Integer getSortCount() {
         return sortCount;
     }
 
+    public void setSortCount(Integer sortCount) {
+        this.sortCount = sortCount;
+    }
+
     @Override
     public String toString() {
-        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
-                .append("id", getId())
-                .append("ruleId", getRuleId())
-                .append("startItemCount", getStartItemCount())
-                .append("endItemCount", getEndItemCount())
-                .append("anchorAmount", getAnchorAmount())
-                .append("referenceAmount", getReferenceAmount())
-                .append("sortCount", getSortCount())
-                .append("createTime", getCreateTime())
-                .append("updateTime", getUpdateTime())
-                .toString();
+        return "KuaishouRuleDetail{" +
+                "id=" + id +
+                ", ruleId=" + ruleId +
+                ", startItemCount=" + startItemCount +
+                ", endItemCount=" + endItemCount +
+                ", anchorAmount=" + anchorAmount +
+                ", referenceAmount=" + referenceAmount +
+                ", sortCount=" + sortCount +
+                '}';
     }
 }
 

+ 0 - 3
ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouRuleSettlementData.java

@@ -5,9 +5,6 @@ import java.math.BigDecimal;
 
 import com.ruixuan.common.annotation.Excel;
 import com.ruixuan.common.core.domain.BaseEntity;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-
 /**
  * 【请填写功能名称】对象 kuaishou_rule_settlement_data
  *

+ 23 - 21
ruixuan-live/src/main/java/com/ruixuan/isc/entity/KuaishouSettlementRules.java

@@ -35,7 +35,7 @@ public class KuaishouSettlementRules extends BaseEntity {
      * 创建人id
      */
     @Excel(name = "创建人id")
-    private Integer userId;
+    private Long userId;
 
     /**
      * 创建人
@@ -43,56 +43,58 @@ public class KuaishouSettlementRules extends BaseEntity {
     @Excel(name = "创建人")
     private String userName;
 
-    public void setId(Long id) {
-        this.id = id;
+    public static long getSerialVersionUID() {
+        return serialVersionUID;
     }
 
     public Long getId() {
         return id;
     }
 
-    public void setRuleName(String ruleName) {
-        this.ruleName = ruleName;
+    public void setId(Long id) {
+        this.id = id;
     }
 
     public String getRuleName() {
         return ruleName;
     }
 
-    public void setRuleType(Integer ruleType) {
-        this.ruleType = ruleType;
+    public void setRuleName(String ruleName) {
+        this.ruleName = ruleName;
     }
 
     public Integer getRuleType() {
         return ruleType;
     }
 
-    public void setUserId(Integer userId) {
-        this.userId = userId;
+    public void setRuleType(Integer ruleType) {
+        this.ruleType = ruleType;
     }
 
-    public Integer getUserId() {
+    public Long getUserId() {
         return userId;
     }
 
-    public void setUserName(String userName) {
-        this.userName = userName;
+    public void setUserId(Long userId) {
+        this.userId = userId;
     }
 
     public String getUserName() {
         return userName;
     }
 
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
     @Override
     public String toString() {
-        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
-                .append("id", getId())
-                .append("ruleName", getRuleName())
-                .append("ruleType", getRuleType())
-                .append("userId", getUserId())
-                .append("userName", getUserName())
-                .append("createTime", getCreateTime())
-                .append("updateTime", getUpdateTime())
-                .toString();
+        return "KuaishouSettlementRules{" +
+                "id=" + id +
+                ", ruleName='" + ruleName + '\'' +
+                ", ruleType=" + ruleType +
+                ", userId=" + userId +
+                ", userName='" + userName + '\'' +
+                '}';
     }
 }

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

@@ -53,5 +53,7 @@ public interface KuaishouItemListMapper {
     List<JSONObject> getRegimental();
 
     Long selectMaxRelateId();
+
+    List<JSONObject> getListByRelateId(@Param("relateId") Long relateId);
 }
 

+ 8 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/mapper/KuaishouRuleDetailMapper.java

@@ -1,5 +1,7 @@
 package com.ruixuan.isc.mapper;
+
 import com.ruixuan.isc.entity.KuaishouRuleDetail;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -59,5 +61,11 @@ public interface KuaishouRuleDetailMapper
      * @return 结果
      */
     public int deleteKuaishouRuleDetailByIds(Long[] ids);
+
+    void addAll(@Param("adds") List<KuaishouRuleDetail> details);
+
+    void deleteKuaishouRuleDetailByRuleId(@Param("id") Long id);
+
+    List<KuaishouRuleDetail> getRuleDetailByRuleId(@Param("ruleId") Long ruleId);
 }
 

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

@@ -78,4 +78,10 @@ public interface KuaishouRuleSettlementDataMapper {
     Integer getMaxRuleCountByRuleId(@Param("ruleId") Long ruleId);
 
     void replaceDatas(@Param("adds") List<KuaishouRuleSettlementData> adds);
+
+    List<JSONObject> getSettlementDate(@Param("statDate") Long statDate, @Param("promoterId") Long promoterId, @Param("promoterName") String promoterName);
+
+    void updatePromoterStatus(@Param("statDate") Long statDate, @Param("promoterId") Long promoterId, @Param("status") Integer status);
+
+    List<JSONObject> getPromoterSettlementDetail(@Param("date") Long date, @Param("promoterId") Long promoterId, @Param("settlementStatus") Integer settlementStatus);
 }

+ 7 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/mapper/KuaishouSettlementRulesMapper.java

@@ -1,5 +1,8 @@
 package com.ruixuan.isc.mapper;
+
+import com.alibaba.fastjson.JSONObject;
 import com.ruixuan.isc.entity.KuaishouSettlementRules;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -59,5 +62,9 @@ public interface KuaishouSettlementRulesMapper
      * @return 结果
      */
     public int deleteKuaishouSettlementRulesByIds(Long[] ids);
+
+    List<JSONObject> getRuleList(@Param("userId") Long userId, @Param("ruleName") String ruleName);
+
+    Long getMaxRuleId();
 }
 

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

@@ -46,5 +46,7 @@ public interface IKuaishouItemListService {
     void batchItemProcess(JSONArray itemIds, Integer status,Long examineId,String examineName);
 
     List<JSONObject> getRegimental();
+
+    List<JSONObject> getListByRelateId(Long relateId);
 }
 

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

@@ -64,5 +64,11 @@ public interface IKuaishouRuleSettlementDataService {
     void data(Long statDate, JSONArray dataArr);
 
     JSONObject getRuleData(Long relateId, Long promoterId, Long ruleId, Long orderNum, Long validOrderNum, Long yesterdayOrderNum, Long yesterdayValidOrderNum);
+
+    List<JSONObject> getSettlementDate(Long statDate, Long promoterId, String promoterName);
+
+    void updatePromoterStatus(Long statDate, Long promoterId, Integer status);
+
+    List<JSONObject> getPromoterSettlementDetail(Long date, Long promoterId,Integer settlementStatus);
 }
 

+ 8 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/service/IKuaishouSettlementRulesService.java

@@ -1,5 +1,7 @@
 package com.ruixuan.isc.service;
 
+import com.alibaba.fastjson.JSONObject;
+import com.ruixuan.isc.entity.KuaishouRuleDetail;
 import com.ruixuan.isc.entity.KuaishouSettlementRules;
 import java.util.List;
 
@@ -59,5 +61,11 @@ public interface IKuaishouSettlementRulesService
      * @return 结果
      */
     public int deleteKuaishouSettlementRulesById(Long id);
+
+    List<JSONObject> getRuleList(Long userId,String ruleNam);
+
+    void addRules(JSONObject requestJson);
+
+    List<KuaishouRuleDetail> getRuleDetailByRuleId(Long ruleId);
 }
 

+ 5 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/service/impl/KuaishouItemListServiceImpl.java

@@ -408,6 +408,11 @@ public class KuaishouItemListServiceImpl implements IKuaishouItemListService {
         return kuaishouItemListMapper.getRegimental();
     }
 
+    @Override
+    public List<JSONObject> getListByRelateId(Long relateId) {
+        return kuaishouItemListMapper.getListByRelateId(relateId);
+    }
+
 
 }
 

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

@@ -412,5 +412,20 @@ public class KuaishouRuleSettlementDataServiceImpl implements IKuaishouRuleSettl
         }
         return returnJson;
     }
+
+    @Override
+    public List<JSONObject> getSettlementDate(Long statDate, Long promoterId, String promoterName) {
+        return kuaishouRuleSettlementDataMapper.getSettlementDate(statDate,promoterId,promoterName);
+    }
+
+    @Override
+    public void updatePromoterStatus(Long statDate, Long promoterId, Integer status) {
+        kuaishouRuleSettlementDataMapper.updatePromoterStatus(statDate, promoterId, status);
+    }
+
+    @Override
+    public List<JSONObject> getPromoterSettlementDetail(Long date, Long promoterId,Integer settlementStatus) {
+        return kuaishouRuleSettlementDataMapper.getPromoterSettlementDetail(date,promoterId,settlementStatus);
+    }
 }
 

+ 61 - 0
ruixuan-live/src/main/java/com/ruixuan/isc/service/impl/KuaishouSettlementRulesServiceImpl.java

@@ -1,9 +1,16 @@
 package com.ruixuan.isc.service.impl;
 
+import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.List;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.ruixuan.common.utils.Check;
 import com.ruixuan.common.utils.DateUtils;
+import com.ruixuan.isc.entity.KuaishouRuleDetail;
 import com.ruixuan.isc.entity.KuaishouSettlementRules;
+import com.ruixuan.isc.mapper.KuaishouRuleDetailMapper;
 import com.ruixuan.isc.mapper.KuaishouSettlementRulesMapper;
 import com.ruixuan.isc.service.IKuaishouSettlementRulesService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -20,6 +27,8 @@ import org.springframework.stereotype.Service;
 public class KuaishouSettlementRulesServiceImpl implements IKuaishouSettlementRulesService {
     @Autowired
     private KuaishouSettlementRulesMapper kuaishouSettlementRulesMapper;
+    @Autowired
+    private KuaishouRuleDetailMapper kuaishouRuleDetailMapper;
 
     /**
      * 查询【请填写功能名称】
@@ -86,7 +95,59 @@ public class KuaishouSettlementRulesServiceImpl implements IKuaishouSettlementRu
      */
     @Override
     public int deleteKuaishouSettlementRulesById(Long id) {
+        kuaishouRuleDetailMapper.deleteKuaishouRuleDetailByRuleId(id);
         return kuaishouSettlementRulesMapper.deleteKuaishouSettlementRulesById(id);
     }
+
+    @Override
+    public List<JSONObject> getRuleList(Long userId, String ruleName) {
+        return kuaishouSettlementRulesMapper.getRuleList(userId, ruleName);
+    }
+
+    @Override
+    public void addRules(JSONObject requestJson) {
+        Long maxRuleId = kuaishouSettlementRulesMapper.getMaxRuleId();
+        Long newId = maxRuleId + 1;
+        String ruleName = requestJson.getString("ruleName");
+        Integer ruleType = requestJson.getInteger("ruleType");
+        Long userId = requestJson.getLong("userId");
+        String userName = requestJson.getString("userName");
+        KuaishouSettlementRules settlementRules = new KuaishouSettlementRules();
+        settlementRules.setId(newId);
+        settlementRules.setRuleName(ruleName);
+        settlementRules.setRuleType(ruleType);
+        settlementRules.setUserId(userId);
+        settlementRules.setUserName(userName);
+        int i = kuaishouSettlementRulesMapper.insertKuaishouSettlementRules(settlementRules);
+        if (i > 0) {
+            JSONArray ruleDetails = requestJson.getJSONArray("ruleDetails");
+            List<KuaishouRuleDetail> details = new ArrayList<>();
+
+            for (int j = 0; j < ruleDetails.size(); j++) {
+                JSONObject jsonObject = ruleDetails.getJSONObject(j);
+                KuaishouRuleDetail detail = new KuaishouRuleDetail();
+                detail.setRuleId(newId);
+                Integer startItemCount = jsonObject.getInteger("startItemCount");
+                Integer endItemCount = jsonObject.getInteger("endItemCount");
+                BigDecimal anchorAmount = jsonObject.getBigDecimal("anchorAmount");
+                BigDecimal referenceAmount = jsonObject.getBigDecimal("referenceAmount");
+                Integer sortCount = jsonObject.getInteger("sortCount");
+                detail.setStartItemCount(startItemCount);
+                detail.setEndItemCount(endItemCount);
+                detail.setAnchorAmount(anchorAmount);
+                detail.setReferenceAmount(referenceAmount);
+                detail.setSortCount(sortCount);
+                details.add(detail);
+            }
+            if (!Check.isNull(details)) {
+                kuaishouRuleDetailMapper.addAll(details);
+            }
+        }
+    }
+
+    @Override
+    public List<KuaishouRuleDetail> getRuleDetailByRuleId(Long ruleId) {
+        return kuaishouRuleDetailMapper.getRuleDetailByRuleId(ruleId);
+    }
 }
 

+ 9 - 1
ruixuan-live/src/main/resources/mapper/isc/KuaishouItemCollectSamplesMapper.xml

@@ -27,6 +27,7 @@
         <result property="promoterAddress" column="promoter_address"/>
         <result property="consignee" column="consignee"/>
         <result property="courierNumber" column="courier_number"/>
+        <result property="courierNumberTime" column="courier_number_time"/>
         <result property="taskFileUrl" column="task_file_url"/>
         <result property="collectSampleStatus" column="collect_sample_status"/>
         <result property="collectSampleDesc" column="collect_sample_desc"/>
@@ -60,6 +61,7 @@
                promoter_address,
                consignee,
                courier_number,
+               courier_number_time,
                task_file_url,
                collect_sample_status,
                collect_sample_desc,
@@ -95,6 +97,7 @@
         t1.promoter_address,
         t1.consignee,
         t1.courier_number,
+        t1.courier_number_time,
         t1.task_file_url,
         t1.collect_sample_status,
         t1.collect_sample_desc,
@@ -149,7 +152,7 @@
                 and t1.collect_sample_id = #{collectSampleId}
             </if>
         </where>
-        order by t1.create_time desc
+        order by ${fieId} ${sort}
     </select>
 
     <select id="selectKuaishouItemCollectSamplesById" parameterType="java.lang.Long"
@@ -311,6 +314,7 @@
             <if test="promoterAddress != null">promoter_address,</if>
             <if test="consignee != null">consignee,</if>
             <if test="courierNumber != null">courier_number,</if>
+            <if test="courierNumberTime != null">courier_number_time,</if>
             <if test="taskFileUrl != null">task_file_url,</if>
             <if test="collectSampleStatus != null">collect_sample_status,</if>
             <if test="collectSampleDesc != null">collect_sample_desc,</if>
@@ -342,6 +346,7 @@
             <if test="promoterAddress != null">#{promoterAddress},</if>
             <if test="consignee != null">#{consignee},</if>
             <if test="courierNumber != null">#{courierNumber},</if>
+            <if test="courierNumberTime != null">#{courierNumberTime},</if>
             <if test="taskFileUrl != null">#{taskFileUrl},</if>
             <if test="collectSampleStatus != null">#{collectSampleStatus},</if>
             <if test="collectSampleDesc != null">#{collectSampleDesc},</if>
@@ -373,6 +378,7 @@
         promoter_address,
         consignee,
         courier_number,
+        courier_number_time,
         task_file_url,
         promoter_url,
         collect_sample_status,
@@ -403,6 +409,7 @@
             #{add.promoterAddress},
             #{add.consignee},
             #{add.courierNumber},
+            #{add.courierNumberTime},
             #{add.taskFileUrl},
             #{add.promoterUrl},
             #{add.collectSampleStatus },
@@ -493,6 +500,7 @@
             <if test="promoterAddress != null">promoter_address = #{promoterAddress},</if>
             <if test="consignee != null">consignee = #{consignee},</if>
             <if test="courierNumber != null">courier_number = #{courierNumber},</if>
+            <if test="courierNumberTime != null">courier_number_time = #{courierNumberTime},</if>
             <if test="taskFileUrl != null">task_file_url = #{taskFileUrl},</if>
             <if test="collectSampleStatus != null">collect_sample_status = #{collectSampleStatus},</if>
             <if test="collectSampleDesc != null">collect_sample_desc = #{collectSampleDesc},</if>

File diff suppressed because it is too large
+ 23 - 8
ruixuan-live/src/main/resources/mapper/isc/KuaishouItemListMapper.xml


+ 48 - 16
ruixuan-live/src/main/resources/mapper/isc/KuaishouRuleDetailMapper.xml

@@ -5,30 +5,31 @@
 <mapper namespace="com.ruixuan.isc.mapper.KuaishouRuleDetailMapper">
 
     <resultMap type="com.ruixuan.isc.entity.KuaishouRuleDetail" id="KuaishouRuleDetailResult">
-        <result property="id"    column="id"    />
-        <result property="ruleId"    column="rule_id"    />
-        <result property="startItemCount"    column="start_item_count"    />
-        <result property="endItemCount"    column="end_item_count"    />
-        <result property="anchorAmount"    column="anchor_amount"    />
-        <result property="referenceAmount"    column="reference_amount"    />
-        <result property="sortCount"    column="sort_count"    />
-        <result property="createTime"    column="create_time"    />
-        <result property="updateTime"    column="update_time"    />
+        <result property="id" column="id"/>
+        <result property="ruleId" column="rule_id"/>
+        <result property="startItemCount" column="start_item_count"/>
+        <result property="endItemCount" column="end_item_count"/>
+        <result property="anchorAmount" column="anchor_amount"/>
+        <result property="referenceAmount" column="reference_amount"/>
+        <result property="sortCount" column="sort_count"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
     </resultMap>
 
     <sql id="selectKuaishouRuleDetailVo">
         select id, rule_id, start_item_count, end_item_count, anchor_amount, reference_amount, sort_count, create_time, update_time from kuaishou_rule_detail
     </sql>
 
-    <select id="selectKuaishouRuleDetailList" parameterType="com.ruixuan.isc.entity.KuaishouRuleDetail" resultMap="KuaishouRuleDetailResult">
+    <select id="selectKuaishouRuleDetailList" parameterType="com.ruixuan.isc.entity.KuaishouRuleDetail"
+            resultMap="KuaishouRuleDetailResult">
         <include refid="selectKuaishouRuleDetailVo"/>
         <where>
-            <if test="ruleId != null  and ruleId != ''"> and rule_id = #{ruleId}</if>
-            <if test="startItemCount != null "> and start_item_count = #{startItemCount}</if>
-            <if test="endItemCount != null "> and end_item_count = #{endItemCount}</if>
-            <if test="anchorAmount != null "> and anchor_amount = #{anchorAmount}</if>
-            <if test="referenceAmount != null "> and reference_amount = #{referenceAmount}</if>
-            <if test="sortCount != null "> and sort_count = #{sortCount}</if>
+            <if test="ruleId != null  and ruleId != ''">and rule_id = #{ruleId}</if>
+            <if test="startItemCount != null ">and start_item_count = #{startItemCount}</if>
+            <if test="endItemCount != null ">and end_item_count = #{endItemCount}</if>
+            <if test="anchorAmount != null ">and anchor_amount = #{anchorAmount}</if>
+            <if test="referenceAmount != null ">and reference_amount = #{referenceAmount}</if>
+            <if test="sortCount != null ">and sort_count = #{sortCount}</if>
         </where>
     </select>
 
@@ -36,6 +37,12 @@
         <include refid="selectKuaishouRuleDetailVo"/>
         where id = #{id}
     </select>
+    <select id="getRuleDetailByRuleId" resultMap="KuaishouRuleDetailResult"
+            parameterType="java.lang.Long">
+        <include refid="selectKuaishouRuleDetailVo"/>
+        where rule_id = #{ruleId}
+        order by sort_count asc
+    </select>
 
     <insert id="insertKuaishouRuleDetail" parameterType="com.ruixuan.isc.entity.KuaishouRuleDetail">
         insert into kuaishou_rule_detail
@@ -62,6 +69,28 @@
             <if test="updateTime != null">#{updateTime},</if>
         </trim>
     </insert>
+    <insert id="addAll">
+
+        replace into kuaishou_rule_detail (
+        rule_id,
+        start_item_count,
+        end_item_count,
+        anchor_amount,
+        reference_amount,
+        sort_count
+        ) values
+        <foreach collection="adds" item="add" separator=",">
+            (
+            #{add.ruleId},
+            #{add.startItemCount},
+            #{add.endItemCount},
+            #{add.anchorAmount},
+            #{add.referenceAmount},
+            #{add.sortCount}
+            )
+        </foreach>
+
+    </insert>
 
     <update id="updateKuaishouRuleDetail" parameterType="com.ruixuan.isc.entity.KuaishouRuleDetail">
         update kuaishou_rule_detail
@@ -88,4 +117,7 @@
             #{id}
         </foreach>
     </delete>
+    <delete id="deleteKuaishouRuleDetailByRuleId" parameterType="java.lang.Long">
+        delete  from kuaishou_rule_detail where rule_id = #{id}
+    </delete>
 </mapper>

+ 61 - 2
ruixuan-live/src/main/resources/mapper/isc/KuaishouRuleSettlementDataMapper.xml

@@ -152,6 +152,12 @@
         </trim>
         where id = #{id}
     </update>
+    <update id="updatePromoterStatus">
+        update kuaishou_rule_settlement_data set settlement_status = #{status}
+        where promoter_id = #{promoterId}
+        and stat_date = #{statDate}
+        and settlement_status = 2
+    </update>
 
     <delete id="deleteKuaishouRuleSettlementDataById" parameterType="java.lang.Long">
         delete from kuaishou_rule_settlement_data where id = #{id}
@@ -254,6 +260,59 @@
         select  max(sort_count)  from kuaishou_rule_detail where rule_id = #{ruleId}
 
     </select>
+    <select id="getSettlementDate" resultType="com.alibaba.fastjson.JSONObject" parameterType="java.lang.Long">
+        select t.* from (
+        select
+        promoter_id as 'promoterId',
+        promoter_name as 'promoterName',
+        sum(anchor_amount) as 'anchorAmount',
+        sum(reference_amount) as 'referenceAmount'
+        from kuaishou_rule_settlement_data
+        where stat_date = #{statDate}
+        and settlement_status != 3
+        <if test="promoterId != null and promoterId != '' ">
+            and promoter_id = #{promoterId}
+        </if>
+        <if test="promoterName != null and promoterName != '' ">
+            AND promoter_name LIKE CONCAT('%', #{promoterName}, '%')
+        </if>
+        group by promoter_id) t order by t.anchorAmount desc
+    </select>
+    <select id="getPromoterSettlementDetail" resultType="com.alibaba.fastjson.JSONObject">
+        select
+        id as 'id',
+        rule_id as 'ruleId',
+        rule_name as 'ruleName',
+        son_rule_id as 'sonRuleId',
+        item_ids as 'itemIds',
+        promoter_id as 'promoterId',
+        promoter_name as 'promoterName',
+        item_create_id as 'itemCreateId',
+        item_create_name as 'itemCreateName',
+        promoter_create_id as 'promoterCreateId',
+        promoter_create_name as 'promoterCreateName',
+        order_num as 'orderNum',
+        valid_order_num as 'validOrderNum',
+        last_settlement_order_num as 'lastSettlementOrderNum',
+        anchor_amount as 'anchorAmount',
+        reference_amount as 'referenceAmount',
+        (case
+        when settlement_status = 1 then '未达到结算要求'
+        when settlement_status = 2 then '待结算'
+        when settlement_status = 3 then '已结算'
+        else ''
+        end
+        ) as 'settlementStatusStr',
+        settlement_status as 'settlementStatus'
+        from kuaishou_rule_settlement_data
+        where promoter_id = #{promoterId}
+        and stat_date = #{date}
+        <if test="settlementStatus != null and settlementStatus != ''">
+            and settlement_status = #{settlementStatus}
+        </if>
+        order by anchor_amount desc
+
+    </select>
 
     <insert id="replaceDatas">
         replace into kuaishou_rule_settlement_data(
@@ -280,7 +339,7 @@
         )
         values
         <foreach collection="adds" item="add" separator=",">
-        (
+            (
             #{add.ruleId},
             #{add.ruleName},
             #{add.sonRuleId},
@@ -301,7 +360,7 @@
             #{add.referenceAmount},
             #{add.settlementStatus},
             #{add.lastSettlementOrderNum}
-        )
+            )
         </foreach>
 
     </insert>

+ 46 - 13
ruixuan-live/src/main/resources/mapper/isc/KuaishouSettlementRulesMapper.xml

@@ -5,33 +5,66 @@
 <mapper namespace="com.ruixuan.isc.mapper.KuaishouSettlementRulesMapper">
 
     <resultMap type="com.ruixuan.isc.entity.KuaishouSettlementRules" id="KuaishouSettlementRulesResult">
-        <result property="id"    column="id"    />
-        <result property="ruleName"    column="rule_name"    />
-        <result property="ruleType"    column="rule_type"    />
-        <result property="userId"    column="user_id"    />
-        <result property="userName"    column="user_name"    />
-        <result property="createTime"    column="create_time"    />
-        <result property="updateTime"    column="update_time"    />
+        <result property="id" column="id"/>
+        <result property="ruleName" column="rule_name"/>
+        <result property="ruleType" column="rule_type"/>
+        <result property="userId" column="user_id"/>
+        <result property="userName" column="user_name"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
     </resultMap>
 
     <sql id="selectKuaishouSettlementRulesVo">
         select id, rule_name, rule_type, user_id, user_name, create_time, update_time from kuaishou_settlement_rules
     </sql>
 
-    <select id="selectKuaishouSettlementRulesList" parameterType="com.ruixuan.isc.entity.KuaishouSettlementRules" resultMap="KuaishouSettlementRulesResult">
+    <select id="selectKuaishouSettlementRulesList" parameterType="com.ruixuan.isc.entity.KuaishouSettlementRules"
+            resultMap="KuaishouSettlementRulesResult">
         <include refid="selectKuaishouSettlementRulesVo"/>
         <where>
-            <if test="ruleName != null  and ruleName != ''"> and rule_name like concat('%', #{ruleName}, '%')</if>
-            <if test="ruleType != null "> and rule_type = #{ruleType}</if>
-            <if test="userId != null "> and user_id = #{userId}</if>
-            <if test="userName != null  and userName != ''"> and user_name like concat('%', #{userName}, '%')</if>
+            <if test="ruleName != null  and ruleName != ''">and rule_name like concat('%', #{ruleName}, '%')</if>
+            <if test="ruleType != null ">and rule_type = #{ruleType}</if>
+            <if test="userId != null ">and user_id = #{userId}</if>
+            <if test="userName != null  and userName != ''">and user_name like concat('%', #{userName}, '%')</if>
         </where>
     </select>
 
-    <select id="selectKuaishouSettlementRulesById" parameterType="java.lang.Long" resultMap="KuaishouSettlementRulesResult">
+    <select id="selectKuaishouSettlementRulesById" parameterType="java.lang.Long"
+            resultMap="KuaishouSettlementRulesResult">
         <include refid="selectKuaishouSettlementRulesVo"/>
         where id = #{id}
     </select>
+    <select id="getRuleList" resultType="com.alibaba.fastjson.JSONObject" parameterType="java.lang.Long">
+        select id as 'id',
+        rule_name as 'ruleName',
+        rule_type as 'ruleType',
+        user_id as 'userId',
+        user_name as 'userName',
+        create_time as 'createTime'
+        from kuaishou_settlement_rules
+        where id = 1
+        <if test="ruleName != null and ruleName != ''">
+            and rule_name like concat('%',#{ruleName}, '%')
+        </if>
+
+            union all
+            select id as 'id',
+            rule_name as 'ruleName',
+            rule_type as 'ruleType',
+            user_id as 'userId',
+            user_name as 'userName',
+            create_time as 'createTime'
+            from kuaishou_settlement_rules
+            where user_id = #{userId}
+            <if test="ruleName != null and ruleName != ''">
+                and rule_name like concat('%',#{ruleName}, '%')
+            </if>
+            order by createTime desc
+
+    </select>
+    <select id="getMaxRuleId" resultType="java.lang.Long">
+        select  max(id) from kuaishou_settlement_rules
+    </select>
 
     <insert id="insertKuaishouSettlementRules" parameterType="com.ruixuan.isc.entity.KuaishouSettlementRules">
         insert into kuaishou_settlement_rules

+ 14 - 1
ruixuan-live/src/main/resources/mapper/isc/SupplyChainMapper.xml

@@ -64,7 +64,17 @@
     </select>
     <select id="anchorOrderDetail" resultType="com.alibaba.fastjson.JSONObject">
         select t.*,
-        t2.status
+        t2.status,
+        (
+        case
+        when t3.activity_item_status = 1 then '待审核'
+        when t3.activity_item_status = 2 then '已上架'
+        when t3.activity_item_status = 3 then '审核拒绝'
+        when t3.activity_item_status = 4 then '活动失效'
+        when t3.activity_item_status = 5 then '商品下架'
+        else ''
+        end
+        ) as 'activityItemStatus'
         from (select
         item_title as 'itemTitle',
         item_id as 'itemId',
@@ -100,6 +110,9 @@
         group by item_id) t left join ( select item_id as 'itemId', collect_sample_status as 'status' from
         kuaishou_item_collect_samples where promoter_id = #{promoterId}) t2
         on t.itemId = t2.itemId
+        left join kuaishou_item_list t3
+        on t.itemId = t3.item_id
+
         order by t.orderNum desc
     </select>
     <select id="orderStatistics" resultType="com.alibaba.fastjson.JSONObject">