From c64adde7482103b05d623d8749c662e6fdf5d90d Mon Sep 17 00:00:00 2001
From: lisy <linlangsur163@163.com>
Date: 星期五, 04 八月 2023 11:15:58 +0800
Subject: [PATCH] app端:开始上课的课程列表

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java |   18 +++++
 cloud-server-course/src/main/java/com/dsh/course/model/vo/RegisterCourseVo.java                          |    3 +
 cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html                      |   12 ++--
 cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TStoreList.html                      |    6 +-
 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java      |   15 ++++
 cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js                     |   37 +++++++----
 cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TStoreInfo.js                      |   47 +++++++++++++++
 7 files changed, 111 insertions(+), 27 deletions(-)

diff --git a/cloud-server-course/src/main/java/com/dsh/course/model/vo/RegisterCourseVo.java b/cloud-server-course/src/main/java/com/dsh/course/model/vo/RegisterCourseVo.java
index 6ad8055..ba888d3 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/model/vo/RegisterCourseVo.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/model/vo/RegisterCourseVo.java
@@ -31,4 +31,7 @@
     @ApiModelProperty(value = "支付状态 1未支付 2已支付")
     private Integer payStatus;
 
+    @ApiModelProperty(value = "课包类型id")
+    private Integer coursePackTypeId;
+
 }
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 008c336..4c913de 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
@@ -2,6 +2,7 @@
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import com.alipay.api.domain.Person;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -115,7 +116,6 @@
             queryWrapper.in(PostCourseVideo::getCoursePackageId,courseIds);
         }
         videoList = pcvMapper.selectList(queryWrapper);
-        // TODO: 2023/8/3 始终查出来是 空的
         if (videoList.size() > 0){
             List<Integer> videoIds = videoList.stream().map(PostCourseVideo::getCourseId).collect(Collectors.toList());
             List<UserVideoDetails> userVideoDetails = uvdmapper.selectList(new QueryWrapper<UserVideoDetails>()
@@ -204,6 +204,7 @@
                 RegisterCourseVo registerCourseVo = new RegisterCourseVo();
                 registerCourseVo.setCoursePayId(tCoursePackagePayment.getId());
                 registerCourseVo.setCoursePackageId(tCoursePackagePayment.getCoursePackageId());
+                registerCourseVo.setCoursePackTypeId(coursePackage.getCoursePackageTypeId());
                 registerCourseVo.setPackageImg(coursePackage.getCoverDrawing());
                 String storeAndCourse = coursePackage.getName()+"("+ store.getName() +")";
                 registerCourseVo.setCourseNameStore(storeAndCourse);
@@ -217,6 +218,18 @@
                 registerCourseVo.setPayStatus(tCoursePackagePayment.getPayStatus());
                 courseVos.add(registerCourseVo);
             }
+
+            if (ToolUtil.isNotEmpty(courseTypeId.getSearch())){
+                courseVos = courseVos.stream()
+                        .filter(person -> person.getCourseNameStore().contains(courseTypeId.getSearch()))
+                        .collect(Collectors.toList());
+            }
+
+            if (ToolUtil.isNotEmpty(courseTypeId.getCourseTypeId())){
+                courseVos = courseVos.stream()
+                        .filter(person -> Objects.equals(person.getCoursePackTypeId(), courseTypeId.getCourseTypeId()))
+                        .collect(Collectors.toList());
+            }
         }
         return courseVos;
     }
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
index b0f4833..7133988 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
@@ -68,13 +68,19 @@
 
 
     /**
-     * 跳转到优惠券管理首页
+     * 跳转到门店管理列表页
      */
     @RequestMapping("/storeList")
     public String storePage(Model model) {
         return PREFIX + "TStoreList.html";
     }
 
+    @RequestMapping("/storeList")
+    @ResponseBody
+    public Object listOfStore(){
+
+        return null;
+    }
 
     /**
      * 获取 优惠券管理
@@ -131,4 +137,14 @@
         System.out.println(map);
         return url;
     }
+
+    /**
+     * 提交添加
+     */
+    @RequestMapping(value = "/commitData")
+    public void commitData(){
+
+
+
+    }
 }
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html
index 3ae06f3..ece9320 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TCouponAdd.html
@@ -125,13 +125,13 @@
                     <div class="form-group">
                         <div class="initialLevel col-sm-12 control-label form-group">
                             <label class="col-sm-3 control-label">*兑换方式: </label>
