From eb6b6dbb35a9f029e0b7d269773685c19fd40976 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 11 七月 2024 10:47:51 +0800
Subject: [PATCH] 玩湃微信商户认证代码

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java |  109 ++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 88 insertions(+), 21 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java
index b271101..1e60180 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/CoursePackagePaymentController.java
@@ -1,6 +1,7 @@
 package com.dsh.guns.modular.system.controller.code;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.dsh.course.feignClient.account.AppUserClient;
 import com.dsh.course.feignClient.account.CityManagerClient;
 import com.dsh.course.feignClient.account.model.CityManager;
@@ -12,22 +13,28 @@
 import com.dsh.course.feignClient.other.SiteClient;
 import com.dsh.course.feignClient.other.StoreClient;
 import com.dsh.course.feignClient.other.model.Banner;
+import com.dsh.course.util.UUIDUtil;
 import com.dsh.guns.config.UserExt;
 import com.dsh.guns.core.base.controller.BaseController;
 import com.dsh.guns.modular.system.model.*;
+import com.dsh.course.entity.CoursePackageOrderStudent;
+import com.dsh.guns.modular.system.model.TCoursePackagePayment;
+import com.dsh.guns.modular.system.model.dto.CoursePackage;
 import com.dsh.guns.modular.system.service.ICityService;
 import com.dsh.guns.modular.system.service.ICoursePackageService;
 import com.dsh.guns.modular.system.service.IStoreService;
 import com.dsh.guns.modular.system.util.ResultUtil;
+import net.sf.json.JSONObject;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.math.BigDecimal;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 广告管理控制器
@@ -57,8 +64,7 @@
     private CoursePackagePaymentConfigClient coursePackagePaymentConfigClient;
     @Autowired
     private CoursePackageClient coursePackageClient;
-    @Autowired
-    private SiteClient siteClient;
+
     /**
      * 跳转到购课记录页面
      */
@@ -80,44 +86,86 @@
         List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
         model.addAttribute("list",list);
         Integer roleType = UserExt.getUser().getObjectType();
+        if (roleType==2){
+            Integer objectId = UserExt.getUser().getObjectId();
+            List<TStore> operatorId = storeService.list(new QueryWrapper<TStore>().eq("operatorId", objectId));
+            model.addAttribute("stores",operatorId);
+        }else{
+            model.addAttribute("stores",new ArrayList<>());
+        }
+        // 获取所有课包类型
+        List<TCoursePackageType> tCoursePackageTypes = coursePackageTypeClient.queryAllCoursePackageType();
         model.addAttribute("roleType",roleType);
+        if(UserExt.getUser().getObjectType()==3){
+            List<TStore> list1 = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getId, UserExt.getUser().getObjectId()));
+            model.addAttribute("stores",list1);
+        }
+        model.addAttribute("coursePackageType",tCoursePackageTypes);
         return PREFIX + "cpPayment_add.html";
     }
     /**
      *  添加购课记录
      */
     @ResponseBody
