From ab20715db09a5e4888c19702f5f73ecdc4e55f15 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 06 三月 2024 11:38:55 +0800 Subject: [PATCH] 添加方法 --- cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/controller/WorldCupController.java | 213 +++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 198 insertions(+), 15 deletions(-) diff --git a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/controller/WorldCupController.java b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/controller/WorldCupController.java index 2cf0dda..cb1b7b0 100644 --- a/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/controller/WorldCupController.java +++ b/cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/controller/WorldCupController.java @@ -3,10 +3,7 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.dsh.communityWorldCup.entity.WorldCup; -import com.dsh.communityWorldCup.entity.WorldCupCompetitor; -import com.dsh.communityWorldCup.entity.WorldCupPaymentParticipant; -import com.dsh.communityWorldCup.entity.WorldCupStore; +import com.dsh.communityWorldCup.entity.*; import com.dsh.communityWorldCup.feignclient.account.AppUserClient; import com.dsh.communityWorldCup.feignclient.account.StudentClient; import com.dsh.communityWorldCup.feignclient.account.model.AppUser; @@ -18,10 +15,8 @@ import com.dsh.communityWorldCup.feignclient.other.model.Site; import com.dsh.communityWorldCup.feignclient.other.model.Store; import com.dsh.communityWorldCup.model.*; -import com.dsh.communityWorldCup.service.IWorldCupCompetitorService; -import com.dsh.communityWorldCup.service.IWorldCupPaymentParticipantService; -import com.dsh.communityWorldCup.service.IWorldCupService; -import com.dsh.communityWorldCup.service.IWorldCupStoreService; +import com.dsh.communityWorldCup.service.*; +import com.dsh.communityWorldCup.util.GDMapGeocodingUtil; import com.dsh.communityWorldCup.util.PayMoneyUtil; import com.dsh.communityWorldCup.util.ResultUtil; import com.dsh.communityWorldCup.util.TokenUtil; @@ -37,6 +32,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.io.PrintWriter; import java.text.SimpleDateFormat; import java.util.*; @@ -88,6 +84,12 @@ @Autowired private IWorldCupCompetitorService worldCupCompetitorService; + + @Autowired + private GDMapGeocodingUtil gdMapGeocodingUtil; + + @Autowired + private IWorldCupPaymentService worldCupPaymentService; @@ -184,7 +186,7 @@ @ApiImplicitParam(name = "code", value = "扫码结果", required = true, dataType = "String"), @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) - public ResultUtil<Map<String, String>> getDeviceInformation(@RequestBody String code){ + public ResultUtil<Map<String, String>> getDeviceInformation(String code){ /** * { * "scan_type": 0, // 扫码类型:1000:游戏,1001:课程,1002:场地 @@ -268,7 +270,7 @@ @ApiImplicitParam(name = "lat", value = "纬度", required = true, dataType = "string"), @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) - public ResultUtil<WorldCupInfo> getWorldCupInfo(@RequestBody Integer id, @RequestBody String lon, @RequestBody String lat){ + public ResultUtil<WorldCupInfo> getWorldCupInfo(Integer id,String lon, String lat){ WorldCupInfo worldCupInfo = worldCupService.getWorldCupInfo(id, lon, lat); return ResultUtil.success(worldCupInfo); } @@ -402,8 +404,18 @@ @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil<EntrantRankVo> getEntrantRank(EntrantRank entrantRank){ - EntrantRankVo entrantRank1 = worldCupCompetitorService.getEntrantRank(entrantRank); - return ResultUtil.success(entrantRank1); + try { + Integer uid = tokenUtil.getUserIdFormRedis(); + if(null == uid){ + return ResultUtil.success(); + } + entrantRank.setAppUserId(uid); + EntrantRankVo entrantRank1 = worldCupCompetitorService.getEntrantRank(entrantRank); + return ResultUtil.success(entrantRank1); + }catch (Exception e){ + e.printStackTrace(); + return ResultUtil.runErr(); + } } @@ -449,10 +461,12 @@ @ApiOperation(value = "获取已报名世界杯详情【2.0】", tags = {"APP-个人中心"}) @ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "列表中的id", required = true, dataType = "String"), + @ApiImplicitParam(name = "lon", value = "经度", required = true, dataType = "string"), + @ApiImplicitParam(name = "lat", value = "纬度", required = true, dataType = "string"), @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) - public ResultUtil<MyWorldCupInfo> getMyWorldCupInfo(String id){ - MyWorldCupInfo myWorldCupInfo = worldCupPaymentParticipantService.getMyWorldCupInfo(id); + public ResultUtil<MyWorldCupInfo> getMyWorldCupInfo(String id, String lon, String lat){ + MyWorldCupInfo myWorldCupInfo = worldCupPaymentParticipantService.getMyWorldCupInfo(id, lon, lat); return ResultUtil.success(myWorldCupInfo); } @@ -509,7 +523,6 @@ .eq("participantId", studentId).eq("participantType", 1).eq("matchResult", 1)); } - /** * 获取比赛管理列表数据 * @param worldCupListAll @@ -520,4 +533,174 @@ public Map<String, Object> getWorldCupListAll(@RequestBody WorldCupListAll worldCupListAll){ return worldCupService.getWorldCupListAll(worldCupListAll); } + + + + /** + * 添加社区世界杯 + * @param worldCup + * @return + */ + @ResponseBody + @PostMapping("/worldCup/addWorldCup") + public Integer addWorldCup(@RequestBody WorldCup worldCup){ + String lon = worldCup.getLon(); + String lat = worldCup.getLat(); + Map<String, String> geocode = null; + try { + geocode = gdMapGeocodingUtil.geocode(lon, lat); + } catch (Exception e) { + throw new RuntimeException(e); + } + String province = geocode.get("province"); + String provinceCode = geocode.get("provinceCode"); + String city = geocode.get("city"); + String cityCode = geocode.get("cityCode"); + worldCup.setProvince(province.replace("省", "")); + worldCup.setProvinceCode(provinceCode); + worldCup.setCity(city.replace("市", "")); + worldCup.setCityCode(cityCode); + worldCupService.save(worldCup); + return worldCup.getId(); + } + + + /** + * 添加社区世界杯和门店关系数据 + * @param worldCupStore + */ + @ResponseBody + @PostMapping("/worldCup/addWorldCupStore") + public void addWorldCupStore(@RequestBody WorldCupStore worldCupStore){ + worldCupStoreService.save(worldCupStore); + } + + + + /** + * 编辑社区世界杯 + * @param worldCup + * @return + */ + @ResponseBody + @PostMapping("/worldCup/editWorldCup") + public Integer editWorldCup(@RequestBody WorldCup worldCup){ + String lon = worldCup.getLon(); + String lat = worldCup.getLat(); + Map<String, String> geocode = null; + try { + geocode = gdMapGeocodingUtil.geocode(lon, lat); + } catch (Exception e) { + throw new RuntimeException(e); + } + String province = geocode.get("province"); + String provinceCode = geocode.get("provinceCode"); + String city = geocode.get("city"); + String cityCode = geocode.get("cityCode"); + worldCup.setProvince(province.replace("省", "")); + worldCup.setProvinceCode(provinceCode); + worldCup.setCity(city.replace("市", "")); + worldCup.setCityCode(cityCode); + worldCupService.updateById(worldCup); + return worldCup.getId(); + } + + + /** + * 删除世界杯门店关系数据 + * @param worldCupId + */ + @ResponseBody + @PostMapping("/worldCup/delWorldCupStore") + public void delWorldCupStore(@RequestBody Integer worldCupId){ + worldCupStoreService.remove(new QueryWrapper<WorldCupStore>().eq("worldCupId", worldCupId)); + } + + + /** + * 根据id获取世界杯赛事数据 + * @param id + * @return + */ + @ResponseBody + @PostMapping("/worldCup/getWorldCupById") + public WorldCup getWorldCupById(@RequestBody Integer id){ + return worldCupService.getById(id); + } + + + /** + * 根据世界杯id获取门店关系数据 + * @param worldCupId + * @return + */ + @ResponseBody + @PostMapping("/worldCup/getWorldCupStoreAllList") + public List<WorldCupStore> getWorldCupStoreAllList(@RequestBody Integer worldCupId){ + return worldCupStoreService.list(new QueryWrapper<WorldCupStore>().eq("worldCupId", worldCupId)); + } + + + /** + * 取消赛事退款操作 + * @param id + */ + @ResponseBody + @PostMapping("/worldCup/cancelWorldCupRefund") + public void cancelWorldCupRefund(@RequestBody Integer id){ + worldCupService.cancelWorldCupRefund(id); + } + + + /** + * 游戏结束后的通知回调 + */ + @ResponseBody + @PostMapping("/base/worldCup/endWorldCupCallback") + public void endWorldCupCallback(String custom, Integer red_score, Integer blue){ + worldCupCompetitorService.endWorldCupCallback(custom, red_score, blue); + } + + + /** + * 取消赛事后微信退款回调 + * @param request + * @param response + */ + @ResponseBody + @PostMapping("/base/worldCup/wxRefundWorldCupCallback") + public void wxRefundWorldCupCallback(HttpServletRequest request, HttpServletResponse response){ + Map<String, String> map = payMoneyUtil.wxRefundCallback(request); + if(null != map){ + String refund_id = map.get("refund_id"); + String out_refund_no = map.get("out_refund_no"); + String result = map.get("result"); + WorldCupPayment worldCupPayment = worldCupPaymentService.getOne(new QueryWrapper<WorldCupPayment>().eq("code", out_refund_no)); + worldCupPayment.setRefundOrderNo(refund_id); + worldCupPayment.setRefundTime(new Date()); + worldCupPayment.setPayStatus(3); + worldCupPaymentService.updateById(worldCupPayment); + PrintWriter out = null; + try { + out = response.getWriter(); + } catch (IOException e) { + throw new RuntimeException(e); + } + out.println(result); + out.flush(); + out.close(); + } + } + + + /** + * 获取已报名人员列表 + * @param registeredPersonnel + * @return + */ + @ResponseBody + @PostMapping("/worldCup/getRegisteredPersonnel") + public Map<String, Object> getRegisteredPersonnel(@RequestBody RegisteredPersonnel registeredPersonnel){ + return worldCupPaymentParticipantService.getRegisteredPersonnel(registeredPersonnel); + } } -- Gitblit v1.7.1