From b1fb83530b7105e4aa73e4101727dea945eb01c2 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 29 八月 2025 21:48:15 +0800
Subject: [PATCH] bug修改
---
cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java | 130 +++++++++++++++++++++++++++++++++++++++----
1 files changed, 117 insertions(+), 13 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 d08d1cb..e51e3ed 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
@@ -1,17 +1,15 @@
package com.dsh.account.controller;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.api.R;
import com.dsh.account.dto.BindDto;
import com.dsh.account.dto.IntroduceUserQuery;
import com.dsh.account.dto.SelectDto;
import com.dsh.account.dto.UpdateInfoDto;
-import com.dsh.account.entity.IntroduceUser;
-import com.dsh.account.entity.TAppGift;
-import com.dsh.account.entity.TAppUser;
-import com.dsh.account.entity.TCourseInfoRecord;
-import com.dsh.account.entity.TStudent;
-import com.dsh.account.entity.UserIntegralChanges;
+import com.dsh.account.entity.*;
+import com.dsh.account.feignclient.other.VipClient;
import com.dsh.account.model.AddAppUserVo;
import com.dsh.account.model.AdvertisementChangeStateDTO;
import com.dsh.account.model.AppUserByNameAndPhoneDTO;
@@ -20,6 +18,7 @@
import com.dsh.account.model.LoginSMSCodeVo;
import com.dsh.account.model.LoginWeChatVo;
import com.dsh.account.model.QueryByNamePhone;
+import com.dsh.account.model.query.UserDetailsOfSearch;
import com.dsh.account.model.query.appUserQuery.QueryAppUser;
import com.dsh.account.model.vo.QueryAppUserVO;
import com.dsh.account.service.IVipPaymentService;
@@ -32,6 +31,9 @@
import com.dsh.account.util.ResultUtil;
import com.dsh.account.util.TokenUtil;
import com.dsh.account.util.ToolUtil;
+import com.dsh.account.util.wx.WxV3PayConfig;
+import com.dsh.account.vo.VipPaymentVO;
+import com.wechat.pay.contrib.apache.httpclient.util.AesUtil;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -46,7 +48,9 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import java.io.BufferedReader;
import java.io.PrintWriter;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -63,6 +67,8 @@
@Autowired
private TAppUserService appUserService;
+ @Autowired
+ private VipClient vipClient;
@Autowired
private PayMoneyUtil payMoneyUtil;
@@ -198,7 +204,8 @@
@ResponseBody
@GetMapping("/base/appUser/getAppUserByPhone/{phone}")
public TAppUser getAppUserByPhone(@PathVariable("phone") String phone) {
- TAppUser appUser = appUserService.getOne(new QueryWrapper<TAppUser>().eq("phone", phone));
+ TAppUser appUser = appUserService.getOne(new QueryWrapper<TAppUser>().eq("phone", phone)
+ .eq("state",1));
return appUser;
}
@@ -290,8 +297,6 @@
@ResponseBody
@PostMapping("/base/appUser/loginSMSCode")
@ApiOperation(value = "短信验证码登录", tags = {"APP-登录注册"})
- @ApiImplicitParams({
- })
public ResultUtil<String> loginSMSCode(LoginSMSCodeVo loginSMSCodeVo) {
try {
return appUserService.loginSMSCode(loginSMSCodeVo);
@@ -433,9 +438,10 @@
@ApiOperation(value = "购买年度会员", tags = {"APP-成为会员"})
@ApiImplicitParams({
@ApiImplicitParam(value = "支付方式(1=微信,2=支付宝)", name = "payType", dataType = "int", required = true),
+ @ApiImplicitParam(value = "会员卡id", name = "id", dataType = "int", required = true),
@ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil addVipPayment(Integer payType) {
+ public ResultUtil addVipPayment(Integer payType,Integer id) {
if (ToolUtil.isEmpty(payType)) {
return ResultUtil.paranErr("payType");
}
@@ -444,14 +450,95 @@
if (null == uid) {
return ResultUtil.tokenErr();
}
- return vipPaymentService.addVipPayment(uid, payType);
+ return vipPaymentService.addVipPayment(uid, payType, id);
+ } catch (Exception e) {
+ e.printStackTrace();
+ return ResultUtil.runErr();
+ }
+ }
+ @ResponseBody
+ @PostMapping("/api/appUser/vipPayment")
+ @ApiOperation(value = "页面数据展示", tags = {"APP-成为会员"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
+ })
+ public ResultUtil<VipPaymentVO> vipPayment() {
+
+ try {
+ Integer uid = tokenUtil.getUserIdFormRedis();
+ if (null == uid) {
+ return ResultUtil.tokenErr();
+ }
+ TAppUser appUser = appUserService.getById(uid);
+ VipPaymentVO res = new VipPaymentVO();
+ res.setHeadImg(appUser.getHeadImg());
+ res.setName(appUser.getName());
+ res.setVipEndTime(appUser.getVipEndTime());
+ if (appUser.getVipEndTime()==null){
+ res.setIsVip(0);
+ }else if (appUser.getVipEndTime().before(new Date())){
+ res.setIsVip(0);
+ }else{
+ res.setIsVip(1);
+ }
+ appUserService.updateById(appUser);
+ List<Vip> vips = vipClient.listAll();
+ res.setVipList(vips);
+
+ return ResultUtil.success(res);
+
} catch (Exception e) {
e.printStackTrace();
return ResultUtil.runErr();
}
}
-
+//
+// /**
+// * 购买年度会员支付微信回调V3版本回调
+// *
+// * @param request
+// * @param response
+// */
+// @ResponseBody
+// @PostMapping("/base/appUser/addVipPaymentWeChatCallback1")
+// public void addVipPaymentWeChatCallback1(HttpServletRequest request, HttpServletResponse response) {
+// try {
+// System.err.println("微信回调");
+// System.err.println("请求" + request);
+// BufferedReader reader = request.getReader();
+// String string1 = reader.toString();
+// System.err.println("请求reader" + string1);
+// StringBuilder requestBody = new StringBuilder();
+// String line;
+// while ((line = reader.readLine()) != null) {
+// requestBody.append(line);
+// }
+// System.err.println("全部请求体" + requestBody);
+// JSONObject jsonObject = JSONObject.parseObject(requestBody.toString());
+// JSONObject resource = jsonObject.getJSONObject("resource");
+//
+// AesUtil aesUtil = new AesUtil(WxV3PayConfig.apiV3Key.getBytes(StandardCharsets.UTF_8));
+// String decryptedData = aesUtil.decryptToString(resource.getString("associated_data").getBytes(StandardCharsets.UTF_8), resource.getString("nonce").getBytes(StandardCharsets.UTF_8),
+// resource.getString("ciphertext"));
+// System.err.println("微信解密的字符串信息" + decryptedData);
+// JSONObject jsonInfo = (JSONObject) JSONObject.parse(decryptedData);
+// String out_trade_no = jsonInfo.getString("out_trade_no");
+// String transaction_id = jsonInfo.getString("transaction_id");
+// String trade_state = jsonInfo.getString("trade_state");
+// if (trade_state.equals("SUCCESS")) {
+// ResultUtil resultUtil = vipPaymentService.addVipPaymentCallback(out_trade_no, transaction_id);
+// if (resultUtil.getCode() == 200) {
+// PrintWriter out = response.getWriter();
+// out.write("SUCCESS");
+// out.flush();
+// out.close();
+// }
+// }
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+// }
/**
* 购买年度会员支付微信回调
*
@@ -479,7 +566,6 @@
e.printStackTrace();
}
}
-
/**
* 购买年度会员支付支付宝回调
@@ -676,4 +762,22 @@
List<TAppUser> list = appUserService.list(queryWrapper);
return list.stream().map(TAppUser::getId).collect(Collectors.toList());
}
+
+
+ @PostMapping("/appUser/queryAppUserByIds")
+ @ResponseBody
+ public List<TStudent> queryAppUserByIds(@RequestBody UserDetailsOfSearch search){
+ LambdaQueryWrapper<TStudent> tAppUserLambdaQueryWrapper = new LambdaQueryWrapper<>();
+ if(ToolUtil.isNotEmpty(search.getIdCard())){
+ tAppUserLambdaQueryWrapper.eq(TStudent::getIdCard, search.getIdCard());
+ }
+ if(ToolUtil.isNotEmpty(search.getPhone())){
+ tAppUserLambdaQueryWrapper.eq(TStudent::getPhone, search.getPhone());
+ }
+ if(ToolUtil.isNotEmpty(search.getName())){
+ tAppUserLambdaQueryWrapper.eq(TStudent::getName, search.getName());
+ }
+ tAppUserLambdaQueryWrapper.in(TStudent::getId,search.getUseIds());
+ return studentService.list(tAppUserLambdaQueryWrapper);
+ }
}
--
Gitblit v1.7.1