소스 검색

refactor(create-order): 优化无标准售价产品的判断逻辑

- 移除了特定产品类型的判断,改为判断产品是否缺少标准售价
- 简化了代码结构,提高了可读性和维护性
- 这个改动同时影响了 OrderDetailCardProductSummarize 和 SelectOrderDetailCard 组件

Signed-off-by: tangshizhe <48740614+tangshizhe@users.noreply.github.com>
tangshizhe 1 개월 전
부모
커밋
ba015017ba

+ 5 - 7
src/views/create-order/components/order-detail-submodule/OrderDetailCardProductSummarize.vue

@@ -189,14 +189,12 @@ export default {
       // const isAllOriginalPriceZeroBool = !isAllOriginalPriceZero.includes(true)
 
       // 无标准售价产品,标准售价合计展示为无法计算
-      const noOriginalPriceProduct = ['企业商机管理', '医械通', '物业数字化营销', '运营商专版']
+      // const noOriginalPriceProduct = ['企业商机管理', '医械通', '物业数字化营销', '运营商专版']
       let noOriginalPriceProductBool = false
-      noOriginalPriceProduct.forEach(item => {
-        productData.forEach(product => {
-          if(product.product_type.includes(item)) {
-            noOriginalPriceProductBool = true
-          } 
-        })
+      productData.forEach(product => {
+        if(!product.original_price) {
+          noOriginalPriceProductBool = true
+        } 
       })
       const originalPriceTotal = !noOriginalPriceProductBool
       this.orderData = {

+ 5 - 7
src/views/create-order/components/order-detail-submodule/SelectOrderDetailCard.vue

@@ -720,14 +720,12 @@ export default {
       const rateTotal = div(totalFinalPrice, totalOriginalPrice) ? (div(totalFinalPrice, totalOriginalPrice) * 100).toFixed(2) + '%' : '无法计算';
 
       // 无标准售价产品,标准售价合计展示为无法计算
-      const noOriginalPriceProduct = ['企业商机管理', '医械通', '物业数字化营销', '运营商专版']
+      // const noOriginalPriceProduct = ['企业商机管理', '医械通', '物业数字化营销', '运营商专版']
       let noOriginalPriceProductBool = false
-      noOriginalPriceProduct.forEach(item => {
-        productData.forEach(product => {
-          if(product.product_type.includes(item)) {
-            noOriginalPriceProductBool = true
-          } 
-        })
+      productData.forEach(product => {
+        if(!product.original_price) {
+          noOriginalPriceProductBool = true
+        } 
       })
       const originalPriceTotal = !noOriginalPriceProductBool
       this.orderData.final_price_total = totalFinalPrice;