From c560f1a14ae1fc468d90e50e6a32d805295875da Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期一, 01 九月 2025 15:35:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0' into 2.0
---
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java | 354 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 336 insertions(+), 18 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 61958cd..8d60d0d 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,27 +1,42 @@
package com.dsh.guns.modular.system.controller.code;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.dsh.course.feignClient.account.model.TAppUser;
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.course.feignClient.competition.model.*;
+import com.dsh.guns.config.UserExt;
import com.dsh.guns.core.base.controller.BaseController;
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.model.TCity;
+import com.dsh.guns.modular.system.model.TOperator;
+import com.dsh.guns.modular.system.model.TOperatorCity;
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.service.TOperatorCityService;
+import com.dsh.guns.modular.system.service.TOperatorService;
+import com.dsh.guns.modular.system.util.ExcelUtil;
+import com.dsh.guns.modular.system.util.OBSUploadUtil;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
-import org.springframework.web.bind.annotation.*;
+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.ResponseBody;
+import sun.rmi.runtime.Log;
-import javax.servlet.http.HttpServletRequest;
+import javax.jws.soap.SOAPBinding;
+import javax.servlet.http.HttpServletResponse;
+import java.io.OutputStream;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -46,20 +61,117 @@
@Autowired
private ICityService cityService;
+ /**
+ * 导出赛事已报名用户列表
+ */
+
+ @RequestMapping(value = "/export")
+ @ResponseBody
+ public void exportUserInfo(Integer id, Integer state, HttpServletResponse response) {
+ try {
+ Competition byId = competitionClient.queryById(id);
+ String name = byId.getName();
+ Date date = new Date();
+ DateFormat format = new SimpleDateFormat("yyyyMMdd");
+ String time1 = format.format(date);
+ String fileName =name+"报名信息.xls";
+ String[] title = new String[] {"姓名","性别","联系电话","身份证号","状态"};
+ GetPeopleQuery query = new GetPeopleQuery();
+ query.setId(id);
+ query.setState(state);
+ List<CompetitionUser> list = competitionClient.getPeoples(query);
+ String[][] values = new String[list.size()][];
+ for (int i = 0; i < list.size(); i++) {
+ CompetitionUser d = list.get(i);
+ values[i] = new String[title.length];
+ values[i][0] = d.getName();
+ Integer sex = d.getSex();
+ if(Objects.nonNull(sex)){
+ if(1 == sex){
+ values[i][1] = "男";
+ }else if(2 == sex){
+ values[i][1] = "女";
+ }
+ }else {
+ values[i][1] = "未知";
+ }
+ values[i][2] = d.getPhone();
+ values[i][3] = d.getIdCard();
+ Integer state1 = d.getState();
+ if(1 == state1){
+ values[i][4] = "正常";
+ }else if(2 == state1){
+ values[i][4] = "冻结";
+ }else {
+ values[i][4] = "删除";
+ }
+ }
+ HSSFWorkbook wb = ExcelUtil.getHSSFWorkbook("Variance"+time1, title, values, null);
+ ExcelUtil.setResponseHeader(response, fileName);
+ OutputStream os = response.getOutputStream();
+ wb.write(os);
+ os.flush();
+ os.close();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
/**
* 跳转到车辆管理首页
*/
@RequestMapping("")
public String index(Model model) {
+ List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
+ model.addAttribute("list",list);
+ Integer objectType = UserExt.getUser().getObjectType();
+ model.addAttribute("type",objectType);
return PREFIX + "TCompetition.html";
}
+
+ @Autowired
+ private TOperatorService tOperatorService;
/**
* 跳转到添加车辆管理
*/
@RequestMapping("/tCompetition_add")
public String tCompetitionAdd(Model model) {
+ List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
+
+ List<TOperator> list1 = tOperatorService.list();
+ model.addAttribute("yysList",list1);
+ Integer objectType = UserExt.getUser().getObjectType();
+ model.addAttribute("type",objectType);
+ Integer objectId = UserExt.getUser().getObjectId();
+ List<TStore> operatorId = storeService.list(new QueryWrapper<TStore>().eq("operatorId", objectId));
+ model.addAttribute("stores",operatorId);
+ if (UserExt.getUser().getObjectType()==2){
+ // 查询这个运营商管理的省
+ TOperator id = tOperatorService.getOne(new QueryWrapper<TOperator>().eq("id", UserExt.getUser().getObjectId()));
+ if (id.getType()==1){
+
+ }else{
+ // 找到他管理的省
+ List<TOperatorCity> list4 = operatorCityService.list(new QueryWrapper<TOperatorCity>().eq("operatorId", UserExt.getUser().getObjectId()).eq("pid", 0));
+ List<Integer> collect = list4.stream().map(TOperatorCity::getCode).collect(Collectors.toList());
+ list = cityService.list(new LambdaQueryWrapper<TCity>().in(TCity::getCode, collect));
+ }
+ model.addAttribute("operator",objectId);
+ // 查询当前运营商管理了哪些门店
+ List<TStore> stores = storeService
+ .list(new QueryWrapper<TStore>()
+ .eq("operatorId", UserExt.getUser().getObjectId()));
+ model.addAttribute("stores",stores);
+ }
+ if (UserExt.getUser().getObjectType()==1) model.addAttribute("operator",0);
+ TStore byId = storeService.getById(UserExt.getUser().getObjectId());
+ if (UserExt.getUser().getObjectType()==3) model.addAttribute("operator",byId.getOperatorId());
+ List<TOperator> list2 = tOperatorService.list();
+ model.addAttribute("yysList",list2);
+ model.addAttribute("list",list);
+
return PREFIX + "TCompetition_add.html";
}
@@ -69,9 +181,105 @@
*/
@RequestMapping("/tCompetition_update/{id}")
public String tCarUpdate(@PathVariable Integer id, Model model) {
+ Integer objectType = UserExt.getUser().getObjectType();
+ model.addAttribute("objectType",objectType);
Competition competition = competitionClient.queryById(id);
+ System.out.println("======competition======"+competition);
+ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+ String startTime = formatter.format(competition.getStartTime());
+ model.addAttribute("startTime",startTime);
+ String endTime = formatter.format(competition.getEndTime());
+ model.addAttribute("endTime",endTime);
+ String registerEndTime = formatter.format(competition.getRegisterEndTime());
+ model.addAttribute("registerEndTime",registerEndTime);
+
+
+
+
model.addAttribute("item",competition);
- return PREFIX + "tCompetition_edit.html";
+ String[] split = competition.getStoreId().split(",");
+ List<Integer> integers = new ArrayList<>();
+ for (String s : split) {
+ integers.add(Integer.valueOf(s));
+ }
+
+ model.addAttribute("storeIds",integers);
+
+ List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
+
+ TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, competition.getProvinceCode()));
+ List<TCity> list1 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId()));
+
+ List<TStore> list2 = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode,competition.getCityCode()));
+ if (UserExt.getUser().getObjectType()==2){
+ // 查询这个运营商管理的省
+ TOperator id1 = tOperatorService.getOne(new QueryWrapper<TOperator>().eq("id", UserExt.getUser().getObjectId()));
+ if (id1.getType()==1){
+
+ }else{
+ // 找到他管理的省
+ List<TOperatorCity> list4 = operatorCityService.list(new QueryWrapper<TOperatorCity>().eq("operatorId", UserExt.getUser().getObjectId()).eq("pid", 0));
+ List<Integer> collect = list4.stream().map(TOperatorCity::getCode).collect(Collectors.toList());
+ list = cityService.list(new LambdaQueryWrapper<TCity>().in(TCity::getCode, collect));
+ // 找到他管理的市
+ TOperatorCity one1 = operatorCityService.lambdaQuery().eq(TOperatorCity::getCode, competition.getProvinceCode())
+ .eq(TOperatorCity::getOperatorId, UserExt.getUser().getObjectId()).one();
+
+ List<TOperatorCity> list3 = operatorCityService.lambdaQuery().eq(TOperatorCity::getPid, one1.getId())
+ .eq(TOperatorCity::getOperatorId, UserExt.getUser().getObjectId()).list();
+ if (list3.isEmpty()){
+ // 管理整个市区
+ }else{
+ List<Integer> collect1 = list3.stream().map(TOperatorCity::getCode).collect(Collectors.toList());
+ list1 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId())
+ .in(TCity::getCode, collect1));
+ }
+
+ }
+ list2 = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode,competition.getCityCode())
+ .eq(TStore::getOperatorId,UserExt.getUser().getObjectId()));
+ }
+ model.addAttribute("list",list);
+ model.addAttribute("list1",list1);
+ model.addAttribute("list2",list2);
+ model.addAttribute("type",1);
+ return PREFIX + "TCompetition_edit.html";
+ }
+ @RequestMapping("/tCompetition_info/{id}")
+ public String tCarInfo(@PathVariable Integer id, Model model) {
+ Integer objectType = UserExt.getUser().getObjectType();
+ model.addAttribute("objectType",objectType);
+ Competition competition = competitionClient.queryById(id);
+ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ String startTime = formatter.format(competition.getStartTime());
+ model.addAttribute("startTime",startTime);
+ String endTime = formatter.format(competition.getEndTime());
+ model.addAttribute("endTime",endTime);
+ String registerEndTime = formatter.format(competition.getRegisterEndTime());
+ model.addAttribute("registerEndTime",registerEndTime);
+ model.addAttribute("item",competition);
+ List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
+ TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, competition.getProvinceCode()));
+ List<TCity> list1 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId()));
+
+ List<TStore> list2 = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode,competition.getCityCode()));
+ model.addAttribute("list",list);
+ model.addAttribute("list1",list1);
+ model.addAttribute("list2",list2);
+ model.addAttribute("type",2);
+ String[] split = competition.getStoreId().split(",");
+ List<Integer> integers = new ArrayList<>();
+ for (String s : split) {
+ integers.add(Integer.valueOf(s));
+ }
+
+ model.addAttribute("storeIds",integers);
+ return PREFIX + "TCompetition_edit.html";
+ }
+ @RequestMapping("/tCompetition_user/{id}")
+ public String tCarUser(@PathVariable Integer id, Model model) {
+ model.addAttribute("id",id);
+ return PREFIX + "TCompetitionUser.html";
}
@@ -91,25 +299,82 @@
if(ids.size()==0){
ids.add(-1);
}
+ if (UserExt.getUser().getObjectType()== 2){
+ if (shopName == null)
+ shopName = "";
+ List<Integer> operatorId = storeService.list(new QueryWrapper<TStore>()
+ .eq("operatorId", UserExt.getUser().getObjectId())
+ .like("name",shopName))
+ .stream().map(TStore::getId).collect(Collectors.toList());
+ ids = operatorId;
+ }
Page<Competition> page = new PageFactory<Competition>().defaultPage();
- ListQuery listQuery = new ListQuery(page.getSize(),page.getCurrent(),provinceCode,cityCode,eventName,time,state,registerCondition,ids);
+ ListQuery listQuery = new ListQuery(page.getSize(),page.getCurrent(),provinceCode,cityCode,eventName,time,state,registerCondition,ids,UserExt.getUser().getObjectType());
Page<Competition> competitions = competitionClient.list(listQuery);
+ List<Competition> records = new ArrayList<>();
for (Competition competition : competitions.getRecords()) {
+ if (competition.getStatus()!=state && state != null){
+ }else{
+ records.add(competition);
+ }
for (TStore tStore : list) {
- if(competition.getStoreId().equals(tStore.getId())){
- competition.setStoreName(tStore.getName());
+ String[] split = competition.getStoreId().split(",");
+ for (String s : split) {
+ if(s.equals(String.valueOf(tStore.getId()))){
+ if (competition.getStoreName()==null){
+ competition.setStoreName(tStore.getName());
+ }else {
+ competition.setStoreName(competition.getStoreName()+","+tStore.getName());
+ }
+ }
}
}
}
+ competitions.setRecords(records);
+ System.err.println(competitions.getRecords());
return super.packForBT(competitions);
}
+ @RequestMapping(value = "/listUser/{id}")
+ @ResponseBody
+ public Object listUser(@PathVariable Integer id,Integer state, Integer offset,Integer limit) {
+ try {
+ Page<CompetitionUser> page = competitionClient.getPeopleFromId1(new GetPeopleQuery(limit, offset, id, state));
+ return super.packForBT(page);
+ }catch (Exception e){
+ e.printStackTrace();
+ return ERROR;
+ }
+ }
+
+
@RequestMapping(value = "/add")
+ @ResponseBody
public Object list(Competition competition) {
try {
+ if(ToolUtil.isNotEmpty(competition.getProvinceCode())) {
+ System.out.println("=============="+competition);
+ TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, competition.getProvinceCode()));
+ competition.setProvince(one.getName());
+ TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, competition.getCityCode()));
+ competition.setCity(one1.getName());
+ }
+
+ if (UserExt.getUser().getObjectType() == 1){
+ competition.setAuditStatus(2);
+ }else if (UserExt.getUser().getObjectType() == 2){
+ competition.setAuditStatus(1);
+ competition.setOperatorId(UserExt.getUser().getObjectId());
+ }
+
+// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+// SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
+// competition.setStartTime(format1.parse(competition.getSTime()));
+// competition.setEndTime(format1.parse(competition.getETime()));
+// competition.setRegisterEndTime(format.parse(competition.getREndTime()));
competitionClient.add(competition);
- return SUCCESS_TIP;
+ return new SuccessTip<>();
}catch (Exception e){
e.printStackTrace();
return ERROR;
@@ -117,33 +382,53 @@
}
@RequestMapping(value = "/update")
+ @ResponseBody
public Object update(Competition competition) {
try {
+ Competition competition1 = competitionClient.queryById(competition.getId());
+ if(ToolUtil.isNotEmpty(competition.getProvinceCode())) {
+ TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, competition.getProvinceCode()));
+ competition.setProvince(one.getName());
+ TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, competition.getCityCode()));
+ competition.setCity(one1.getName());
+ }
+ if(ToolUtil.isEmpty(competition.getCoverDrawing())){
+ competition.setCoverDrawing(competition1.getCoverDrawing());
+ }
+ if(ToolUtil.isEmpty(competition.getRegistrationNotes())){
+ competition.setRegistrationNotes(competition1.getRegistrationNotes());
+ }
+ if (UserExt.getUser().getObjectType() == 1){
+ competition.setAuditStatus(2);
+ }else{
+ competition.setAuditStatus(1);
+ }
+
competitionClient.update(competition);
- return SUCCESS_TIP;
+ return new SuccessTip<>();
}catch (Exception e){
e.printStackTrace();
return ERROR;
}
}
-
+ @ResponseBody
@RequestMapping(value = "/cancel")
- public Object cancel(Integer id) {
+ public Object cancel(Integer TCompetitionId) {
try {
- competitionClient.cancel(id);
+ competitionClient.cancel(TCompetitionId);
return SUCCESS_TIP;
}catch (Exception e){
e.printStackTrace();
return ERROR;
}
}
-
+ @ResponseBody
@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));
+ Page<CompetitionUser> data = competitionClient.getPeopleFromId(new GetPeopleQuery(page.getSize(),page.getCurrent(),id,state));
return super.packForBT(data);
}catch (Exception e){
e.printStackTrace();
@@ -151,9 +436,17 @@
}
}
+ @Autowired
+ private TOperatorCityService operatorCityService;
@RequestMapping(value = "/onChange")
@ResponseBody
public Object onChange(Integer oneId) {
+ System.out.println("======"+oneId);
+ List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>()
+ .eq(TOperatorCity::getOperatorId, oneId).eq(TOperatorCity::getType, 2));
+ if (list.size()!=0){
+ return list;
+ }
try {
TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, oneId));
return cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId()));
@@ -163,5 +456,30 @@
}
}
+ @RequestMapping(value = "/onChange3")
+ @ResponseBody
+ public Object onChange3(String oneId) {
+ TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, oneId));
+ return cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId()));
+ }
+ @RequestMapping(value = "/oneChangeNext")
+ @ResponseBody
+ public Object oneChangeNext(Integer oneId) {
+ try {
+ if (UserExt.getUser().getObjectType() == 2){
+ return storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode, oneId)
+ .eq(TStore::getOperatorId, UserExt.getUser().getObjectId()));
+
+ }
+ return storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode, oneId));
+ }catch (Exception e){
+ e.printStackTrace();
+ return ERROR;
+ }
+ }
+
+
+
+
}
--
Gitblit v1.7.1