From 99966d855531d813197190f68e84f409f4eb1e61 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 10 三月 2022 18:50:37 +0800
Subject: [PATCH] 2022-03-10

---
 src/tabviews/zshare/mutilform/index.jsx |   49 +++++++++++++++++++++++++++++++++----------------
 1 files changed, 33 insertions(+), 16 deletions(-)

diff --git a/src/tabviews/zshare/mutilform/index.jsx b/src/tabviews/zshare/mutilform/index.jsx
index b50c803..21981c0 100644
--- a/src/tabviews/zshare/mutilform/index.jsx
+++ b/src/tabviews/zshare/mutilform/index.jsx
@@ -84,9 +84,14 @@
         }
         delete item.field
         return true
+      } else if (item.type === 'date') { // 鏃堕棿鎼滅储
+        item.precision = item.precision || 'day'
+      } else if (item.type === 'datetime') {
+        item.type = 'date'
+        item.precision = 'second'
       }
 
-      if (!item.field || !['text', 'number', 'switch', 'rate', 'select', 'link', 'linkMain', 'funcvar', 'date', 'datemonth', 'datetime', 'radio', 'checkbox', 'checkcard', 'fileupload', 'textarea', 'multiselect', 'brafteditor', 'color'].includes(item.type)) return false
+      if (!item.field || !['text', 'number', 'switch', 'rate', 'select', 'link', 'linkMain', 'funcvar', 'date', 'datemonth', 'radio', 'checkbox', 'checkcard', 'fileupload', 'textarea', 'multiselect', 'brafteditor', 'color'].includes(item.type)) return false
 
       // 鏁版嵁鑷姩濉厖
       let readin = item.readin !== 'false'
@@ -139,12 +144,24 @@
       if (item.type === 'linkMain') {
         newval = BData && BData[item.field] ? BData[item.field] : '$empty'
       } else if (item.type === 'date') { // 鏃堕棿鎼滅储
+        let format = 'YYYY-MM-DD'
+        let _format = 'YYYY-MM-DD HH:mm:ss'
+        if (item.precision === 'day') {
+          _format = 'YYYY-MM-DD'
+        } else if (item.precision === 'hour') {
+          format = 'YYYY-MM-DD HH'
+        } else if (item.precision === 'minute') {
+          format = 'YYYY-MM-DD HH:mm'
+        } else if (item.precision === 'second') {
+          format = 'YYYY-MM-DD HH:mm:ss'
+        }
+
         if (newval !== '$empty') {
-          newval = moment(newval, 'YYYY-MM-DD').format('YYYY-MM-DD')
+          newval = moment(newval, format).format(_format)
           newval = newval === 'Invalid date' ? '$empty' : newval
         }
         if (newval === '$empty' && item.initval) {
-          newval = moment().subtract(item.initval, 'days').format('YYYY-MM-DD')
+          newval = moment().subtract(item.initval, 'days').format(_format)
         }
       } else if (item.type === 'datemonth') {
         if (newval !== '$empty') {
@@ -154,18 +171,18 @@
         if (newval === '$empty' && item.initval) {
           newval = moment().subtract(item.initval, 'month').format('YYYY-MM')
         }
-      } else if (item.type === 'datetime') {
-        if (newval !== '$empty') {
-          newval = moment(newval, 'YYYY-MM-DD HH:mm:ss').format('YYYY-MM-DD HH:mm:ss')
-          newval = newval === 'Invalid date' ? '$empty' : newval
-        }
-        if (newval === '$empty' && item.initval) {
-          if (item.initval === '0') {
-            newval = moment().format('YYYY-MM-DD HH:mm:ss')
-          } else {
-            newval = moment().subtract(item.initval, 'days').format('YYYY-MM-DD') + ' 00:00:00'
-          }
-        }
+      // } else if (item.type === 'datetime') {
+      //   if (newval !== '$empty') {
+      //     newval = moment(newval, 'YYYY-MM-DD HH:mm:ss').format('YYYY-MM-DD HH:mm:ss')
+      //     newval = newval === 'Invalid date' ? '$empty' : newval
+      //   }
+      //   if (newval === '$empty' && item.initval) {
+      //     if (item.initval === '0') {
+      //       newval = moment().format('YYYY-MM-DD HH:mm:ss')
+      //     } else {
+      //       newval = moment().subtract(item.initval, 'days').format('YYYY-MM-DD') + ' 00:00:00'
+      //     }
+      //   }
       } else if (item.type === 'switch') { // 寮�鍏冲彧鎺ユ敹鍥哄畾鍊�
         if (newval !== '$empty' && (newval === item.closeVal || newval === item.openVal)) {
 
@@ -802,7 +819,7 @@
           content = (<MKCheckbox config={item} onChange={(val) => this.recordChange({[item.field]: val})}/>)
         } else if (item.type === 'radio') {
           content = (<MKRadio config={item} onChange={(val, other) => this.recordChange({[item.field]: val, ...other}, item)}/>)
-        } else if (item.type === 'date' || item.type === 'datemonth' || item.type === 'datetime') {
+        } else if (item.type === 'date' || item.type === 'datemonth') {
           content = (<MKDatePicker config={item} onChange={(val) => this.recordChange({[item.field]: val})} />)
         } else if (item.type === 'fileupload') {
           className = item.readonly ? 'readonly' : ''

--
Gitblit v1.8.0