From 2e2be7f7475b5e583b0cffd89c6d18db52c247a6 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 04 十二月 2023 14:59:05 +0800
Subject: [PATCH] 同步代码

---
 cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java            |    5 --
 cloud-server-account/src/main/java/com/dsh/account/util/GDMapGeocodingUtil.java                     |    3 +
 cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java            |   18 ++++++++-
 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java |   14 ++++++-
 cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java        |   17 --------
 cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java                   |    5 +-
 cloud-server-activity/src/main/java/com/dsh/activity/util/GDMapGeocodingUtil.java                   |    3 +
 cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackageService.java                 |    2 
 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java        |   17 +++++---
 9 files changed, 49 insertions(+), 35 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java
index 3ce9631..46b5255 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java
@@ -314,12 +314,7 @@
             @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
     })
     public ResultUtil<List<Goods>> pointsMallList(MallRequest request) {
-//        try {
-        System.out.println("======request========" + request);
         return ResultUtil.success(tauService.queryAppUserIntegral(request));
-//        }catch (Exception e){
-//            return ResultUtil.runErr();
-//        }
     }
 
 
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 a025fe7..0a66628 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
@@ -1025,6 +1025,7 @@
                 goods.add(commodity);
             }
         }
+
         List<Coupon> allCoupons = ucponClient.getAllCoupons(commodityRequest);
         if (allCoupons.size() > 0) {
             for (Coupon allCoupon : allCoupons) {
@@ -1312,7 +1313,7 @@
             userCouponPayment.setCode(code);
             userCouponPayment.setPayType(coupon.getRedemptionMethod());
             userCouponPayment.setIntegral(coupon.getIntegral().intValue());
-            userCouponPayment.setCash(coupon.getCash().doubleValue());
+            userCouponPayment.setCash(null == coupon.getCash() ? 0D : coupon.getCash().doubleValue());
             userCouponPayment.setCashPayType(exchangeType.getPayType());
             userCouponPayment.setInsertTime(new Date());
 
@@ -1358,7 +1359,20 @@
         try {
             SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
             String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
-            PointsMerchandise merchandise = mcClient.selectPointsMerchandiseById(exchangeType.getGoodId());
+            PointsMerchandise merchandise = new PointsMerchandise();
+            if(exchangeType.getGoodsType() != 4){
+                merchandise = mcClient.selectPointsMerchandiseById(exchangeType.getGoodId());
+            }else{
+                Coupon coupon = ucponClient.queryCouponById(exchangeType.getGoodId());
+                merchandise.setId(coupon.getId());
+                merchandise.setUserPopulation(coupon.getUserPopulation());
+                merchandise.setIntegral(coupon.getIntegral().intValue());
+                merchandise.setQuantityIssued(coupon.getQuantityIssued());
+                merchandise.setPickUpQuantity(coupon.getPickUpQuantity());
+                merchandise.setUseScope(coupon.getUseScope());
+                merchandise.setCash(coupon.getCash());
+                merchandise.setType(4);
+            }
 
 
             if (ToolUtil.isEmpty(merchandise)) {
diff --git a/cloud-server-account/src/main/java/com/dsh/account/util/GDMapGeocodingUtil.java b/cloud-server-account/src/main/java/com/dsh/account/util/GDMapGeocodingUtil.java
index 7a98bf6..6a83b16 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/util/GDMapGeocodingUtil.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/util/GDMapGeocodingUtil.java
@@ -120,6 +120,9 @@
             String province = addressComponent.getString("province");
             String city = addressComponent.getString("city");
             String district = addressComponent.getString("district");
+            if("[]".equals(code)){
+                throw new Exception("经纬度转行政区划代码失败[" + lon + "," + lan + "]");
+            }
             map.put("province", province);
             map.put("provinceCode", code.substring(0, 2) + "0000");
             map.put("city", city);
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 afc238a..aba58d0 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
@@ -348,27 +348,10 @@
         return commodity;
     }
 
-    @Resource
-    private CoursePackageClient coursePackageClient;
-    @Autowired
-    private PointsMerchandiseService pointsMerchandiseService;
 
     @ResponseBody
     @PostMapping("/base/pointMerchars/getCommoditys")
     public PointMerchandiseVo getVicinityGoods(@RequestBody CommodityRequest request) {
-//        if (request.getShopId()!=null){
-//            List<CoursePackage> coursePackages = coursePackageClient.queryByStoreId(request.getShopId());
-//            List<Integer> coursIds = new ArrayList<>();
-//            for (CoursePackage coursePackage : coursePackages) {
-//                coursIds.add(coursePackage.getId());
-//            }
-//            List<PointsMerchandise> points = pointsMerchandiseService.list(new QueryWrapper<PointsMerchandise>().eq("state",1).eq("shelves",1).in("coursePackageId", coursIds));
-//            PointMerchandiseVo pointMerchandiseVo = new PointMerchandiseVo();
-//            pointMerchandiseVo.setMerchandises(points);
-//            return pointMerchandiseVo;
-//
-//        }
-
 
         PointMerchandiseVo pointMerchandiseVo = new PointMerchandiseVo();
         List<PointsMerchandise> list = new ArrayList<>();
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/util/GDMapGeocodingUtil.java b/cloud-server-activity/src/main/java/com/dsh/activity/util/GDMapGeocodingUtil.java
index 3b93721..f424503 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/util/GDMapGeocodingUtil.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/util/GDMapGeocodingUtil.java
@@ -112,6 +112,9 @@
             String province = addressComponent.getString("province");
             String city = addressComponent.getString("city");
             String district = addressComponent.getString("district");
+            if("[]".equals(code)){
+                throw new Exception("经纬度转行政区划代码失败[" + lon + "," + lan + "]");
+            }
             map.put("province", province);
             map.put("provinceCode", code.substring(0, 2) + "0000");
             map.put("city", city);
diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java
index 154f99b..5e82c62 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java
@@ -170,15 +170,16 @@
             @ApiImplicitParam(value = "课包id", name = "id", dataType = "int", required = true),
             @ApiImplicitParam(value = "经度", name = "lon", dataType = "string", required = false),
             @ApiImplicitParam(value = "纬度", name = "lat", dataType = "string", required = false),
+            @ApiImplicitParam(value = "学员id", name = "stuId", dataType = "int", required = false),
             @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResultUtil<CoursePackageInfo> queryCourseInfo(Integer id, String lon, String lat, Long payId) {
+    public ResultUtil<CoursePackageInfo> queryCourseInfo(Integer id, String lon, String lat, Integer stuId) {
         try {
             Integer uid = tokenUtil.getUserIdFormRedis();
             if (null == uid) {
                 return ResultUtil.tokenErr();
             }
-            CoursePackageInfo coursePackageInfo = coursePackageService.queryCourseInfo(uid, id, lon, lat);
+            CoursePackageInfo coursePackageInfo = coursePackageService.queryCourseInfo(uid, id, lon, lat, stuId);
             return ResultUtil.success(coursePackageInfo);
         } catch (Exception e) {
             e.printStackTrace();
diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackageService.java b/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackageService.java
index 567e34d..2f32eec 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackageService.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackageService.java
@@ -42,7 +42,7 @@
      * @return
      * @throws Exception
      */
-    CoursePackageInfo queryCourseInfo(Integer uid, Integer id, String lon, String lat) throws Exception;
+    CoursePackageInfo queryCourseInfo(Integer uid, Integer id, String lon, String lat, Integer stuId) throws Exception;
 
 
     /**
diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
index b8a4cf5..2766726 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
@@ -576,6 +576,16 @@
             response.setIntroduceDrawing(coursePackage.getIntroduceDrawing());
 
             Integer payType = coursePackageOrder.getPayType();
+            if(null == payType){
+                CoursePackagePaymentConfig config = coursePackagePaymentConfigService.list(new QueryWrapper<CoursePackagePaymentConfig>().eq("coursePackageId", coursePackage.getId()).orderByAsc("classHours")).get(0);
+                if (ToolUtil.isNotEmpty(config.getCashPayment()) && config.getCashPayment() > 0 && ToolUtil.isNotEmpty(config.getPlayPaiCoin()) && config.getPlayPaiCoin() > 0) {
+                    payType = 3;
+                } else if (ToolUtil.isNotEmpty(config.getCashPayment()) && config.getCashPayment() > 0) {
+                    payType = 1;
+                } else if (ToolUtil.isNotEmpty(config.getPlayPaiCoin()) && config.getPlayPaiCoin() > 0) {
+                    payType = 2;
+                }
+            }
             BigDecimal cashPayment = coursePackageOrder.getCashPayment();
             double cashPaymentValue = 0.0;
             if (cashPayment != null) {
@@ -602,11 +612,11 @@
 
             switch (payType) {
                 case 1:
-                case 2:
+                case 3:
                     response.setAmount(cashPaymentValue);
                     response.setVipAmount(discountMember);
                     break;
-                case 3:
+                case 2:
                     if (playPaiCoin!=null) {
                         response.setWpGold(playPaiCoin);
                     }
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 80f53c0..870960c 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
@@ -123,9 +123,9 @@
     @Override
     public List<CoursePackageListVo> queryCourseList(Integer uid, CoursePackageList coursePackageList) throws Exception {
         AppUser appUser = appUserClient.queryAppUser(uid);
-        Map<String, String> geocode = gdMapGeocodingUtil.geocode(coursePackageList.getLon(), coursePackageList.getLat());
-        String provinceCode = geocode.get("provinceCode");
-        String cityCode = geocode.get("cityCode");
+//        Map<String, String> geocode = gdMapGeocodingUtil.geocode(coursePackageList.getLon(), coursePackageList.getLat());
+//        String provinceCode = geocode.get("provinceCode");
+//        String cityCode = geocode.get("cityCode");
 //        QueryWrapper<TCoursePackage> wrapper = new QueryWrapper<TCoursePackage>().in("status", Arrays.asList(1, 2))
 //                .eq("auditStatus", 2).eq("state", 1).eq("provinceCode", provinceCode).eq("cityCode", cityCode);
 
@@ -581,7 +581,7 @@
      * @throws Exception
      */
     @Override
-    public CoursePackageInfo queryCourseInfo(Integer uid, Integer id, String lon, String lat) throws Exception {
+    public CoursePackageInfo queryCourseInfo(Integer uid, Integer id, String lon, String lat, Integer stuId) throws Exception {
         AppUser appUser = appUserClient.queryAppUser(uid);
         TCoursePackage coursePackage = this.getById(id);
         CoursePackageInfo coursePackageInfo = new CoursePackageInfo();
@@ -783,8 +783,13 @@
         });
         coursePackageInfo.setList(list);
 
-        Student student = studentClient.queryDefaultStudent(uid);
         StudentVo studentVo = new StudentVo();
+        Student student = null;
+        if(null != stuId){
+            student = studentClient.queryStudentById(stuId);
+        }else{
+            student = studentClient.queryDefaultStudent(uid);
+        }
         if (null != student) {
             studentVo.setId(student.getId());
             studentVo.setPhone(student.getPhone());
@@ -808,7 +813,7 @@
     @Override
     public ResultUtil paymentCourse(Integer uid, PaymentCourseVo paymentCourseVo) throws Exception {
         AppUser appUser = appUserClient.queryAppUser(uid);
-        CoursePackageInfo coursePackageInfo = queryCourseInfo(uid, paymentCourseVo.getId(), null, null);
+        CoursePackageInfo coursePackageInfo = queryCourseInfo(uid, paymentCourseVo.getId(), null, null, null);
         //校验是否已经报满
         Integer integer = coursePackagePaymentService.queryCountNumber(paymentCourseVo.getId());
         TCoursePackage course = coursePackageService.getById(paymentCourseVo.getId());

--
Gitblit v1.7.1