From 1a14ff6035932eadfb6ef7970e3adb24b4e158a6 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 18 十二月 2019 18:56:17 +0800
Subject: [PATCH] 2019-12-18

---
 src/templates/comtableconfig/dragelement/card.jsx |  113 +++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 66 insertions(+), 47 deletions(-)

diff --git a/src/templates/comtableconfig/dragelement/card.jsx b/src/templates/comtableconfig/dragelement/card.jsx
index 617c5f5..00bdafe 100644
--- a/src/templates/comtableconfig/dragelement/card.jsx
+++ b/src/templates/comtableconfig/dragelement/card.jsx
@@ -45,79 +45,98 @@
     copyCard(id)
   }
 
-  let selectval = ''
+  let _defaultValue = '' // 涓嬫媺鎼滅储銆佹椂闂磋寖鍥寸被鍨嬶紝鍒濆鍊奸渶瑕侀澶勭悊
+
   if (type === 'search' && card.type === 'select') {
     if (card.initval) {
       let _option = card.options.filter(option => option.Value === card.initval)[0]
       if (_option) {
-        selectval = _option.Text || ''
+        _defaultValue = _option.Text || ''
       } else {
-        selectval = ''
+        _defaultValue = ''
       }
     } else if (card.setAll === 'true') {
-      selectval = '鍏ㄩ儴'
+      _defaultValue = '鍏ㄩ儴'
+    }
+  } else if (type === 'search' && card.type === 'daterange') {
+    _defaultValue = [null, null]
+    if (card.initval) {
+      try {
+        let _initval = JSON.parse(card.initval)
+        _defaultValue = [moment().subtract(_initval[0], 'days'), moment().subtract(_initval[1], 'days')]
+      } catch {
+        _defaultValue = [null, null]
+      }
     }
   }
 
   return (
     <div className="page-card" style={type === 'columns' ? { flex: card.Width, opacity: opacity} : { opacity: opacity}}>
       <div ref={node => drag(drop(node))}>
-        {type === 'search' && <div className="ant-row ant-form-item">
-          <div className="ant-col ant-form-item-label">
-            <label title={card.label}>{card.label}</label>
-          </div>
-          <div className="ant-col ant-form-item-control-wrapper">
-            {card.type === 'text' ?
-              <Input style={{marginTop: '4px'}} defaultValue={card.initval} /> : null
-            }
-            {(card.type === 'select' || card.type === 'link') ?
-              <Select defaultValue={selectval}></Select> : null
-            }
-            {card.type === 'date' ?
-              <DatePicker defaultValue={card.initval ? moment().subtract(card.initval, 'days') : null} /> : null
-            }
-            {card.type === 'dateweek' ?
-              <WeekPicker defaultValue={card.initval ? moment().subtract(card.initval * 7, 'days') : null} /> : null
-            }
-            {card.type === 'datemonth' ?
-              <MonthPicker defaultValue={card.initval ? moment().subtract(card.initval, 'month') : null} /> : null
-            }
-            {card.type === 'daterange' ?
-              <RangePicker
-                className="data-range"
-                placeholder={['寮�濮嬫棩鏈�', '缁撴潫鏃ユ湡']}
-                renderExtraFooter={() => 'extra footer'}
-                defaultValue={card.initval ? [moment().subtract(card.initval, 'days'), moment().subtract(card.initval === 1 ? 1 : 0, 'days')] : [null, null]}
-              /> : null
-            }
-            <div className="input-mask"></div>
-          </div>
-        </div>}
-        {type === 'action' &&
+        {type === 'search' ?
+          <div className="ant-row ant-form-item">
+            <div className="ant-col ant-form-item-label">
+              <label title={card.label}>{card.label}</label>
+            </div>
+            <div className="ant-col ant-form-item-control-wrapper">
+              {card.type === 'text' ?
+                <Input style={{marginTop: '4px'}} defaultValue={card.initval} /> : null
+              }
+              {(card.type === 'select' || card.type === 'link') ?
+                <Select defaultValue={_defaultValue}></Select> : null
+              }
+              {card.type === 'date' ?
+                <DatePicker defaultValue={card.initval ? moment().subtract(card.initval, 'days') : null} /> : null
+              }
+              {card.type === 'dateweek' ?
+                <WeekPicker defaultValue={card.initval ? moment().subtract(card.initval * 7, 'days') : null} /> : null
+              }
+              {card.type === 'datemonth' ?
+                <MonthPicker defaultValue={card.initval ? moment().subtract(card.initval, 'month') : null} /> : null
+              }
+              {card.type === 'daterange' ?
+                <RangePicker
+                  className="data-range"
+                  placeholder={['寮�濮嬫棩鏈�', '缁撴潫鏃ユ湡']}
+                  renderExtraFooter={() => 'extra footer'}
+                  defaultValue={_defaultValue}
+                /> : null
+              }
+              <div className="input-mask"></div>
+            </div>
+          </div> : null
+        }
+        {type === 'action' ?
           <Button
             className={'mk-btn mk-' + card.class}
             icon={card.icon}
             key={card.uuid}
-          >{card.label}{card.position === 'grid' && <Icon type="table" />}</Button>
+          >
+            {card.label}{card.position === 'grid' && <Icon type="table" />}
+          </Button> : null
         }
-        {type === 'columns' &&
+        {type === 'columns' ?
           <span className="ant-table-header-column">
             <div className="ant-table-column-sorters" title={card.label} style={{textAlign: card.Align}}>
               <span className="ant-table-column-title">{card.label}</span>
-              {card.IsSort === 'true' && <span className="ant-table-column-sorter">
-                <Icon type="caret-up" />
-                <Icon type="caret-down" />
-              </span>}
+              {card.IsSort === 'true' ?
+                <span className="ant-table-column-sorter">
+                  <Icon type="caret-up" />
+                  <Icon type="caret-down" />
+                </span> : null
+              }
             </div>
-            {showfield ? <div className="ant-table-column-fields">
-              <span className="ant-table-column-title">{card.type === 'colspan' ? card.subfield : card.field}</span>
-            </div> : null}
-          </span>
+            {showfield ?
+              <div className="ant-table-column-fields">
+                <span className="ant-table-column-title">{card.type === 'colspan' ? card.subfield : card.field}</span>
+              </div> : null
+            }
+          </span> : null
         }
       </div>
       <Icon className="edit" type="edit" onClick={edit} />
       <Icon className="edit close" type="close" onClick={del} />
-      {type === 'action' && <Icon className="edit copy" type="copy" onClick={copy} />}
+      {type === 'action' ? <Icon className="edit copy" type="copy" onClick={copy} /> : null}
     </div>
   )
 }

--
Gitblit v1.8.0