Merge remote-tracking branch 'origin/feature/mall_product' into feature/mall_product
commit
af3ce42881
|
@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.shop.controller.admin.notify;
|
||||||
|
|
||||||
import cn.hutool.core.util.NumberUtil;
|
import cn.hutool.core.util.NumberUtil;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
|
import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
|
||||||
import cn.iocoder.yudao.module.shop.dal.dataobject.recharge.RechargeOrderDO;
|
import cn.iocoder.yudao.module.shop.dal.dataobject.recharge.RechargeOrderDO;
|
||||||
import cn.iocoder.yudao.module.shop.dal.mysql.recharge.RechargeOrderMapper;
|
import cn.iocoder.yudao.module.shop.dal.mysql.recharge.RechargeOrderMapper;
|
||||||
import cn.iocoder.yudao.module.shop.service.order.StoreOrderService;
|
import cn.iocoder.yudao.module.shop.service.order.StoreOrderService;
|
||||||
|
@ -115,6 +116,7 @@ public class WxPayNotifyController {
|
||||||
* @return:
|
* @return:
|
||||||
*/
|
*/
|
||||||
@PostMapping("/refund_notify")
|
@PostMapping("/refund_notify")
|
||||||
|
@TenantIgnore
|
||||||
public String wxPayRefundNotify(@RequestBody String jsonData, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
public String wxPayRefundNotify(@RequestBody String jsonData, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
||||||
// 支付结果通用通知文档: https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_7
|
// 支付结果通用通知文档: https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_7
|
||||||
// 支付成功结果通知
|
// 支付成功结果通知
|
||||||
|
@ -134,18 +136,20 @@ public class WxPayNotifyController {
|
||||||
BigDecimal payerTotal = NumberUtil.div(result.getAmount().getPayerTotal() + "", "100", 2);
|
BigDecimal payerTotal = NumberUtil.div(result.getAmount().getPayerTotal() + "", "100", 2);
|
||||||
// 处理相关逻辑
|
// 处理相关逻辑
|
||||||
RechargeOrderDO orderDO = rechargeOrderMapper.selectOne(Wrappers.<RechargeOrderDO>lambdaQuery().eq(RechargeOrderDO::getOrderId, result.getOutTradeNo()));
|
RechargeOrderDO orderDO = rechargeOrderMapper.selectOne(Wrappers.<RechargeOrderDO>lambdaQuery().eq(RechargeOrderDO::getOrderId, result.getOutTradeNo()));
|
||||||
if (payerTotal.compareTo(orderDO.getPayPrice()) != 0) {
|
if(orderDO!=null){
|
||||||
log.error("支付金额不匹配,订单实际支付金额:{},微信入参验证金额:{}", orderDO.getPayPrice(), payerTotal);
|
if (payerTotal.compareTo(orderDO.getPayPrice()) != 0) {
|
||||||
return "failure";
|
log.error("支付金额不匹配,订单实际支付金额:{},微信入参验证金额:{}", orderDO.getPayPrice(), payerTotal);
|
||||||
|
return "failure";
|
||||||
|
}
|
||||||
|
orderDO.setRefundStatus(2);
|
||||||
|
orderDO.setPaid(2);
|
||||||
|
rechargeOrderMapper.updateById(orderDO);
|
||||||
|
//删除提报记录
|
||||||
|
phoneRecordService.deletePhoneGear(orderDO.getOrderId());
|
||||||
|
// 修改订单状态
|
||||||
|
// 写入
|
||||||
|
response.setStatus(HttpServletResponse.SC_OK);
|
||||||
}
|
}
|
||||||
orderDO.setRefundStatus(2);
|
|
||||||
orderDO.setPaid(2);
|
|
||||||
rechargeOrderMapper.updateById(orderDO);
|
|
||||||
//删除提报记录
|
|
||||||
phoneRecordService.deletePhoneGear(orderDO.getOrderId());
|
|
||||||
// 修改订单状态
|
|
||||||
// 写入
|
|
||||||
response.setStatus(HttpServletResponse.SC_OK);
|
|
||||||
return "success";
|
return "success";
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|
|
@ -44,7 +44,7 @@ public class RechargeOrderDO extends TenantBaseDO {
|
||||||
/**
|
/**
|
||||||
* 用户id
|
* 用户id
|
||||||
*/
|
*/
|
||||||
private Integer uid;
|
private Long uid;
|
||||||
/**
|
/**
|
||||||
* 用户姓名
|
* 用户姓名
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1408,7 +1408,7 @@ public class StoreOrderServiceImpl extends ServiceImpl<StoreOrderMapper, StoreOr
|
||||||
RechargeOrderDO orderDO = new RechargeOrderDO();
|
RechargeOrderDO orderDO = new RechargeOrderDO();
|
||||||
List<OrderContentRequest.OrderInfo> orderInfos = request.getOrderInfos();
|
List<OrderContentRequest.OrderInfo> orderInfos = request.getOrderInfos();
|
||||||
orderDO.setOrderId(code);
|
orderDO.setOrderId(code);
|
||||||
orderDO.setUid(user.getId().intValue());
|
orderDO.setUid(user.getId());
|
||||||
orderDO.setRealName(user.getNickname());
|
orderDO.setRealName(user.getNickname());
|
||||||
orderDO.setUserPhone(StringUtils.isEmpty(request.getUserPhone()) ? user.getMobile() : request.getUserPhone());
|
orderDO.setUserPhone(StringUtils.isEmpty(request.getUserPhone()) ? user.getMobile() : request.getUserPhone());
|
||||||
orderDO.setConfirmPhone(StringUtils.isEmpty(request.getConfirmPhone()) ? user.getMobile() : request.getConfirmPhone());
|
orderDO.setConfirmPhone(StringUtils.isEmpty(request.getConfirmPhone()) ? user.getMobile() : request.getConfirmPhone());
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
|
|
||||||
let domain = 'http://api.cyywl.top'
|
let domain = 'http://api.cyywl.top'
|
||||||
// let domain = 'http://192.168.1.188:48080'
|
// let domain = 'http://192.168.1.147:48080'
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
// 请求域名 格式: https://您的域名
|
// 请求域名 格式: https://您的域名
|
||||||
|
@ -8,7 +8,7 @@ module.exports = {
|
||||||
HTTP_REQUEST_URL: domain,
|
HTTP_REQUEST_URL: domain,
|
||||||
// #endif
|
// #endif
|
||||||
HTTP_ADMIN_URL:'http://api.cyywl.top', //PC后台的API请求地址,上传图片用
|
HTTP_ADMIN_URL:'http://api.cyywl.top', //PC后台的API请求地址,上传图片用
|
||||||
// HTTP_ADMIN_URL:'http://192.168.1.188:48080', //PC后台的API请求地址,上传图片用
|
// HTTP_ADMIN_URL:'http://192.168.1.147:48080', //PC后台的API请求地址,上传图片用
|
||||||
// #ifdef H5
|
// #ifdef H5
|
||||||
//H5接口是浏览器地址
|
//H5接口是浏览器地址
|
||||||
// HTTP_REQUEST_URL: window.location.protocol+"//"+window.location.host,
|
// HTTP_REQUEST_URL: window.location.protocol+"//"+window.location.host,
|
||||||
|
|
|
@ -87,7 +87,7 @@
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
async onLoad() {
|
async onShow() {
|
||||||
try{
|
try{
|
||||||
uni.showLoading({
|
uni.showLoading({
|
||||||
title: '加载中',
|
title: '加载中',
|
||||||
|
|
|
@ -99,7 +99,7 @@
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: mapGetters(['userInfo']),
|
computed: mapGetters(['userInfo']),
|
||||||
async onLoad() {
|
async onShow() {
|
||||||
const resful = await memberGradeInfo()
|
const resful = await memberGradeInfo()
|
||||||
if(resful.data.some((item) => !!parseInt(item.isExist))){
|
if(resful.data.some((item) => !!parseInt(item.isExist))){
|
||||||
uni.setTabBarItem({
|
uni.setTabBarItem({
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<view class="text">可享一年返回<span>{{item.refundAmount}}元</span>话费</view>
|
<view class="text">可享一年返回<span>{{item.refundAmount}}元</span>话费</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="tips">
|
<view class="tips">
|
||||||
三个活动可同时参与,每个手机号仅限一次,最高可反<span>1920元</span>话费!!!
|
三个活动可同时参与,每个手机号仅限一次,最高可返<span>{{total}}元</span>话费!!!
|
||||||
</view>
|
</view>
|
||||||
<view class="service-phone">{{tenantInfo.serviceMobile}}</view>
|
<view class="service-phone">{{tenantInfo.serviceMobile}}</view>
|
||||||
<view class="tenant-info-wrap">
|
<view class="tenant-info-wrap">
|
||||||
|
@ -55,7 +55,16 @@
|
||||||
isHideBtn: false
|
isHideBtn: false
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: mapGetters(['isLogin', 'uid', 'userInfo', 'tenantId', 'tenantInfo']),
|
computed:{
|
||||||
|
...mapGetters(['isLogin', 'uid', 'userInfo', 'tenantId', 'tenantInfo']),
|
||||||
|
total: function(){
|
||||||
|
let _total = 0
|
||||||
|
for (let active of this.activityList) {
|
||||||
|
_total+= parseInt(active.refundAmount)
|
||||||
|
}
|
||||||
|
return _total
|
||||||
|
},
|
||||||
|
},
|
||||||
onLoad() {
|
onLoad() {
|
||||||
if (!this.isLogin) {
|
if (!this.isLogin) {
|
||||||
toLogin()
|
toLogin()
|
||||||
|
@ -77,6 +86,7 @@
|
||||||
quality: 0.95,
|
quality: 0.95,
|
||||||
cacheBust: true
|
cacheBust: true
|
||||||
});
|
});
|
||||||
|
console.log('i', i)
|
||||||
}
|
}
|
||||||
htmlToImage.toPng(document.getElementById('poster-wrap'), {
|
htmlToImage.toPng(document.getElementById('poster-wrap'), {
|
||||||
quality: 0.95,
|
quality: 0.95,
|
||||||
|
|
Loading…
Reference in New Issue