From 4e85cf00c3a77b7165f4d349da21e94b2b528909 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 11 四月 2025 10:05:41 +0800
Subject: [PATCH] Merge branch '2.0' of http://120.76.84.145:10101/gitblit/r/java/PlayPai into 2.0

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TPayHuiminController.java |   68 +++++++++++++++++++++++++--------
 1 files changed, 51 insertions(+), 17 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TPayHuiminController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TPayHuiminController.java
index 0d2f20b..736dc83 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TPayHuiminController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TPayHuiminController.java
@@ -8,6 +8,7 @@
 import com.dsh.course.feignClient.activity.PayHuiminClient;
 import com.dsh.course.feignClient.activity.model.HuiminPayQuery;
 import com.dsh.course.feignClient.activity.model.TPayHuimin;
+import com.dsh.guns.config.UserExt;
 import com.dsh.guns.core.base.controller.BaseController;
 import com.dsh.guns.core.common.constant.factory.PageFactory;
 import com.dsh.guns.modular.system.model.AppUserByNameAndPhoneDTO;
@@ -25,7 +26,7 @@
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
 
@@ -33,6 +34,7 @@
 import java.io.IOException;
 import java.io.OutputStream;
 import java.math.BigDecimal;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
@@ -67,8 +69,20 @@
      */
     @RequestMapping("")
     public String index(Model model) {
+        Integer objectType = UserExt.getUser().getObjectType();
+        Integer operatorId = null;
+        if (objectType.equals(2)){
+            //查询运营商
+            TOperator operator = operatorService.getOne(new QueryWrapper<TOperator>()
+                    .eq("userId", UserExt.getUser().getId())
+                    .ne("state", 3)
+                    .last("LIMIT 1"));
+            if (Objects.nonNull(operator)) {
+                operatorId = operator.getId();
+            }
+        }
         //查询运营商列表
-        model.addAttribute("operatorList", operatorService.list(new QueryWrapper<TOperator>().eq("state", 1)));
+        model.addAttribute("operatorList", operatorService.list(new QueryWrapper<TOperator>().eq(Objects.nonNull(operatorId), "id",operatorId).eq("state", 1)));
         model.addAttribute("storeList", storeService.list(new QueryWrapper<TStore>().eq("state", 1)));
         return PREFIX + "tPayHuimin.html";
     }
@@ -87,6 +101,17 @@
     @RequestMapping(value = "/list")
     @ResponseBody
     public Object list(HuiminPayQuery query) {
+        Integer objectType = UserExt.getUser().getObjectType();
+        if (objectType.equals(2)){
+            //查询运营商
+            TOperator operator = operatorService.getOne(new QueryWrapper<TOperator>()
+                    .eq("userId", UserExt.getUser().getId())
+                    .ne("state", 3)
+                    .last("LIMIT 1"));
+            if (Objects.nonNull(operator)) {
+                query.setOperatorId(Long.valueOf(operator.getId()));
+            }
+        }
         Page<TPayHuimin> tPayHuiminPage = new PageFactory<TPayHuimin>().defaultPage();
         query.setCurrent(tPayHuiminPage.getCurrent());
         query.setSize(tPayHuiminPage.getSize());
@@ -110,16 +135,20 @@
             List<Integer> operatorIdList = records.stream()
                     .map(SalesDetailVO::getOperatorId)
                     .collect(Collectors.toList());
-            List<Integer> storeIdList = records.stream()
-                    .map(SalesDetailVO::getStoreId)
-                    .collect(Collectors.toList());
             Map<Integer, String> operatorMap = operatorService.listByIds(operatorIdList).stream()
                     .collect(Collectors.toMap(TOperator::getId, TOperator::getName));
-            Map<Integer, String> storeMap = storeService.listByIds(storeIdList).stream()
+            Map<Integer, String> storeMap = storeService.list().stream()
                     .collect(Collectors.toMap(TStore::getId, TStore::getName));
             records.forEach(item->{
                 item.setOperatorName(operatorMap.getOrDefault(item.getOperatorId(),""));
-                item.setStoreName(storeMap.getOrDefault(item.getStoreId(),""));
+                StringBuilder sb = new StringBuilder();
+                Arrays.stream(item.getStoreIds().split(",")).map(Integer::parseInt).forEach(s->{
+                    sb.append( storeMap.getOrDefault(s, ""));
+                    sb.append(",");
+                });
+                //sb去除最后一个逗号
+                sb.deleteCharAt(sb.length() - 1);
+                item.setStoreName(sb.toString());
             });
         }
         return super.packForBT(salesDetailVOPage);
@@ -159,10 +188,11 @@
      * @param id
      * @return
      */
-    @GetMapping("/refund/{id}")
+    @PostMapping("/refund")
     @ResponseBody
-    public ResultUtil<?> refund(@PathVariable("id") Integer id) {
-        return payHuiminClient.refund(id);
+    public ResultUtil<?> refund(Integer id) {
+         payHuiminClient.refund(id);
+        return ResultUtil.success();
     }
 
     /**
@@ -177,16 +207,20 @@
             List<Integer> operatorIdList = records.stream()
                     .map(SalesDetailVO::getOperatorId)
                     .collect(Collectors.toList());
-            List<Integer> storeIdList = records.stream()
-                    .map(SalesDetailVO::getStoreId)
-                    .collect(Collectors.toList());
             Map<Integer, String> operatorMap = operatorService.listByIds(operatorIdList).stream()
                     .collect(Collectors.toMap(TOperator::getId, TOperator::getName));
-            Map<Integer, String> storeMap = storeService.listByIds(storeIdList).stream()
+            Map<Integer, String> storeMap = storeService.list().stream()
                     .collect(Collectors.toMap(TStore::getId, TStore::getName));
-            records.forEach(item -> {
-                item.setOperatorName(operatorMap.getOrDefault(item.getOperatorId(), ""));
-                item.setStoreName(storeMap.getOrDefault(item.getStoreId(), ""));
+            records.forEach(item->{
+                item.setOperatorName(operatorMap.getOrDefault(item.getOperatorId(),""));
+                StringBuilder sb = new StringBuilder();
+                Arrays.stream(item.getStoreIds().split(",")).map(Integer::parseInt).forEach(s->{
+                    sb.append( storeMap.getOrDefault(s, ""));
+                    sb.append(",");
+                });
+                //sb去除最后一个逗号
+                sb.deleteCharAt(sb.length() - 1);
+                item.setStoreName(sb.toString());
             });
         }
         String[] titleArr = {"惠民卡名称", "惠民卡类型", "售卖金额", "所属运营商", "可用门店", "购买用户", "联系电话", "购买时间", "绑定人员", "已用次数", "有效期", "状态"};

--
Gitblit v1.7.1