解决九两酒商城[uni-pay-co]: Error:执行失败,积 分需要大于等于1的bug

问题描述

在开发九两酒微信小程序商城时候,在订单页面,如果金额比较低,就会出现score积分为0的情况,支付完成后会报如下错误"[uni-pay-co]: Error:执行失败,积 分需要大于等于1",如下图所示:

问题解决

经过排查是在支付成功后出现的问题,那问题基本出现在支付回调云对象内,所以看一下该云对象,uni-pay-co -> notify -> goods.js

javascript 复制代码
const scoreCloudObj = uniCloud.importObject('client-scores');
scoreCloudObj.shopping({
	_id: payOrder._id,
	type: 2,
	user_id: payOrder.user_id
});

问题就是调用购物赠送积分的shopping函数中,根据路径找到函数

javascript 复制代码
//购物获得积分
async shopping({ _id, type = 1, user_id } = {}) {
	.......
	let score = type == 1 ? orderData?.score_in ?? 0 : orderData?.score_out ?? 0;
	if (!score) return console.log({ errCode: 400, errMsg: 'error', custom: '积分需要大于等于1' });
	..........
}

如上所示,将if判断积分原来的return result({errCode:400})修改成console.log,这样就不会将错误信息返回而阻塞后面程序的运行了,错误信息页可以直接进入云函数日志中查看。

如果要想学习完整的微信小程序商城,可以查看:unipay支付微信小程序商城开发Vue3完整版

相关推荐
凯子坚持 c4 小时前
Git分支实战指南:如何优雅地管理版本、修复Bug并解决合并冲突
git·bug
咸虾米_5 小时前
uniapp+unicloud实战项目,九两酒微信小程序商城及后台管理系统前后端部署运行步骤
微信小程序·uni-app·uniapp实战项目·unicloud云开发·vue3后台管理
北冥有渔jy6 小时前
BT6.0常见的BUG
网络·安全·bug·蓝牙
测试19981 天前
一个只能通过压测发现Bug
自动化测试·软件测试·python·selenium·测试工具·bug·压力测试
狂奔的sherry1 天前
网卡获取模组ip失败问题解析
bug
nnsix2 天前
Unity ReferenceFinder插件 多选资源查找bug解决
unity·游戏引擎·bug
中冕—霍格沃兹软件开发测试2 天前
边界值分析:功能测试中的精度利器
人工智能·功能测试·科技·测试工具·appium·bug
中冕—霍格沃兹软件开发测试3 天前
探索性测试:思维驱动下的高效缺陷狩猎
人工智能·科技·开源·appium·bug
中冕—霍格沃兹软件开发测试3 天前
Git版本控制在测试项目管理中的应用
人工智能·git·科技·开源·appium·bug