From ed719ec5d86d3373ee95df8262eba3f456f94d60 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 12 六月 2024 17:28:09 +0800
Subject: [PATCH] 2024-06-12

---
 src/menu/components/share/searchcomponent/index.jsx |   46 +++++++++++++++-------------------------------
 1 files changed, 15 insertions(+), 31 deletions(-)

diff --git a/src/menu/components/share/searchcomponent/index.jsx b/src/menu/components/share/searchcomponent/index.jsx
index 3136358..82050b9 100644
--- a/src/menu/components/share/searchcomponent/index.jsx
+++ b/src/menu/components/share/searchcomponent/index.jsx
@@ -2,11 +2,9 @@
 import PropTypes from 'prop-types'
 import { is, fromJS } from 'immutable'
 import { Modal, notification } from 'antd'
-import moment from 'moment'
 
 import MKEmitter from '@/utils/events.js'
 import Api from '@/api'
-import Utils from '@/utils/utils.js'
 import { getSearchForm } from '@/templates/zshare/formconfig'
 
 import SearchForm from '@/templates/sharecomponent/searchcomponent/searchform'
@@ -95,6 +93,7 @@
    * @description 鎼滅储鏉′欢缂栬緫锛岃幏鍙栨悳绱㈡潯浠惰〃鍗曚俊鎭�
    */
   handleSearch = (card) => {
+    const { config } = this.props
     const { searchlist } = this.state
     let linkableFields = []
 
@@ -109,10 +108,17 @@
       })
     })
 
+    let columns = null
+    if (config.columns && config.columns.length) {
+      columns = config.columns.map(item => {
+        return {key: item.uuid, text: item.field, value: item.field, label: item.label}
+      })
+    }
+
     this.setState({
       visible: true,
       card: card,
-      formlist: getSearchForm(card, linkableFields, [], 'header')
+      formlist: getSearchForm(card, linkableFields, columns, 'header')
     })
   }
 
@@ -153,7 +159,6 @@
 
     this.searchFormRef.handleConfirm().then(res => {
       let fieldrepet = false // 瀛楁閲嶅
-      let labelrepet = false // 鎻愮ず鏂囧瓧閲嶅
 
       _searchlist = _searchlist.filter(item => !item.origin || item.uuid === res.uuid) // 鍘婚櫎绯荤粺椤�
 
@@ -181,8 +186,6 @@
 
           if (setFields.length < itemFields.length + resFields.length && (res.type !== 'date' || item.type !== 'date')) {
             fieldrepet = true
-          } else if (item.label === res.label) {
-            labelrepet = true
           }
         }
 
@@ -200,38 +203,19 @@
           duration: 5
         })
         return
-      } else if (labelrepet) {
-        notification.warning({
-          top: 92,
-          message: '鍚嶇О宸插瓨鍦�!',
-          duration: 5
-        })
-        return
       }
 
-      if (['select', 'multiselect', 'link', 'checkcard'].includes(res.type) && res.resourceType === '1' && /\s/.test(res.dataSource)) {
+      if (['select', 'multiselect', 'link', 'checkcard'].includes(res.type) && res.resourceType === '1' && res.database !== 'sso' && /\s/.test(res.dataSource)) {
         this.setState({
           sqlVerifing: true
         })
 
-        let param = {
-          func: 's_debug_sql',
-          exec_type: 'y',
-          LText: res.dataSource
-        }
-
-        param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss')
-        param.LText = param.LText.replace(/@\$|\$@/ig, '').replace(/@(BID|ID|LoginUID|SessionUid|UserID|Appkey|time_id)@/ig, `'${param.timestamp}'`)
+        let sql = `declare @mk_departmentcode nvarchar(512),@mk_organization nvarchar(512),@mk_user_type nvarchar(20)
+        ${res.dataSource}`
+        sql = sql.replace(/@\$|\$@/ig, '')
         
-        param.LText = Utils.formatOptions(param.LText)
-        param.secretkey = Utils.encrypt('', param.timestamp)
-
-        if (window.GLOB.mainSystemApi && res.database === 'sso') {
-          param.rduri = window.GLOB.mainSystemApi
-        }
-        
-        Api.genericInterface(param).then(result => {
-          if (result.status) {
+        Api.sDebug(sql).then(result => {
+          if (result.status || result.ErrCode === '-2') {
             this.setState({
               sqlVerifing: false,
               searchlist: _searchlist,

--
Gitblit v1.8.0