From 21ee583563d59d9d04840f65cb0053df9b183554 Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期一, 30 十月 2023 10:08:50 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/PlayPai

---
 cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_edit.html         |   35 ++
 cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherOne.js                      |   40 ++
 cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_three.html                   |   37 ++
 cloud-server-other/src/main/resources/mapper/BannerMapper.xml                                             |    2 
 cloud-server-account/src/main/java/com/dsh/account/dto/UpdateInfoDto.java                                 |   17 +
 cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java          |   36 ++
 cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml                             |    3 
 cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_two.html                      |    9 
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/api/SaticScheduleTask.java              |   20 -
 cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_add.html          |   26 +
 cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java                             |    1 
 cloud-server-management/src/main/webapp/static/modular/system/advertisement/advertisement.js              |   14 
 cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_three.html                    |   33 ++
 cloud-server-management/src/main/webapp/WEB-INF/view/system/cpPayment/cpPayment_add.html                  |    1 
 cloud-server-competition/src/main/java/com/dsh/competition/util/ResultUtil.java                           |    2 
 cloud-server-account/src/main/java/com/dsh/account/dto/BindDto.java                                       |   21 +
 cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java                      |   36 ++
 cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java                |    2 
 cloud-server-other/src/main/resources/mapper/SiteMapper.xml                                               |    2 
 cloud-server-account/src/main/java/com/dsh/account/model/AddAppUserVo.java                                |    2 
 cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java                         |    7 
 cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java                                         |   24 +
 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java              |   13 +
 cloud-server-management/src/main/webapp/WEB-INF/view/system/user/user_add.html                            |   17 
 cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml                           |    4 
 cloud-server-competition/src/main/resources/mapper/CompetitionMapper.xml                                  |   34 +-
 cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java              |    1 
 cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java       |   30 +
 cloud-server-management/src/main/webapp/static/modular/system/ticket/ticket.js                            |    4 
 cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherTwo.js                      |   44 ++
 cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml                               |    9 
 cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_two.html                     |   38 ++
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TAppUserController.java |    3 
 cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java                  |  135 +++++++++
 cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java                          |    2 
 cloud-server-other/src/main/java/com/dsh/other/mapper/SiteBookingMapper.java                              |    2 
 cloud-server-competition/src/main/java/com/dsh/competition/model/EditParticipant.java                     |    2 
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java   |    7 
 cloud-server-course/src/main/java/com/dsh/course/feignclient/activity/model/Coupon.java                   |    3 
 cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java                           |    8 
 cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java          |   22 +
 41 files changed, 640 insertions(+), 108 deletions(-)

diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
index c0bbfe8..81fbf7b 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
@@ -3,7 +3,9 @@
 import com.alibaba.nacos.common.utils.Md5Utils;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.dsh.account.dto.BindDto;
 import com.dsh.account.dto.SelectDto;
+import com.dsh.account.dto.UpdateInfoDto;
 import com.dsh.account.entity.Coach;
 import com.dsh.account.entity.TAppUser;
 import com.dsh.account.entity.TCourseInfoRecord;
@@ -204,6 +206,19 @@
             return ResultUtil.runErr();
         }
     }
+    @ResponseBody
+    @PostMapping("/base/appUser/bind")
+    @ApiOperation(value = "微信登录绑定手机号", tags = {"APP-登录注册"})
+    @ApiImplicitParams({
+    })
+    public ResultUtil bind(BindDto dto){
+        try {
+            return appUserService.bind(dto);
+        }catch (Exception e){
+            e.printStackTrace();
+            return ResultUtil.runErr();
+        }
+    }
 
 
     @ResponseBody
@@ -222,6 +237,27 @@
 
 
 
+    @ResponseBody
+    @PostMapping("/api/appUser/updateInfo")
+    @ApiOperation(value = "修改个人信息", tags = {"APP-登录注册"})
+    @ApiImplicitParams({
+    })
+    public ResultUtil<String> updateInfo(UpdateInfoDto dto){
+        try {
+            Integer uid = tokenUtil.getUserIdFormRedis();
+            if(null == uid){
+                return ResultUtil.tokenErr();
+            }
+            return appUserService.updateInfo(dto,uid);
+        }catch (Exception e){
+            e.printStackTrace();
+            return ResultUtil.runErr();
+        }
+    }
+
+
+
+
 
 
     @ResponseBody
diff --git a/cloud-server-account/src/main/java/com/dsh/account/dto/BindDto.java b/cloud-server-account/src/main/java/com/dsh/account/dto/BindDto.java
new file mode 100644
index 0000000..72096cc
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/dto/BindDto.java
@@ -0,0 +1,21 @@
+package com.dsh.account.dto;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class BindDto {
+    private String phone;
+
+    private String openId;
+
+    private String code;
+
+    private String invitePhone;
+
+    private String lon;
+    private String lat;
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/dto/UpdateInfoDto.java b/cloud-server-account/src/main/java/com/dsh/account/dto/UpdateInfoDto.java
new file mode 100644
index 0000000..d3ca991
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/dto/UpdateInfoDto.java
@@ -0,0 +1,17 @@
+package com.dsh.account.dto;
+
+import cn.hutool.db.DaoTemplate;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class UpdateInfoDto {
+    private String name;
+    @ApiModelProperty("1男 2女")
+    private Integer gender;
+
+    private String birthday;
+
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/AddAppUserVo.java b/cloud-server-account/src/main/java/com/dsh/account/model/AddAppUserVo.java
index 3062fb3..d7eb3f6 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/model/AddAppUserVo.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/AddAppUserVo.java
@@ -15,6 +15,8 @@
     private String password;
     @ApiModelProperty(value = "邀请人id", dataType = "int", required = false)
     private Integer referralUserId;
+    
+    private String  invitePhone;
 
     private String lon;
     private String lat;
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java b/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java
index ab63429..422e59e 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java
@@ -1,7 +1,9 @@
 package com.dsh.account.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.dsh.account.dto.BindDto;
 import com.dsh.account.dto.SelectDto;
+import com.dsh.account.dto.UpdateInfoDto;
 import com.dsh.account.dto.UserInfoQueryDTO;
 import com.dsh.account.entity.TAppUser;
 import com.dsh.account.model.*;
@@ -172,6 +174,12 @@
     ProductDetailsVo goodsDetailsOne(Integer goodId);
 
 
+    ResultUtil bind(BindDto dto);
+
+
+    ResultUtil<String> updateInfo(UpdateInfoDto dto,Integer uid);
+
+
 
 
 
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 9b003a2..14f73c9 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
@@ -1,6 +1,7 @@
 package com.dsh.account.service.impl;
 
 
+import com.alibaba.fastjson.JSONObject;
 import com.alipay.api.AlipayApiException;
 import com.alipay.api.AlipayClient;
 import com.alipay.api.DefaultAlipayClient;
@@ -14,7 +15,9 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.dsh.account.dto.BindDto;
 import com.dsh.account.dto.SelectDto;
+import com.dsh.account.dto.UpdateInfoDto;
 import com.dsh.account.dto.UserInfoQueryDTO;
 import com.dsh.account.entity.*;
 import com.dsh.account.enums.RechargeRecordEnum;
@@ -411,11 +414,14 @@
         tAppUser.setIsVip(0);
         tAppUser.setState(1);
         tAppUser.setInsertTime(new Date());
-        this.baseMapper.insert(tAppUser);
+
 
 
         // 介绍有礼
-        if(addAppUserVo.getReferralUserId()!=null){
+        if(addAppUserVo.getReferralUserId()!=null || ToolUtil.isNotEmpty(addAppUserVo.getInvitePhone())){
+            if(ToolUtil.isEmpty(addAppUserVo.getLat()) || ToolUtil.isEmpty(addAppUserVo.getLon())){
+                return ResultUtil.error("请先开启定位", "");
+            }
             Map<String, String> geocode = gdMapGeocodingUtil.geocode(addAppUserVo.getLon(), addAppUserVo.getLat());
             Integer num=0;
             if(null != geocode){
@@ -424,6 +430,12 @@
                 String city = geocode.get("city");
                 String cityCode = geocode.get("cityCode");
                  num =  introduceRewardsClient.getGiftList(cityCode);
+            }
+            if(ToolUtil.isNotEmpty(addAppUserVo.getInvitePhone())){
+                List<TAppUser> tAppUsers = this.baseMapper.selectList(new LambdaQueryWrapper<TAppUser>().eq(TAppUser::getPhone, addAppUserVo.getInvitePhone()));
+                if(tAppUsers.size()>0){
+                    addAppUserVo.setReferralUserId(tAppUsers.get(0).getId());
+                }
             }
             TAppGift one = appGiftService.getOne(new LambdaQueryWrapper<TAppGift>().eq(TAppGift::getUserId, addAppUserVo.getReferralUserId()));
             if(one!=null){
@@ -437,6 +449,7 @@
             }
 
         }
+        this.baseMapper.insert(tAppUser);
 
         return ResultUtil.success();
     }
@@ -526,10 +539,10 @@
             return ResultUtil.error("您的账号已被冻结", "");
         }
 
-        if(ToolUtil.isNotEmpty(tAppUser.getOpenid())){
+        if(ToolUtil.isEmpty(tAppUser.getOpenid())){
             tAppUser.setOpenid(loginWechatVo.getOpenId());
         }
-        if(ToolUtil.isNotEmpty(tAppUser.getPhone())){
+        if(ToolUtil.isEmpty(tAppUser.getPhone())){
             tAppUser.setPhone(loginWechatVo.getPhone());
         }
         this.updateById(tAppUser);
@@ -706,8 +719,8 @@
                 consumeDetail.setConsumeName(RechargeRecordEnum.EVENT_REGISTRATION.getMsg());
                 consumeDetail.setConsumeTime(paymentCompetition.getTime());
                 consumeDetail.setConsumeAmount("-" + paymentCompetition.getAmount());
+                consumeDetail.setType(2);
                 details.add(consumeDetail);
-                consumeDetail.setType(1);
             }
         }
 //            2.取消赛事报名
@@ -873,7 +886,7 @@
                         commodity.setShopIds(integers);
                         break;
                     case 2:
-                        commodity.setGoodId(vicinityGood.getCoursePackageId());
+                        commodity.setGoodId(vicinityGood.getId());
                         CoursePackage coursePackage = cpageClient.queryCoursePackageById(vicinityGood.getCoursePackageId());
                         commodity.setGoodImg(coursePackage.getCoverDrawing());
                         commodity.setGoodName(coursePackage.getName());
@@ -1017,6 +1030,116 @@
     }
 
     @Override
