From 9486766c806fe1d9e082b2fd02ea1cc558f1b443 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 08 五月 2025 09:21:57 +0800 Subject: [PATCH] bug修改 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/WorldCupRecordsController.java | 195 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 194 insertions(+), 1 deletions(-) diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/WorldCupRecordsController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/WorldCupRecordsController.java index 7e0ebce..81b90f0 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/WorldCupRecordsController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/WorldCupRecordsController.java @@ -1,13 +1,24 @@ package com.dsh.guns.modular.system.controller.code; -import com.dsh.course.feignClient.communityWorldCup.Model.WorldCupRecords; +import com.dsh.course.feignClient.communityWorldCup.Model.*; import com.dsh.course.feignClient.communityWorldCup.WorldCupClient; +import com.dsh.guns.modular.system.util.ExcelUtil; +import com.dsh.guns.modular.system.util.ResultUtil; +import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.OutputStream; +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; import java.util.Map; /** @@ -30,6 +41,30 @@ } + @RequestMapping("/openWorldCupGameStatisticsInfo") + public String openWorldCupGameStatisticsInfo(Model model, Integer id){ + model.addAttribute("id", id); + return PREFIX + "worldCupGameStatisticsInfo.html"; + } + + + @RequestMapping("/openWorldCupGameStatisticsListInfo") + public String openWorldCupGameStatisticsListInfo(Model model, Long participantId, Integer participantType){ + model.addAttribute("participantId", participantId); + model.addAttribute("participantType", participantType); + return PREFIX + "worldCupGameStatisticsListInfo.html"; + } + + + @RequestMapping("/openUserGameRecord") + public String openUserGameRecord(){ + return PREFIX + "userGameRecord.html"; + } + + + + + /** * 获取排行榜列表数据 * @param worldCupRecords @@ -40,4 +75,162 @@ public Map<String, Object> worldCupRecordsList(WorldCupRecords worldCupRecords){ return worldCupClient.worldCupRecordsList(worldCupRecords); } + + + /** + * 获取比赛统计 + * @param worldCupGameStatistics + * @return + */ + @ResponseBody + @PostMapping("/worldCupGameStatistics") + public Map<String, Object> worldCupGameStatistics(WorldCupGameStatistics worldCupGameStatistics){ + return worldCupClient.worldCupGameStatistics(worldCupGameStatistics); + } + + + /** + * 获取比赛统计详情列表 + * @param worldCupGameStatisticsInfoList + * @return + */ + @ResponseBody + @PostMapping("/worldCupGameStatisticsInfoList") + public Map<String, Object> worldCupGameStatisticsInfoList(WorldCupGameStatisticsInfoList worldCupGameStatisticsInfoList){ + return worldCupClient.worldCupGameStatisticsInfoList(worldCupGameStatisticsInfoList); + } + + + /** + * 获取单场参赛数据详情列表 + * @param worldCupGameStatisticsListInfo + * @return + */ + @ResponseBody + @PostMapping("/worldCupGameStatisticsListInfo") + public Map<String, Object> worldCupGameStatisticsListInfo(WorldCupGameStatisticsListInfo worldCupGameStatisticsListInfo){ + return worldCupClient.worldCupGameStatisticsListInfo(worldCupGameStatisticsListInfo); + } + + + /** + * 修改比分 + * @param changeScore + * @return + */ + @ResponseBody + @PostMapping("/changeScore") + public ResultUtil changeScore(ChangeScore changeScore){ + worldCupClient.changeScore(changeScore); + return ResultUtil.success(); + } + + + /** + * 导出用户统计列表 + * @param worldCupGameStatisticsInfoList + * @param response + */ + @ResponseBody + @GetMapping("/exportUserStatistics") + public void exportUserStatistics(WorldCupGameStatisticsInfoList worldCupGameStatisticsInfoList, HttpServletResponse response){ + worldCupGameStatisticsInfoList.setOffset(0); + worldCupGameStatisticsInfoList.setLimit(100000); + Map<String, Object> map = worldCupClient.getUserGameRecordList(worldCupGameStatisticsInfoList); + List<Map<String, Object>> list = (List<Map<String, Object>>)map.get("rows"); + + try { + Date date = new Date(); + DateFormat format = new SimpleDateFormat("yyyyMMdd"); + String time1 = format.format(date); + String fileName ="用户统计.xls"; + String[] title = new String[] {"用户姓名","联系电话","身份证号","已比赛场次","胜-负场次","胜率"}; + String[][] values = new String[list.size()][]; + for (int i = 0; i < list.size(); i++) { + Map<String, Object> d = list.get(i); + values[i] = new String[title.length]; + values[i][0] = d.get("name").toString(); + values[i][1] = d.get("phone").toString(); + values[i][2] = null == d.get("idcard") ? "" : d.get("idcard").toString(); + values[i][3] = d.get("totalSession").toString(); + values[i][4] = d.get("win").toString() + "-" + d.get("lose").toString(); + values[i][5] = d.get("winRate").toString() + "%"; + } + HSSFWorkbook wb = ExcelUtil.getHSSFWorkbook(time1, title, values, null); + ExcelUtil.setResponseHeader(response, fileName); + OutputStream os = response.getOutputStream(); + wb.write(os); + os.flush(); + os.close(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + + + /** + * 获取用户比赛列表 + * @param worldCupGameStatisticsInfoList + * @return + */ + @ResponseBody + @PostMapping("/getUserGameRecordList") + public Object getUserGameRecordList(WorldCupGameStatisticsInfoList worldCupGameStatisticsInfoList){ + return worldCupClient.getUserGameRecordList(worldCupGameStatisticsInfoList); + } + + + + /** + * 获取用户比赛记录 + * @param userGameRecordList + * @return + */ + @ResponseBody + @PostMapping("/userGameRecordList") + public Object userGameRecordList(UserGameRecordList userGameRecordList){ + return worldCupClient.userGameRecordList(userGameRecordList); + } + + + /** + * 导出用户比赛记录 + * @param userGameRecordList + * @param response + */ + @ResponseBody + @GetMapping("/exportUserGameRecord") + public void exportUserGameRecord(UserGameRecordList userGameRecordList, HttpServletResponse response){ + userGameRecordList.setOffset(0); + userGameRecordList.setLimit(100000); + Map<String, Object> map = worldCupClient.userGameRecordList(userGameRecordList); + List<Map<String, Object>> list = (List<Map<String, Object>>)map.get("rows"); + + try { + Date date = new Date(); + DateFormat format = new SimpleDateFormat("yyyyMMdd"); + String time1 = format.format(date); + String fileName ="比赛记录.xls"; + String[] title = new String[] {"用户姓名","参与比赛","比赛时间","比分","结果"}; + String[][] values = new String[list.size()][]; + for (int i = 0; i < list.size(); i++) { + Map<String, Object> d = list.get(i); + values[i] = new String[title.length]; + values[i][0] = d.get("userName").toString(); + values[i][1] = d.get("name").toString(); + values[i][2] = d.get("startTime").toString(); + values[i][3] = d.get("score").toString(); + values[i][4] = d.get("matchResult").toString(); + } + HSSFWorkbook wb = ExcelUtil.getHSSFWorkbook(time1, title, values, null); + ExcelUtil.setResponseHeader(response, fileName); + OutputStream os = response.getOutputStream(); + wb.write(os); + os.flush(); + os.close(); + } catch (Exception e) { + e.printStackTrace(); + } + } } -- Gitblit v1.7.1