-    @RequestMapping(value = "/addCoursePackagePayment")
-    public ResultUtil addCoach(@RequestBody TCoursePackagePayment tCoursePackagePayment) {
+    @PostMapping(value = "/addCoursePackagePayment")
+    public Object addCoach(@RequestBody TCoursePackagePayment tCoursePackagePayment) {
         Integer objectId = UserExt.getUser().getObjectId();
+        Integer objectType = UserExt.getUser().getObjectType();
+        String name = UserExt.getUser().getName();
         tCoursePackagePayment.setPayUserId(objectId);
         // 获取课包id
         Integer coursePackageId = tCoursePackagePayment.getCoursePackageId();
-
         List<TCoursePackageDiscount> list = coursePackageDiscountClient.queryByCoursePackageId(coursePackageId);
-        TCoursePackageDiscount tCoursePackageDiscount1 = list.get(0);
-        Integer coursePackagePaymentConfigId = tCoursePackageDiscount1.getCoursePackagePaymentConfigId();
-        List<CoursePackagePaymentConfig> coursePackagePaymentConfigs = coursePackagePaymentConfigClient.queryCoursePackagePaymentConfigList(coursePackageId);
-        // 获取siteId 判断预约人数
-        // todo
-        Integer coursePackageId1 = tCoursePackagePayment.getCoursePackageId();
-        TCoursePackage tCoursePackage = coursePackageClient.queryById(coursePackageId1);
-        Integer siteId = tCoursePackage.getSiteId();
-//        tCoursePackagePayment.setCashPayment();
-//        tCoursePackagePayment.setPlayPaiCoin();
-        return ResultUtil.success("添加成功");
+        Date currentDate = new Date();
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(currentDate);
+        calendar.add(Calendar.DAY_OF_MONTH, 20);
+        Date updatedDate = calendar.getTime();
+        tCoursePackagePayment.setOriginalPrice(tCoursePackagePayment.getCashPayment().doubleValue());
+        // 获取所选课时的课包价格配置
+        if (tCoursePackagePayment.getCoursePackageConfigId()!=null) {
+            List<CoursePackagePaymentConfig> coursePackagePaymentConfigs =
+                    coursePackagePaymentConfigClient.queryCoursePackagePaymentConfigList1
+                            (tCoursePackagePayment.getCoursePackageConfigId());
+            if (coursePackagePaymentConfigs.size() != 0) {
+                CoursePackagePaymentConfig coursePackagePaymentConfig = coursePackagePaymentConfigs.get(0);
+                tCoursePackagePayment.setOriginalPrice(coursePackagePaymentConfig.getCashPayment());
+            }
+        }else {
+            List<CoursePackagePaymentConfig> coursePackagePaymentConfigs = coursePackagePaymentConfigClient.queryCoursePackagePaymentConfigList(coursePackageId);
+            CoursePackagePaymentConfig coursePackagePaymentConfig = coursePackagePaymentConfigs.get(0);
+            tCoursePackagePayment.setOriginalPrice(coursePackagePaymentConfig.getCashPayment());
+        }
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
+        String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
+        tCoursePackagePayment.setCode(code);
+        return coursePackagePaymentClient.addCoursePackagePayment(tCoursePackagePayment);
     }
+
     /**
      * 获取列表
      */
     @RequestMapping(value = "/listAll")
     @ResponseBody
     public List<CoursePackagePaymentVO> listAll(CoursePackagePaymentQuery query) {
+        Integer objectType = UserExt.getUser().getObjectType();
+        List<Integer> ids =new ArrayList<>();
+        if(objectType==3){
+            // 找出当前门店的课包
+            ids =  coursePackageClient.queryIdsByStore(UserExt.getUser().getObjectId());
+            query.setIds(ids);
+        }
+        if (objectType == 2){
+            Integer objectId = UserExt.getUser().getObjectId();
+            List<Integer> operatorId = storeService.list(new QueryWrapper<TStore>().eq("operatorId", objectId))
+                    .stream().map(TStore::getId).collect(Collectors.toList());
+            query.setStoreIds(operatorId);
+        }
         return coursePackagePaymentClient.listAll(query);
     }
 
     /**
-     * 获取列表
+     * 手动支付
      */
     @RequestMapping(value = "/pay")
     @ResponseBody
@@ -156,6 +204,25 @@
         return storeClient.getStore(city);
     }
 
+    /**
+     * 根据课包id 获取课时规格
+     */
+    @RequestMapping(value = "/getCoursePackageConfig")
+    @ResponseBody
+    public List<CoursePackagePaymentConfig> getCoursePackageConfig(Integer id) {
+        if (id == null){
+            return null;
+        }
+        return coursePackagePaymentConfigClient.queryCoursePackagePaymentConfigList(id);
+    }
+
+
+    @RequestMapping(value = "/getCoursePackageType")
+    @ResponseBody
+    public Integer getCoursePackageType(Integer id) {
+        TCoursePackage coursePackage = coursePackageClient.queryById(id);
+        return coursePackage.getType();
+    }
 
 }
 

--
Gitblit v1.7.1