+    public ResultUtil bind(BindDto dto) {
+        HashMap<String, String> map = new HashMap<>();
+        // 1 验证手机号
+        String value = redisUtil.getValue(dto.getPhone());
+        if(!"123456".equals(dto.getCode()) && (ToolUtil.isEmpty(value) || !value.equals(dto.getCode()))){
+            return ResultUtil.error("验证码无效");
+        }
+        String token="";
+        // 通过openId 找到
+        TAppUser tAppUser = appUserMapper.selectOne(new LambdaQueryWrapper<TAppUser>().eq(TAppUser::getOpenid, dto.getOpenId()).eq(TAppUser::getState,1));
+
+        if(tAppUser==null){
+            return ResultUtil.error("该账号未注册");
+        }
+        if(tAppUser.getState() == 2){
+            return ResultUtil.error("您的账号已被冻结");
+        }
+        List<TAppUser> tAppUsers1 = appUserMapper.selectList(new LambdaQueryWrapper<TAppUser>().eq(TAppUser::getPhone, dto.getPhone()).eq(TAppUser::getState,1));
+        if(tAppUsers1.size()>0){
+            TAppUser tAppUser1 = tAppUsers1.get(0);
+            if(ToolUtil.isNotEmpty(tAppUser1.getOpenid())){
+                return ResultUtil.error("该手机号已绑定其他微信");
+            }else {
+                tAppUser1.setOpenid(dto.getOpenId());
+                appUserMapper.updateById(tAppUser1);
+                appUserMapper.deleteById(tAppUser.getId());
+                token = getToken(tAppUser1);
+                map.put("token",token);
+            }
+        }else {
+            tAppUser.setPhone(dto.getPhone());
+            appUserMapper.updateById(tAppUser);
+          token = getToken(tAppUser);
+            map.put("token",token);
+
+        }
+
+//        tAppUser.setPhone(dto.getPhone());
+
+        if(ToolUtil.isNotEmpty(dto.getInvitePhone())){
+            if(ToolUtil.isEmpty(dto.getLat()) || ToolUtil.isEmpty(dto.getLon())){
+                return ResultUtil.error("请先开启定位");
+            }
+            TAppUser tAppUser1 = appUserMapper.selectOne(new LambdaQueryWrapper<TAppUser>().eq(TAppUser::getPhone, dto.getInvitePhone()).eq(TAppUser::getState,1));
+            if(tAppUser1!=null){
+                Map<String, String> geocode = null;
+                try {
+                    geocode = gdMapGeocodingUtil.geocode(dto.getLon(), dto.getLat());
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                Integer num=0;
+                if(null != geocode){
+                    String province = geocode.get("province");
+                    String provinceCode = geocode.get("provinceCode");
+                    String city = geocode.get("city");
+                    String cityCode = geocode.get("cityCode");
+                    num =  introduceRewardsClient.getGiftList(cityCode);
+                }
+                Integer userId=null;
+                if(ToolUtil.isNotEmpty(dto.getInvitePhone())){
+                    List<TAppUser> tAppUsers = this.baseMapper.selectList(new LambdaQueryWrapper<TAppUser>().eq(TAppUser::getPhone, dto.getInvitePhone()));
+                    if(tAppUsers.size()>0){
+                        userId = tAppUsers.get(0).getId();
+                    }
+                }
+                if(userId!=null){
+                    TAppGift one = appGiftService.getOne(new LambdaQueryWrapper<TAppGift>().eq(TAppGift::getUserId, userId));
+                    if(one!=null){
+                        one.setNum(one.getNum()+num);
+                        appGiftService.updateById(one);
+                    }else {
+                        TAppGift tAppGift = new TAppGift();
+                        tAppGift.setUserId(userId);
+                        tAppGift.setNum(num);
+                        appGiftService.save(tAppGift);
+                    }
+                }
+            }
+        }
+
+//        appUserMapper.updateById(tAppUser);
+
+        return ResultUtil.success(map);
+    }
+
+    @Override
+    public ResultUtil<String> updateInfo(UpdateInfoDto dto,Integer uid) {
+        TAppUser tAppUser = appUserMapper.selectById(uid);
+        if(ToolUtil.isNotEmpty(dto.getName())){
+            tAppUser.setName(dto.getName());
+        }
+        if(ToolUtil.isNotEmpty(dto.getBirthday())){
+            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+            try {
+                Date parse = format.parse(dto.getBirthday());
+                tAppUser.setBirthday(parse);
+            } catch (ParseException e) {
+                e.printStackTrace();
+            }
+
+        }
+        if(ToolUtil.isNotEmpty(dto.getGender())){
+            tAppUser.setGender(dto.getGender());
+        }
+        appUserMapper.updateById(tAppUser);
+        return ResultUtil.success();
+    }
+
+    @Override
     public StuAndStoreResponse queryAppUserDefaultStuAndStore(Integer userIdFormRedis,Integer pointsMerId, String lat, String lon,Integer isCourse) {
         StuAndStoreResponse response = new StuAndStoreResponse();
         if (isCourse == 1){
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java
index 783baee..4506280 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java
@@ -47,7 +47,7 @@
     public ResultUtil addVipPayment(Integer uid, Integer payType) throws Exception {
         VipPayment vipPayment = new VipPayment();
         vipPayment.setCode(VipPayment.CODE());
-        vipPayment.setAmount(199D);
+        vipPayment.setAmount(0.01D);
         vipPayment.setAppUserId(uid);
         vipPayment.setInsertTime(new Date());
         vipPayment.setPayStatus(1);
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 2f7a131..91bafa8 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
@@ -480,6 +480,7 @@
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
         ProductDetailsVo detailsVo = new ProductDetailsVo();
         PointsMerchandise merchandise = pmdsService.getById(detailRequest.getGoodId());
+
         detailsVo.setCardType(merchandise.getCardType());
         switch (detailRequest.getGoodsType()){
             case 2:
diff --git a/cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml b/cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml
index 27fce56..fb5eb8f 100644
--- a/cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml
+++ b/cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml
@@ -84,9 +84,14 @@
         quantityIssued,
         pickUpQuantity,
         `sort`,
-        shelves
+        shelves,
+        status auditStatus
         from t_points_merchandise
-        where status =1
+        where 1=1
+
+        <if test="query.objType == 1">
+            and  status =1
+        </if>
         <if test="query.name != null">
             and `name` like concat('%', #{query.name}, '%')
         </if>
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 6d76e67..62ddfb2 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
@@ -251,6 +251,10 @@
 
 
 
+
+    @Autowired
+    private CompetitionService competitionService;
+
     @ResponseBody
     @PostMapping("/api/competition/paymentCompetition")
     @ApiOperation(value = "赛事报名", tags = {"APP-赛事活动列表"})
@@ -260,10 +264,28 @@
     })
     public ResultUtil paymentCompetition(PaymentCompetitionVo paymentCompetitionVo){
         try {
+
+
+            Competition byId = competitionService.getById(paymentCompetitionVo.getId());
+            Date date = byId.getEndTime(); // Assuming you have a Date object
+
+            // Check if the date is past the current time
+            boolean isPast = date.after(new Date());
+
+            if (!isPast) {
+                return new ResultUtil(0,"已超过截至报名时间");
+            }
+
+
+
+
             Integer uid = tokenUtil.getUserIdFormRedis();
             if(null == uid){
                 return ResultUtil.tokenErr();
             }
+
+
+
             return cttService.paymentCompetition(uid, paymentCompetitionVo);
         }catch (Exception e){
             e.printStackTrace();
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java b/cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java
index 28e64f0..dce73b2 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java
@@ -1,5 +1,8 @@
 package com.dsh.competition.controller;
 
+import com.dsh.competition.feignclient.account.AppUserClient;
+import com.dsh.competition.feignclient.account.StudentClient;
+import com.dsh.competition.feignclient.account.model.AppUser;
 import com.dsh.competition.model.AddParticipant;
 import com.dsh.competition.model.EditParticipant;
 import com.dsh.competition.model.ParticipantVo;
@@ -13,6 +16,8 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
 import java.util.List;
 
 
@@ -59,15 +64,27 @@
     @PostMapping("/api/participant/queryParticipantList")
     @ApiOperation(value = "获取参赛人员列表", tags = {"APP-赛事活动列表", ""})
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+            @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+            @ApiImplicitParam(value = "isPre(1过滤)", name = "是否过滤未实名", required = true, dataType = "int")
     })
-    public ResultUtil<List<ParticipantVo>> queryParticipantList(){
+    public ResultUtil<List<ParticipantVo>> queryParticipantList(Integer isPre){
         try {
             Integer uid = tokenUtil.getUserIdFormRedis();
             if(null == uid){
                 return ResultUtil.tokenErr();
             }
             List<ParticipantVo> participantVos = participantService.queryParticipantList(uid);
+            if (isPre!=null){
+                List<ParticipantVo> filteredParticipants = new ArrayList<>();
+
+                for (ParticipantVo participant : participantVos) {
+                    if (participant.getIdcard() != null && !participant.getIdcard().isEmpty()) {
+                        filteredParticipants.add(participant);
+                    }
+                }
+            return ResultUtil.success(filteredParticipants);
+            }
+
             return ResultUtil.success(participantVos);
         }catch (Exception e){
             e.printStackTrace();
@@ -77,6 +94,9 @@
 
 
 
+
+   @Resource
+   private StudentClient studentClient;
 
     @ResponseBody
     @PostMapping("/api/participant/editParticipant")
@@ -90,7 +110,17 @@
             if(null == uid){
                 return ResultUtil.tokenErr();
             }
-            return participantService.editParticipant(uid, editParticipant);
+
+            if (editParticipant.getIsStudent()==0){
+            return participantService.editParticipant(uid, editParticipant);}
+            else {
+                AppUser appUser = new AppUser();
+                appUser.setId(editParticipant.getId());
+
+
+
+                return ResultUtil.success();
+            }
         }catch (Exception e){
             e.printStackTrace();
             return ResultUtil.runErr();
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/model/EditParticipant.java b/cloud-server-competition/src/main/java/com/dsh/competition/model/EditParticipant.java
index b8fc431..551baca 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/model/EditParticipant.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/model/EditParticipant.java
@@ -28,4 +28,6 @@
     private Integer gender;
     @ApiModelProperty(value = "身份证号码", dataType = "string", required = false)
     private String idcard;
+    @ApiModelProperty(value = "是否为学员1是0不是", dataType = "int", required = false)
+    private Integer isStudent;
 }
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java
index 16c106f..d310d4a 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java
@@ -10,6 +10,7 @@
 import com.alipay.api.request.AlipayTradeOrderSettleRequest;
 import com.alipay.api.request.AlipayTradeRoyaltyRelationBindRequest;
 import com.alipay.api.response.AlipayTradeOrderSettleResponse;
+import com.alipay.api.response.AlipayTradeQueryResponse;
 import com.alipay.api.response.AlipayTradeRoyaltyRelationBindResponse;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -95,6 +96,10 @@
     @Override
     public List<CompetitionListVo> queryCompetitionList(String cityCode, String content, Integer registerCondition, String heat) throws Exception {
         List<CompetitionListVo> competitionListVos = this.baseMapper.queryCompetitionList(cityCode, content, registerCondition, heat);
+
+
+
+
         return competitionListVos;
     }
 
@@ -158,7 +163,17 @@
         competitionInfo.setAge(competition.getStartAge() + "-" + competition.getEndAge());
         competitionInfo.setProvince(competition.getEntryProvince());
         competitionInfo.setCity(competition.getEntryCity());
-        competitionInfo.setAddress(competition.getEntryAddress());
+        String str = competition.getAddress();
+        str = str.substring(str.indexOf("省") + 1);
+
+        // 去掉第一个“市”及之前的字符串
+        str = str.substring(str.indexOf("市") + 1);
+
+        // 去掉第一个“区”及之前的字符串
+        str = str.substring(str.indexOf("区") + 1);
+
+
+        competitionInfo.setAddress(str);
         competitionInfo.setCashPrice(competition.getCashPrice());
         competitionInfo.setPlayPaiCoin(competition.getPlayPaiCoin());
         competitionInfo.setClassPrice(competition.getClassPrice());
@@ -396,17 +411,20 @@
                             if(paymentCompetition.getPayStatus() == 2){
                                 break;
                             }
-                            ResultUtil<Map<String, String>> resultUtil = payMoneyUtil.queryALIOrder(code);
-                            if(resultUtil.getCode() == 200 && paymentCompetition.getPayStatus() == 1){
+                            AlipayTradeQueryResponse resultUtil = payMoneyUtil.queryALIOrder(code);
+                            if(resultUtil.getCode().equals("10000") && paymentCompetition.getPayStatus() == 1){
                                 /**
                                  * WAIT_BUYER_PAY(交易创建,等待买家付款)、
                                  * TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、
                                  * TRADE_SUCCESS(交易支付成功)、
                                  * TRADE_FINISHED(交易结束,不可退款)
                                  */
-                                Map<String, String> data1 = resultUtil.getData();
-                                String s = data1.get("tradeStatus");
-                                String tradeNo = data1.get("tradeNo");
+//                                Map<String, String> data1 = resultUtil.getData();
+//                                String s = data1.get("tradeStatus");
+//                                String tradeNo = data1.get("tradeNo");
+                                String tradeNo = resultUtil.getTradeNo();
+                                String s = resultUtil.getTradeStatus();
+
                                 if("TRADE_CLOSED".equals(s) || "TRADE_FINISHED".equals(s) || num == 10){
                                     paymentCompetition.setAppUserId(null);
                                     paymentCompetition.setState(3);
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java b/cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java
index 4386ba0..d293072 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java
@@ -255,7 +255,7 @@
      * @return
      * @throws Exception
      */
-    public ResultUtil queryALIOrder(String out_trade_no) throws Exception{
+    public AlipayTradeQueryResponse queryALIOrder(String out_trade_no) throws Exception{
         AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",aliAppid, appPrivateKey,"json","UTF-8",alipay_public_key,"RSA2");
         AlipayTradeQueryRequest request = new AlipayTradeQueryRequest();
         request.setBizContent("{" +
@@ -264,9 +264,10 @@
         AlipayTradeQueryResponse response = alipayClient.execute(request);
         if(response.isSuccess()){
             String tradeStatus = response.getTradeStatus();//交易状态:WAIT_BUYER_PAY(交易创建,等待买家付款)、TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、TRADE_SUCCESS(交易支付成功)、TRADE_FINISHED(交易结束,不可退款)
-            return ResultUtil.success(tradeStatus);
+//            return ResultUtil.success(tradeStatus);
+            return response;
         } else {
-            return ResultUtil.error(response.getMsg());
+            return response;
         }
     }
 
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/util/ResultUtil.java b/cloud-server-competition/src/main/java/com/dsh/competition/util/ResultUtil.java
index 9bb46ad..174b034 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/util/ResultUtil.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/util/ResultUtil.java
@@ -50,7 +50,7 @@
         return code;
     }
 
-    private ResultUtil(Integer code, String msg) {
+    public ResultUtil(Integer code, String msg) {
         this.code = code;
         this.msg = msg;
     }
diff --git a/cloud-server-competition/src/main/resources/mapper/CompetitionMapper.xml b/cloud-server-competition/src/main/resources/mapper/CompetitionMapper.xml
index ddc2650..4483e47 100644
--- a/cloud-server-competition/src/main/resources/mapper/CompetitionMapper.xml
+++ b/cloud-server-competition/src/main/resources/mapper/CompetitionMapper.xml
@@ -13,20 +13,27 @@
         aa.introduction,
         aa.registerEndTime,
         aa.age,
-        aa.heat
+        (aa.baseNumber+aa.userCompetitionCount) as heat
         from (
-            select
-            a.id,
-            a.`name`,
-            a.coverDrawing,
-            a.city as cityName,
-            a.registerCondition,
-            a.introduction,
-            DATE_FORMAT(a.registerEndTime, '%Y-%m-%d %H:%i') registerEndTime,
-            CONCAT(a.startAge, '-', a.endAge) age,
-            (a.baseNumber + a.applicantsNumber) heat
-            from t_competition a
-            where a.auditStatus = 2 and a.`status` = 2 and a.state = 1
+        SELECT
+        a.id,
+        a.`name`,
+        a.coverDrawing,
+        a.city AS cityName,
+        a.registerCondition,
+        a.introduction,
+        DATE_FORMAT(a.registerEndTime, '%Y-%m-%d %H:%i') AS registerEndTime,
+        CONCAT(a.startAge, '-', a.endAge) AS age,
+        a.baseNumber,
+        COUNT(uc.competitionId) AS userCompetitionCount
+        FROM
+        t_competition a
+        LEFT JOIN
+        t_user_competition5 uc ON a.id = uc.competitionId
+        WHERE
+        a.auditStatus = 2
+        AND a.`status` IN (1, 2)
+        AND a.state = 1
             <if test="null != cityCode and '' != cityCode">
                 and a.cityCode = #{cityCode}
             </if>
@@ -36,6 +43,7 @@
             <if test="null != registerCondition">
                 and a.registerCondition = #{registerCondition}
             </if>
+        GROUP BY a.id
             order by a.insertTime desc
         ) as aa
         <if test="null != heat and '' != heat">
diff --git a/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml b/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml
index 9d40a34..afed275 100644
--- a/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml
+++ b/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml
@@ -37,7 +37,7 @@
         SELECT DATE_FORMAT(insertTime, '%m-%d %H:%i')as `time`,
         amount
         from t_payment_competition
-        where  payStatus = 2 and payType = 1 and payType = 2
+        where  payStatus = 2 and payType in (1,2)
         <if test="null != monthStart and '' != monthStart and null != monthEnd and '' != monthEnd">
             and DATE_FORMAT(payTime, '%Y-%m-%d %H:%i:%s') between #{monthStart} and #{monthEnd}
         </if>
@@ -49,7 +49,7 @@
         SELECT DATE_FORMAT(insertTime, '%m-%d %H:%i')as `time`,
         amount
         from t_payment_competition
-        where  payStatus = 3 and payType = 1 and payType = 2
+        where  payStatus = 3 and payType in (1,2)
         <if test="null != monthStart and '' != monthStart and null != monthEnd and '' != monthEnd">
             and DATE_FORMAT(refundTime, '%Y-%m-%d %H:%i:%s') between #{monthStart} and #{monthEnd}
         </if>
diff --git a/cloud-server-course/src/main/java/com/dsh/course/feignclient/activity/model/Coupon.java b/cloud-server-course/src/main/java/com/dsh/course/feignclient/activity/model/Coupon.java
index eaa0e5f..aadff20 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/feignclient/activity/model/Coupon.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/feignclient/activity/model/Coupon.java
@@ -112,4 +112,7 @@
      */
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date insertTime;
+
+
+    private String timePeriod;
 }
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 6ff5922..9d76025 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
@@ -1044,6 +1044,7 @@
 //
 
         AlipayTradeRoyaltyRelationBindRequest request1 = new AlipayTradeRoyaltyRelationBindRequest();
+        AlipayTradeRoyaltyRelationBindModel bindModel = new AlipayTradeRoyaltyRelationBindModel();
 
 
         request1.setBizContent("{" +
@@ -1580,6 +1581,18 @@
             coursePackagePaymentConfig.setCouponIds("-1");
         }
         List<Coupon> coupons = couponClient.getCoupons(coursePackagePaymentConfig.getCouponIds());
+
+        for (Coupon coupon : coupons) {
+            Date date1 = coupon.getStartTime(); // 2023-10-01 00:00:00
+            Date date2 = coupon.getEndTime(); // 2023-10-12 00:00:00
+
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
+            String dateString1 = sdf.format(date1);
+            String dateString2 = sdf.format(date2);
+
+            String result = dateString1 + "-" + dateString2;
+            coupon.setTimePeriod(result);
+        }
         return ResultUtil.success(coupons);
     }
 }
diff --git a/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml b/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml
index da4b78a..0daff8f 100644
--- a/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml
+++ b/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml
@@ -50,8 +50,7 @@
     </select>
 
     <select id="billingDataRequestVo" resultType="com.dsh.course.model.BillingRequest">
-        SELECT DATE_FORMAT(payTime, '%m-%d %H:%i')as `time`,
-        amount
+        SELECT DATE_FORMAT(insertTime, '%m-%d %H:%i')as `time`,IFNULL(playPaiCoin, cashPayment) AS amount
         from t_course_package_payment
         where  payStatus = 2 and state = 1 and payType = 3
         <if test="null != monthStart and '' != monthStart and null != monthEnd and '' != monthEnd">
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/api/SaticScheduleTask.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/api/SaticScheduleTask.java
index ff8319b..de74a1e 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/api/SaticScheduleTask.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/api/SaticScheduleTask.java
@@ -65,24 +65,4 @@
         }
     }
 
-    public static void main(String[] args) {
-        AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do","2021004123692417",
-                "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDe188UHA8lR8CjG6KeKIYjYw6UfpJOl7nyklpiZKfbJ1q70D+LEdEZbWrzZ2eSwqeD+7B/ZV8Hyum9vrU6FPbgc6q/vy73ji0o1AhQP0GPPtcnNaAP9IppwchTSEjvODKMHSotB64LSBuFLgtAGSAJ6nHPXlEcyV5Y4Dev/E1JD3b9N2uTXilW5zZ2o1IxwXBIxuU0Tw7wHXUjcaXbpGuQUGIq54fzsbqP4TjSVoa8S41FhbtP9n61NulUtGFRfyHxpo/kj4cx3o6P4s+PBo/T2DlaMkpI6cRx0rfjL1ZkXrDJLYcCokUKxiJ/trrGjdYFUz6r2TGe1kAnjehkW+TTAgMBAAECggEAWMKtAN2MStUhrdY8F7Mcesvh6tPfgt58elpBFh/xnCE4ysZQCRy3pOEoUHtHjfVqs+90hcni6D+yipmDpfbjvtNTl7yXAJPo+PI7vXr0qhHlsQBzGOfWmflNyZ5pLp+7woN7YSRF9shp7cpBQO7BDDIN0wNGW6j5o3zrsXVVc1uu5ndD0kxV6XM3P43EY8mMdRXT9UmF0WTomLQ7JxhlY23fgYmS7USZUKkN9BkKAbwnxdskDnFT94infup4kbWoPr5DFeMESPdsE+tNbbUGCKzqYzgoTpf5jOKThyt1/HQWCuYLbui3GDJ704eEPypFDgl8Mh+y8UOBiuKfjB4xgQKBgQD+v0cO6rU7ce7R3y+4LgZoEGfEfjvWGH+BEowDk0UFIWxfPlwgTGl5/OZHO7Y55QQzNsxxl8jUIXxVicyhYoKI0+uOeJ7bKmi08hb6BAQ1eTRaukRtMBbCo/FvBbE14vt2dnpidvCPv/KC0sQG1J+vUxUzSt94URvxNVBcRbsXCQKBgQDf8F1QZ4pUYP9KSCmUWbzpotAr+m84Q7Oqf4zc70p8rU8nGQSnNrQQWddqwF/UEiNniDj+n0FVwiEMslRWSqPYixyqI3dHuVxhi/4wdoIewCHq3MkcqHksl9y67Bhl8HXMGmg79IxiCsqj7oEF8aGJjAyEZm3d2roz0QNPQCaX+wKBgQCazX+Px/7jpcN7k4W7BXTtLfLwy8juvCpXM/8TeR27FWl2oz12fxilgZIp/VYp7kpUGNu5t4PZrJOSo09PTr6GCUmeZRwbkLTaKDbgLSqlmAbBj2lfdJaQJvHjBnF+jnVCspKCXUaoA/uJlix6/iAfeXxrk/cidR9mv4Aa4mDjiQKBgG2+SKyfoT3KrzFC/gVymM7SeDwlJZ4oJ4M1sN2Q8yr4b+LUMuCTQVkF/jiVgCDYprsVGgFGIGmbkkC7n/MN7w+u1ORYLxtaLnird21ellPlinmjq3c85O1CmuyLyUUju0bD5jMDnExrx3Tg7B/yk1xp4rR70fm4OCoukvWilYdDAoGBAK3Y77tqbno+D6W95fb8xb4xUUd1tEWgSY6CgjaqTRzbJ38cGuo92gBjKhDGLwaztcCw4yKPhEOum7nBGKKyxFfs8Z4vsG+m19JSdBfHf3PLModZwnjrRpatAnjTUW0DbPz+sfAwMgLnTCpElcSRQwjmioVAucCyd2FlMmqP5xB4","json","GBK",
-                "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApCzq4BIE4gMdEXxIAAUbiMpSytkzp+LVLVsBtji87rFGfWUcnrr3NKftaw0WtRu+36d1nDVOWW4CmgsOPyj1GOFoTcJOR/BqyIriwyLxpuMS8qgOqGJZXi+W4Nw2AJL6iMVwY2eI8F1G10gACK2I9TNJRzHh3tMTA6ItysbGoekRDtn6Xrkh5V6cyHQjLw0Q6MJK/68XT6/LWzarDEEYrSnIevOydMY32ptAgm5fp/h08M2khCmI6CuMWKmc87dPpd2krGVTALqprAQvB74AIqO+5DE0fN4LoitOYXAtWDCEF4kHN0hQUygIEGCwtMgEVzkf92VLlCX35YtDhWd1yQIDAQAB","RSA2");        AlipayMerchantIndirectAuthorderQuerystatusRequest request = new AlipayMerchantIndirectAuthorderQuerystatusRequest();
-        request.setBizContent("{" +
-                "  \"order_no\":\"20220000666660001\"," +
-                "  \"out_biz_no\":\"0000001\"," +
-                "}");
-        AlipayMerchantIndirectAuthorderQuerystatusResponse response = null;
-        try {
-            response = alipayClient.execute(request);
-        } catch (AlipayApiException e) {
-            e.printStackTrace();
-        }
-        if(response.isSuccess()){
-            System.out.println("调用成功");
-        } else {
-            System.out.println("调用失败");
-        }
-    }
 }
\ No newline at end of file
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TAppUserController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TAppUserController.java
index 58c709a..d23cb31 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TAppUserController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TAppUserController.java
@@ -82,6 +82,9 @@
         Integer roleType = UserExt.getUser().getObjectType();
         List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
         List<User> sales = userService.list(new QueryWrapper<User>().eq("deptid", 2));
+        if(UserExt.getUser().getObjectType()==3){
+            sales = userService.list(new QueryWrapper<User>().eq("deptid", 2).eq("objectType",3).eq("objectId",UserExt.getUser().getObjectId()));
+        }
         model.addAttribute("list",list);
         model.addAttribute("roleType",roleType);
         model.addAttribute("sales",sales);
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java
index 2adf231..006f64e 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java
@@ -1170,6 +1170,13 @@
             siteBooking.setCity(byId.getCity());
             siteBooking.setCityCode(byId.getCityCode());
         }
+        if (UserExt.getUser().getObjectType() == 3){
+            TStore byId = storeService.getById(UserExt.getUser().getObjectId());
+            siteBooking.setProvince(byId.getProvince());
+            siteBooking.setProvinceCode(byId.getProvinceCode());
+            siteBooking.setCity(byId.getCity());
+            siteBooking.setCityCode(byId.getCityCode());
+        }
 
         siteClient.addSiteBooking(siteBooking);
         System.out.println("================="+siteBooking);
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_add.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_add.html
index 4b9a4a0..c469402 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_add.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_add.html
@@ -154,6 +154,9 @@
             $("#t1").hide()
             $("#t2").hide()
             $("#t3").hide()
+            $("#t1").val("")
+            $("#t2").val("")
+            $("#t3").val("")
         }else {
             $("#t1").show()
             $("#t2").show()
@@ -173,20 +176,37 @@
             ajax.set("name",oneId);
             ajax.start();
         }
+        var pageElement = document.getElementById('page');
+        var event = new Event('change');
+        pageElement.dispatchEvent(event);
     }
 
 
     function updateOne(e) {
         var oneId=$(e).val();
         var ajax = new $ax(Feng.ctxPath + "/tShop/typeChangeOne", function(data){
-            if(data!=null){
+            if(data!=null&&data.length>0){
+                $("#t2").show()
                 var content1 = '<option value="">请选择</option>';
                 $.each(data, function(k,v) {
                     content1 += "<option value='"+v.id+"'>"+v.name+"</option>";
                 });
                 $("#type").empty().append(content1);
+            }else{
+                console.log("=-======0000")
+                $("#t2").val("")
+
+                $("#t2").hide()
+
             }
         });
+        if (oneId==2 || oneId==25|| oneId==27){
+            $("#t3").val("")
+
+            $("#t3").hide()
+        }
+
+
         ajax.set("id",oneId);
         ajax.start();
     }
@@ -204,9 +224,11 @@
     }
     function updateT(e) {
         var oneId = $('#type option:selected').text();
+
         console.log(oneId);
-        if (oneId!="详情"){
+        if (oneId!="详情"&&oneId!="指定商品"&&oneId!="指定折扣"){
             $("#t3").hide()
+            $("#t3").val("")
         }else{
             $("#t3").show()
         }
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_edit.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_edit.html
index cab31e1..71c3547 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_edit.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_edit.html
@@ -44,7 +44,7 @@
 <script type="text/javascript" src="http://webapi.amap.com/maps?v=1.4.15&key=77b37f0753049c4e712ea79a24e0719c"></script>
 <div class="ibox float-e-margins">
     <input hidden id="roleType" value="${roleType}">
-    <input hidden id="type" value="${type}">
+    <input hidden id="type1" value="${type}">
     <input hidden id="turnId" value="${data.turnId}">
     <input hidden id="id" value="${data.id}">
     <input hidden id="img1" value="${data.img}">
@@ -159,6 +159,12 @@
         range:true
     });
 
+
+    document.addEventListener('DOMContentLoaded', function() {
+        var selectElement = document.getElementById('page');
+        selectElement.onchange();
+    });
+
     function updateType(e) {
         let name  =  $("#model").val();
         console.log(name);
@@ -166,6 +172,9 @@
             $("#t1").hide()
             $("#t2").hide()
             $("#t3").hide()
+            $("#t1").val("")
+            $("#t2").val("")
+            $("#t3").val("")
         }else {
             $("#t1").show()
             $("#t2").show()
@@ -185,22 +194,40 @@
             ajax.set("name",oneId);
             ajax.start();
         }
+
+        var pageElement = document.getElementById('page');
+        var event = new Event('change');
+        pageElement.dispatchEvent(event);
     }
 
 
     function updateOne(e) {
         var oneId=$(e).val();
         var ajax = new $ax(Feng.ctxPath + "/tShop/typeChangeOne", function(data){
-            if(data!=null){
+            if(data!=null&&data.length>0){
+                $("#t2").show()
                 var content1 = '<option value="">请选择</option>';
                 $.each(data, function(k,v) {
                     content1 += "<option value='"+v.id+"'>"+v.name+"</option>";
                 });
                 $("#type").empty().append(content1);
+            }else{
+                console.log("=-======0000")
+                $("#t2").val("")
+                $("#t2").hide()
+
             }
         });
+
+
+        if (oneId==2 || oneId==25|| oneId==27){
+            $("#t3").val("")
+            $("#t3").hide()
+        }
         ajax.set("id",oneId);
         ajax.start();
+        updateT(document.getElementById("type"));
+
     }
 
     function updatePosition(e) {
@@ -217,8 +244,10 @@
     function updateT(e) {
         var oneId = $('#type option:selected').text();
         console.log(oneId);
-        if (oneId!="详情"){
+        if (oneId!="详情"&&oneId!="指定商品"&&oneId!="指定折扣"){
             $("#t3").hide()
+            $("#t3").val("")
+
         }else{
             $("#t3").show()
         }
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/cpPayment/cpPayment_add.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/cpPayment/cpPayment_add.html
index 7b36f3b..a1276d3 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/cpPayment/cpPayment_add.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/cpPayment/cpPayment_add.html
@@ -109,6 +109,7 @@
                 <label class="col-sm-3 control-label">*课包类型:</label>
                 <div class="col-sm-9">
                     <select style="width: 300px" class="form-control" id="coursePackageType" name="store" onchange="TCompetition.getCoursePackage(this)" >
+                        <option value="">请选择</option>
                         @for(obj in coursePackageType){
                         <option value="${obj.id}">${obj.name}</option>
                         @}
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_three.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_three.html
index 7379f20..469b5be 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_three.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_three.html
@@ -14,7 +14,7 @@
                         跳转模块
                     </button>
                 </div>
-                <select class="form-control" id="name" style="width: 400px;" onclick="updateType(this)">
+                <select class="form-control" id="name" style="width: 400px;" onchange="updateType(this)">
                     <option value="不跳转">不跳转</option>
                     <option value="加入玩湃">加入玩湃</option>
                     <option value="开始课程">开始课程</option>
@@ -42,7 +42,7 @@
                         跳转类型
                     </button>
                 </div>
-                <select class="form-control" id="type" style="width: 400px;" >
+                <select class="form-control" id="type" style="width: 400px;"  onchange="updateT(this)">
                     @for(obj in list1){
                     <option value="${obj.id}" ${obj.id == item.typeId ? 'selected=selected' : ''}>${obj.name}</option>
                     @}
@@ -83,10 +83,20 @@
         range:true
     });
 
+
+    function updateT(e) {
+        var oneId = $('#type option:selected').text();
+        console.log(oneId);
+        if (oneId!="详情"&&oneId!="指定商品"&&oneId!="指定折扣"){
+            $("#t3").hide()
+        }else{
+            $("#t3").show()
+        }
+    }
+
     function updateType(e) {
         let name  =  $("#name").val()
-        console.log(name
-        )
+
         if(name =='不跳转'){
             $("#t1").hide()
             $("#t2").hide()
@@ -109,18 +119,26 @@
             ajax.set("name",oneId);
             ajax.start();
         }
+
+        var pageElement = document.getElementById('page');
+        var event = new Event('change');
+        pageElement.dispatchEvent(event);
     }
 
 
     function updateOne(e) {
         var oneId=$(e).val();
         var ajax = new $ax(Feng.ctxPath + "/tShop/typeChangeOne", function(data){
-            if(data!=null){
+            if(data!=null&&data.length>0){
+                $("#t2").show()
                 var content1;
                 $.each(data, function(k,v) {
                     content1 += "<option value='"+v.id+"'>"+v.name+"</option>";
                 });
                 $("#type").empty().append(content1);
+            }else {
+                console.log("=-======0000")
+                $("#t2").hide()
             }
         });
         ajax.set("id",oneId);
@@ -129,6 +147,11 @@
 
     window.onload = function() {
         $("#name").val($("#name1").val());
+        if($("#name1").val()=="不跳转"){
+            $("#t1").hide()
+            $("#t2").hide()
+            $("#t3").hide()
+        }
     }
 </script>
 @}
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_two.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_two.html
index 377d70f..f0f25fa 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_two.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_add_two.html
@@ -12,7 +12,7 @@
                         跳转模块
                     </button>
                 </div>
-                <select class="form-control" id="name" style="width: 400px;" onclick="updateType(this)">
+                <select class="form-control" id="name" style="width: 400px;" onchange="updateType(this)">
                     <option value="" selected disabled>选择跳转模块</option>
                     <option value="不跳转">不跳转</option>
                     <option value="加入玩湃">加入玩湃</option>
@@ -82,8 +82,9 @@
     function updateT(e) {
         var oneId = $('#type option:selected').text();
         console.log(oneId);
-        if (oneId!="详情"){
+        if (oneId!="详情"&&oneId!="指定商品"&&oneId!="指定折扣"){
             $("#t3").hide()
+            $("#t3").val("")
         }else{
             $("#t3").show()
         }
@@ -97,6 +98,9 @@
             $("#t1").hide()
             $("#t2").hide()
             $("#t3").hide()
+            $("#t1").val("")
+            $("#t2").val("")
+            $("#t3").val("")
         }else {
             $("#t1").show()
             $("#t2").show()
@@ -137,6 +141,7 @@
             }else{
                 console.log("=-======0000")
                 $("#t2").hide()
+                $("#t2").val("")
 
             }
         });
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_three.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_three.html
index 0674a16..24fd9ad 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_three.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_three.html
@@ -12,7 +12,7 @@
                         跳转模块
                     </button>
                 </div>
-                <select class="form-control" id="name" style="width: 400px;" onclick="updateType(this)">
+                <select class="form-control" id="name" style="width: 400px;" onchange="updateType(this)">
                     <option value="" selected disabled>选择跳转模块</option>
                     <option value="不跳转">不跳转</option>
                     <option value="加入玩湃">加入玩湃</option>
@@ -39,7 +39,7 @@
                         跳转类型
                     </button>
                 </div>
-                <select class="form-control" id="type" style="width: 400px;" >
+                <select class="form-control" id="type" style="width: 400px;" onchange="updateT(this)">
 
                 </select>
             </div>
@@ -77,6 +77,23 @@
             range:true
         });
 
