From b15a4427ee710576dbdcc4ed932b38f1b47257e3 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期日, 19 一月 2020 17:48:34 +0800 Subject: [PATCH] 2020-01-19 --- src/utils/utils.js | 38 ++++++++++++++++++++------------------ 1 files changed, 20 insertions(+), 18 deletions(-) diff --git a/src/utils/utils.js b/src/utils/utils.js index f4c00ea..0355853 100644 --- a/src/utils/utils.js +++ b/src/utils/utils.js @@ -405,37 +405,39 @@ } /** - * @description 鑾峰彇涓嬫媺鎼滅储鏌ヨsql + * @description 鑾峰彇涓嬫媺鎼滅储鏌ヨ鏉′欢 * @return {String} item 鎼滅储鏉′欢淇℃伅 */ - static getSelectQuerySql (item) { + static getSelectQueryOptions (item) { + let arrfield = [item.valueField, item.valueText] + + if (item.type === 'link') { + arrfield.push(item.linkField) + } else if (item.type === 'select' && item.linkSubField && item.linkSubField.length > 0) { + arrfield.push(...item.linkSubField) + } + + arrfield = Array.from(new Set(arrfield)) + let _datasource = item.dataSource let sql = '' - let _field = item.valueField + ',' + item.valueText - - if (item.valueField === item.valueText) { - _field = item.valueField - } if (/\s/.test(_datasource)) { // 鎷兼帴鍒悕 _datasource = '(' + _datasource + ') tb' } - if (item.type === 'link') { - sql = 'select ' + _field + ',' + item.linkField + ' from ' + _datasource - } else { - let _linkSubField = '' // 涓嬫媺鑿滃崟鍏宠仈琛ㄥ崟 - if (item.linkSubField && item.linkSubField.length > 0) { - _linkSubField = ',' + item.linkSubField.join(',') - } - sql = 'select ' + _field + _linkSubField + ' from ' + _datasource - } + arrfield = arrfield.join(',') if (item.orderBy) { - sql = sql + ' order by ' + item.orderBy + ' ' + item.orderType + sql = 'select distinct ' + arrfield + ',' + item.orderBy + ' as orderfield from ' + _datasource + ' order by orderfield ' + item.orderType + } else { + sql = 'select distinct ' + arrfield + ' from ' + _datasource } - return sql + return { + sql: sql, + field: arrfield + } } /** -- Gitblit v1.8.0