From 1f1b5541a872a0b2d974344df18e0890f414cc9b Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期五, 08 三月 2024 17:43:59 +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/WorldCupRecordsController.java | 109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 108 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 725fdbb..a144fe6 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 @@ -2,14 +2,23 @@ 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; /** @@ -46,7 +55,10 @@ } - + @RequestMapping("/openUserGameRecord") + public String openUserGameRecord(){ + return PREFIX + "userGameRecord.html"; + } @@ -111,4 +123,99 @@ 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.worldCupGameStatisticsInfoList(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] = 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 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