From 71b872aa44de6266a344646d0e535895620d57a7 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期日, 05 一月 2020 22:45:06 +0800
Subject: [PATCH] 2020-01-05

---
 src/tabviews/tableshare/actionList/index.jsx |   73 ++++++++++++++++++++++--------------
 1 files changed, 44 insertions(+), 29 deletions(-)

diff --git a/src/tabviews/tableshare/actionList/index.jsx b/src/tabviews/tableshare/actionList/index.jsx
index 2acdec2..eca17b6 100644
--- a/src/tabviews/tableshare/actionList/index.jsx
+++ b/src/tabviews/tableshare/actionList/index.jsx
@@ -122,6 +122,7 @@
    */
   execSubmit = (btn, data, _resolve, formdata) => {
     const { setting } = this.props
+
     if (btn.intertype === 'inner') {
       // 浣跨敤鍐呴儴鎺ュ彛鏃讹紝鍐呴儴鍑芥暟鍜屾暟鎹簮涓嶅彲鍚屾椂涓虹┖, 浣跨敤绯荤粺鍑芥暟鏃讹紝绫诲瀷涓嶅彲涓虹┖
       if (!btn.innerFunc && (!btn.sql || (btn.sql && !btn.sqlType))) {
@@ -141,6 +142,10 @@
           BID: this.props.BID
         }
 
+        if (setting.primaryKey) {
+          param[setting.primaryKey] = (data[0] && data[0][setting.primaryKey]) || ''
+        }
+
         if (btn.OpenType === 'prompt' || btn.OpenType === 'exec') { // 鏄惁寮规鎴栫洿鎺ユ墽琛�
           let ID = ''
           if (btn.Ot === 'notRequired') {
@@ -152,7 +157,9 @@
             ID = ids.join(',')
           }
 
-          param.ID = ID
+          if (setting.primaryKey) {
+            param[setting.primaryKey] = ID
+          }
 
           if (btn.innerFunc) {
             param.func = btn.innerFunc
@@ -168,21 +175,16 @@
             formdata.forEach(_data => {
               param[_data.key] = _data.value
             })
-            if (setting.primaryKey) {
-              if (!param.hasOwnProperty(setting.primaryKey) && data[0] && data[0][setting.primaryKey]) {
-                param[setting.primaryKey] = data[0][setting.primaryKey]
-              }
-            }
-            if (!param.hasOwnProperty('ID') && setting.primaryKey && data[0] && data[0][setting.primaryKey]) {
-              param.ID = data[0][setting.primaryKey]
-            }
+
           } else if (btn.sql && btn.sqlType === 'insert') {
-            param.ID = Utils.getguid()
+            if (setting.primaryKey) {
+              param[setting.primaryKey] = Utils.getguid()
+            }
+
             param.LText = Utils.formatOptions(Utils.getSysDefaultSql(btn, setting, formdata)) // 鏁版嵁婧�
             param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
             param.secretkey = Utils.encrypt(param.LText, param.timestamp)
           } else if (btn.sql) {
-            param.ID = data[0][setting.primaryKey]
             param.LText = Utils.formatOptions(Utils.getSysDefaultSql(btn, setting, formdata)) // 鏁版嵁婧�
             param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
             param.secretkey = Utils.encrypt(param.LText, param.timestamp)
@@ -205,8 +207,11 @@
             BID: this.props.BID
           }
 
+          if (setting.primaryKey) {
+            param[setting.primaryKey] = cell[setting.primaryKey] || ''
+          }
+
           if (btn.OpenType === 'prompt' || btn.OpenType === 'exec') { // 鏄惁寮规鎴栫洿鎺ユ墽琛�
-            param.ID = cell[setting.primaryKey]
 
             if (btn.innerFunc) {
               param.func = btn.innerFunc
@@ -222,14 +227,11 @@
               formdata.forEach(_data => {
                 param[_data.key] = _data.value
               })
-              if (!param.hasOwnProperty(setting.primaryKey) && cell[setting.primaryKey]) {
+
+            } else if (btn.sql) {
+              if (setting.primaryKey) {
                 param[setting.primaryKey] = cell[setting.primaryKey]
               }
-              if (!param.hasOwnProperty('ID') && cell[setting.primaryKey]) {
-                param.ID = cell[setting.primaryKey]
-              }
-            } else if (btn.sql) {
-              param.ID = cell[setting.primaryKey]
               param.LText = Utils.formatOptions(Utils.getSysDefaultSql(btn, setting, formdata)) // 鏁版嵁婧�
               param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
               param.secretkey = Utils.encrypt(param.LText, param.timestamp)
@@ -268,7 +270,6 @@
     } else if (btn.intertype === 'outer') {
       /** *********************璋冪敤澶栭儴鎺ュ彛************************* */
       let param = {
-        ID: '',
         BID: this.props.BID
       }
 
@@ -282,11 +283,11 @@
         // 鑾峰彇id
         if (btn.Ot === 'notRequired') {
           
-        } else if (btn.Ot === 'requiredSgl') {
-          param.ID = data[0][setting.primaryKey]
-        } else if (btn.Ot === 'requiredOnce') {
+        } else if (btn.Ot === 'requiredSgl' && setting.primaryKey) {
+          param[setting.primaryKey] = data[0][setting.primaryKey]
+        } else if (btn.Ot === 'requiredOnce' && setting.primaryKey) {
           let ids = data.map(d => { return d[setting.primaryKey]})
-          param.ID = ids.join(',')
+          param[setting.primaryKey] = ids.join(',')
         }
 
         new Promise(resolve => {
@@ -368,7 +369,9 @@
                 BID: this.props.BID,
                 func: btn.innerFunc
               }
-              _param.ID = cell[setting.primaryKey]
+              if (setting.primaryKey) {
+                _param[setting.primaryKey] = cell[setting.primaryKey]
+              }
               return new Promise(resolve => {
                 Api.genericInterface(_param).then(res => {
                   resolve(res)
@@ -398,10 +401,14 @@
             })
           } else {
             let params = data.map(cell => {
-              return {
+              let _cell = {
                 BID: this.props.BID,
-                ID: cell[setting.primaryKey]
               }
+              if (setting.primaryKey) {
+                _cell[setting.primaryKey] = cell[setting.primaryKey]
+              }
+
+              return _cell
             })
             resolve(params)
           }
@@ -510,18 +517,26 @@
    * 5銆侀�氱煡涓诲垪琛ㄥ埛鏂�
    */
   execSuccess = (btn, res) => {
-    if (btn.OpenType === 'excelOut') {
+    if (btn.OpenType === 'excelOut') { // 瀵煎嚭excel
       this.setState({
         loadingUuid: ''
       })
-    } else if (res && res.ErrCode === 'S') {
+    } else if (res && res.ErrCode === 'S') { // 鎵ц鎴愬姛
       notification.success({
         top: 92,
         message: res.ErrMesg || this.props.dict['main.action.confirm.success'],
         duration: 2
       })
-    } else if (res && res.ErrCode === '-1') {
+    } else if (res && res.ErrCode === '-1') { // 瀹屾垚鍚庝笉鎻愮ず
 
+    } else if (res.Relogin === 'true') { // 鍒囨崲鐢ㄦ埛鍔熻兘
+      sessionStorage.setItem('UserID', res.UserID)
+      sessionStorage.setItem('SessionUid', Utils.getuuid())
+      sessionStorage.setItem('LoginUID', res.LoginUID)
+      sessionStorage.setItem('User_Name', res.UserName)
+      
+      window.location.reload()
+      return
     }
     
     if (btn.OpenType === 'pop' && btn.setting && btn.setting.finish !== 'unclose') {

--
Gitblit v1.8.0