From 955b0ea6a5219997345fc9812319ed961302cd88 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 13 一月 2025 17:02:16 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java | 4
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WithdrawalRequestsController.java | 2
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsAppUser.java | 3
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/payment/model/SinglePayCallbackResult.java | 7 +
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java | 11 ++
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/model/SinglePayCallbackResult.java | 11 ++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java | 111 ++++++++++++++++++++++++---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 2
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TechnicianClient.java | 2
ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java | 5
ruoyi-service/ruoyi-other/src/main/resources/mapper/other/SeckillActivityInfoMapper.xml | 2
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java | 6
ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java | 12 +-
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java | 4
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java | 5
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java | 1
16 files changed, 151 insertions(+), 37 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
index 91a8228..6d3c044 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
@@ -59,7 +59,7 @@
R<Long> getVipCount(@RequestParam("userId")Long userId, @RequestParam("vipId") Integer vipId );
- @GetMapping("/app-user/listByIds")
+ @PostMapping("/app-user/listByIds")
List<AppUser> listByIds(@RequestParam("ids") List<Long> list);
/**
@@ -87,7 +87,7 @@
* @param userId
* @return
*/
- @PutMapping("/app-user/setLowerUserShop")
+ @PostMapping("/app-user/setLowerUserShop")
R<List<AppUser>> setLowerUserShop(@RequestParam("userId") Long userId,@RequestParam("shopId") Integer shopId);
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsAppUser.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsAppUser.java
index 89d1a01..d6fdd0e 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsAppUser.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/GoodsAppUser.java
@@ -39,6 +39,9 @@
private Long appUserId;
@TableField(exist = false)
+ private String appUserIdStr;
+
+ @TableField(exist = false)
@ApiModelProperty(value = "用户名称")
private String userName;
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TechnicianClient.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TechnicianClient.java
index f3783fa..71f6c8d 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TechnicianClient.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/TechnicianClient.java
@@ -29,6 +29,6 @@
* @param ids
* @return
*/
- @PostMapping("/technician-subscribe/getTechnicianByIds")
+ @PostMapping("/technician/getTechnicianByIds")
R<List<Technician>> getTechnicianByIds(@RequestParam("ids") Collection<Integer> ids);
}
diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java
index 746f018..a5735e6 100644
--- a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java
+++ b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java
@@ -5,6 +5,7 @@
import java.util.concurrent.TimeUnit;
import javax.servlet.http.HttpServletRequest;
+import com.ruoyi.common.core.exception.auth.NotPermissionException;
import com.ruoyi.system.api.model.LoginUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -90,7 +91,7 @@
public LoginUser getLoginUserApplet() {
LoginUser loginUserAppletToken = getLoginUserAppletToken(ServletUtils.getRequest());
if (loginUserAppletToken == null) {
- throw new RuntimeException("令牌已过期,请重新登录!");
+ throw new NotPermissionException("令牌已过期,请重新登录!");
}
return loginUserAppletToken;
}
@@ -128,7 +129,7 @@
public LoginUser getLoginUser() {
LoginUser loginUser = getLoginUser(ServletUtils.getRequest());
if (loginUser == null) {
- throw new RuntimeException("令牌已过期,请重新登录!");
+ throw new NotPermissionException("令牌已过期,请重新登录!");
}
if(null == loginUser.getUserid()){
loginUser.setUserid(loginUser.getSysUser().getUserId());
diff --git a/ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java b/ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java
index bf60f1c..12d0cdc 100644
--- a/ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java
+++ b/ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java
@@ -1,5 +1,6 @@
package com.ruoyi.gateway.filter;
+import com.ruoyi.common.core.exception.auth.NotPermissionException;
import com.ruoyi.gateway.config.properties.AntiShakeProperties;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -131,7 +132,7 @@
/**
* 防抖处理
*/
- public void antiShake(ServerHttpRequest request) throws Exception{
+ public void antiShake(ServerHttpRequest request) {
HttpMethod method = request.getMethod();
if(HttpMethod.OPTIONS == method || !antiShakeProperties.getEnable()){
return;
@@ -174,20 +175,19 @@
/**
* 验证token
* @param request
- * @throws Exception
*/
- public void verifyToken(ServerHttpRequest request) throws Exception{
+ public void verifyToken(ServerHttpRequest request) {
String token = getToken(request);
if (StringUtils.isEmpty(token)) {
- throw new RuntimeException("令牌不能为空");
+ throw new NotPermissionException("令牌不能为空");
}
Claims claims = JwtUtils.parseToken(token);
if (claims == null) {
- throw new RuntimeException("令牌已过期或验证不正确!");
+ throw new NotPermissionException("令牌已过期或验证不正确!");
}
String userid = JwtUtils.getUserId(claims);
if (StringUtils.isEmpty(userid)) {
- throw new RuntimeException("令牌验证失败");
+ throw new NotPermissionException("令牌验证失败");
}
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
index 54069b0..62b4272 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
@@ -643,8 +643,8 @@
}
- @GetMapping("/listByIds")
- List<AppUser> listByIds(@RequestParam("ids") List<Long> ids) {
+ @PostMapping("/listByIds")
+ public List<AppUser> listByIds(@RequestParam("ids") List<Long> ids) {
if(ids.size() == 0){
return new ArrayList<>();
}
@@ -664,7 +664,7 @@
/**
* 设置指定用户的下级用户绑定门店
*/
- @PutMapping("setLowerUserShop")
+ @PostMapping("/setLowerUserShop")
public R<Void> setLowerUserShop(@RequestParam("userId") Long userId,@RequestParam("shopId") Integer shopId) {
appUserService.update(new LambdaUpdateWrapper<AppUser>()
.set(AppUser::getShopId,shopId)
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WithdrawalRequestsController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WithdrawalRequestsController.java
index 3faa99c..8039212 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WithdrawalRequestsController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WithdrawalRequestsController.java
@@ -157,7 +157,7 @@
@PostMapping("/withdrawalCallback")
public Object withdrawalCallback(@RequestBody SinglePayCallbackResult singlePayCallbackResult){
Integer status = singlePayCallbackResult.getStatus();
- if(203 == status){
+ if(203 == status || 205 == status){
String merchantOrderNo = singlePayCallbackResult.getMerchantOrderNo();
WithdrawalRequests withdrawalRequests = withdrawalRequestsService.getById(merchantOrderNo);
if(1 == withdrawalRequests.getStatus()){
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java
index 021d8f8..b768edd 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/BalanceChangeRecordServiceImpl.java
@@ -83,7 +83,7 @@
int toIndex = (int) Math.min(fromIndex + size, walletStatisticsDetailList.size());
if (fromIndex >= walletStatisticsDetailList.size()) {
- throw new ServiceException("页面参数无效");
+ return new WalletStatistics();
}
@@ -106,7 +106,8 @@
WalletStatistics walletStatistics = new WalletStatistics();
Page<WalletStatisticsDetail> walletStatisticsDetailPage = new Page<>();
walletStatisticsDetailPage.setCurrent(current);
- walletStatisticsDetailPage.setSize(walletStatisticsDetailList.size());
+ walletStatisticsDetailPage.setSize(size);
+ walletStatisticsDetailPage.setTotal(walletStatisticsDetailList.size());
walletStatisticsDetailPage.setRecords(walletStatisticsDetailList2);
walletStatistics.setPage(walletStatisticsDetailPage);
walletStatistics.setTotalRecharge(totalRecharge);
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/payment/model/SinglePayCallbackResult.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/payment/model/SinglePayCallbackResult.java
index 973b2ef..ad66df7 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/payment/model/SinglePayCallbackResult.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/payment/model/SinglePayCallbackResult.java
@@ -15,6 +15,13 @@
* 202 处理中 批次正在处理中状态
* 203 处理完成 批次中的每笔明细都明确了代付结果
* 204 批次不存在 汇聚未受理该批次的请求,找不到该批次,明确失败
+ * 205 交易成功 明确交易成功的状态码
+ * 208 订单已取消 代付订单被商户审核为拒绝付款
+ * 210 账务冻结中 确认出款后对商户的账户余额进行冻结处理
+ * 211 账务解冻中 确认失败后对商户的账户余额进行解冻处理
+ * 212 订单取消中 商户审核为拒绝付款的中间状态
+ * 213 账务扣款中 确认成功后对商户的账户冻结款的扣款处理
+ * 214 订单不存在 汇聚未受理该笔代付请求,找不到该笔订单,明确失败
*/
private Integer status;
/**
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
index 843d6e9..45a70ba 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -744,7 +744,7 @@
orderInfo.setRecipient(userAddress.getRecieveName() + "-" + userAddress.getRecievePhone());
orderInfo.setAddress(userAddress.getRecieveAddress());
}
- if(StringUtils.isNotEmpty(order.getExpressJson())){
+ if(StringUtils.isNotEmpty(order.getExpressJson()) && !"NULL".equals(order.getExpressJson())){
JSONObject jsonObject = JSON.parseObject(order.getExpressJson());
String com = jsonObject.getString("com");
String num = jsonObject.getString("num");
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java
index 0bd2117..aa8cea0 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/ShoppingCartServiceImpl.java
@@ -532,6 +532,10 @@
confirmOrderVo.setDiscountAmount(activityAmount);
int earnPoint = goodsList.stream().mapToInt(MyShoppingCartVo::getEarnSpendingPoints).sum();
confirmOrderVo.setEarnPoint(earnPoint);
+ if(BigDecimal.ZERO.compareTo(paymentMoney) > 0){
+ paymentMoney = BigDecimal.ZERO;
+ }
+
//支付金额,订单金额-订单优惠
confirmOrderVo.setPayMoney(paymentMoney);
confirmOrderVo.setResidualPoint(appUser.getAvailablePoint().intValue());
@@ -939,6 +943,10 @@
}
}
}
+ if(BigDecimal.ZERO.compareTo(paymentMoney) > 0){
+ paymentMoney = BigDecimal.ZERO;
+ }
+
//构建订单明细
Order order = new Order();
order.setAppUserId(userid);
@@ -1059,21 +1067,98 @@
//开始构建支付数据
//现金支付
paymentMoney = paymentMoney.add(expressFee).setScale(2, RoundingMode.HALF_EVEN);
+ if(BigDecimal.ZERO.compareTo(paymentMoney) > 0){
+ paymentMoney = BigDecimal.ZERO;
+ }
if(1 == shoppingCartPayment.getPaymentType()){
- //调起微信支付
- String goodsNames = goodsList.stream().map(MyShoppingCartVo::getName).collect(Collectors.joining("\n"));
- UniPayResult uniPayResult = PaymentUtil.uniPay(order.getOrderNumber(), paymentMoney.doubleValue(), order.getOrderType() == 1 ? "购买服务商品" : "购买单品商品",
- goodsNames, "", "/order/shopping-cart/shoppingCartPaymentCallback", appUser.getWxOpenid(), null);
- if(null == uniPayResult || !"100".equals(uniPayResult.getRa_Code())){
- return R.fail(null == uniPayResult ? "支付失败" : uniPayResult.getRb_CodeMsg());
+ if(BigDecimal.ZERO.compareTo(paymentMoney) < 0){
+ //调起微信支付
+ String goodsNames = goodsList.stream().map(MyShoppingCartVo::getName).collect(Collectors.joining("\n"));
+ UniPayResult uniPayResult = PaymentUtil.uniPay(order.getOrderNumber(), paymentMoney.doubleValue(), order.getOrderType() == 1 ? "购买服务商品" : "购买单品商品",
+ goodsNames, "", "/order/shopping-cart/shoppingCartPaymentCallback", appUser.getWxOpenid(), null);
+ if(null == uniPayResult || !"100".equals(uniPayResult.getRa_Code())){
+ return R.fail(null == uniPayResult ? "支付失败" : uniPayResult.getRb_CodeMsg());
+ }
+ String rc_result = uniPayResult.getRc_Result();
+ JSONObject jsonObject = JSON.parseObject(rc_result);
+ jsonObject.put("orderId", order.getId().toString());
+ //将支付数据添加到redis队列中,便于定时任务去校验是否完成支付,没有完成支付支付,15分钟后关闭订单。
+ long second = LocalDateTime.now().plusMinutes(15).toEpochSecond(ZoneOffset.UTC);
+ redisTemplate.opsForZSet().add("OrderPayment", order.getOrderNumber(), second);
+ return R.ok(jsonObject.toJSONString());
+ }else{
+
+ earnPoint = order.getGetPoint();
+ appUser = appUserClient.getAppUserById(order.getAppUserId());
+ Integer lavePoint = appUser.getLavePoint();
+ paymentMoney = order.getPaymentAmount();
+ //构建积分流水记录
+ if(earnPoint > 0){
+ PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData();
+ int earnPoint1 = 0;
+ if(null != pointSetting && 1 == pointSetting.getBuyPointOpen()){
+ earnPoint1 = new BigDecimal(earnPoint).multiply(pointSetting.getBuyPoint().divide(new BigDecimal(100))).intValue();
+ }
+ appUser.setShopPoint(appUser.getShopPoint() + earnPoint);
+ appUser.setLavePoint(appUser.getLavePoint() + earnPoint);
+ appUser.setTotalPoint(appUser.getTotalPoint() + earnPoint);
+ appUser.setAvailablePoint(appUser.getAvailablePoint() + earnPoint1);
+ appUser.setTotalAvailablePoint(appUser.getTotalAvailablePoint() + earnPoint1);
+
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("shopPoint", earnPoint);
+ jsonObject.put("availablePoint", earnPoint1);
+ if(null != pointSetting && 1 == pointSetting.getBuyPointGift()){
+ appUser.setTransferablePoint(appUser.getTransferablePoint() + earnPoint1);
+ jsonObject.put("transferablePoint", earnPoint1);
+ }
+
+ UserPoint userPoint = new UserPoint();
+ userPoint.setType(1);
+ userPoint.setHistoricalPoint(lavePoint);
+ userPoint.setVariablePoint(earnPoint);
+ userPoint.setBalance(appUser.getLavePoint());
+ userPoint.setCreateTime(LocalDateTime.now());
+ userPoint.setAppUserId(appUser.getId());
+ userPoint.setObjectId(order.getId());
+ userPoint.setExtention(jsonObject.toJSONString());
+ userPointClient.saveUserPoint(userPoint);
+ }
+ appUser.setShopAmount(appUser.getShopAmount().add(paymentMoney).setScale(2, RoundingMode.HALF_EVEN));
+ appUser.setLastShopTime(LocalDateTime.now());
+ appUserClient.editAppUserById(appUser);
+ //变更等级
+ appUserClient.vipUpgrade(appUser.getId());
+ //修改订支付状态
+ order.setPayStatus(2);
+ //自提
+ if(order.getOrderType() == 1 && StringUtils.isEmpty(order.getAddressJson())){
+ order.setOrderStatus(2);
+ }
+ orderService.updateById(order);
+
+ //处理优惠券
+ if(null != order.getUserCouponId()){
+ UserCoupon userCoupon = userCouponClient.getUserCoupon(order.getUserCouponId()).getData();
+ if(null != userCoupon && null == userCoupon.getUseTime()){
+ userCoupon.setStatus(2);
+ userCoupon.setUseTime(LocalDateTime.now());
+ userCouponClient.editUserCoupon(userCoupon);
+ }
+ }
+ //添加查询快递信息队列
+ if(StringUtils.isNotEmpty(order.getExpressJson())){
+ //一小时后定时查询快递信息
+ redisTemplate.opsForZSet().add("order_express", order.getId(), LocalDateTime.now().plusHours(1).toEpochSecond(ZoneOffset.UTC));
+ }
+
+ //删除购物车数据
+ userid = tokenService.getLoginUserApplet().getUserid();
+ List<OrderGood> list1 = orderGoodService.list(new LambdaQueryWrapper<OrderGood>().eq(OrderGood::getOrderId, order.getId()));
+ List<Integer> goodsIds1 = list1.stream().map(OrderGood::getGoodsId).collect(Collectors.toList());
+ this.remove(new LambdaQueryWrapper<ShoppingCart>().eq(ShoppingCart::getAppUserId, userid).in(ShoppingCart::getGoodsId, goodsIds1));
+
}
- String rc_result = uniPayResult.getRc_Result();
- JSONObject jsonObject = JSON.parseObject(rc_result);
- jsonObject.put("orderId", order.getId().toString());
- //将支付数据添加到redis队列中,便于定时任务去校验是否完成支付,没有完成支付支付,15分钟后关闭订单。
- long second = LocalDateTime.now().plusMinutes(15).toEpochSecond(ZoneOffset.UTC);
- redisTemplate.opsForZSet().add("OrderPayment", order.getOrderNumber(), second);
- return R.ok(jsonObject.toJSONString());
}
//账户余额
BigDecimal redPacketAmount = BigDecimal.ZERO;
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java
index 16009ad..ad23743 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java
@@ -62,7 +62,7 @@
public R<Void> saveActivityConfig(@RequestBody OrderActivityInfo orderActivityInfo){
orderActivityInfo.setIsShelf(0);
if (org.springframework.util.StringUtils.hasLength(orderActivityInfo.getVipIds())){
- List<String> vipIds = Arrays.asList(orderActivityInfo.getVipIds().split(","));
+ List<String> vipIds = new ArrayList<>(Arrays.asList(orderActivityInfo.getVipIds().split(",")));
List<OrderActivityInfo> list = orderActivityInfoService.lambdaQuery()
.le(OrderActivityInfo::getStartTime, orderActivityInfo.getStartTime())
.or()
@@ -70,7 +70,7 @@
if (!list.isEmpty()){
for (OrderActivityInfo activityInfo : list) {
List<String> vips = Arrays.asList(activityInfo.getVipIds().split(","));
- vipIds.retainAll(vips);
+ vipIds.addAll(vips);
if (!vipIds.isEmpty()){
StringBuilder message = new StringBuilder();
List<String> collect = vips.stream().sorted().collect(Collectors.toList());
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java
index e7e7757..af6ba86 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java
@@ -26,6 +26,7 @@
import com.ruoyi.other.util.payment.model.SinglePayCallbackResult;
import com.ruoyi.other.util.payment.model.SinglePayResult;
import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.feignClient.SysUserClient;
import com.ruoyi.system.api.model.LoginUser;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -65,6 +66,9 @@
@Resource
private AppUserClient appUserClient;
+
+ @Resource
+ private SysUserClient sysUserClient;
@@ -121,7 +125,8 @@
@GetMapping("/shop/with")
@ApiOperation(value = "提现申请", notes = "提现申请列表", tags = {"门店后台"})
public R shopwith(@RequestParam BigDecimal money){
- SysUser sysUser = tokenService.getLoginUser().getSysUser();
+ Long userid = tokenService.getLoginUser().getUserid();
+ SysUser sysUser = sysUserClient.getSysUser(userid).getData();
Integer objectId = sysUser.getObjectId();
Shop shop = shopService.getById(objectId);
if (money.compareTo(shop.getCanWithdrawMoney())>0){
@@ -179,7 +184,7 @@
return R.fail("查询账户余额出错");
}
Double useAbleSettAmount = accountBalanceQueryResult.getUseAbleSettAmount();
- if(useAbleSettAmount < shopWithdraw1.getMoney().doubleValue()){
+ if(useAbleSettAmount < (shopWithdraw1.getMoney().doubleValue() + 1)){
return R.fail("账户可用余额不足,请先补充账户余额");
}
//银行卡转账
@@ -238,7 +243,7 @@
@PostMapping("/withdrawalCallback")
public Object withdrawalCallback(@RequestBody SinglePayCallbackResult singlePayCallbackResult){
Integer status = singlePayCallbackResult.getStatus();
- if(203 == status){
+ if(203 == status || 205 == status){
String merchantOrderNo = singlePayCallbackResult.getMerchantOrderNo();
ShopWithdraw shopWithdraw = shopWithdrawService.getById(merchantOrderNo);
if(1 == shopWithdraw.getStatus()){
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java
index e396059..5c48683 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java
@@ -460,6 +460,7 @@
List<AppUser> appUsers = appUserClient.listByIds(userIds);
for (GoodsAppUser goodsAppUser : goodsAppUserList) {
appUsers.stream().filter(u -> u.getId().equals(goodsAppUser.getAppUserId())).findFirst().ifPresent( u -> {
+ goodsAppUser.setAppUserIdStr(goodsAppUser.getAppUserId().toString());
goodsAppUser.setUserName(u.getName());
goodsAppUser.setPhone(u.getPhone());
VipSetting vipSetting = vipSettingService.getById(u.getVipId());
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/model/SinglePayCallbackResult.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/model/SinglePayCallbackResult.java
index 6953a5a..c511075 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/model/SinglePayCallbackResult.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/model/SinglePayCallbackResult.java
@@ -11,6 +11,17 @@
public class SinglePayCallbackResult {
/**
* 交易状态
+ * 201 批次已创建 汇聚受理并创建该批次的初始状态
+ * 202 处理中 批次正在处理中状态
+ * 203 处理完成 批次中的每笔明细都明确了代付结果
+ * 204 批次不存在 汇聚未受理该批次的请求,找不到该批次,明确失败
+ * 205 交易成功 明确交易成功的状态码
+ * 208 订单已取消 代付订单被商户审核为拒绝付款
+ * 210 账务冻结中 确认出款后对商户的账户余额进行冻结处理
+ * 211 账务解冻中 确认失败后对商户的账户余额进行解冻处理
+ * 212 订单取消中 商户审核为拒绝付款的中间状态
+ * 213 账务扣款中 确认成功后对商户的账户冻结款的扣款处理
+ * 214 订单不存在 汇聚未受理该笔代付请求,找不到该笔订单,明确失败
*/
private Integer status;
/**
diff --git a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/SeckillActivityInfoMapper.xml b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/SeckillActivityInfoMapper.xml
index 287a6be..e867c1b 100644
--- a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/SeckillActivityInfoMapper.xml
+++ b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/SeckillActivityInfoMapper.xml
@@ -64,7 +64,7 @@
tgc.`name` goodsCategoryName,
tg.operating_cost,
tg.shop_cost,
- tg.purchase_limit maxNum,
+ tsai.max_num maxNum,
tg.home_page_picture,
tg.original_price,
tg.sale_num,
--
Gitblit v1.7.1