Parcourir la source

fix(create-order): 优化补充服务中的服务项选择逻辑

- 在 OrderDetailCardProductList 和 SelectOrderDetailCard 组件中增加了对服务项 ID 为 4 和 19 的特殊处理
- 当同时选择 4 和 19 时,自动移除服务项 4,以避免重复或冲突
- 这个修改确保了补充服务的选择更加合理和准确

Signed-off-by: tangshizhe <48740614+tangshizhe@users.noreply.github.com>
tangshizhe il y a 1 mois
Parent
commit
2924972cc4

+ 4 - 0
src/views/create-order/components/order-detail-submodule/OrderDetailCardProductList.vue

@@ -440,6 +440,10 @@ export default {
               // 补充服务
               // 相同的值组成的数组
               sameValues = supServiceIds.filter(value => serviceIds.includes(value));
+              if (sameValues.length && sameValues.includes(4) && sameValues.includes(19)) {
+                // 同时有4和19时,去掉 4
+                sameValues = sameValues.filter(value => value !== 4);
+              }
               const supServiceIdsArr = sameValues.map(id => parseInt(id));
               if(supServiceIdsArr.length === 0) {
                 console.warn('supServiceIdsArr为空') 

+ 4 - 0
src/views/create-order/components/order-detail-submodule/SelectOrderDetailCard.vue

@@ -637,6 +637,10 @@ export default {
               // 补充服务
               // 相同的值组成的数组
               sameValues = supServiceIds.filter(value => serviceIds.includes(value));
+              if (sameValues.length && sameValues.includes(4) && sameValues.includes(19)) {
+                // 同时有4和19时,去掉 4
+                sameValues = sameValues.filter(value => value !== 4);
+              }
               const supServiceIdsArr = sameValues.map(id => parseInt(id));
               if(supServiceIdsArr.length === 0) {
                 console.warn('supServiceIdsArr为空')