From fe7c2fff004e4a64dae5f0982ab28663c600c778 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 03 四月 2025 15:20:17 +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/THuiminCardController.java |  213 ++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 193 insertions(+), 20 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java
index a76a0ca..95e930c 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java
@@ -1,10 +1,28 @@
 package com.dsh.guns.modular.system.controller.code;
 
+import cn.hutool.core.date.DateUtil;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.api.R;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.dsh.course.feignClient.activity.HuiminCardClient;
+import com.dsh.course.feignClient.activity.model.THuiminCard;
 import com.dsh.guns.core.base.controller.BaseController;
+import com.dsh.guns.core.page.PageInfoBT;
+import com.dsh.guns.modular.system.model.*;
+import com.dsh.guns.modular.system.service.IStoreService;
+import com.dsh.guns.modular.system.service.ITSiteService;
+import com.dsh.guns.modular.system.service.TOperatorService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
 
 /**
  * 惠民卡控制器
@@ -20,6 +38,12 @@
 
     @Autowired
     private HuiminCardClient huiminCardClient;
+    @Autowired
+    private IStoreService storeService;
+    @Autowired
+    private TOperatorService operatorService;
+    @Autowired
+    private ITSiteService tSiteService;
 
     /**
      * 跳转到惠民卡首页
@@ -38,7 +62,173 @@
         return PREFIX + "tHuiminCard_add.html";
     }
 
-  /*  *//**
+    /**
+     * 跳转到详情页面
+     */
+    @RequestMapping("/tHuiminCard_detail/{id}")
+    public String tHuiminCardDetail(@PathVariable("id") Integer id) {
+        THuiminCard byId = huiminCardClient.getById(id);
+        Date startTime = byId.getStartTime();
+        if (startTime != null){
+            byId.setStartTimeStr(DateUtil.format(startTime, "yyyy-MM-dd HH:mm:ss"));
+        }
+        Date endTime = byId.getEndTime();
+        if (endTime != null){
+            byId.setEndTimeStr(DateUtil.format(endTime, "yyyy-MM-dd HH:mm:ss"));
+        }
+        String jsonString = JSONObject.toJSONString(byId);
+        setAttr("tHuiminCard", jsonString);
+        return PREFIX + "tHuiminCard_detail.html";
+    }
+
+
+    /**
+     * 获取惠民卡列表
+     * @return
+     */
+    @RequestMapping(value = "/list")
+    @ResponseBody
+    public PageInfoBT<THuiminCard> list(Page<THuiminCard> page,THuiminCard tHuiminCard) {
+        return super.packForBT(huiminCardClient.queryPage(page, tHuiminCard));
+    }
+
+    /**
+     * 获取门店列表
+     */
+    @RequestMapping(value = "/storeList")
+    @ResponseBody
+    public Object storeList(Page<TStore> page, HuiminCardStoreQuery query) {
+        String storeIds = query.getStoreIds();
+        String[] ids = {};
+        if (!StringUtils.isEmpty(storeIds)){
+             ids = storeIds.split(",");
+        }
+
+        Page<TStore> storePage = storeService.page(page, new LambdaQueryWrapper<TStore>()
+                .in(ids.length > 0, TStore::getId, Arrays.asList(ids))
+                .eq(!StringUtils.isEmpty(query.getProvinceCode()), TStore::getProvinceCode, query.getProvinceCode())
+                .eq(!StringUtils.isEmpty(query.getCityCode()), TStore::getCityCode, query.getCityCode())
+                .eq(query.getOperatorId() != null, TStore::getOperatorId, query.getOperatorId())
+                .like(!StringUtils.isEmpty(query.getStoreName()), TStore::getName, query.getStoreName())
+                .orderByDesc(TStore::getCreateTime));
+        return storePage.convert(tStore -> {
+            HuiminCardStoreVO huiminCardStoreVO = new HuiminCardStoreVO();
+            huiminCardStoreVO.setStoreId(tStore.getId());
+            huiminCardStoreVO.setProvince(tStore.getProvince());
+            huiminCardStoreVO.setStoreName(tStore.getName());
+            huiminCardStoreVO.setIds(tStore.getIds());
+            TOperator operator = operatorService.getById(tStore.getOperatorId());
+            if (operator != null){
+                huiminCardStoreVO.setOperatorName(operator.getName());
+            }
+            return huiminCardStoreVO;
+        });
+    }
+
+    /**
+     * 获取场地列表
+     */
+    @RequestMapping(value = "/siteList")
+    @ResponseBody
+    public Object siteList(Page<TSite> page, HuiminCardStoreQuery query) {
+        String storeName = query.getStoreName();
+        List<String> storeIds = new ArrayList<>();
+        if (!StringUtils.isEmpty(storeName)){
+            List<String> storeIdsByName = storeService.listObjs(new LambdaQueryWrapper<TStore>()
+                    .select(TStore::getId)
+                    .eq(TStore::getName, storeName), String::valueOf);
+            if (storeIdsByName != null && !storeIdsByName.isEmpty()){
+                storeIds.addAll(storeIdsByName);
+            }else {
+                return null;
+            }
+        }
+        Integer operatorId = query.getOperatorId();
+        if (operatorId != null){
+            List<String> storeIdsByOperatorId = storeService.listObjs(new LambdaQueryWrapper<TStore>()
+                    .select(TStore::getId)
+                    .eq(TStore::getOperatorId, operatorId), String::valueOf);
+            if (storeIdsByOperatorId != null && !storeIdsByOperatorId.isEmpty()){
+                storeIds.addAll(storeIdsByOperatorId);
+            }else {
+                return null;
+            }
+        }
+
+        Page<TSite> sitePage = tSiteService.page(page, new LambdaQueryWrapper<TSite>()
+                .eq(!StringUtils.isEmpty(query.getProvinceCode()), TSite::getProvinceCode, query.getProvinceCode())
+                .eq(!StringUtils.isEmpty(query.getCityCode()), TSite::getCityCode, query.getCityCode())
+                .in(!storeIds.isEmpty(), TSite::getStoreId, storeIds));
+
+
+        return sitePage.convert(tSite -> {
+            HuiminCardSiteVO huiminCardSiteVO = new HuiminCardSiteVO();
+            huiminCardSiteVO.setSiteId(tSite.getId());
+            huiminCardSiteVO.setProvince(tSite.getProvince());
+            huiminCardSiteVO.setSiteName(tSite.getName());
+            huiminCardSiteVO.setIds(tSite.getIds());
+
+            TStore store = storeService.getById(tSite.getStoreId());
+            if (store != null){
+                huiminCardSiteVO.setStoreName(store.getName());
+            }
+
+            TOperator operator = operatorService.getById(tSite.getOperatorId());
+            if (operator != null){
+                huiminCardSiteVO.setOperatorName(operator.getName());
+            }
+            return huiminCardSiteVO;
+
+        });
+    }
+
+
+    @PostMapping(value = "/add")
+    @ResponseBody
+    public Object add(THuiminCard tHuiminCard) {
+        huiminCardClient.save(tHuiminCard);
+        return SUCCESS_TIP;
+    }
+    @RequestMapping(value = "/update")
+    @ResponseBody
+    public Object update(THuiminCard tHuiminCard) {
+        huiminCardClient.updateById(tHuiminCard);
+        return SUCCESS_TIP;
+    }
+
+    @RequestMapping(value = "/delete")
+    @ResponseBody
+    public Object delete(@RequestParam String ids) {
+        if (StringUtils.isEmpty(ids)) {
+            throw new IllegalArgumentException("参数ids不能为空");
+        }
+        String[] idStrings = ids.split(",");
+        List<Integer> idList = new ArrayList<>(idStrings.length);
+
+        for (String idStr : idStrings) {
+            idStr = idStr.trim();
+            if (!idStr.isEmpty()) {
+                idList.add(Integer.parseInt(idStr));
+            }
+        }
+        huiminCardClient.deleteBatchIds(idList);
+        return SUCCESS_TIP;
+    }
+
+    /**
+     * 上下架状态修改
+     */
+    @RequestMapping(value = "/changeState")
+    @ResponseBody
+    public Object changeState(Integer id, Integer status) {
+        String s = huiminCardClient.changeState(id, status);
+        System.out.println(s);
+        return SUCCESS_TIP;
+    }
+
+
+
+    /*  *//**
      * 跳转到修改惠民卡
      *//*
     @RequestMapping("/tHuiminCard_update/{tHuiminCardId}")
@@ -58,25 +248,8 @@
         return huiminCardClient.selectList(null);
     }
 
-    *//**
-     * 新增惠民卡
-     *//*
-    @RequestMapping(value = "/add")
-    @ResponseBody
-    public Object add(THuiminCard tHuiminCard) {
-        huiminCardClient.insert(tHuiminCard);
-        return SUCCESS_TIP;
-    }
 
-    *//**
-     * 删除惠民卡
-     *//*
-    @RequestMapping(value = "/delete")
-    @ResponseBody
-    public Object delete(@RequestParam Integer tHuiminCardId) {
-        huiminCardClient.deleteById(tHuiminCardId);
-        return SUCCESS_TIP;
-    }
+
 
     *//**
      * 修改惠民卡

--
Gitblit v1.7.1