From 1de12ada0992158018ad803ff5eb20dc55902087 Mon Sep 17 00:00:00 2001
From: xingjx <xingjx@yisa.com>
Date: Fri, 19 Jan 2024 14:44:44 +0800
Subject: [PATCH] =?UTF-8?q?fix():=E4=BF=A1=E7=94=A8=E7=A7=AF=E5=88=86?=
 =?UTF-8?q?=E7=AE=A1=E7=90=86=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../OperationSales/CreditScoreMgm/loadable.jsx     | 24 +++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

diff --git a/src/pages/OperationCenter/OperationSales/CreditScoreMgm/loadable.jsx b/src/pages/OperationCenter/OperationSales/CreditScoreMgm/loadable.jsx
index 29527c6..ea0677c 100644
--- a/src/pages/OperationCenter/OperationSales/CreditScoreMgm/loadable.jsx
+++ b/src/pages/OperationCenter/OperationSales/CreditScoreMgm/loadable.jsx
@@ -414,7 +414,7 @@ function CreditScoreMgm() {
       if (e.status == 20000) {
         setPayVisible(true)
         setPayData(e.data)
-      }else {
+      } else {
         message.error(e.message)
       }
     })
@@ -429,16 +429,23 @@ function CreditScoreMgm() {
   const getRechargeRulesUpdate = (e) => {
     let flag = []
     let arr = []
+    let couflag = []
     e.list.map((item) => {
       if (item.recharge == null || item.recharge == '') {
         flag.push(false)
       } else {
         arr.push(item.recharge)
+        let couponArr = []
         item.children.map((res) => {
           if (res.couponId == null || res.couponId == '' || res.num == null || res.num == '') {
             flag.push(false)
+          }else {
+            couponArr.push(res.couponId)
           }
         })
+        if (couponArr.length != [...new Set(couponArr)].length) {
+          couflag.push(false)
+        }
       }
     })
     if (flatten(flag).some(ele => ele === false)) {
@@ -449,6 +456,10 @@ function CreditScoreMgm() {
       message.error("每个规则对应的充值金额不能相同,请修改")
       return
     }
+    if (flatten(couflag).some(ele => ele === false)) {
+      message.error("每个规则添加的消费券不能相同,请修改")
+      return
+    }
     ajax.getRechargeRulesUpdate(e).then((e) => {
       if (e.status == 20000) {
         message.success(e.message)
@@ -463,7 +474,7 @@ function CreditScoreMgm() {
       if (e.status == 20000) {
         message.success(e.message)
         return 1
-      }else {
+      } else {
         message.error(e.message)
       }
     })
@@ -832,7 +843,9 @@ function CreditScoreMgm() {
               return <div className="pay-box">
                 <div className="title">规则{index + 1}</div>
                 {index > 0 ? <div className="delrule-btn" onClick={() => {
-                  getRechargeRulesDel({ rid: item.rid });
+                  if (item.rid) {
+                    getRechargeRulesDel({ rid: item.rid });
+                  }
                   let arr = payData
                   arr.list.splice(index, 1);
                   setFlag(flag + 1)
@@ -891,10 +904,11 @@ function CreditScoreMgm() {
                             {
                               index2 > 0 && index2 + 1 == item.children.length ?
                                 <div className="add-btn del-btn" onClick={() => {
-                                  getRechargeRulesDel({ cid: res.couponId })
+                                  if (res.cid) {
+                                    getRechargeRulesDel({ cid: res.cid })
+                                  }
                                   let arr = payData
                                   arr.list[index].children.splice(index2, 1);
-                                  console.log(847, arr)
                                   setFlag(flag + 1)
                                   setPayData(arr)
                                 }