-                            <input class="col-sm-1 control-label" onclick="exchangeMethod1()" id="exchangeMethod" type="radio"
+                            <input class="col-sm-1 control-label" onclick="exchangeMethod1()" name="exchangeMethod" type="radio"
                                    value="1" checked style="margin-top: 10px"/>
                             <label class="col-sm-1" style="margin-left: -15px;width: 16%;margin-top: 7px">积分</label>
-                            <input class="col-sm-1 control-label" id="exchangeMethod" onclick="exchangeMethod2()" type="radio"
+                            <input class="col-sm-1 control-label" name="exchangeMethod" onclick="exchangeMethod2()" type="radio"
                                    value="2"  style="margin-left: 5%;margin-top: 10px;width: 13px;height: 13px"/>
                             <label class="col-sm-1" style="width: 20%;margin-top: 7px">现金+积分</label>
-                            <input class="col-sm-1 control-label" id="exchangeMethod" onclick="exchangeMethod3()" type="radio"
+                            <input class="col-sm-1 control-label" name="exchangeMethod" onclick="exchangeMethod3()" type="radio"
                                    value="3"  style="margin-left: 5%;margin-top: 10px;width: 13px;height: 13px"/>
                             <label class="col-sm-1" style="width: 9%;margin-top: 7px">现金</label>
                         </div>
@@ -268,17 +268,17 @@
                         <div class="initialLevel col-sm-12 control-label form-group">
                             <label class="col-sm-3">*适用范围: </label>
                             <div class="col-sm-3" id="belongsNationwide" hidden="hidden">
-                                <input class="col-sm-1" onclick="scopeOfApplication1()" id="company" type="radio"
+                                <input class="col-sm-1" onclick="scopeOfApplication1()" name="company" type="radio"
                                        value="0" checked style="margin-top: 10px"/>
                                 <label class="col-sm-2" style="width: 68%;margin-top: 7px">全国通用</label>
                             </div>
                             <div class="col-sm-3" id="belongsCity"  hidden="hidden">
-                                <input class="col-sm-1" id="company" onclick="scopeOfApplication2()" type="radio"
+                                <input class="col-sm-1" name="company" onclick="scopeOfApplication2()" type="radio"
                                        value="1"  style="margin-top: 10px"/>
                                 <label class="col-sm-2" style="width: 64%;margin-top: 7px">指定城市</label>
                             </div>
                             <div class="col-sm-3" id="belongsStore"  hidden="hidden">
-                                <input class="col-sm-1" id="company" onclick="scopeOfApplication3()" type="radio"
+                                <input class="col-sm-1" name="company" onclick="scopeOfApplication3()" type="radio"
                                        value="1" style="margin-left: 4%;margin-top: 10px;width: 13px;height: 13px"/>
                                 <label class="col-sm-2" style="width: 64%;margin-top: 6px;">指定门店</label>
                             </div>
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TStoreList.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TStoreList.html
index e313066..f437316 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TStoreList.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCoupon/TStoreList.html
@@ -10,12 +10,12 @@
                     <div class="col-sm-12">
                         <div class="row">
                             <div class="col-sm-3">
-                                <#SelectCon id="type" name="所在省" >
+                                <#SelectCon id="province" name="所在省" >
                                 <option value="">全部</option>
                             </#SelectCon>
                         </div>
                         <div class="col-sm-3">
-                            <#SelectCon id="distributionMethod" name="所在市" >
+                            <#SelectCon id="city" name="所在市" >
                             <option value="">全部</option>
                         </#SelectCon>
                     </div>
@@ -25,7 +25,7 @@
                     </#SelectCon>
                 </div>
                 <div class="col-sm-3">
