From 0d998afc5dd5a41851e34d8b8b742e4934e6fd62 Mon Sep 17 00:00:00 2001
From: lisy <linlangsur163@163.com>
Date: 星期四, 03 八月 2023 18:04:21 +0800
Subject: [PATCH] 修复app端加入玩湃中课程列表数据字段bug;使用福利的课时详情的记录bug

---
 cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java            |    9 
 cloud-server-other/src/main/java/com/dsh/other/controller/StoredValueConfigController.java       |    1 
 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java  |    5 
 cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java     |    6 
 cloud-server-course/src/main/java/com/dsh/course/controller/CancelSourceController.java          |   26 ++--
 cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java  |   18 +-
 cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java  |    8 -
 cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java                   |   19 ++
 cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java   |    2 
 cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreInfo.java        |    2 
 cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java                  |    2 
 cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java         |  146 ++++++++++++++++--------
 cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java         |   42 ++++--
 cloud-server-account/src/main/java/com/dsh/account/controller/ExploreWPController.java           |    7 
 cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java |   36 +++--
 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java     |    2 
 16 files changed, 207 insertions(+), 124 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/ExploreWPController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/ExploreWPController.java
index a585588..07ccdea 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/ExploreWPController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/ExploreWPController.java
@@ -110,14 +110,15 @@
     @PostMapping("/base/exploreWP/storeList")
     @ApiOperation(value = "联系客服-门店列表", tags = {"APP-探索玩湃"})
     @ApiImplicitParams({
-            @ApiImplicitParam(value = "距离数值", name = "space", required = true, dataType = "int"),
+            @ApiImplicitParam(value = "1=升序/2=降序", name = "space", required = true, dataType = "int"),
             @ApiImplicitParam(value = "城市code", name = "space", required = true, dataType = "string"),
             @ApiImplicitParam(value = "纬度", name = "latitude", required = true, dataType = "string"),
             @ApiImplicitParam(value = "经度", name = "longitude", required = true, dataType = "string"),
+            @ApiImplicitParam(value = "搜索", name = "search", required = true, dataType = "string"),
     })
