Browse Source

feat(红包功能): 优化输入验证逻辑,允许红包抵扣后金额为0

milestone-20251217-红包
zhangrenyuan 4 weeks ago
parent
commit
b3afb31adb
  1. 15
      src/views/consume/gold/addCoinConsume.vue

15
src/views/consume/gold/addCoinConsume.vue

@ -77,6 +77,19 @@ const rules = reactive({
{ required: true, message: t('elmessage.noEmptySumGold'), trigger: "blur" },
{
validator: (rule, value, callback) => {
// 使0
if (addConsume.value.redMoney === 1) {
const price = Number(addConsume.value.price || 0)
const redAmount = totalRedAmount.value
if (redAmount >= price) {
// 0
if (parseFloat(value) === 0 || value === 0) {
callback();
return;
}
}
}
// 00.10
const isValid = /^(0\.\d{1,2})|([1-9]\d*(\.\d{1,2})?)$/.test(value);
@ -561,7 +574,7 @@ watch(
() => addConsume.value.sumGold,
(newValue) => {
const parsedNewValue = parseFloat(newValue);
if (!isNaN(parsedNewValue) && parsedNewValue > 0) {
if (!isNaN(parsedNewValue) && parsedNewValue >= 0) {
const { free, permanent, task } = calculateCoins(parsedNewValue);
addConsume.value.freeGold = free;
addConsume.value.permanentGold = permanent;

Loading…
Cancel
Save