-                    <#NameCon id="name" name="门店名称" placeholder="请输入门店名称"/>
+                    <#NameCon id="storeName" name="门店名称" placeholder="请输入门店名称"/>
                 </div>
                 <div class="col-sm-3">
                     <#button name="搜索" icon="fa-search" clickFun="TStoreProvince.search()"/>
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js b/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js
index e10bcba..76ed00a 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TCouponInfo.js
@@ -241,6 +241,9 @@
  * 提交
  */
 couponInfoDlg.addSubmit = function () {
+
+    var resultData = {};
+    // 用户权限
     var userType = $('#userType').val();
     // 优惠券名称
     var couponName = $('#name').val;
@@ -253,7 +256,8 @@
     // 所需积分
     var requiredPoints = $('#requiredPoints').val();
     // 用户人群
-    var userGroup = $('#userGroup').val();
+    let userGroup = $(':radio[name="userGroup"]:checked').val();
+
     // 发放数量
     var quantityIssued = $('#quantityIssued').val();
     // 限领数量
@@ -263,7 +267,9 @@
 
     if (userType === '1'){
         // 平台管理员
-        var exchangeMethod = $('#exchangeMethod').val;
+        // 兑换方式:积分+现金
+        let exchangeMethod = $(':radio[name="exchangeMethod"]:checked').val();
+
         if (exchangeMethod === 1){
 
         }
@@ -276,10 +282,8 @@
         }
         var goodImg = this.goodsCover;
         var goodImgs = this.goodsPicArray;
-        var company = $('#company').val;
-        if (company === 1){
-
-        }
+        // 适用范围 全国+指定城市+指定门店
+        let company = $(':radio[name="company"]:checked').val()
         if (company === 2){
 
         }
@@ -287,7 +291,7 @@
 
         }
 
-
+        commitAJAX(resultData);
     }
     if (userType === '2'){
         // 城市管理员
@@ -296,15 +300,20 @@
     }
 
 
-    var couponName = $('#name').val;
-    var couponName = $('#name').val;
-    var couponName = $('#name').val;
-    var couponName = $('#name').val;
-    var couponName = $('#name').val;
-    var couponName = $('#name').val;
-    var couponName = $('#name').val;
+}
 
+function commitAJAX(obj){
 
+    //提交信息
+    var ajax = new $ax(Feng.ctxPath + "/tCouponManage/commitData", function (data) {
+        Feng.success("添加成功!");
+        window.parent.TCoupon.table.refresh();
+        couponInfoDlg.close();
+    }, function (data) {
+        Feng.error("添加失败!" + data.responseJSON.message + "!");
+    });
+    ajax.set("dataResult", JSON.parse(obj));
+    ajax.start();
 }
 
 /**
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TStoreInfo.js b/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TStoreInfo.js
index 811e08d..806f77f 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TStoreInfo.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/tCoupon/TStoreInfo.js
@@ -45,7 +45,7 @@
 
 
 function storeOfClosePage(){
-
+    parent.layer.close(window.parent.couponInfoDlg.layerIndex);
 }
 
 function saveSelectStores(){
@@ -82,11 +82,54 @@
     TStoreProvince.search();
 };
 
+function queryProvince(){
+    // 发送AJAX请求到后台获取省份数据
+    // 假设后台返回的数据格式为一个包含省份ID和名称的数组
+    var provinceSelect = document.getElementById("province");
+
+    var ajax = new $ax(Feng.ctxPath + "/tCouponManage/getProvince", function(data){
+        data.forEach(province => {
+            var option = document.createElement("option");
+            option.value = province.id;  // 根据你的数据结构确定省份的id字段
+            option.text = province.name;  // 根据你的数据结构确定省份的name字段
+            provinceSelect.appendChild(option);
+        });
+    },function(data){
+        Feng.error("下拉失败!" + data.responseJSON.message + "!");
+    });
+    ajax.start();
+    provinceSelect.addEventListener("change", queryCity);
+}
+
+
+// 获取城市数据
+function queryCity() {
+    var selectedProvinceId = this.value; // 获取选择的省份ID
+    // 发送AJAX请求到后台获取对应省份的城市数据
+    // 假设后台返回的数据格式为一个包含城市ID和名称的数组
+
+    var citySelect = document.getElementById("city");
+    citySelect.innerHTML = "";
+    var ajax = new $ax(Feng.ctxPath + "/tCouponManage/getCity", function(data){
+        data.forEach(province => {
+            var option = document.createElement("option");
+            option.value = province.id;  // 根据你的数据结构确定省份的id字段
+            option.text = province.name;  // 根据你的数据结构确定省份的name字段
+            citySelect.appendChild(option);
+        });
+    },function(data){
+        console.log('data:',data)
+        Feng.error("获取失败!" + data.responseJSON.message + "!");
+    });
+    ajax.set('province',selectedProvinceId);
+    ajax.start();
+}
+
 $(function () {
     var defaultColunms = TStoreProvince.initColumn();
     var table = new BSTable(TStoreProvince.id, "/tCouponManage/storeList", defaultColunms);
     table.setPaginationType("client");
     TStoreProvince.table = table.init();
 
-
+    queryProvince();
 });

--
Gitblit v1.7.1