-    public ResultUtil<List<StoreDetailList>> getStoreListCon(Integer space,String cityCode,String latitude,String longitude){
+    public ResultUtil<List<StoreDetailList>> getStoreListCon(Integer space,String cityCode,String latitude,String longitude,String search){
         try {
-            return ResultUtil.success(tsService.queryStoreList(space,cityCode,latitude,longitude));
+            return ResultUtil.success(tsService.queryStoreList(space,cityCode,latitude,longitude,search));
         }catch (Exception e){
             return ResultUtil.runErr();
         }
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
index f04d1f3..5f79b5f 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
@@ -54,7 +54,7 @@
     public List<TCoursePackagePayment> getAmountPayRecord(@RequestBody BillingDataRequestVo appUserId);
 
     @PostMapping("/base/coursePack/obtainStudentClassDetails")
-    List<RecordAppoint> obtainStudentClassDetailsData(@RequestBody Integer stuId);
+    List<RecordAppoint> obtainStudentClassDetailsData(@RequestBody WeeksOfCourseRest stuId);
 
 
     @PostMapping("/base/coursePack/getCoursePackagePaymentOfCode")
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreInfo.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreInfo.java
index bb6a1d6..6a53dd5 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreInfo.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/StoreInfo.java
@@ -14,7 +14,7 @@
     private String storeImg;
 
     @ApiModelProperty(value = "门店距离当前位置")
-    private long distance;
+    private String distance;
 
     @ApiModelProperty(value = "门店名称")
     private String storeName;
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java b/cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java
index 545f219..00e583d 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/vo/sourceDetail/RecordTimeRequest.java
@@ -9,14 +9,8 @@
     @ApiModelProperty(value = "学员id", dataType = "int", required = true)
     private Integer stuId;
 
-    @ApiModelProperty(value = "课包id", dataType = "int")
-    private Integer lessonId;
-
-    @ApiModelProperty(value = "开始时间 格式:yyyy-MM", dataType = "string")
-    private String startTime;
-
     @ApiModelProperty(value = "结束时间 格式:yyyy-MM", dataType = "string")
-    private String endTime;
+    private String time;
 
     @ApiModelProperty(value = "类型:1增加 2扣减 ", dataType = "int")
     private Integer type;
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java b/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java
index fb00f51..dc245c9 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java
@@ -94,7 +94,7 @@
      * @param cityCode 城市code
      * @return
      */
-    List<StoreDetailList> queryStoreList(Integer space,String cityCode,String latitude,String longitude);
+    List<StoreDetailList> queryStoreList(Integer space,String cityCode,String latitude,String longitude,String search);
 
     StoreDetailsVo getStoreDetail(Integer storeId);
 
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
index 6c1440e..143f310 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
@@ -498,6 +498,8 @@
         TAppUser appUser = this.getById(appUserId);
         benefirVo.setUserHeadImg(appUser.getHeadImg());
         benefirVo.setUserName(appUser.getName());
+        benefirVo.setWpCoin(ToolUtil.isEmpty(appUser.getPlayPaiCoins()) ? 0 : appUser.getPlayPaiCoins());
+        benefirVo.setUserIntegral(ToolUtil.isEmpty(appUser.getIntegral()) ? 0 : appUser.getIntegral());
         if (appUser.getIsVip() == 1){
             benefirVo.setIsMember("年度会员");
         }else {
@@ -757,26 +759,34 @@
             }
         }
         if (StringUtils.hasText(request.getSearch())){
-            goods = goods.stream()
-                    .filter(merchandise -> merchandise.getGoodName().contains(request.getSearch()))
-                    .collect(Collectors.toList());
+            if (goods.size() > 0 ){
+                goods = goods.stream()
+                        .filter(merchandise -> merchandise.getGoodName().contains(request.getSearch()))
+                        .collect(Collectors.toList());
+            }
         }
         if (null != request.getRank()){
             switch (request.getRank()){
                 case 1:
-                    goods = goods.stream()
-                            .sorted(Comparator.comparing(Goods::getIntegral).reversed())
-                            .collect(Collectors.toList());
+                    if (goods.size() > 0 ){
+                        goods = goods.stream()
+                                .sorted(Comparator.comparing(Goods::getIntegral).reversed())
+                                .collect(Collectors.toList());
+                    }
                     break;
                 case 2:
-                    goods = goods.stream()
-                            .sorted(Comparator.comparing(Goods::getIntegral))
-                            .collect(Collectors.toList());
+                    if (goods.size() > 0 ){
+                        goods = goods.stream()
+                                .sorted(Comparator.comparing(Goods::getIntegral))
+                                .collect(Collectors.toList());
+                    }
                     break;
                 case 3:
-                    goods = goods.stream()
-                            .sorted(Comparator.comparing(Goods::getNums).reversed())
-                            .collect(Collectors.toList());
+                    if (goods.size() > 0 ){
+                        goods = goods.stream()
+                                .sorted(Comparator.comparing(Goods::getNums).reversed())
+                                .collect(Collectors.toList());
+                    }
                     break;
                 default:
                     break;
@@ -784,9 +794,11 @@
 
         }
         if (null != request.getGoodsType()){
-            goods = goods.stream()
-                    .filter(merchandise -> merchandise.getGoodsType().equals(request.getGoodsType()))
-                    .collect(Collectors.toList());
+            if (goods.size() > 0 ){
+                goods = goods.stream()
+                        .filter(merchandise -> merchandise.getGoodsType().equals(request.getGoodsType()))
+                        .collect(Collectors.toList());
+            }
         }
         Pageable pageable = PageRequest.of(request.getPageNum() - 1, request.getPageSize());
         Page<Goods> page = getPage(goods, pageable);
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
index 6f670d5..d492a5e 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
@@ -36,10 +36,12 @@
 import com.dsh.account.model.vo.sourceDetail.CouponStuAvailableVo;
 import com.dsh.account.model.vo.sourceDetail.CourseDetailsOfContinuationResp;
 import com.dsh.account.model.vo.sourceDetail.RecordTimeRequest;
+import com.dsh.account.model.vo.userBenefitDetail.Goods;
 import com.dsh.account.service.TStudentService;
 import com.dsh.account.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;
@@ -203,9 +205,9 @@
             getStuOfCoursesDetails.setStuId(stuId);
             getStuOfCoursesDetails.setAppUserId(userIdFormRedis);
             StuWithCoursesListVo stuOfCoursesDetails = couPayClient.getStuOfCoursesDetails(getStuOfCoursesDetails);
-            insVo.setTotalNums(stuOfCoursesDetails.getTotalNums());
-            insVo.setDeductedNums(stuOfCoursesDetails.getDeductedNums());
-            insVo.setRemainingNums(stuOfCoursesDetails.getRemainingNums());
+            insVo.setTotalNums(ToolUtil.isEmpty(stuOfCoursesDetails.getTotalNums()) ? 0 : stuOfCoursesDetails.getTotalNums());
+            insVo.setDeductedNums(ToolUtil.isEmpty(stuOfCoursesDetails.getDeductedNums()) ? 0 : stuOfCoursesDetails.getDeductedNums());
+            insVo.setRemainingNums(ToolUtil.isEmpty(stuOfCoursesDetails.getRemainingNums()) ? 0 : stuOfCoursesDetails.getRemainingNums());
             GetStudentCourse course = new GetStudentCourse();
             course.setCourseId(lessonId);
             course.setStuId(stuId);
@@ -220,9 +222,20 @@
     @Override
     public List<PurchaseRecordVo> queryDeduRecordDetails(RecordTimeRequest timeRequest,Integer appUserId) {
         List<PurchaseRecordVo> purchaseRecordVoList = new ArrayList<>();
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-        Date startTime = DateTimeHelper.getCurrentIdetMouthStart(timeRequest.getStartTime());
-        Date endTime = DateTimeHelper.getCurrentIdeaMouthEnd(timeRequest.getEndTime());
+        String time = timeRequest.getTime();
+        Date monthStart = null;
+        Date monthEnd = null;
+        if (StringUtils.hasText(time)) {
+            monthStart = DateTimeHelper.getCurrentIdetMouthStart(time);
+            monthEnd = DateTimeHelper.getCurrentIdeaMouthEnd(time);
+        } else {
+            monthStart = DateTimeHelper.getCurrentMouthStart();
+            monthEnd = DateTimeHelper.getCurrentMouthEnd();
+        }
+
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM");
+        Date startTime = DateTimeHelper.getCurrentIdetMouthStart(simpleDateFormat.format(monthStart));
+        Date endTime = DateTimeHelper.getCurrentIdeaMouthEnd(simpleDateFormat.format(monthEnd));
         GetStuSourseList getStuSourseList = new GetStuSourseList();
         getStuSourseList.setStartTime(startTime);
         getStuSourseList.setEndTime(endTime);
@@ -595,65 +608,79 @@
         if (ToolUtil.isNotEmpty(tStudent)){
             recordVo.setStuId(tStudent.getId());
             recordVo.setStuName(tStudent.getName());
-            List<RecordAppoint> recordAppoints = couPayClient.obtainStudentClassDetailsData(stuId);
+            WeeksOfCourseRest courseRest = new WeeksOfCourseRest();
+            courseRest.setAppUserId(appUserId);
+            courseRest.setStuId(stuId);
+            List<RecordAppoint> recordAppoints = couPayClient.obtainStudentClassDetailsData(courseRest);
             if (ToolUtil.isEmpty(appointStatus)){
                 recordVo.setAppointStatus(0);
             }else {
                 recordVo.setAppointStatus(appointStatus);
-                recordAppoints = recordAppoints.stream()
-                        .filter(record -> record.getStatus().equals(appointStatus))
-                        .collect(Collectors.toList());
+                if (recordAppoints.size() > 0 ){
+                    recordAppoints = recordAppoints.stream()
+                            .filter(record -> record.getStatus().equals(appointStatus))
+                            .collect(Collectors.toList());
+                }
             }
             if (ToolUtil.isNotEmpty(search)){
                 recordVo.setAppointStatus(appointStatus);
-                recordAppoints = recordAppoints.stream()
-                        .filter(record -> record.getCoursePackageName().contains(search))
-                        .collect(Collectors.toList());
+                if (recordAppoints.size() > 0 ){
+                    recordAppoints = recordAppoints.stream()
+                            .filter(record -> record.getCoursePackageName().contains(search))
+                            .collect(Collectors.toList());
+                }
             }
             if (ToolUtil.isNotEmpty(timeType)){
                 Date lastOfDate = DateUtil.getLastOfDate();
                 switch (timeType){
                     case 1:
                         Date lastWeekStartDate = DateUtil.getLastWeekStartDate();
-                        recordAppoints = recordAppoints.stream()
-                                .filter(record -> {
-                                    try {
-                                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
-                                        Date time = sdf.parse(record.getTimeFrame().substring(11));
-                                        return !time.before(lastWeekStartDate) && !time.after(lastOfDate);
-                                    } catch (ParseException e) {
-                                        return false;
-                                    }
-                                })
-                                .collect(Collectors.toList());
+                        if (recordAppoints.size() > 0 ){
+                            recordAppoints = recordAppoints.stream()
+                                    .filter(record -> {
+                                        try {
+                                            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+                                            Date time = sdf.parse(record.getTimeFrame().substring(11));
+                                            return !time.before(lastWeekStartDate) && !time.after(lastOfDate);
+                                        } catch (ParseException e) {
+                                            return false;
+                                        }
+                                    })
+                                    .collect(Collectors.toList());
+                        }
                         break;
                     case 2:
                         Date lastMonthStartDate = DateUtil.getLastMonthStartDate();
-                        recordAppoints = recordAppoints.stream()
-                                .filter(record -> {
-                                    try {
-                                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-                                        Date time = sdf.parse(record.getTimeFrame().substring(11));
-                                        return !time.before(lastMonthStartDate) && !time.after(lastOfDate);
-                                    } catch (ParseException e) {
-                                        return false;
-                                    }
-                                })
-                                .collect(Collectors.toList());
+                        if (recordAppoints.size() > 0 ){
+                            recordAppoints = recordAppoints.stream()
+                                    .filter(record -> {
+                                        try {
+                                            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+                                            Date time = sdf.parse(record.getTimeFrame().substring(11));
+                                            return !time.before(lastMonthStartDate) && !time.after(lastOfDate);
+                                        } catch (ParseException e) {
+                                            return false;
+                                        }
+                                    })
+                                    .collect(Collectors.toList());
+                        }
                         break;
                     case 3:
                         Date lastYearStartDate = DateUtil.getLastYearStartDate();
-                        recordAppoints = recordAppoints.stream()
-                                .filter(record -> {
-                                    try {
-                                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
-                                        Date time = sdf.parse(record.getTimeFrame().substring(11));
-                                        return !time.before(lastYearStartDate) && !time.after(lastOfDate);
-                                    } catch (ParseException e) {
-                                        return false;
-                                    }
-                                })
-                                .collect(Collectors.toList());
+                        if (recordAppoints.size() > 0 ){
+                            recordAppoints = recordAppoints.stream()
+                                    .filter(record -> {
+                                        try {
+                                            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+                                            Date time = sdf.parse(record.getTimeFrame().substring(11));
+                                            return !time.before(lastYearStartDate) && !time.after(lastOfDate);
+                                        } catch (ParseException e) {
+                                            return false;
+                                        }
+                                    })
+                                    .collect(Collectors.toList());
+                        }
+
                         break;
                     default:
                         break;
@@ -682,14 +709,35 @@
         return null;
     }
 
+    /**
+     *
+     * @param space 1=升序/2=降序
+     * @param cityCode 城市code
+     * @param latitude
+     * @param longitude
+     * @return
+     */
     @Override
-    public List<StoreDetailList> queryStoreList(Integer space,String cityCode,String latitude,String longitude) {
+    public List<StoreDetailList> queryStoreList(Integer space,String cityCode,String latitude,String longitude,String search) {
         StoreOfCitycodeResp citycodeResp = new StoreOfCitycodeResp();
-        citycodeResp.setSpace(space);
         citycodeResp.setCityCode(cityCode);
         citycodeResp.setLongitude(latitude);
         citycodeResp.setLatitude(longitude);
-        return storeClient.getQueryStoreList(citycodeResp);
+        List<StoreDetailList> queryStoreList = storeClient.getQueryStoreList(citycodeResp);
+        if (queryStoreList.size() > 0){
+            if (ToolUtil.isEmpty(space) || space == 2){
+                queryStoreList = queryStoreList.stream()
+                        .sorted(Comparator.comparing(StoreDetailList::getStoreDistance).reversed())
+                        .collect(Collectors.toList());
+            }else {
+                queryStoreList =  queryStoreList.stream().sorted(Comparator.comparing(o -> o.getStoreDistance())).collect(Collectors.toList());
+            }
+            if (ToolUtil.isNotEmpty(search)){
+                queryStoreList =  queryStoreList.stream().filter(o -> o.getStoreName().contains(search)).collect(Collectors.toList());
+            }
+
+        }
+        return queryStoreList;
     }
 
     @Override
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
index 1681d5b..c0c704b 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/CouponController.java
@@ -147,8 +147,12 @@
 
     @PostMapping("/base/coupon/getAllCoupons")
     public List<Coupon> getAllCoupons(@RequestBody CommodityRequest request){
+        List<Coupon> couponList = new ArrayList<>();
         String provinceCode = "";
         String cityCode = "";
+        if (ToolUtil.isEmpty(request.getLat()) && ToolUtil.isEmpty(request.getLon())){
+            return couponList;
+        }
         try {
             Map<String, String> geocode = gdMapGeocodingUtil.geocode(request.getLon(), request.getLat());
             provinceCode = geocode.get("provinceCode");
@@ -157,10 +161,7 @@
             e.printStackTrace();
         }
         try {
-            Integer userAppId = tokenUtil.getUserIdFormRedis();
-            List<UserCoupon> list = ucService.list(new QueryWrapper<UserCoupon>()
-                    .eq("userId",userAppId ));
-            List<Coupon> couponList = couponService.list(new QueryWrapper<Coupon>()
+            couponList = couponService.list(new QueryWrapper<Coupon>()
                     .eq("auditStatus",2)
                     .eq("state",1)
                     .eq("status",2));
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java
index be27639..1c36d9b 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java
@@ -28,18 +28,20 @@
 
 
     @PostMapping("/base/introduce/useOfRewards")
-    public List<PurchaseRecordVo> queryAppUsersofIntroduce( IntrduceOfUserRequest request){
+    public List<PurchaseRecordVo> queryAppUsersofIntroduce(@RequestBody IntrduceOfUserRequest request){
         List<PurchaseRecordVo> recordVos = new ArrayList<>();
         List<IntroduceRewards> list = idrService.list(new QueryWrapper<IntroduceRewards>()
                 .ge("startTime",request.getStartTime())
                 .lt("endTime",request.getEndTime()));
-        IntroduceRewards introduceRewards = list.get(0);
-        request.getUserIds().forEach( userId -> {
-            PurchaseRecordVo recordVo = new PurchaseRecordVo();
-            recordVo.setPurchaseAmount("+"+introduceRewards.getGiveClass());
-            recordVo.setPurchaseType("介绍有礼");
-            recordVos.add(recordVo);
-        } );
+        if (request.getUserIds().size() > 0 && list.size() > 0){
+            IntroduceRewards introduceRewards = list.get(0);
+            request.getUserIds().forEach( userId -> {
+                PurchaseRecordVo recordVo = new PurchaseRecordVo();
+                recordVo.setPurchaseAmount("+"+introduceRewards.getGiveClass());
+                recordVo.setPurchaseType("介绍有礼");
+                recordVos.add(recordVo);
+            } );
+        }
         return recordVos;
     }
 
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
index b0d9bb4..cb9957e 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
@@ -92,8 +92,12 @@
 
     @PostMapping("/base/pointMerchars/getCommoditys")
     public List<PointsMerchandise> getVicinityGoods(@RequestBody CommodityRequest request){
+        List<PointsMerchandise> list =  new ArrayList<>();
         String provinceCode = "";
         String cityCode = "";
+        if (ToolUtil.isEmpty(request.getLon()) && ToolUtil.isEmpty(request.getLat())){
+            return list;
+        }
         try {
             Map<String, String> geocode = gdMapGeocodingUtil.geocode(request.getLon(), request.getLat());
             provinceCode = geocode.get("provinceCode");
@@ -102,7 +106,7 @@
             e.printStackTrace();
         }
 
-        List<PointsMerchandise> list = pmdsService.list(new QueryWrapper<PointsMerchandise>()
+        list = pmdsService.list(new QueryWrapper<PointsMerchandise>()
                 .eq("state", 1));
         if (list.size() > 0 ){
             Iterator<PointsMerchandise> iterator = list.iterator();
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java b/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
index 8299329..2e5b63f 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
@@ -98,8 +98,11 @@
 
     @PostMapping("/base/competition/getPlayPaiFGoldPayRecord")
     public List<PaymentCompetition> getPlayPaiFGoldPayRecord(@RequestBody Integer appUserId){
+        ArrayList<Integer> integers = new ArrayList<>();
+        integers.add(1);
+        integers.add(2);
         return paymentCompetitionService.list(new QueryWrapper<PaymentCompetition>()
-                .eq("payType",3)
+                .in("payType",integers)
                 .eq("appUserId",appUserId)
                 .eq("payStatus",3));
     }
@@ -118,21 +121,24 @@
                 .in("payType",integers )
                 .eq("appUserId", sourseList.getAppUserId())
                 .eq("state",1));
-        List<Long> comIds = list.stream().map(PaymentCompetition::getId).collect(Collectors.toList());
-        List<UserCompetition> userCompetitions = ucttService.list(new QueryWrapper<UserCompetition>()
-                .between("insertTime", sourseList.getStartTime(),sourseList.getEndTime() )
-                .eq("appUserId", sourseList.getAppUserId())
-                .in("paymentCompetitionId",comIds ));
-        if (userCompetitions.size() > 0){
-            userCompetitions.forEach(coms ->{
-                PurchaseRecordVo recordVo = new PurchaseRecordVo();
-                recordVo.setPurchaseType("报名赛事");
-                recordVo.setPurchaseTime(dateFormat.format(coms.getInsertTime()));
-                PaymentCompetition paymentCompetition = paymentCompetitionService.getById(coms.getPaymentCompetitionId());
-                recordVo.setPurchaseAmount("-"+paymentCompetition.getAmount());
-                recordVos.add(recordVo);
-            });
+        if (list.size() > 0){
+            List<Long> comIds = list.stream().map(PaymentCompetition::getId).collect(Collectors.toList());
+            List<UserCompetition> userCompetitions = ucttService.list(new QueryWrapper<UserCompetition>()
+                    .between("insertTime", sourseList.getStartTime(),sourseList.getEndTime() )
+                    .eq("appUserId", sourseList.getAppUserId())
+                    .in("paymentCompetitionId",comIds ));
+            if (userCompetitions.size() > 0){
+                userCompetitions.forEach(coms ->{
+                    PurchaseRecordVo recordVo = new PurchaseRecordVo();
+                    recordVo.setPurchaseType("报名赛事");
+                    recordVo.setPurchaseTime(dateFormat.format(coms.getInsertTime()));
+                    PaymentCompetition paymentCompetition = paymentCompetitionService.getById(coms.getPaymentCompetitionId());
+                    recordVo.setPurchaseAmount("-"+paymentCompetition.getAmount());
+                    recordVos.add(recordVo);
+                });
+            }
         }
+
         return recordVos;
     }
 
diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CancelSourceController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CancelSourceController.java
index e66f5f1..ae65256 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CancelSourceController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CancelSourceController.java
@@ -46,19 +46,21 @@
                 .between("insertTime", sessionList.getStartTime(),sessionList.getEndTime())
                 .eq("appUserId",sessionList.getAppUserId())
                 .eq("studentId",sessionList.getStuId()));
-        List<Long> coursePackageIds = tCoursePackagePayments.stream().map(TCoursePackagePayment::getId).collect(Collectors.toList());
+        if (tCoursePackagePayments.size() > 0){
+            List<Long> coursePackageIds = tCoursePackagePayments.stream().map(TCoursePackagePayment::getId).collect(Collectors.toList());
 
-        List<CancelledClasses> list = caceService.list(new QueryWrapper<CancelledClasses>()
-                .in("coursePackageId", coursePackageIds)
-                .between("insertTime",sessionList.getStartTime(),sessionList.getEndTime()));
-        if (list.size() > 0){
-            list.forEach( canse -> {
-                PurchaseRecordVo purchaseRecordVo = new PurchaseRecordVo();
-                purchaseRecordVo.setPurchaseTime(format.format(canse.getInsertTime()));
-                purchaseRecordVo.setPurchaseType("");
-                purchaseRecordVo.setPurchaseAmount("-"+canse.getCancelledClassesNumber());
-                purchaseRecordVos.add(purchaseRecordVo);
-            });
+            List<CancelledClasses> list = caceService.list(new QueryWrapper<CancelledClasses>()
+                    .in("coursePackageId", coursePackageIds)
+                    .between("insertTime",sessionList.getStartTime(),sessionList.getEndTime()));
+            if (list.size() > 0){
+                list.forEach( canse -> {
+                    PurchaseRecordVo purchaseRecordVo = new PurchaseRecordVo();
+                    purchaseRecordVo.setPurchaseTime(format.format(canse.getInsertTime()));
+                    purchaseRecordVo.setPurchaseType("");
+                    purchaseRecordVo.setPurchaseAmount("-"+canse.getCancelledClassesNumber());
+                    purchaseRecordVos.add(purchaseRecordVo);
+                });
+            }
         }
         return purchaseRecordVos;
     }
diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
index 5b8cfea..cc55897 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
@@ -763,10 +763,9 @@
 
 
     @PostMapping("/base/coursePack/obtainStudentClassDetails")
-    public List<RecordAppoint> obtainStudentClassDetailsData(@RequestBody Integer stuId){
+    public List<RecordAppoint> obtainStudentClassDetailsData(@RequestBody WeeksOfCourseRest stuId){
         try {
-            Integer appUserId = tokenUtil.getUserIdFormRedis();
-            return packagePaymentService.obtainStuClassDetails(stuId,appUserId);
+            return packagePaymentService.obtainStuClassDetails(stuId.getStuId(),stuId.getAppUserId());
         }catch (Exception e){
             e.printStackTrace();
             throw new RuntimeException();
diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
index 140a173..4fbff94 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
@@ -136,7 +136,7 @@
             coursePackageListVo.setClassStartTime(coursePackage.getClassStartTime() + "-" + coursePackage.getClassEndTime());
             coursePackageListVo.setApplicantsNumber(integer);
             coursePackageListVo.setPayType(coursePackage.getPayType());
-            coursePackageListVo.setPlayPaiCoin(coursePackageListVo.getPlayPaiCoin());
+            coursePackageListVo.setPlayPaiCoin(coursePackagePaymentConfig.getPlayPaiCoin());
 
             //会员显示原价和会员价(最低)。非会员显示会员价和支付价(最低)
             if(appUser.getIsVip() == 0){//非会员
diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java
index 73540c5..5290264 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/controller/StoreController.java
@@ -45,8 +45,11 @@
 
     @PostMapping("/base/protocol/storeDetail/nearbyStore")
     public List<StoreInfo> getAllNearbyStoreList(@RequestBody GetAllNearbyStoreList list ){
-        String current = list.getLongitude()+","+list.getLatitude();
         List<StoreInfo> storeInfos = new ArrayList<>();
+        if (ToolUtil.isEmpty(list.getLongitude()) && ToolUtil.isEmpty(list.getLatitude())){
+            return storeInfos;
+        }
+        String current = list.getLongitude()+","+list.getLatitude();
         String cityCode = "";
         try {
             Map<String, String> geocode = gdMapGeocodingUtil.geocode(list.getLongitude(), list.getLatitude());
@@ -63,11 +66,17 @@
                 String storeLat = store.getLat();
                 String result = storeLon+","+storeLat;
                 String distanceTOKilometer = gdMapGeocodingUtil.getDistanceTOKilometer(current, result);
+                long l = 0;
+                try {
+                    l = Long.parseLong(distanceTOKilometer);
+                }catch (Exception e){
+                    l = 0;
+                }
                 StoreInfo info = new StoreInfo();
                 info.setStoreId(store.getId());
                 info.setStoreName(store.getName());
                 info.setStoreImg(store.getRealPicture());
-                info.setDistance(Long.parseLong(distanceTOKilometer));
+                info.setDistance(l);
                 info.setStoreAddr(store.getAddress());
                 info.setLatitude(storeLat);
                 info.setLongitude(storeLon);
@@ -105,12 +114,16 @@
                 .eq("state",1 )
                 .eq("cityCode",citycodeResp.getCityCode()));
         if (list.size() > 0 ){
+            if (ToolUtil.isEmpty(citycodeResp.getLongitude()) && ToolUtil.isEmpty(citycodeResp.getLatitude())){
+                return detailLists;
+            }
             for (Store store : list) {
                 String current = citycodeResp.getLongitude() +","+citycodeResp.getLatitude();
                 String result = store.getLon()+","+store.getLat();
                 String distanceTOKilometer = gdMapGeocodingUtil.getDistanceTOKilometer(current, result);
                 long l = Long.parseLong(distanceTOKilometer);
-                if (ToolUtil.isNotEmpty(citycodeResp.getSpace()) && l > citycodeResp.getSpace()){
+//                取5公里范围内的门店
+                if ( l > 5){
                     continue;
                 }
                 StoreDetailList detailList = new StoreDetailList();
diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/StoredValueConfigController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/StoredValueConfigController.java
index 2276dd6..e0d146c 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/controller/StoredValueConfigController.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/controller/StoredValueConfigController.java
@@ -4,6 +4,7 @@
 import com.dsh.other.entity.StoredValueConfig;
 import com.dsh.other.service.StoredValueConfigService;
 import com.dsh.other.util.ResultUtil;
+import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import io.swagger.annotations.ApiImplicitParams;

--
Gitblit v1.7.1