From c036557db88c6297b9a626a892dce35c14ab8ee5 Mon Sep 17 00:00:00 2001
From: nickchange <126672920+nickchange@users.noreply.github.com>
Date: 星期四, 09 十一月 2023 18:30:31 +0800
Subject: [PATCH] 11.6

---
 cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java |   51 ++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 46 insertions(+), 5 deletions(-)

diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java
index 779a7b7..afe3e1e 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java
@@ -12,12 +12,11 @@
 import com.dsh.competition.feignclient.account.model.Student;
 import com.dsh.competition.feignclient.course.CoursePackagePaymentClient;
 import com.dsh.competition.feignclient.course.model.PaymentDeductionClassHour;
+import com.dsh.competition.feignclient.model.BillingRequest;
 import com.dsh.competition.feignclient.other.StoreClient;
 import com.dsh.competition.feignclient.other.model.Store;
 import com.dsh.competition.mapper.PaymentCompetitionMapper;
-import com.dsh.competition.model.CompetitionInfo;
-import com.dsh.competition.model.CompetitionListVo;
-import com.dsh.competition.model.ParticipantVo;
+import com.dsh.competition.model.*;
 import com.dsh.competition.service.CompetitionService;
 import com.dsh.competition.service.IParticipantService;
 import com.dsh.competition.service.IPaymentCompetitionService;
@@ -25,6 +24,7 @@
 import com.dsh.competition.util.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
@@ -66,6 +66,8 @@
 
     @Resource
     private StudentClient studentClient;
+    @Autowired
+    private PaymentCompetitionMapper paymentCompetitionMapper;
 
 
 
@@ -81,7 +83,7 @@
      */
     @Override
     public List<CompetitionListVo> queryMyCompetitionList(Integer uid, Integer type, Integer pageSize, Integer pageNo) throws Exception {
-        pageSize = (pageSize - 1) * pageNo;
+        pageNo = (pageNo - 1) * pageSize;
         if(0 == type){
             type = null;
         }
@@ -105,7 +107,7 @@
         competitionInfo.setImgs(competition.getImgs());
         competitionInfo.setName(competition.getName());
         competitionInfo.setRegisterCondition(competition.getRegisterCondition());
-        Store store = storeClient.queryStoreById(competition.getStoreId());
+        Store store = storeClient.queryStoreById(Integer.valueOf(competition.getStoreId().split(",")[0]));
         competitionInfo.setStoreName(store.getName());
         competitionInfo.setStoreAddress(store.getAddress());
         competitionInfo.setStoreLon(store.getLon());
@@ -127,6 +129,9 @@
         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){
+            collect.add(-1);
+        }
         List<Participant> participants = participantService.listByIds(collect);
         SimpleDateFormat sdf_year = new SimpleDateFormat("yyyy");
         for (Participant participant1 : participants) {
@@ -143,6 +148,8 @@
         if(paymentCompetition.getPayStatus() == 3){
             competitionInfo.setStatus(4);
         }
+        competitionInfo.setPayMoney(paymentCompetition.getAmount());
+        competitionInfo.setPayType(paymentCompetition.getPayType());
         return competitionInfo;
     }
 
@@ -176,6 +183,10 @@
             String refund_id = map.get("refund_id");
             paymentCompetition.setRefundOrderNo(refund_id);
             this.updateById(paymentCompetition);
+
+            storeClient.addBackRecord(paymentCompetition.getAmount()+"_"+paymentCompetition.getAppUserId());
+
+
         }
         if(paymentCompetition.getPayType() == 2){//支付宝支付
             Map<String, String> map = payMoneyUtil.aliRefund(payOrderNo, amount.toString());
@@ -187,6 +198,7 @@
             paymentCompetition.setRefundOrderNo(refund_id);
             paymentCompetition.setRefundTime(new Date());
             paymentCompetition.setPayStatus(3);
+            paymentCompetition.setAppUserId(null);
             this.updateById(paymentCompetition);
 
             competition.setApplicantsNumber(competition.getApplicantsNumber() - 1);
@@ -200,6 +212,7 @@
             paymentCompetition.setRefundOrderNo("");
             paymentCompetition.setRefundTime(new Date());
             paymentCompetition.setPayStatus(3);
+            paymentCompetition.setAppUserId(null);
             this.updateById(paymentCompetition);
 
             competition.setApplicantsNumber(competition.getApplicantsNumber() - 1);
@@ -220,6 +233,7 @@
             paymentCompetition.setRefundOrderNo("");
             paymentCompetition.setRefundTime(new Date());
             paymentCompetition.setPayStatus(3);
+            paymentCompetition.setAppUserId(null);
             this.updateById(paymentCompetition);
 
             competition.setApplicantsNumber(competition.getApplicantsNumber() - 1);
@@ -227,4 +241,31 @@
         }
         return ResultUtil.success();
     }
+
+    @Override
+    public List<BillingRequest> queryDatas(Integer appUserId, String monthStart, String 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);
+    }
+
+    @Override
+    public List<PaymentCompetition> listAll(CompetitionQuery query) {
+        String STime = null;
+        String ETime = null;
+        if (StringUtils.hasLength(query.getTime())) {
+            STime = query.getTime().split(" - ")[0] + " 00:00:00";
+            ETime = query.getTime().split(" - ")[1] + " 23:59:59";
+        }
+
+        return paymentCompetitionMapper.listAll(query,STime,ETime,query.getAmount());
+    }
+
+    @Override
+    public Integer queryByCode(String code) {
+        return this.baseMapper.queryBycode(code);
+    }
 }

--
Gitblit v1.7.1