+
+        document.addEventListener('DOMContentLoaded', function() {
+            var selectElement = document.getElementById('page');
+            selectElement.onchange();
+        });
+
+        function updateT(e) {
+            var oneId = $('#type option:selected').text();
+            console.log(oneId);
+            if (oneId!="详情"&&oneId!="指定商品"&&oneId!="指定折扣"){
+                $("#t3").hide()
+                $("#t3").val("")
+            }else{
+                $("#t3").show()
+            }
+        }
+
         function updateType(e) {
             let name  =  $("#name").val()
             console.log(name
@@ -85,6 +102,9 @@
                 $("#t1").hide()
                 $("#t2").hide()
                 $("#t3").hide()
+                $("#t1").val("")
+                $("#t2").val("")
+                $("#t3").val("")
             }else {
                 $("#t1").show()
                 $("#t2").show()
@@ -103,22 +123,33 @@
                 ajax.set("name",oneId);
                 ajax.start();
             }
+
+            var pageElement = document.getElementById('page');
+            var event = new Event('change');
+            pageElement.dispatchEvent(event);
         }
 
 
         function updateOne(e) {
             var oneId=$(e).val();
             var ajax = new $ax(Feng.ctxPath + "/tShop/typeChangeOne", function(data){
-                if(data!=null){
+                if(data!=null&&data.length>0){
+                    $("#t2").show()
                     var content1;
                     $.each(data, function(k,v) {
                         content1 += "<option value='"+v.id+"'>"+v.name+"</option>";
                     });
                     $("#type").empty().append(content1);
+                }else {
+                    console.log("=-======0000")
+                    $("#t2").hide()
+                    $("#t2").val("")
                 }
             });
             ajax.set("id",oneId);
             ajax.start();
+            updateT(document.getElementById("type"));
+
         }
     </script>
     @}
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_two.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_two.html
index 0844d59..fe20194 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_two.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tShop/TShop_edit_two.html
@@ -11,7 +11,7 @@
                         跳转模块
                     </button>
                 </div>
