puzhibing
2024-03-08 a550e674f03c486e9d7f13e3eaf7fe76acea9ffc
cloud-server-communityWorldCup/src/main/java/com/dsh/communityWorldCup/service/impl/WorldCupServiceImpl.java
@@ -198,10 +198,6 @@
     */
    @Override
    public List<WorldCupListVo> getWorldCupList(WorldCupList worldCupList) {
        //没有筛选门店,默认使用当前门店
        if(null == worldCupList.getStoreId()){
            worldCupList.setStoreId(worldCupList.getStoreId());
        }
        List<WorldCupListVo> worldCupList1 = this.baseMapper.getWorldCupList(worldCupList);
        for (WorldCupListVo worldCupListVo : worldCupList1) {
            Integer id = Integer.valueOf(worldCupListVo.getId());
@@ -269,6 +265,14 @@
            int count = worldCupPaymentParticipantService.count(new QueryWrapper<WorldCupPaymentParticipant>().in("worldCupPaymentId", collect));
            heat += count;
        }
        String infoImg = worldCupInfo.getInfoImg();
        JSONArray jsonArray1 = JSON.parseArray(infoImg);
        String imgs = "";
        for (int i = 0; i < jsonArray1.size(); i++) {
            String url = jsonArray1.getJSONObject(i).getString("url");
            imgs += url + ",";
        }
        worldCupInfo.setInfoImg(imgs.substring(0,imgs.length() - 1));
        worldCupInfo.setHeat(heat);
        ArrayList<Map<String, Object>> objects = new ArrayList<>();
        for (WorldCupStore worldCupStore : worldCupStores) {
@@ -677,6 +681,13 @@
                    .eq("worldCupPaymentId", worldCupPaymentId).eq("alreadyEntered", 0));
            WorldCupPayment worldCupPayment = worldCupPaymentService.getById(worldCupPaymentId);
            BigDecimal multiply = worldCupPayment.getUnitPrice().multiply(new BigDecimal(list1.size()));
            //免费
            if(worldCupPayment.getPayType() == 0){
                worldCupPayment.setRefundOrderNo("");
                worldCupPayment.setRefundTime(new Date());
                worldCupPayment.setPayStatus(3);
                worldCupPaymentService.updateById(worldCupPayment);
            }
            //微信支付
            if(worldCupPayment.getPayType() == 1){
                Map<String, String> map = payMoneyUtil.wxRefund(worldCupPayment.getPayOrderNo(), worldCupPayment.getCode(),
@@ -749,4 +760,35 @@
            this.updateBatchById(worldCups);
        }
    }
    /**
     * 获取比赛统计列表数据
     * @param worldCupGameStatistics
     * @return
     */
    @Override
    public Map<String, Object> worldCupGameStatistics(WorldCupGameStatistics worldCupGameStatistics) {
        Map<String, Object> map = new HashMap<>();
        List<Map<String, Object>> mapList = this.baseMapper.worldCupGameStatistics(worldCupGameStatistics);
        for (Map<String, Object> stringObjectMap : mapList) {
            Integer id = Integer.valueOf(stringObjectMap.get("id").toString());
            int count = worldCupCompetitorService.count(new QueryWrapper<WorldCupCompetitor>().eq("worldCupId", id));
            stringObjectMap.put("matchTime", count);
            List<WorldCupPayment> list = worldCupPaymentService.list(new QueryWrapper<WorldCupPayment>().eq("worldCupId", id)
                    .eq("payStatus", 2).eq("state", 1));
            List<Long> collect = list.stream().map(WorldCupPayment::getId).collect(Collectors.toList());
            if(collect.size() == 0){
                stringObjectMap.put("applicants", 0);
            }else{
                int count1 = worldCupPaymentParticipantService.getCount(id, collect);
                stringObjectMap.put("applicants", count1);
            }
        }
        map.put("rows", mapList);
        int count = this.baseMapper.worldCupGameStatisticsCount(worldCupGameStatistics);
        map.put("total", count);
        return map;
    }
}