刘帅
2026-09-21 3f45e8fdfa31d7b764d60a7c0cb5dd11944ed418
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TPayHuiminController.java
@@ -43,7 +43,7 @@
import java.util.stream.Collectors;
/**
 * 惠民卡控制器
 * 玩湃惠民卡控制器
 *
 * @author fengshuonan
 * @Date 2025-03-29 17:41:48
@@ -51,6 +51,8 @@
@Controller
@RequestMapping("/tPayHuimin")
public class TPayHuiminController extends BaseController {
    private static final Integer GIFT_PAYMENT_TYPE = 3;
    private String PREFIX = "/system/tPayHuimin/";
@@ -65,7 +67,7 @@
    /**
     * 跳转到惠民卡首页
     * 跳转到玩湃惠民卡首页
     */
    @RequestMapping("")
    public String index(Model model) {
@@ -88,7 +90,7 @@
    }
    /**
     * 跳转到添加惠民卡
     * 跳转到添加玩湃惠民卡
     */
    @RequestMapping("/tPayHuimin_add")
    public String tPayHuiminAdd() {
@@ -96,7 +98,7 @@
    }
    /**
     * 获取惠民卡列表
     * 获取玩湃惠民卡列表
     */
    @RequestMapping(value = "/list")
    @ResponseBody
@@ -142,6 +144,7 @@
            records.forEach(item->{
                item.setOperatorName(operatorMap.getOrDefault(item.getOperatorId(),""));
                StringBuilder sb = new StringBuilder();
                System.err.println("==========="+item);
                Arrays.stream(item.getStoreIds().split(",")).map(Integer::parseInt).forEach(s->{
                    sb.append( storeMap.getOrDefault(s, ""));
                    sb.append(",");
@@ -162,6 +165,17 @@
    @RequestMapping("/getStaticsData")
    @ResponseBody
    public ResultUtil<Map<String, BigDecimal>> getStaticsData(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()));
            }
        }
        Map<String, BigDecimal> map = new HashMap<>();
        map.put("totalAmount",BigDecimal.ZERO);
        map.put("refundAmount",BigDecimal.ZERO);
@@ -223,23 +237,24 @@
                item.setStoreName(sb.toString());
            });
        }
        String[] titleArr = {"惠民卡名称", "惠民卡类型", "售卖金额", "所属运营商", "可用门店", "购买用户", "联系电话", "购买时间", "绑定人员", "已用次数", "有效期", "状态"};
        String[] titleArr = {"玩湃惠民卡名称", "玩湃惠民卡类型", "订单类型", "售卖金额", "所属运营商", "可用门店", "购买用户", "联系电话", "购买时间", "绑定人员", "已用次数", "有效期", "状态"};
        String[][] values = new String[records.size()][];
        for (int i = 0; i < records.size(); i++) {
            SalesDetailVO salesDetailVO = records.get(i);
            values[i] = new String[titleArr.length];
            values[i][0] = salesDetailVO.getHuiMinName();
            values[i][1] = salesDetailVO.getHuiMinType() == 1 ? "年度卡" : "年内卡";
            values[i][2] = salesDetailVO.getSalesMoney().toString();
            values[i][3] = salesDetailVO.getOperatorName();
            values[i][4] = salesDetailVO.getStoreName();
            values[i][5] = salesDetailVO.getUserName();
            values[i][6] = salesDetailVO.getPhone();
            values[i][7] = DateUtil.format(salesDetailVO.getPaymentTime(), "yyyy-MM-dd HH:mm:ss");
            values[i][8] = salesDetailVO.getStudentName();
            values[i][9] = salesDetailVO.getUseTimes().toString();
            values[i][10] = DateUtil.format(salesDetailVO.getEndTime(), "yyyy-MM-dd HH:mm:ss");
            values[i][11] = salesDetailVO.getStatus() == 2 ? "使用中" : "已退款";
            values[i][2] = GIFT_PAYMENT_TYPE.equals(salesDetailVO.getPaymentType()) ? "赠送" : "售卖";
            values[i][3] = salesDetailVO.getSalesMoney().toString();
            values[i][4] = salesDetailVO.getOperatorName();
            values[i][5] = salesDetailVO.getStoreName();
            values[i][6] = salesDetailVO.getUserName();
            values[i][7] = salesDetailVO.getPhone();
            values[i][8] = DateUtil.format(salesDetailVO.getPaymentTime(), "yyyy-MM-dd HH:mm:ss");
            values[i][9] = salesDetailVO.getStudentName();
            values[i][10] = salesDetailVO.getUseTimes().toString();
            values[i][11] = DateUtil.format(salesDetailVO.getEndTime(), "yyyy-MM-dd HH:mm:ss");
            values[i][12] = salesDetailVO.getStatus() == 2 ? "使用中" : "已退款";
        }
        try {
            HSSFWorkbook wb = ExcelUtil.getHSSFWorkbook("售卖明细", titleArr, values, null);