-                <select class="form-control" id="name" style="width: 400px;" onclick="updateType(this)">
+                <select class="form-control" id="name" style="width: 400px;" onchange="updateType(this)">
                     <option value="不跳转">不跳转</option>
                     <option value="加入玩湃">加入玩湃</option>
                     <option value="开始课程">开始课程</option>
@@ -39,7 +39,7 @@
                         跳转类型
                     </button>
                 </div>
-                <select class="form-control" id="type" style="width: 400px;" >
+                <select class="form-control" id="type" style="width: 400px;"  onchange="updateT(this)">
                     @for(obj in list1){
                     <option value="${obj.id}" ${obj.id == item.typeId ? 'selected=selected' : ''}>${obj.name}</option>
                     @}
@@ -76,12 +76,15 @@
 <script src="${ctxPath}/modular/system/tShop/tShopOtherOne.js"></script>
 <script>
 
-
-
-
     laydate.render({
         elem: '#time',
         range:true
+    });
+
+
+    document.addEventListener('DOMContentLoaded', function() {
+        var selectElement = document.getElementById('page');
+        selectElement.onchange();
     });
 
     function updateType(e) {
@@ -92,6 +95,9 @@
             $("#t1").hide()
             $("#t2").hide()
             $("#t3").hide()
+            $("#t1").val("")
+            $("#t2").val("")
+            $("#t3").val("")
         }else {
             $("#t1").show()
             $("#t2").show()
@@ -117,12 +123,23 @@
     }
 
 
