From e556c51d397f8783d8b180aa4421d8acd1e657d6 Mon Sep 17 00:00:00 2001
From: mayf <m13160102112@163.com>
Date: 星期五, 20 九月 2024 09:27:25 +0800
Subject: [PATCH] fix开始时间大于结束时间问题

---
 pages/marketing/coupon/activity/index.vue |   66 +++++++++++++++++++--------------
 1 files changed, 38 insertions(+), 28 deletions(-)

diff --git a/pages/marketing/coupon/activity/index.vue b/pages/marketing/coupon/activity/index.vue
index 71db735..08f9178 100644
--- a/pages/marketing/coupon/activity/index.vue
+++ b/pages/marketing/coupon/activity/index.vue
@@ -11,6 +11,7 @@
   getActivityReceiveTime,
   getImageUrlRules,
   couponColumn,
+  dateTimeRules,
 } from '@/utils/coupon-form'
 export default {
   data() {
@@ -40,9 +41,8 @@
           if (!isNew) {
             row.usageTypeStr = getActivityEffectiveTime(row)
             row.getStartDateStr = getActivityReceiveTime(row)
-            getImageUrlRules(row,this.tableConfig.form)
+            getImageUrlRules(row, this.tableConfig.form)
           }
-          
         },
         columns: [
           ...couponColumn(),
@@ -102,7 +102,8 @@
         searchForm: [
           {
             type: 'row',
-            items: [...couponSearchForm(),
+            items: [
+              ...couponSearchForm(),
               {
                 label: '领取渠道:',
                 id: 'getType',
@@ -114,7 +115,6 @@
               },
             ],
           },
-
         ],
         form: [
           ...couponForm(),
@@ -130,17 +130,25 @@
             strKey: 'getTypeName',
             rules: { required: true, message: '请选择领取渠道' },
             on: {
-              change: (e, updateForm,obj) => {
-    
-                if(e[0]==='home'){
+              change: (e, updateForm, obj) => {
+                if (e[0] === 'home') {
                   // 如果是首页领取的话,则图片为必传递
-                  this.updateImageUrlRules(this.tableConfig.form,"imageUrl",true,"图片为必填项目")
-                }else{
-                  this.updateImageUrlRules(this.tableConfig.form,"imageUrl",false,"请输入图片")
+                  this.updateImageUrlRules(
+                    this.tableConfig.form,
+                    'imageUrl',
+                    true,
+                    '图片为必填项目'
+                  )
+                } else {
+                  this.updateImageUrlRules(
+                    this.tableConfig.form,
+                    'imageUrl',
+                    false,
+                    '请输入图片'
+                  )
                 }
               },
             },
-
           },
           {
             label: '优惠券图片:',
@@ -173,6 +181,7 @@
             commonRules: true,
             commonFormat: true,
             commonFormatProps: ['getStartDate', 'getEndDate'],
+            rules: dateTimeRules,
           },
           {
             label: '使用时间:',
@@ -209,6 +218,7 @@
             commonFormatProps: ['usageStartDate', 'usageEndDate'],
             hidden: (row, item, mode) =>
               row.usageType !== 'fixed' || mode === 'view',
+            rules: dateTimeRules,
           },
           {
             label: '领取后有效时间:',
@@ -269,22 +279,24 @@
         extraButtons: [
           {
             text: '发布',
-            show: (row) =>{
+            show: (row) => {
               // row.status === 'inactive' || row.status === 'expired'
               // const now = new Date(); // 获取当前时间
               // const startDate = new Date(row.getStartDate); // 获取开始时间
               // const endDate = new Date(row.getEndDate); // 获取结束时间
               // // 判断当前时间是否在开始时间和结束时间之间
               // const isInTimeRange = now >= startDate && now <= endDate;
-              const now = new Date(); // 获取当前时间
-              const endDate = new Date(row.getEndDate); // 获取结束时间
+              const now = new Date() // 获取当前时间
+              const endDate = new Date(row.getEndDate) // 获取结束时间
               // 判断当前时间是否已经超过领取结束时间
-              const isAfterEndDate = now <= endDate;
-              if (isAfterEndDate && (row.status === 'inactive' || row.status === 'expired')) {
-                  return true;
+              const isAfterEndDate = now <= endDate
+              if (
+                isAfterEndDate &&
+                (row.status === 'inactive' || row.status === 'expired')
+              ) {
+                return true
               }
-              return false;
-          
+              return false
             },
             atClick: async (row) => {
               try {
@@ -329,16 +341,14 @@
     }
   },
   methods: {
-    updateImageUrlRules(form,id,required,message) {
-      const curField =form.find(
-        (field) => field.id === id
-      );
+    updateImageUrlRules(form, id, required, message) {
+      const curField = form.find((field) => field.id === id)
       if (curField && curField.rules && required) {
-        curField.rules.required = true;
-        curField.rules.message = message;
-      }else if(curField && curField.rules){
-        curField.rules.required = false;
-        curField.rules.message = message;
+        curField.rules.required = true
+        curField.rules.message = message
+      } else if (curField && curField.rules) {
+        curField.rules.required = false
+        curField.rules.message = message
       }
     },
   },

--
Gitblit v1.9.3