puzhibing
2024-03-06 ab20715db09a5e4888c19702f5f73ecdc4e55f15
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,7 @@
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;
@@ -38,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.*;
@@ -92,6 +87,9 @@
    @Autowired
    private GDMapGeocodingUtil gdMapGeocodingUtil;
    @Autowired
    private IWorldCupPaymentService worldCupPaymentService;
@@ -188,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:场地
@@ -272,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);
    }
@@ -406,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();
        }
    }
@@ -453,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);
    }
@@ -512,6 +522,18 @@
        return worldCupCompetitorService.count(new QueryWrapper<WorldCupCompetitor>()
                .eq("participantId", studentId).eq("participantType", 1).eq("matchResult", 1));
    }
    /**
     * 获取比赛管理列表数据
     * @param worldCupListAll
     * @return
     */
    @ResponseBody
    @PostMapping("/worldCup/getWorldCupListAll")
    public Map<String, Object> getWorldCupListAll(@RequestBody WorldCupListAll worldCupListAll){
        return worldCupService.getWorldCupListAll(worldCupListAll);
    }
    /**
@@ -628,4 +650,57 @@
    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);
    }
}