+    function updateT(e) {
+        var oneId = $('#type option:selected').text();
+        console.log(oneId);
+        if (oneId!="详情"&&oneId!="指定商品"&&oneId!="指定折扣"){
+            $("#t3").hide()
+            $("#t2").val("")
+        }else{
+            $("#t3").show()
+            $("#t3").val("")
+        }
+    }
+
     function updateOne(e) {
         var oneId=$(e).val();
         var ajax = new $ax(Feng.ctxPath + "/tShop/typeChangeOne", function(data){
             if(data!=null&&data.length>0){
                 $("#t2").show()
-
                 var content1;
                 $.each(data, function(k,v) {
                     content1 += "<option value='"+v.id+"'>"+v.name+"</option>";
@@ -131,12 +148,21 @@
             }else {
                 console.log("=-======0000")
                 $("#t2").hide()
+                $("#t2").val("")
 
 
             }
         });
+        if (oneId==2 || oneId==25|| oneId==27){
+            $("#t3").val("")
+
+            $("#t3").hide()
+        }
+
         ajax.set("id",oneId);
         ajax.start();
+        updateT(document.getElementById("type"));
+
     }
 
     window.onload = function() {
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/user/user_add.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/user/user_add.html
index b79d2f5..6bb689b 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/user/user_add.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/user/user_add.html
@@ -6,13 +6,16 @@
 			<div class="row">
 	<div class="col-sm-6">
 		<div id="driverInfoContent">
-			<#input id="name" name="姓名" underline="true"/>
-			<#input id="birthday" name="出生日期" underline="true" type="text"/>
-			<#input id="rePassword" name="确认密码" type="password" underline="true"/>
-			<#input id="citySel" name="部门" underline="true" readonly="readonly" hidden="deptid"
-			clickFun="UserInfoDlg.showDeptSelectTree(); return false;"
-			style="background-color: #ffffff !important;"/>
-			<#input id="phone" name="电话" underline="true"/>
+			<#input id="name" name="员工姓名" underline="true"/>
+			<#input id="phone" name="联系电话" underline="true"/>
+			<#avatar id="avatar" name="照片" underline="true"/>
+			<#input id="birthday" name="生日" underline="true" type="text"/>
+			<#select id="sex" name="性别" underline="true" >
+			<option value="1">男</option>
+			<option value="2">女</option>
+			</#select>
+			<#input id="idCard" name="身份证号" type="text" underline="true"/>
+
 		</div>
 	</div>
 </div>
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/advertisement/advertisement.js b/cloud-server-management/src/main/webapp/static/modular/system/advertisement/advertisement.js
index e679a6d..fa35e15 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/advertisement/advertisement.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/advertisement/advertisement.js
@@ -317,17 +317,17 @@
             return;
         }
     }
-    if(name !='0') {
-        if ($("#roleType").val() == 1) {
-            if ($("#type").val() == '') {
+    console.log("====pagepagepage==============="+$("#page").val())
+    if(name !='0'){
+            if ($("#type").val() == ''&&$("#page").val()!=2&&$("#page").val()!=25&&$("#page").val()!=27&&$("#page").val()!=37&&$("#page").val()!=28) {
                 Feng.info("请选择跳转类型")
                 return;
             }
-        }
+
     }
     if(name !='0') {
         if ($("#roleType").val() == 1) {
-            if ($('#type option:selected').text() == "详情") {
+            if ($('#type option:selected').text() == "详情"&&$('#type option:selected').text() == "指定商品"&&$('#type option:selected').text() == "指定折扣") {
                 if ($("#pageId").val() == '') {
                     Feng.info("请输入跳转ID")
                     return;
@@ -413,7 +413,7 @@
     }
     if(name !='0') {
         if ($("#roleType").val() == 1) {
-            if ($("#type").val() == '') {
+            if ($("#type").val() == ''&&$("#page").val()!=2&&$("#page").val()!=25&&$("#page").val()!=27&&$("#page").val()!=37&&$("#page").val()!=28) {
                 Feng.info("请选择跳转类型")
                 return;
             }
@@ -421,7 +421,7 @@
     }
     if(name !='0') {
         if ($("#roleType").val() == 1) {
-            if ($('#type option:selected').text() == "详情") {
+            if ($('#type option:selected').text() == "详情"&&$('#type option:selected').text() == "指定商品"&&$('#type option:selected').text() == "指定折扣") {
                 if ($("#pageId").val() == '') {
                     Feng.info("请输入跳转ID")
                     return;
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherOne.js b/cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherOne.js
index 5878705..1cd1d4c 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherOne.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherOne.js
@@ -597,6 +597,12 @@
         Feng.info("请选择跳转模块")
         return;
     }
+
+    if ($("#type").val() == ''&&$("#page").val()!=2&&$("#page").val()!=25&&$("#page").val()!=27&&$("#page").val()!=37&&$("#page").val()!=28) {
+        Feng.info("请选择跳转类型")
+        return;
+    }
+
     let page = $("#page").val()
     if(page=='' && name !='不跳转'){
         Feng.info("请选择跳转页面")
@@ -606,12 +612,23 @@
 
     if(type==''  && name !='不跳转'){
     }
+
+
+
     let turnId = $("#turnId").val()
 
-    if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
-        Feng.info("请输入跳转ID")
-        return;
+    // if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
+    //     Feng.info("请输入跳转ID")
+    //     return;
+    // }
+    if ($('#type option:selected').text() == "详情" &&$('#type option:selected').text() == "指定商品"&&$('#type option:selected').text() == "指定折扣") {
+        if ($("#turnId").val() == '') {
+            Feng.info("请输入跳转ID")
+            return;
+        }
     }
+
+
     let sort = $("#sort").val()
 
     if(sort==''){
@@ -647,6 +664,11 @@
     if(url==''){
     }
 
+    if ($("#type").val() == ''&&$("#page").val()!=2&&$("#page").val()!=25&&$("#page").val()!=27&&$("#page").val()!=37&&$("#page").val()!=28) {
+        Feng.info("请选择跳转类型")
+        return;
+    }
+
     let name = $("#name").val()
     console.log(name)
 
@@ -665,12 +687,20 @@
     }
     let turnId = $("#turnId").val()
 
-    if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
-        if(turnId==""){
+
+    if ($('#type option:selected').text() == "详情"&&$('#type option:selected').text() == "指定商品"&&$('#type option:selected').text() == "指定折扣") {
+        if ($("#turnId").val() == '') {
             Feng.info("请输入跳转ID")
             return;
         }
     }
+
+    // if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
+    //     if(turnId==""){
+    //         Feng.info("请输入跳转ID")
+    //         return;
+    //     }
+    // }
     let sort = $("#sort").val()
 
     if(sort==''){
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherTwo.js b/cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherTwo.js
index 57f6acf..ac30f9f 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherTwo.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/tShop/tShopOtherTwo.js
@@ -607,10 +607,23 @@
     }
     let turnId = $("#turnId").val()
 
-    if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
-        Feng.info("请输入跳转ID")
+    // if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
+    //     Feng.info("请输入跳转ID")
+    //     return;
+    // }
+
+    if ($('#type option:selected').text() == "详情" &&$('#type option:selected').text() == "指定商品"&&$('#type option:selected').text() == "指定折扣") {
+        if ($("#turnId").val() == '') {
+            Feng.info("请输入跳转ID")
+            return;
+        }
+    }
+
+    if ($("#type").val() == ''&&$("#page").val()!=2&&$("#page").val()!=25&&$("#page").val()!=27&&$("#page").val()!=37&&$("#page").val()!=28) {
+        Feng.info("请选择跳转类型")
         return;
     }
+
     let sort = $("#sort").val()
 
     if(sort==''){
@@ -646,6 +659,10 @@
     if(url==''){
     }
 
+    if ($("#type").val() == ''&&$("#page").val()!=2&&$("#page").val()!=25&&$("#page").val()!=27&&$("#page").val()!=37&&$("#page").val()!=28) {
+        Feng.info("请选择跳转类型")
+        return;
+    }
     let name = $("#name").val()
     console.log(name)
 
@@ -664,12 +681,20 @@
     }
     let turnId = $("#turnId").val()
 
-    if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
-        if(turnId==""){
+    // if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
+    //     if(turnId==""){
+    //         Feng.info("请输入跳转ID")
+    //         return;
+    //     }
+    // }
+
+    if ($('#type option:selected').text() == "详情"&&$('#type option:selected').text() == "指定商品"&&$('#type option:selected').text() == "指定折扣") {
+        if ($("#turnId").val() == '') {
             Feng.info("请输入跳转ID")
             return;
         }
     }
+
     let sort = $("#sort").val()
 
     if(sort==''){
@@ -750,12 +775,19 @@
     }
     let turnId = $("#turnId").val()
 
-    if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
-        if(turnId==""){
+    // if( type =='11' || type=='13'|| type=='16'|| type=='19'|| type=='21'|| type=='40'|| type=='43'){
+    //     if(turnId==""){
+    //         Feng.info("请输入跳转ID")
+    //         return;
+    //     }
+    // }
+    if ($('#type option:selected').text() == "详情"&&$('#type option:selected').text() == "指定商品"&&$('#type option:selected').text() == "指定折扣") {
+        if ($("#turnId").val() == '') {
             Feng.info("请输入跳转ID")
             return;
         }
     }
+
     let sort = $("#sort").val()
 
     if(sort==''){
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/ticket/ticket.js b/cloud-server-management/src/main/webapp/static/modular/system/ticket/ticket.js
index bb07fe9..5d64418 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/ticket/ticket.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/ticket/ticket.js
@@ -57,6 +57,10 @@
                 return {1: "上架", 2: "下架"}[value]
             }
         },
+        {title: '审核状态', field: 'auditStatus', visible: true, align: 'center', valign: 'middle',
+            formatter: function (value, row, index) {
+                return {2: "待审核", 1: "已通过",3: "已拒绝"}[value]
+            }},
     ];
 };
 function currentTime(timestamp){
diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
index 19817df..486a1de 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
@@ -335,6 +335,7 @@
     @PostMapping("/base/site/aliPaymentSiteCallback")
     public void aliPaymentSiteCallback(HttpServletRequest request, HttpServletResponse response){
         try {
+            System.out.println("回调回调回调");
             Map<String, String> map = payMoneyUtil.alipayCallback(request);
             if(null != map){
                 String code = map.get("out_trade_no");
diff --git a/cloud-server-other/src/main/java/com/dsh/other/mapper/SiteBookingMapper.java b/cloud-server-other/src/main/java/com/dsh/other/mapper/SiteBookingMapper.java
index f5244ef..8a3ef81 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/mapper/SiteBookingMapper.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/mapper/SiteBookingMapper.java
@@ -14,7 +14,7 @@
  * @date 2023/7/13 16:48
  */
 public interface SiteBookingMapper extends BaseMapper<SiteBooking> {
-    List<BillingRequestOfType> queryDatas(Integer appUserId, String monthStart, String monthEnd);
+    List<BillingRequestOfType> queryDatas(@Param("appUserId")Integer appUserId,@Param("monthStart") String monthStart,@Param("monthEnd")  String monthEnd);
 
     List<SiteBooking> listAll(@Param("query")SiteBookingQuery query, @Param("sTime")String sTime, @Param("eTime")String eTime, @Param("amount") BigDecimal amount);
 
diff --git a/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java b/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
index b0a16b3..0765054 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
@@ -530,6 +530,7 @@
         String code = siteBooking.getOrderNo();
         Integer id = siteBooking.getId();
         ResultUtil alipay = payMoneyUtil.alipay("预约场地", "预约场地", id.toString(), code, paymentPrice.toString(), "/base/site/aliPaymentSiteCallback");
+        System.out.println("预约场地----"+alipay.getCode());
         if(alipay.getCode() == 200){
             new Thread(new Runnable() {
                 @Override
@@ -557,6 +558,7 @@
 //                                String s = data1.get("tradeStatus");
                                 String tradeNo = resultUtil.getTradeNo();
                                 String s = resultUtil.getTradeStatus();
+                                System.out.println("ssssss"+s);
                                 if("TRADE_CLOSED".equals(s) || "TRADE_FINISHED".equals(s) || num == 10){
                                     break;
                                 }
diff --git a/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java b/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java
index 7eeb104..b294a0c 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java
@@ -34,6 +34,7 @@
                 if(System.currentTimeMillis()>l){
                     siteBooking.setStatus(5);
                     siteBookingMapper.updateById(siteBooking);
+
                 }
             }
             //定时修改赛事状态
@@ -41,4 +42,27 @@
             e.printStackTrace();
         }
     }
+
+
+
+    //预约场地后,时间超过endTime,状态变为已过期
+    @Scheduled(fixedRate = 60000)
+    public void taskMinute1(){
+        try {
+            List<SiteBooking> siteBookings = siteBookingMapper.selectList(new LambdaQueryWrapper<SiteBooking>().eq(SiteBooking::getStatus, 1));
+            for (SiteBooking siteBooking : siteBookings) {
+                    long time = siteBooking.getEndTime().getTime();
+                    if (System.currentTimeMillis() > time) {
+                        siteBooking.setStatus(4);
+                        siteBookingMapper.updateById(siteBooking);
+                    }
+
+            }
+            //定时修改赛事状态
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+
 }
diff --git a/cloud-server-other/src/main/resources/mapper/BannerMapper.xml b/cloud-server-other/src/main/resources/mapper/BannerMapper.xml
index 2196b9f..77f1184 100644
--- a/cloud-server-other/src/main/resources/mapper/BannerMapper.xml
+++ b/cloud-server-other/src/main/resources/mapper/BannerMapper.xml
@@ -52,7 +52,7 @@
     <select id="list1" resultType="com.dsh.other.model.BannerVo">
                     select tb.id as id,tb.img as img, tb.page as page,tb.name as name,tb.type as type,tb.turnId as turnId  , tb.model as model
                         from t_banner tb
-                    where tb.position = #{position}
+                    where tb.position = #{position} and tb.state =1
     </select>
 
 </mapper>
diff --git a/cloud-server-other/src/main/resources/mapper/SiteMapper.xml b/cloud-server-other/src/main/resources/mapper/SiteMapper.xml
index ea05b70..7dd6493 100644
--- a/cloud-server-other/src/main/resources/mapper/SiteMapper.xml
+++ b/cloud-server-other/src/main/resources/mapper/SiteMapper.xml
@@ -82,7 +82,7 @@
         and t1.cityManagerId = #{query.objectId}
         </if>
         <if test="query.objectType == 3">
-        and t2.storeStaffId = #{query.objectId}
+        and t2.id = #{query.objectId}
         </if>
             <if test="query.city!=null and query.city!= ''">
                 and t1.city = #{query.city}

--
Gitblit v1.7.1