From ae9bfd2d66f68a553786ac78b12f4390e65e4e09 Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期五, 24 十一月 2023 18:30:18 +0800
Subject: [PATCH] 后台bug修改
---
cloud-server-management/src/main/webapp/static/modular/system/finance/rechargeRecords.js | 2
cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_edit.html | 13 +
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IUserService.java | 3
cloud-server-competition/src/main/resources/mapper/ParticipantMapper.xml | 7
cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/storeIncome.html | 4
cloud-server-management/src/main/webapp/WEB-INF/view/system/advertisement/advertisement_add.html | 10 +
cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetitionUser.js | 9
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/UserServiceImpl.java | 29 +++
cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js | 2
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java | 15 +
cloud-server-management/pom.xml | 7
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/MgtShopAuthDto.java | 2
cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java | 1
cloud-server-management/src/main/webapp/static/modular/system/tGoods/tPay_info.js | 1
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java | 66 +++++++-
cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java | 2
cloud-server-management/src/main/java/com/dsh/course/feignClient/account/AppUserClient.java | 6
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/GateDataController.java | 18 +
cloud-server-management/src/main/webapp/static/modular/system/appUser/tAppUser.js | 1
cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js | 5
cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml | 6
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/util/ALiSendSms.java | 123 +++++++++++++++
cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/ExcelUtil.java | 4
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java | 9
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TAppUserController.java | 2
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java | 7
cloud-server-management/src/main/webapp/WEB-INF/view/login.html | 15 +
cloud-server-management/src/main/webapp/static/modular/system/gateData/gateData.js | 37 +++
cloud-server-management/src/main/webapp/WEB-INF/view/system/gateData/GateData.html | 52 ++++++
29 files changed, 397 insertions(+), 61 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 c137268..a0d433c 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
@@ -172,6 +172,7 @@
return appUser;
}
+ // todo 短信验证码
@ResponseBody
@PostMapping("/base/appUser/getSMSCode")
@ApiOperation(value = "获取短信验证码", tags = {"APP-登录注册"})
diff --git a/cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml b/cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml
index e58d540..c8a40a9 100644
--- a/cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml
+++ b/cloud-server-activity/src/main/resources/mapper/PointsMerchandiseMapper.xml
@@ -111,11 +111,11 @@
order by sort desc
</select>
<select id="changeState" >
- update t_benefits_videos set
- state = #{state}
+ update t_points_merchandise set
+ shelves = #{state}
<where>
<if test="ids != null and ids.size()>0">
- AND t_benefits_videos.id IN
+ AND t_points_merchandise.id IN
<foreach collection="ids" separator="," item="id" open="(" close=")">
#{id}
</foreach>
diff --git a/cloud-server-competition/src/main/resources/mapper/ParticipantMapper.xml b/cloud-server-competition/src/main/resources/mapper/ParticipantMapper.xml
index 1c578f1..43bcc47 100644
--- a/cloud-server-competition/src/main/resources/mapper/ParticipantMapper.xml
+++ b/cloud-server-competition/src/main/resources/mapper/ParticipantMapper.xml
@@ -2,10 +2,9 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dsh.competition.mapper.ParticipantMapper">
<select id="getPeopleFromId" resultType="com.dsh.competition.feignclient.model.CompetitionUser">
- select t2.id, t2.name,t2.gender sex,t2.phone ,t2.idcard idCard ,t3.payStatus state
- from t_user_competition t1
- left join t_participant t2 on t1.participantId = t2.id
- left join t_payment_competition t3 on t1.paymentCompetitionId = t3.id
+ select t2.name,t2.gender sex,t2.phone ,t2.idcard idCard ,t3.payStatus state
+ from t_user_competition t1 left join t_participant t2 on t1.participantId = t2.id
+ left join t_payment_competition t3 on t1.paymentCompetitionId = t3.id
where t1.competitionId =#{id} and t2.id is not null and t3.id is not null
<if test="state !=null and state !='' and state ==1">
and t3.payStatus in (1,2)
diff --git a/cloud-server-management/pom.xml b/cloud-server-management/pom.xml
index b050212..1da1675 100644
--- a/cloud-server-management/pom.xml
+++ b/cloud-server-management/pom.xml
@@ -88,7 +88,12 @@
<artifactId>jdom</artifactId>
<version>1.1.3</version>
</dependency>
-
+ <!--阿里云短信-->
+ <dependency>
+ <groupId>com.aliyun</groupId>
+ <artifactId>aliyun-java-sdk-core</artifactId>
+ <version>4.4.3</version>
+ </dependency>
<!--读取excel文件-->
<dependency>
<groupId>org.apache.poi</groupId>
diff --git a/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/AppUserClient.java b/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/AppUserClient.java
index 1865f39..8977bf9 100644
--- a/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/AppUserClient.java
+++ b/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/AppUserClient.java
@@ -11,6 +11,10 @@
import com.dsh.guns.modular.system.model.*;
import com.dsh.guns.modular.system.model.dto.GiftSearchDto;
import com.dsh.guns.modular.system.model.dto.SelectDto;
+import com.dsh.guns.modular.system.util.ResultUtil;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestBody;
@@ -20,6 +24,8 @@
@FeignClient("mb-cloud-account")
public interface AppUserClient {
+
+
/**
* 根据介绍有礼id查询当前活动参与次数
*/
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/GateDataController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/GateDataController.java
index 222ec11..dab5f0c 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/GateDataController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/GateDataController.java
@@ -22,9 +22,11 @@
import com.dsh.guns.modular.system.model.*;
import com.dsh.guns.modular.system.service.ICityService;
import com.dsh.guns.modular.system.service.IRegionService;
+import com.dsh.guns.modular.system.service.TOperatorService;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.collect.Lists;
import com.google.maps.internal.ApiResponse;
+import groovyjarjarpicocli.CommandLine;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
@@ -52,12 +54,15 @@
@Autowired
private SiteClient siteClient;
private String PREFIX = "/system/gateData/";
-
+ @Autowired
+ private TOperatorService operatorService;
/**
* 跳转到充值记录页面
*/
@RequestMapping("")
public String index(Model model) {
+ List<TOperator> list = operatorService.list(new QueryWrapper<TOperator>().ne("state", 3));
+ model.addAttribute("list",list);
return PREFIX + "GateData.html";
}
/**
@@ -65,9 +70,10 @@
*/
@RequestMapping("/list")
@ResponseBody
- public Object list() {
+ public Object list(Integer storeId) {
try {
- String apiUrl = "https://try.daowepark.com/v7/user_api/general/spaceDoorData?space_id=1001";
+ if (storeId!=null){
+ String apiUrl = "https://try.daowepark.com/v7/user_api/general/spaceDoorData?space_id="+storeId;
URL url = new URL(apiUrl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
@@ -102,6 +108,8 @@
} else {
System.out.println("请求失败: " + responseCode);
}
+ }
+
} catch (IOException e) {
e.printStackTrace();
}
@@ -112,9 +120,9 @@
*/
@RequestMapping("/totalNum")
@ResponseBody
- public Object totalNum() {
+ public Object totalNum(Integer storeId) {
try {
- String apiUrl = "https://try.daowepark.com/v7/user_api/general/spaceDoorData?space_id=1001";
+ String apiUrl = "https://try.daowepark.com/v7/user_api/general/spaceDoorData?space_id="+storeId;
URL url = new URL(apiUrl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java
index 667a190..1e2cd40 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java
@@ -26,6 +26,7 @@
import com.dsh.guns.modular.system.util.ResultUtil;
+import com.mysql.cj.x.protobuf.MysqlxExpr;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
@@ -57,9 +58,21 @@
private ICityService cityService;
@Autowired
private IOperatorAuthService operatorAuthService;
+ @Autowired
+ private IStoreService storeService;
-
+ /**
+ * 根据运营商id查询所有门店
+ */
+ @RequestMapping("/getStores")
+ @ResponseBody
+ public List<TStore> getStores(Integer id)
+ {
+ return storeService.list(new QueryWrapper<TStore>()
+ .eq("operatorId",id)
+ .ne("state",3));
+ }
/**
* 跳转运营商管理首页
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 fe5bfdf..27b3622 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
@@ -158,7 +158,7 @@
}
if (data.getViplevelId()!=null){
- // todo 创建会员等级表
+
model.addAttribute("level","黄金");
}
model.addAttribute("level","黄金");
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java
index 0bfbbc2..69c1311 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java
@@ -1058,16 +1058,17 @@
@ResponseBody
@PostMapping("/updateCoursePackage")
public ResultUtil updateCoursePackage(TCoursePackage coursePackage, String coursePackagePaymentConfig){
-
// System.out.println("=======getClassStartTime============"+classStartTime);
String startTime = coursePackage.getClassStartTime();
- JSONArray jsonArray = JSON.parseArray(startTime);
+ String s = startTime.replaceAll(" ", "");
+
+ JSONArray jsonArray = JSON.parseArray(s);
System.out.println("=======jsonArray==========="+jsonArray);
List<String> first = new ArrayList<>();
List<String> second = new ArrayList<>();
for (int i = 0; i < jsonArray.size(); i++) {
-// JSONObject jsonObject = JSON.parseObject(jsonArray.getString(i));
+// JSONObject jsonObject = JSON.parseObject(jsonArray.getString(i));
String jsonString = jsonArray.getString(i);
String[] split = jsonString.split("-");
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java
index 620978e..2b8a8d2 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/LoginController.java
@@ -1,10 +1,14 @@
package com.dsh.guns.modular.system.controller.system;
+import com.dsh.course.feignClient.account.AppUserClient;
+import com.dsh.course.feignClient.account.model.TAppUser;
import com.dsh.course.feignClient.auth.UserClient;
import com.dsh.course.feignClient.auth.model.GetTokenRequest;
import com.dsh.course.feignClient.auth.model.TokenResponse;
import com.dsh.course.model.node.MenuNode;
+import com.dsh.course.util.RedisUtil;
import com.dsh.guns.config.UserExt;
+import com.dsh.guns.core.util.ToolUtil;
import com.dsh.guns.modular.system.controller.util.CaptchaGenerator;
import com.dsh.guns.modular.system.controller.util.CaptchaImageGenerator;
import com.dsh.guns.modular.system.controller.util.MD5;
@@ -12,6 +16,7 @@
import com.dsh.guns.modular.system.service.IRelationService;
import com.dsh.guns.modular.system.service.IRoleService;
import com.dsh.guns.modular.system.util.CacheUtil;
+import com.dsh.guns.modular.system.util.ResultUtil;
import com.google.code.kaptcha.Constants;
import com.dsh.guns.core.base.controller.BaseController;
import com.dsh.guns.core.common.exception.InvalidKaptchaException;
@@ -24,6 +29,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -54,6 +60,8 @@
@Autowired
private IRoleService roleService;
+ @Autowired
+ private AppUserClient appUserClient;
@Resource
private UserClient userClient;
@@ -65,8 +73,33 @@
+ /**
+ * 跳转到修改密码页面
+ */
+ @PostMapping("/update")
+ public String updatePassword(Model model) {
+ return "/password.html" ;
+ }
+ @Autowired
+ private RedisUtil redisUtil;
+ /**
+ * 点击登录执行的动作
+ */
+ @RequestMapping(value = "/updatePassword", method = RequestMethod.POST)
+ public Object loginVali(String username, String password,String code) {
-
+ User user = userService.getByAccount(username);
+ if (user==null)return "用户不存在";
+ password = AESUtils.decrypt(password);
+ String s = MD5.md5(password);
+ if(user.getPassword().equals(s))return "新密码和旧密码一致";
+ //验证短信验证码
+ if(ToolUtil.isEmpty(code))return "无效的验证码";
+ String value = redisUtil.getValue(user.getPhone());
+ if(ToolUtil.isEmpty(value) || !code.equals(value))return "手机验证码不正确";
+ user.setPassword(s);
+ return "修改成功!";
+ }
/**
* 跳转到主页
*/
@@ -118,6 +151,21 @@
// || user.getPassWordUpdate().getTime() + 7776000000L <= System.currentTimeMillis()
// ? a: "");
return "/index.html";
+ }
+ @RequestMapping("/getSMSCode")
+ public ResultUtil getSMSCode(String phone){
+ if(ToolUtil.isEmpty(phone)){
+ return ResultUtil.paranErr("phone");
+ }
+ try {
+ TAppUser appUserByPhone = appUserClient.getAppUserByPhone(phone);
+ if (appUserByPhone==null)return ResultUtil.error("当前手机号未注册!");
+ ResultUtil smsCode = userService.getSMSCode(phone);
+ return smsCode;
+ }catch (Exception e){
+ e.printStackTrace();
+ return ResultUtil.runErr();
+ }
}
@@ -179,20 +227,20 @@
f++;
loginFailures.put(username, f);
}
-
+ if (KaptchaUtil.getKaptchaOnOff()) {
+ String kaptcha = super.getPara("kaptcha").trim();
+ String code = (String) super.getSession().getAttribute(Constants.KAPTCHA_SESSION_KEY);
+ if (Objects.isNull(kaptcha) || !kaptcha.equalsIgnoreCase(code)) {
+ model.addAttribute("tips", "验证码错误");
+ return "/login.html";
+ }
+ }
// if (f > 5 && (System.currentTimeMillis() - t) <= (30 * 60 * 1000)) {
// model.addAttribute("tips", "登录次数过多,请等30分钟再试!");
// return "/login.html";
// }
//验证验证码是否正确
//Verify if the verification code is correct.
- if (KaptchaUtil.getKaptchaOnOff()) {
- String kaptcha = super.getPara("kaptcha").trim();
- String code = (String) super.getSession().getAttribute(Constants.KAPTCHA_SESSION_KEY);
- if (Objects.isNull(kaptcha) || !kaptcha.equalsIgnoreCase(code)) {
- throw new InvalidKaptchaException();
- }
- }
User user = userService.getByAccount(username);
password = AESUtils.decrypt(password);
String s = MD5.md5(password);
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/util/ALiSendSms.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/util/ALiSendSms.java
new file mode 100644
index 0000000..7ce0067
--- /dev/null
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/util/ALiSendSms.java
@@ -0,0 +1,123 @@
+package com.dsh.guns.modular.system.controller.util;
+
+
+import com.aliyuncs.CommonRequest;
+import com.aliyuncs.CommonResponse;
+import com.aliyuncs.DefaultAcsClient;
+import com.aliyuncs.IAcsClient;
+import com.aliyuncs.exceptions.ClientException;
+import com.aliyuncs.profile.DefaultProfile;
+import com.google.gson.Gson;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+/**
+ * 阿里云短信工具类
+ */
+@Component
+public class ALiSendSms {
+
+ // 设置鉴权参数,初始化客户端
+ private DefaultProfile profile = DefaultProfile.getProfile(
+ "cn-hangzhou",// 地域ID
+ "LTAI5tSWQMMn9HNU9Zatoe1T",// 您的AccessKey ID
+ "kSOsRakIMPbvTlgXU19pYfbwmBXBA4");// 您的AccessKey Secret
+ private IAcsClient client = new DefaultAcsClient(profile);
+
+ private static void log_print(String functionName, Object result) {
+ Gson gson = new Gson();
+ System.out.println("-------------------------------" + functionName + "-------------------------------");
+ System.out.println(gson.toJson(result));
+ }
+
+ /**
+ * 添加短信模板
+ */
+ public String addSmsTemplate() throws ClientException {
+ CommonRequest addSmsTemplateRequest = new CommonRequest();
+ addSmsTemplateRequest.setSysDomain("dysmsapi.aliyuncs.com");
+ addSmsTemplateRequest.setSysAction("AddSmsTemplate");
+ addSmsTemplateRequest.setSysVersion("2017-05-25");
+ // 短信类型。0:验证码;1:短信通知;2:推广短信;3:国际/港澳台消息
+ addSmsTemplateRequest.putQueryParameter("TemplateType", "0");
+ // 模板名称,长度为1~30个字符
+ addSmsTemplateRequest.putQueryParameter("TemplateName", "测试短信模板");
+ // 模板内容,长度为1~500个字符
+ addSmsTemplateRequest.putQueryParameter("TemplateContent", "您正在申请手机注册,验证码为:${code},5分钟内有效!");
+ // 短信模板申请说明
+ addSmsTemplateRequest.putQueryParameter("Remark", "测试");
+ CommonResponse addSmsTemplateResponse = client.getCommonResponse(addSmsTemplateRequest);
+ String data = addSmsTemplateResponse.getData();
+ // 消除返回文本中的反转义字符
+ String sData = data.replaceAll("'\'", "");
+ log_print("addSmsTemplate", sData);
+ Gson gson = new Gson();
+ // 将字符串转换为Map类型,取TemplateCode字段值
+ Map map = gson.fromJson(sData, Map.class);
+ Object templateCode = map.get("TemplateCode");
+ return templateCode.toString();
+ }
+
+ /**
+ * 发送短信
+ */
+ public String sendSms(String phone, String templateCode, String json) throws ClientException {
+ CommonRequest request = new CommonRequest();
+ request.setSysDomain("dysmsapi.aliyuncs.com");
+ request.setSysVersion("2017-05-25");
+ request.setSysAction("SendSms");
+ // 接收短信的手机号码
+ request.putQueryParameter("PhoneNumbers", phone);
+ // 短信签名名称。请在控制台签名管理页面签名名称一列查看(必须是已添加、并通过审核的短信签名)。
+ request.putQueryParameter("SignName", "玩湃");
+ // 短信模板ID
+ request.putQueryParameter("TemplateCode", templateCode);
+ // 短信模板变量对应的实际值,JSON格式。
+ request.putQueryParameter("TemplateParam", json);
+ CommonResponse commonResponse = client.getCommonResponse(request);
+ String data = commonResponse.getData();
+ String sData = data.replaceAll("'\'", "");
+ log_print("sendSms", sData);
+ return sData;
+ }
+
+ /**
+ * 查询发送详情
+ */
+ private void querySendDetails(String bizId) throws ClientException {
+ CommonRequest request = new CommonRequest();
+ request.setSysDomain("dysmsapi.aliyuncs.com");
+ request.setSysVersion("2017-05-25");
+ request.setSysAction("QuerySendDetails");
+ // 接收短信的手机号码
+ request.putQueryParameter("PhoneNumber", "156xxxxxxxx");
+ // 短信发送日期,支持查询最近30天的记录。格式为yyyyMMdd,例如20191010。
+ request.putQueryParameter("SendDate", "20191010");
+ // 分页记录数量
+ request.putQueryParameter("PageSize", "10");
+ // 分页当前页码
+ request.putQueryParameter("CurrentPage", "1");
+ // 发送回执ID,即发送流水号。
+ request.putQueryParameter("BizId", bizId);
+ CommonResponse response = client.getCommonResponse(request);
+ log_print("querySendDetails", response.getData());
+ }
+
+// public static void main(String[] args) {
+// ALiSendSms sendSmsDemo = new ALiSendSms();
+// try {
+// // 创建短信模板
+// String templateCode = sendSmsDemo.addSmsTemplate();
+// // 使用刚创建的短信模板发送短信
+// String sData = sendSmsDemo.sendSms("156xxxxxxxx", templateCode, "{\"code\":\"8888\"}");
+// Gson gson = new Gson();
+// Map map = gson.fromJson(sData, Map.class);
+// String bizId = map.get("BizId").toString();
+// // 根据短信发送流水号查询短信发送情况
+// sendSmsDemo.querySendDetails(bizId);
+// } catch (ClientException e) {
+// e.printStackTrace();
+// }
+// }
+}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/MgtShopAuthDto.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/MgtShopAuthDto.java
index 6c9dca1..554e0eb 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/MgtShopAuthDto.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/MgtShopAuthDto.java
@@ -9,7 +9,7 @@
/**
* @ClassName Mgt
- * @Description TODO
+ * @Description
* @Author jqs
* @Date 2023/6/19 10:57
* @Version 1.0
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IUserService.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IUserService.java
index ded8fc6..8013666 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IUserService.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IUserService.java
@@ -6,6 +6,7 @@
import com.dsh.guns.modular.system.model.User;
import com.dsh.guns.modular.system.model.UserListVO;
import com.dsh.guns.modular.system.model.UserQuery;
+import com.dsh.guns.modular.system.util.ResultUtil;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -62,4 +63,6 @@
List<UserListVO> searchUsers(UserQuery userQuery);
+
+ ResultUtil getSMSCode(String phone);
}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java
index 10dfd09..c7a44d0 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java
@@ -189,11 +189,10 @@
coursePackagePaymentConfig1.setPlayPaiCoin(playPaiCoin);
coursePackagePaymentConfig1.setCouponIds(couponIds);
int i1 = coursePackagePaymentConfigClient.addCoursePackagePaymentConfig(coursePackagePaymentConfig1);
-
- for (TCoursePackageDiscount tCoursePackageDiscount : tCoursePackageDiscounts) {
- tCoursePackageDiscount.setCoursePackagePaymentConfigId(i1);
- coursePackageDiscountClient.update(tCoursePackageDiscount);
- }
+// for (TCoursePackageDiscount tCoursePackageDiscount : tCoursePackageDiscounts) {
+// tCoursePackageDiscount.setCoursePackagePaymentConfigId(coursePackagePaymentConfig1.getId());
+// coursePackageDiscountClient.update(tCoursePackageDiscount);
+// }
}
}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/UserServiceImpl.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/UserServiceImpl.java
index 2871004..dfe7fe4 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/UserServiceImpl.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/UserServiceImpl.java
@@ -4,13 +4,21 @@
import java.util.Map;
+import com.aliyuncs.exceptions.ClientException;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.dsh.course.feignClient.account.model.TAppUser;
import com.dsh.course.mapper.UserMapper;
+import com.dsh.course.util.RedisUtil;
+import com.dsh.course.util.UUIDUtil;
import com.dsh.guns.config.UserExt;
import com.dsh.guns.core.dataScope.DataScope;
+import com.dsh.guns.modular.system.controller.util.ALiSendSms;
import com.dsh.guns.modular.system.model.UserListVO;
import com.dsh.guns.modular.system.model.UserQuery;
+import com.dsh.guns.modular.system.util.ResultUtil;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.dsh.guns.modular.system.model.User;
@@ -26,6 +34,11 @@
*/
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IUserService {
+ @Autowired
+ private ALiSendSms aLiSendSms;
+
+ @Autowired
+ private RedisUtil redisUtil;
@Override
public int setStatus(Integer userId, int status) {
@@ -67,4 +80,20 @@
public List<UserListVO> searchUsers(UserQuery userQuery) {
return this.baseMapper.searchUsers(userQuery);
}
+
+ @Override
+ public ResultUtil getSMSCode(String phone) {
+
+ String numberRandom = UUIDUtil.getNumberRandom(6);
+ String templateCode = "";
+ templateCode = "SMS_160960014";
+
+ try {
+ aLiSendSms.sendSms(phone, templateCode, "{\"code\":\"" + numberRandom + "\"}");
+ } catch (ClientException e) {
+ e.printStackTrace();
+ }
+ redisUtil.setStrValue(phone, numberRandom, 300);
+ return ResultUtil.success();
+ }
}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/ExcelUtil.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/ExcelUtil.java
index a5e9f7b..fd44c75 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/ExcelUtil.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/ExcelUtil.java
@@ -3,6 +3,8 @@
import org.apache.poi.hssf.usermodel.*;
import javax.servlet.http.HttpServletResponse;
+import java.net.URLEncoder;
+
public class ExcelUtil {
public static HSSFWorkbook getHSSFWorkbook(String sheetName, String[] title, String[][] values, HSSFWorkbook wb) {
// 第一步,创建一个webbook,对应一个Excel文件
@@ -40,7 +42,7 @@
public static void setResponseHeader(HttpServletResponse response, String fileName) {
try {
- response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
+ response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName));
response.setContentType("application/vnd.ms-excel;charset=UTF-8");
response.addHeader("Pragma", "no-cache");
response.addHeader("Cache-Control", "no-cache");
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/login.html b/cloud-server-management/src/main/webapp/WEB-INF/view/login.html
index 4e0e2fb..349f46b 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/login.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/login.html
@@ -76,9 +76,11 @@
<input class="form-control" type="text" name="kaptcha" placeholder="验证码" required="">
</div>
<div class="col-sm-4" style="padding-left: 0px; padding-right: 0px;">
- <img src="${ctxPath}/kaptcha" id="kaptcha" width="100%" height="100%"/>
+ <img src="${ctxPath}/kaptcha" id="kaptcha" width="90px" height="34px"/>
</div>
+
</div>
+ <h4 style="color: #0e9aef;text-align: right" onclick="updatePassword1()">修改密码</h4>
<button onclick="login()" class="btn full-width m-b" style="background-color: #0573EA;color: white;">登 录</button>
<button type="submit" id="submit" style="display: none;"></button>
</p>
@@ -91,6 +93,17 @@
<script src="${ctxPath}/js/common/Feng.js"></script>
<script src="${ctxPath}/crypto-js/crypto-js.js"></script>
<script>
+ function updatePassword1(e) {
+ console.log("调用")
+
+ $.ajax({
+ url: Feng.ctxPath + '/update',
+ type: 'POST',
+ success: function (res) {
+ }
+ });
+ }
+
$(function () {
$("#kaptcha").on('click', function () {
$("#kaptcha").attr('src', '${ctxPath}/kaptcha?' + Math.floor(Math.random() * 100)).fadeIn();
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 a5f9045..c834588 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
@@ -183,6 +183,14 @@
function updateOne(e) {
+ console.log("看看选择页面")
+
+ // 查看跳转页面 有没有跳转类型
+ var page = $('#page option:selected').text();
+ if (page=="门店列表" || page=="主页" || page=="充值中心" ){
+ $("#t2").hide();
+ $("#t3").hide();
+ }
var oneId=$(e).val();
var ajax = new $ax(Feng.ctxPath + "/tShop/typeChangeOne", function(data){
if(data!=null&&data.length>0){
@@ -205,6 +213,7 @@
$("#t3").hide()
}
+
ajax.set("id",oneId);
@@ -238,6 +247,7 @@
$("#t3").show()
}
}
+
}
</script>
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 d65b6b5..999a7be 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
@@ -197,6 +197,12 @@
function updateOne(e) {
+ console.log("看看选择页面")
+ console.log($('#page option:selected').text())
+ if ($('#page option:selected').text()=="门店列表"){
+ $("#t3").hide();
+ $("#t2").hide();
+ }
var oneId=$(e).val();
var ajax = new $ax(Feng.ctxPath + "/tShop/typeChangeOne", function(data){
if(data!=null&&data.length>0){
@@ -255,10 +261,15 @@
var temp = $("#turnId").val();
var res= document.getElementById("imgPX");
res.innerHTML ="推荐像素:780x472px";
- console.log("看看temp",temp);
if (temp==""){
$("#t3").hide();
}
+ // 查看跳转页面 有没有跳转类型
+ var page = $('#page option:selected').text();
+ if (page=="门店列表" || page=="主页" || page=="充值中心" ){
+ $("#t2").hide();
+ $("#t3").hide();
+ }
}
</script>
@}
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/storeIncome.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/storeIncome.html
index 4ec90bb..b62681b 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/storeIncome.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/dataStatistics/storeIncome.html
@@ -106,8 +106,6 @@
<div class="col-sm-10" style="width: 1500px" >
</br>
</br>
- <span>会员费收入:<label id="fee1">0.0</label></span>
- <span>玩湃币充值收入:<label id="fee2">0.0</label></span>
<span>课程收入:<label id="fee3">0.0</label></span>
<span>活动/赛事收入:<label id="fee4">0.0</label></span>
<span>订场收入:<label id="fee5">0.0</label></span>
@@ -432,8 +430,6 @@
}
var ajax = new $ax(Feng.ctxPath + "/data/selectStore", function (data) {
- $("#fee1").text(data.fee1)
- $("#fee2").text(data.fee2)
$("#fee3").text(data.fee3)
$("#fee4").text(data.fee4)
$("#fee5").text(data.fee5)
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/gateData/GateData.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/gateData/GateData.html
index 3e80306..faf0a66 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/gateData/GateData.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/gateData/GateData.html
@@ -5,6 +5,44 @@
<div class="ibox-title">
<h5>闸机数据统计</h5>
</div>
+
+ <div class="ibox-content">
+ <div class="row row-lg">
+ <div class="col-sm-12">
+ <div class="row">
+ <div class="col-sm-3">
+ <div class="input-group">
+ <div class="input-group-btn open">
+ <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button" aria-expanded="true">
+ 运营商
+ </button>
+ </div>
+ <select class="form-control" id="operator" onchange="TSite.getStores(this)">
+ <option value="0">平台</option>
+ @for(obj in list){
+ <option value="${obj.id}">${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+ <div class="col-sm-3">
+ <div class="input-group">
+ <div class="input-group-btn open">
+ <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button" aria-expanded="true">
+ 门店
+ </button>
+ </div>
+ <select class="form-control" id="store">
+ </select>
+ </div>
+ </div>
+ <div class="col-sm-3">
+ <#button name="搜索" icon="fa-search" clickFun="TSite.search()"/>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
<div class="ibox-content">
<div class="row row-lg">
<div class="col-sm-12">
@@ -28,11 +66,19 @@
,lang:"en"
});
$(function(){
- var ajax = new $ax(Feng.ctxPath + "/gateData/totalNum", function(data){
- var totalNumber= document.getElementById("totalNumber");
- totalNumber.innerText = "场地总人次: " + data +"次";
+ var oneId=$("#operator").val();
+ var ajax = new $ax(Feng.ctxPath + "/operator/getStores", function(data){
+ if(data!=null){
+ var content='<option value="">选择门店</option>';
+ $.each(data, function(k,v) {
+ content += "<option value='"+v.id+"'>"+v.name+"</option>";
+ });
+ $("#store").empty().append(content);
+ }
});
+ ajax.set("id",oneId);
ajax.start();
});
+
</script>
@}
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/appUser/tAppUser.js b/cloud-server-management/src/main/webapp/static/modular/system/appUser/tAppUser.js
index 89aaa36..441e0cb 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/appUser/tAppUser.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/appUser/tAppUser.js
@@ -63,6 +63,7 @@
* 点击添加
*/
TQuestion.openAdd = function () {
+
var index = layer.open({
type: 2,
title: '添加分类',
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js b/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js
index ef27d1b..7bb4003 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js
@@ -172,7 +172,7 @@
// 去除最后一个逗号
values = values.slice(0, -1);
-
+ console.log("看看预约时间段")
console.log(values);
var times = values;
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js
index ff2b91c..d994f41 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js
@@ -393,10 +393,11 @@
var inputElements = document.querySelectorAll('input[name="classStartTime"]');
- let classStartTime = JSON.stringify(Array.from(inputElements).map(function(element) {
+ var classStartTime = JSON.stringify(Array.from(inputElements).map(function(element) {
return element.value;
}))
-
+ console.log("看下修改后的时间");
+ console.log(classStartTime)
// let classStartTime = $('#classStartTime').val();
let classWeeks = '';
$('input[name="classWeeks"]:checked').each(function (index, e) {
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/finance/rechargeRecords.js b/cloud-server-management/src/main/webapp/static/modular/system/finance/rechargeRecords.js
index c7bf753..caf604e 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/finance/rechargeRecords.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/finance/rechargeRecords.js
@@ -24,7 +24,7 @@
{title: '玩湃币数量', field: 'playPaiCoins', visible: true, align: 'center', valign: 'middle'},
{title: '充值类型', field: 'type', visible: true, align: 'center', valign: 'middle',
formatter:function (data) {
- return {1:"会员充值",0:"非会员充值"}[data]
+ return {1:"会员充值",2:"非会员充值"}[data]
}
},
];
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/gateData/gateData.js b/cloud-server-management/src/main/webapp/static/modular/system/gateData/gateData.js
index 6d5faf7..f56eaa5 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/gateData/gateData.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/gateData/gateData.js
@@ -19,17 +19,40 @@
];
};
-
+TSite.getStores = function (e) {
+ var oneId=$(e).val();
+ var ajax = new $ax(Feng.ctxPath + "/operator/getStores", function(data){
+ if(data!=null){
+ var content='<option value="">选择门店</option>';
+ $.each(data, function(k,v) {
+ content += "<option value='"+v.id+"'>"+v.name+"</option>";
+ });
+ $("#store").empty().append(content);
+ }
+ });
+ ajax.set("id",oneId);
+ ajax.start();
+};
/**
* 查询跨城站点管理列表
*/
TSite.search = function () {
+ if ($("#operator").val()==""){
+ Feng.error("请选择运营商和门店");
+ return;
+ }
+ if ($("#store").val()==""){
+ Feng.error("请选择门店");
+ return;
+ }
+ var ajax = new $ax(Feng.ctxPath + "/gateData/totalNum", function(data){
+ var totalNumber= document.getElementById("totalNumber");
+ totalNumber.innerText = "场地总人次: " + data +"次";
+ });
+ ajax.set("storeId",)
+ ajax.start();
var queryData = {};
- queryData['insertTime'] = $("#insertTime").val();
- queryData['name'] = $("#name").val();
- queryData['insertUser'] = $("#insertUser").val();
- queryData['city'] = $("#city").val();
- queryData['state'] = $("#state").val();
+ queryData['storeId'] = $("#store").val();
TSite.table.refresh({query: queryData});
};
@@ -47,4 +70,6 @@
var table = new BSTable(TSite.id, "/gateData/list", defaultColunms);
table.setPaginationType("client");
TSite.table = table.init();
+ TSite.search();
+ Feng.info("请选择门店")
});
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetitionUser.js b/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetitionUser.js
index e1b3048..ff7d1a6 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetitionUser.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetitionUser.js
@@ -333,10 +333,7 @@
TCompetition.ouTCompetition = function () {
var state=$("#state").val()
var id=$("#id").val()
- var ajax = new $ax(Feng.ctxPath + "/tCompetition/export", function(data){
- Feng.success("导出成功");
- });
- ajax.set("state",state);
- ajax.set("id",id);
- ajax.start();
+ window.location.href=Feng.ctxPath + "/tCompetition/export?id="+id
+ +"&state="+state
+ ;
};
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/tGoods/tPay_info.js b/cloud-server-management/src/main/webapp/static/modular/system/tGoods/tPay_info.js
index eaa4f7a..4341dc6 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/tGoods/tPay_info.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/tGoods/tPay_info.js
@@ -60,6 +60,7 @@
console.log(TPayInfo.seItem.id)
var ajax = new $ax(Feng.ctxPath + "/ticket/writeOff", function (data) {
TPayInfo.search();
+ Feng.error("核销成功!")
}, function (data) {
});
ajax.set("id", TPayInfo.seItem.id);
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 f3154c3..e18d118 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
@@ -45,8 +45,6 @@
}
}
-
-
//预约场地后,时间超过endTime,状态变为已过期
@Scheduled(fixedRate = 60000)
public void taskMinute1(){
--
Gitblit v1.7.1