| | |
| | | private PaymentCompetitionMapper paymentCompetitionMapper; |
| | | |
| | | |
| | | |
| | | @Resource |
| | | private CompetitionMapper competitionMapper; |
| | | |
| | | /** |
| | | * 获取我的报名赛事记录 |
| | | * |
| | | * @param uid |
| | | * @param type |
| | | * @param pageSize |
| | |
| | | @Override |
| | | public List<CompetitionListVo> queryMyCompetitionList(Integer uid, Integer type, Integer pageSize, Integer pageNo) throws Exception { |
| | | pageNo = (pageNo - 1) * pageSize; |
| | | if(0 == type){ |
| | | if (0 == type) { |
| | | type = null; |
| | | } |
| | | List<CompetitionListVo> competitionListVos = this.baseMapper.queryMyCompetitionList(uid, type, pageSize, pageNo); |
| | | for (CompetitionListVo competitionListVo : competitionListVos) { |
| | | Integer counts = competitionMapper.counts(competitionListVo.getPId()); |
| | | competitionListVo.setHeat(competitionListVo.getHeat()+counts); |
| | | Integer counts = competitionMapper.counts(competitionListVo.getPId()); |
| | | competitionListVo.setHeat(competitionListVo.getHeat() + counts); |
| | | } |
| | | return competitionListVos; |
| | | } |
| | |
| | | |
| | | /** |
| | | * 获取我报名的赛事详情 |
| | | * |
| | | * @param id |
| | | * @return |
| | | * @throws Exception |
| | |
| | | competitionInfo.setIntroduction(competition.getIntroduction()); |
| | | competitionInfo.setRegistrationNotes(competition.getRegistrationNotes()); |
| | | competitionInfo.setApply(1); |
| | | ArrayList<Map<String,Object>> objects = new ArrayList<>(); |
| | | ArrayList<Map<String, Object>> objects = new ArrayList<>(); |
| | | |
| | | if(null != competition.getStoreId()){ |
| | | if (null != competition.getStoreId()) { |
| | | String storeId = competition.getStoreId(); |
| | | for (String s : storeId.split(",")) { |
| | | HashMap<String, Object> map = new HashMap<>(); |
| | | Store store1 = storeClient.queryStoreById(Integer.valueOf(s)); |
| | | map.put("name",store1.getName()); |
| | | map.put("name", store1.getName()); |
| | | |
| | | |
| | | String str1 = store1.getAddress(); |
| | |
| | | // 去掉第一个“区”及之前的字符串 |
| | | str1 = str1.substring(str1.indexOf("区") + 1); |
| | | |
| | | map.put("address",str1); |
| | | map.put("storeLon",store.getLon()); |
| | | map.put("storeLat",store.getLat()); |
| | | map.put("storeCoverDrawing",store.getCoverDrawing()); |
| | | map.put("address", str1); |
| | | map.put("storeLon", store.getLon()); |
| | | map.put("storeLat", store.getLat()); |
| | | map.put("storeCoverDrawing", store.getCoverDrawing()); |
| | | // if(ToolUtil.isNotEmpty(lon) && ToolUtil.isNotEmpty(lat)){ |
| | | // Map<String, Double> distance = GeodesyUtil.getDistance(lon + "," + lat, store.getLon() + "," + store.getLat()); |
| | | // double wgs84 = new BigDecimal(distance.get("WGS84")).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue(); |
| | |
| | | competitionInfo.setStoreInfos(objects); |
| | | |
| | | |
| | | |
| | | List<ParticipantVo> participant = new ArrayList<>(); |
| | | List<UserCompetition> list = userCompetitionService.list(new QueryWrapper<UserCompetition>().eq("paymentCompetitionId", paymentCompetition.getId())); |
| | | List<Integer> collect = list.stream().map(UserCompetition::getParticipantId).collect(Collectors.toList()); |
| | | if(collect.size()==0){ |
| | | if (collect.size() == 0) { |
| | | collect.add(-1); |
| | | } |
| | | List<Participant> participants = participantService.listByIds(collect); |
| | |
| | | |
| | | for (Integer i : collect) { |
| | | TStudent tStudent = studentClient.queryById(i); |
| | | if (tStudent!=null) { |
| | | if (tStudent != null) { |
| | | ParticipantVo participantVo = new ParticipantVo(); |
| | | participantVo.setId(tStudent.getId()); |
| | | participantVo.setName(tStudent.getName()); |
| | |
| | | |
| | | competitionInfo.setParticipant(participant); |
| | | competitionInfo.setStatus(competition.getStatus()); |
| | | if(paymentCompetition.getPayStatus() == 3){ |
| | | if (paymentCompetition.getPayStatus() == 3) { |
| | | competitionInfo.setStatus(4); |
| | | } |
| | | competitionInfo.setPayMoney(paymentCompetition.getAmount()); |
| | |
| | | |
| | | /** |
| | | * 取消赛事报名 |
| | | * |
| | | * @param id |
| | | * @return |
| | | * @throws Exception |
| | |
| | | @Override |
| | | public ResultUtil cancelMyCompetition(Long id) throws Exception { |
| | | PaymentCompetition paymentCompetition = this.getById(id); |
| | | if(paymentCompetition.getPayStatus() == 3){ |
| | | if (paymentCompetition.getPayStatus() == 3) { |
| | | return ResultUtil.error("不能重复取消"); |
| | | } |
| | | String code = paymentCompetition.getCode(); |
| | | Double amount = paymentCompetition.getAmount(); |
| | | Competition competition = competitionService.getById(paymentCompetition.getCompetitionId()); |
| | | if(System.currentTimeMillis() >= competition.getRegisterEndTime().getTime()){ |
| | | if (System.currentTimeMillis() >= competition.getRegisterEndTime().getTime()) { |
| | | return ResultUtil.error("赛事已结束报名,无法取消"); |
| | | } |
| | | |
| | | String payOrderNo = paymentCompetition.getPayOrderNo(); |
| | | if(paymentCompetition.getPayType() == 1){//微信支付 |
| | | if (paymentCompetition.getPayType() == 1) {//微信支付 |
| | | Map<String, String> map = payMoneyUtil.wxRefund(payOrderNo, code, amount.toString(), amount.toString(), "/base/competition/weChatCancelPaymentCompetitionCallback"); |
| | | String return_code = map.get("return_code"); |
| | | if(!"SUCCESS".equals(return_code)){ |
| | | if (!"SUCCESS".equals(return_code)) { |
| | | return ResultUtil.error(map.get("return_msg")); |
| | | } |
| | | String refund_id = map.get("refund_id"); |
| | | paymentCompetition.setRefundOrderNo(refund_id); |
| | | this.updateById(paymentCompetition); |
| | | |
| | | storeClient.addBackRecord(paymentCompetition.getAmount()+"_"+paymentCompetition.getAppUserId()); |
| | | storeClient.addBackRecord(paymentCompetition.getAmount() + "_" + paymentCompetition.getAppUserId()); |
| | | |
| | | |
| | | } |
| | | if(paymentCompetition.getPayType() == 2){//支付宝支付 |
| | | if (paymentCompetition.getPayType() == 2) {//支付宝支付 |
| | | Map<String, String> map = payMoneyUtil.aliRefund(payOrderNo, amount.toString()); |
| | | String return_code = map.get("code"); |
| | | if(!"10000".equals(return_code)){ |
| | | if (!"10000".equals(return_code)) { |
| | | return ResultUtil.error(map.get("msg")); |
| | | } |
| | | String refund_id = map.get("trade_no"); |
| | |
| | | // competition.setApplicantsNumber(competition.getApplicantsNumber() - 1); |
| | | competitionService.updateById(competition); |
| | | } |
| | | if(paymentCompetition.getPayType() == 3){//玩湃币支付 |
| | | if (paymentCompetition.getPayType() == 3) {//玩湃币支付 |
| | | AppUser appUser = appUserClient.queryAppUser(paymentCompetition.getAppUserId()); |
| | | appUser.setPlayPaiCoins(appUser.getPlayPaiCoins() + amount.intValue()); |
| | | appUserClient.updateAppUser(appUser); |
| | |
| | | // competition.setApplicantsNumber(competition.getApplicantsNumber() - 1); |
| | | competitionService.updateById(competition); |
| | | } |
| | | if(paymentCompetition.getPayType() == 4){//课程支付 |
| | | if (paymentCompetition.getPayType() == 4) {//课程支付 |
| | | List<UserCompetition> list = userCompetitionService.list(new QueryWrapper<UserCompetition>().eq("paymentCompetitionId", paymentCompetition.getId())); |
| | | for (UserCompetition userCompetition : list) { |
| | | // Participant participant = participantService.getById(userCompetition.getId()); |
| | |
| | | |
| | | @Override |
| | | public List<BillingRequest> queryDatas(Integer appUserId, String monthStart, String monthEnd) { |
| | | return this.baseMapper.queryDatas(appUserId,monthStart,monthEnd); |
| | | return this.baseMapper.queryDatas(appUserId, monthStart, monthEnd); |
| | | } |
| | | |
| | | @Override |
| | | public List<BillingRequest> queryCancelDatas(Integer appUserId, String monthStart, String monthEnd) { |
| | | return this.baseMapper.queryCancelDatas(appUserId,monthStart,monthEnd); |
| | | return this.baseMapper.queryCancelDatas(appUserId, monthStart, monthEnd); |
| | | } |
| | | |
| | | @Override |
| | |
| | | ETime = query.getTime().split(" - ")[1] + " 23:59:59"; |
| | | } |
| | | |
| | | return paymentCompetitionMapper.listAll(query,STime,ETime,query.getAmount()); |
| | | return paymentCompetitionMapper.listAll(query, STime, ETime, query.getAmount()); |
| | | } |
| | | |
| | | @Override |