解决九两酒商城[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完整版

相关推荐
ALGO阿狗6 天前
SimpleDateFormat(“YYYY-MM-dd“)格式化时间出现了bug?
bug
爱学习的小可爱卢7 天前
JavaSE基础-Java异常体系:Bug定位终极指南
java·bug·javase
GeekyGuru7 天前
代码诊疗室——疑难Bug破解战
bug
嵌入式×边缘AI:打怪升级日志10 天前
9.2.3 UART 驱动严重 Bug(保姆级讲解)
bug
qq_242188633212 天前
代码诊疗室——疑难Bug破解战
bug
Moshow郑锴14 天前
Java SpringBoot 疑难 Bug 排查思路解析:从“语法正确”到“行为相符”
java·spring boot·bug
人间花海14 天前
BUG终结者:挑战你的调试极限
bug
2401_8582861114 天前
OS54.【Linux】System V 共享内存(3) “共享内存+管道“修bug记录
linux·运维·服务器·算法·bug
Kurbaneli15 天前
代码诊疗室——疑难Bug破解战
bug
Mr -老鬼17 天前
从 0 到 1 落地:Rust + Salvo 实现用户系统与 Bug 管理系统
开发语言·rust·bug