Просмотр исходного кода

fix(ticket): 优化库存和限购数量显示逻辑

- 使用 hasValue 方法统一判断数值是否有效
- 避免显示无意义的 0 或空值
- 添加 hasValue 工具函数注释说明
- 修正上架按钮点击事件参数传递问题
congxuesong 3 недель назад
Родитель
Сommit
29bbf7ce5f
2 измененных файлов с 15 добавлено и 4 удалено
  1. 14 3
      src/views/ticketManagement/detail.vue
  2. 1 1
      src/views/ticketManagement/index.vue

+ 14 - 3
src/views/ticketManagement/detail.vue

@@ -75,7 +75,7 @@
           <div class="detail-item">
             <div class="detail-label">库存</div>
             <div class="detail-value">
-              {{ voucherModel.singleQty + "张" || "--" }}
+              {{ hasValue(voucherModel.singleQty) ? voucherModel.singleQty + "张" : "--" }}
             </div>
           </div>
         </div>
@@ -89,14 +89,14 @@
           <div class="detail-item">
             <div class="detail-label">单日可用数量</div>
             <div class="detail-value">
-              {{ voucherModel.singleCanUse ? voucherModel.singleCanUse + "张" : "不限制" }}
+              {{ hasValue(voucherModel.singleCanUse) ? voucherModel.singleCanUse + "张" : "不限制" }}
             </div>
           </div>
           <!-- 限购数量 -->
           <div class="detail-item">
             <div class="detail-label">限购数量</div>
             <div class="detail-value">
-              {{ voucherModel.purchaseLimitCode ? voucherModel.purchaseLimitCode + "张" : "不限制" }}
+              {{ hasValue(voucherModel.purchaseLimitCode) ? voucherModel.purchaseLimitCode + "张" : "不限制" }}
             </div>
           </div>
           <!-- 适用范围 -->
@@ -433,6 +433,17 @@ const getApplyScopeText = () => {
   }
   return "--";
 };
+
+/**
+ * 判断值是否有意义(不是空、不是0、不是"0")
+ * @param value 要判断的值
+ * @returns 如果值有意义返回true,否则返回false
+ */
+const hasValue = (value: any): boolean => {
+  if (value === null || value === undefined) return false;
+  if (value === "" || value === "0" || value === 0) return false;
+  return true;
+};
 </script>
 
 <style scoped lang="scss">

+ 1 - 1
src/views/ticketManagement/index.vue

@@ -44,7 +44,7 @@
           v-if="canShowButton(scope.row.status, currentOperationPermissions.上架)"
           link
           type="primary"
-          @click="changeTypes(scope.row, isVoucher ? 1 : 5)"
+          @click="changeTypes(scope.row, 5)"
         >
           上架
         </el-button>