From 6dd3ce5d438e90e453bf3e44e287aa835ffda339 Mon Sep 17 00:00:00 2001
From: lisy <linlangsur163@163.com>
Date: 星期二, 01 八月 2023 14:05:30 +0800
Subject: [PATCH] app端接口优化

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java |  132 ++++++++++++++++++++++++++++++++++---------
 1 files changed, 103 insertions(+), 29 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java
index 337e62d..61958cd 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java
@@ -1,39 +1,41 @@
 package com.dsh.guns.modular.system.controller.code;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.dsh.competition.entity.Competition;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.dsh.course.feignClient.competition.CompetitionClient;
+import com.dsh.course.feignClient.competition.model.Competition;
+import com.dsh.course.feignClient.competition.model.GetPeopleQuery;
+import com.dsh.course.feignClient.competition.model.ListQuery;
+import com.dsh.course.feignClient.competition.model.Participant;
 import com.dsh.guns.core.base.controller.BaseController;
-import com.dsh.guns.core.common.annotion.Permission;
+import com.dsh.guns.core.base.tips.SuccessTip;
+import com.dsh.guns.core.common.constant.factory.PageFactory;
+import com.dsh.guns.core.support.HttpKit;
 import com.dsh.guns.core.util.ToolUtil;
-import com.dsh.guns.modular.system.client.competition.CompetitionClient;
-import com.dsh.guns.modular.system.client.competition.model.ListQuery;
+import com.dsh.guns.modular.system.model.TCity;
 import com.dsh.guns.modular.system.model.TStore;
+import com.dsh.guns.modular.system.service.ICityService;
 import com.dsh.guns.modular.system.service.IStoreService;
-import com.dsh.guns.modular.system.warpper.RoleWarpper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.*;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
+import javax.servlet.http.HttpServletRequest;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
- * 菜单控制器
+ * 车辆管理控制器
  *
  * @author fengshuonan
- * @Date 2017年2月12日21:59:14
+ * @Date 2020-06-05 17:25:12
  */
 @Controller
 @RequestMapping("/tCompetition")
 public class TCompetitionController extends BaseController {
 
-    private static String PREFIX = "/system/tCompetition/";
+    private String PREFIX = "/system/tCompetition/";
 
     @Autowired
     private CompetitionClient competitionClient;
@@ -41,29 +43,33 @@
     @Autowired
     private IStoreService storeService;
 
+    @Autowired
+    private ICityService cityService;
+
 
     /**
-     * 跳转到菜单列表列表页面
+     * 跳转到车辆管理首页
      */
     @RequestMapping("")
     public String index(Model model) {
-        return PREFIX + "tCompetition.html";
+        return PREFIX + "TCompetition.html";
     }
 
     /**
-     * 跳转到菜单列表列表页面
+     * 跳转到添加车辆管理
      */
-    @RequestMapping(value = "/tCompetition_add")
+    @RequestMapping("/tCompetition_add")
     public String tCompetitionAdd(Model model) {
-        return PREFIX + "tCompetition_add.html";
+        return PREFIX + "TCompetition_add.html";
     }
 
+
     /**
-     * 跳转到菜单详情列表页面
+     * 跳转到修改车辆管理
      */
-    @RequestMapping(value = "/tCompetition_edit/{id}")
-    public String tCompetitionEdit(@PathVariable Integer id, Model model) {
-        Competition competition  = competitionClient.queryById(id);
+    @RequestMapping("/tCompetition_update/{id}")
+    public String tCarUpdate(@PathVariable Integer id, Model model) {
+        Competition competition = competitionClient.queryById(id);
         model.addAttribute("item",competition);
         return PREFIX + "tCompetition_edit.html";
     }
@@ -71,23 +77,91 @@
 
     @RequestMapping(value = "/list")
     @ResponseBody
-    public Object list(String provinceCode,String cityCode,String shopName,String eventName,String time,Integer state,Integer registerCondition) {
+    public Object list(String provinceCode, String cityCode, String shopName, String eventName, String time, Integer state, Integer registerCondition) {
         List<Integer> ids = new ArrayList<>();
+        List<TStore> list = null;
         // 获取门店id
         if(ToolUtil.isNotEmpty(shopName)){
-            List<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>().like(TStore::getName, shopName));
+             list = storeService.list(new LambdaQueryWrapper<TStore>().like(TStore::getName, shopName));
             ids = list.stream().map(TStore::getId).collect(Collectors.toList());
         }else {
+            list = storeService.list();
             ids = storeService.list().stream().map(TStore::getId).collect(Collectors.toList());
         }
         if(ids.size()==0){
             ids.add(-1);
         }
-        ListQuery listQuery = new ListQuery();
-//        List<Competition> competitions = competitionClient.list();
-        return super.warpObject(null);
+        Page<Competition> page = new PageFactory<Competition>().defaultPage();
+        ListQuery listQuery = new ListQuery(page.getSize(),page.getCurrent(),provinceCode,cityCode,eventName,time,state,registerCondition,ids);
+        Page<Competition> competitions = competitionClient.list(listQuery);
+        for (Competition competition : competitions.getRecords()) {
+            for (TStore tStore : list) {
+                if(competition.getStoreId().equals(tStore.getId())){
+                    competition.setStoreName(tStore.getName());
+                }
+            }
+        }
+        return  super.packForBT(competitions);
     }
 
 
+    @RequestMapping(value = "/add")
+    public Object list(Competition competition) {
+        try {
+            competitionClient.add(competition);
+            return SUCCESS_TIP;
+        }catch (Exception e){
+            e.printStackTrace();
+            return ERROR;
+        }
+    }
+
+    @RequestMapping(value = "/update")
+    public Object update(Competition competition) {
+        try {
+            competitionClient.update(competition);
+            return SUCCESS_TIP;
+        }catch (Exception e){
+            e.printStackTrace();
+            return ERROR;
+        }
+    }
+
+
+    @RequestMapping(value = "/cancel")
+    public Object cancel(Integer id) {
+        try {
+            competitionClient.cancel(id);
+            return SUCCESS_TIP;
+        }catch (Exception e){
+            e.printStackTrace();
+            return ERROR;
+        }
+    }
+
+    @RequestMapping(value = "/getPeopleFromId")
+    public Object getPeopleFromId(Integer id,Integer state) {
+        try {
+            Page<Object> page = new PageFactory<>().defaultPage();
+            Page<Participant> data =   competitionClient.getPeopleFromId(new GetPeopleQuery(page.getSize(),page.getCurrent(),id,state));
+            return  super.packForBT(data);
+        }catch (Exception e){
+            e.printStackTrace();
+            return ERROR;
+        }
+    }
+
+    @RequestMapping(value = "/onChange")
+    @ResponseBody
+    public Object onChange(Integer oneId) {
+        try {
+            TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, oneId));
+            return cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId()));
+        }catch (Exception e){
+            e.printStackTrace();
+            return ERROR;
+        }
+    }
+
 
 }

--
Gitblit v1.7.1