From ec98e336b79afc2a43c998134b46b71e0e201049 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 20 八月 2021 18:24:09 +0800 Subject: [PATCH] 2021-08-20 --- src/menu/components/form/formaction/formconfig.jsx | 8 src/tabviews/custom/components/form/tab-form/index.jsx | 394 +++++++++++++++++++++++++++++++++++++++ src/tabviews/custom/components/form/tab-form/index.scss | 97 +++++++++ src/tabviews/custom/components/form/normal-form/index.scss | 2 src/menu/components/share/actioncomponent/formconfig.jsx | 9 src/menu/components/form/formaction/actionform/index.jsx | 3 src/utils/utils-custom.js | 5 src/tabviews/custom/components/form/normal-form/index.jsx | 17 + public/options.json | 14 src/store/options.js | 2 src/menu/components/share/actioncomponent/actionform/index.jsx | 7 src/tabviews/zshare/actionList/normalbutton/index.jsx | 10 src/utils/utils.js | 3 src/views/login/index.jsx | 8 14 files changed, 555 insertions(+), 24 deletions(-) diff --git a/public/options.json b/public/options.json index 3f069a7..7ca016a 100644 --- a/public/options.json +++ b/public/options.json @@ -1,16 +1,16 @@ { - "appId": "202011020835217933120E25C41C54A8988AA", - "appkey": "20201102081641237BDDE0D5F2E98420BA7EC", - "mainSystemApi": "https://cloud.positecgroup.com/webapi/dostars", + "appId": "201912040924165801464FF1788654BC5AC73", + "appkey": "20191106103859640976D6E924E464D029CF0", + "mainSystemApi": "http://sso.mk9h.cn/cloud/webapi/dostars", "systemType": "", - "externalDatabase": "mkdata_oms_test", + "externalDatabase": "false", "lineColor": "", "filter": "false", "defaultApp": "", "defaultLang": "zh-CN", "WXAppID": "", "debugger": false, - "licenseKey": "", - "host": "http://oms-test.positecgroup.com.cn", - "service": "oms_new/" + "licenseKey": "E1A8FE", + "host": "http://qingqiumarket.cn", + "service": "mkwms/" } \ No newline at end of file diff --git a/src/menu/components/form/formaction/actionform/index.jsx b/src/menu/components/form/formaction/actionform/index.jsx index 35fb01b..381cf64 100644 --- a/src/menu/components/form/formaction/actionform/index.jsx +++ b/src/menu/components/form/formaction/actionform/index.jsx @@ -53,9 +53,10 @@ } else if (card.type === 'next') { return ['type', 'label', 'enable'] } - let _options = ['type', 'label', 'intertype', 'syncComponent', 'linkmenu', 'open', 'enable'] // 閫夐」鍒楄〃 + let _options = ['type', 'label', 'intertype', 'syncComponent', 'linkmenu', 'open', 'enable', 'output'] // 閫夐」鍒楄〃 if (_intertype === 'custom') { + _options.pop() _options.push('procMode', 'interface', 'callbackType', 'cbTable', 'proInterface', 'method', 'cross') if (_procMode === 'system') { _options.push('sql', 'sqlType') diff --git a/src/menu/components/form/formaction/formconfig.jsx b/src/menu/components/form/formaction/formconfig.jsx index 06eaf88..808208b 100644 --- a/src/menu/components/form/formaction/formconfig.jsx +++ b/src/menu/components/form/formaction/formconfig.jsx @@ -251,6 +251,14 @@ options: menulist }, { + type: 'text', + key: 'output', + label: '杩斿洖鍊�', + tooltip: '鎵ц鎴愬姛鍚庣殑杩斿洖鍊笺��', + initVal: card.output || '', + required: false + }, + { type: 'radio', key: 'open', label: '鎵撳紑鏂瑰紡', diff --git a/src/menu/components/share/actioncomponent/actionform/index.jsx b/src/menu/components/share/actioncomponent/actionform/index.jsx index 1559e72..f34ad5d 100644 --- a/src/menu/components/share/actioncomponent/actionform/index.jsx +++ b/src/menu/components/share/actioncomponent/actionform/index.jsx @@ -10,9 +10,9 @@ const { TextArea } = Input const MkIcon = asyncComponent(() => import('@/components/mkIcon')) const actionTypeOptions = { - pop: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'icon', 'class', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width', 'openmenu', 'open'], - prompt: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'icon', 'class', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width', 'openmenu', 'open'], - exec: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'icon', 'class', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width', 'openmenu', 'open'], + pop: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'icon', 'class', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width', 'openmenu', 'open', 'output'], + prompt: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'icon', 'class', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width', 'openmenu', 'open', 'output'], + exec: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'icon', 'class', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width', 'openmenu', 'open', 'output'], excelIn: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'icon', 'class', 'sheet', 'execSuccess', 'execError', 'resetPageIndex', 'syncComponent', 'width'], excelOut: ['label', 'OpenType', 'intertype', 'show', 'icon', 'class', 'execSuccess', 'execError', 'syncComponent', 'resetPageIndex', 'pagination', 'search', 'width'], popview: ['label', 'Ot', 'OpenType', 'show', 'icon', 'class', 'popClose', 'resetPageIndex', 'width'], @@ -180,6 +180,7 @@ } } else if (_opentype !== 'popview' && _opentype !== 'tab') { if (_intertype === 'custom') { + _options = _options.filter(m => m !== 'output') _options.push('procMode', 'interface', 'callbackType', 'cbTable', 'proInterface', 'method', 'cross') if (_procMode === 'system') { _options.push('sql', 'sqlType') diff --git a/src/menu/components/share/actioncomponent/formconfig.jsx b/src/menu/components/share/actioncomponent/formconfig.jsx index 0c70e53..8f7f043 100644 --- a/src/menu/components/share/actioncomponent/formconfig.jsx +++ b/src/menu/components/share/actioncomponent/formconfig.jsx @@ -554,6 +554,15 @@ options: appMenus }, { + type: 'text', + key: 'output', + label: '杩斿洖鍊�', + tooltip: '鎵ц鎴愬姛鍚庣殑杩斿洖鍊笺��', + initVal: card.output || '', + forbid: appType !== 'pc' && appType !== 'mob', + required: false + }, + { type: 'radio', key: 'open', label: '鎵撳紑鏂瑰紡', diff --git a/src/store/options.js b/src/store/options.js index ec0cb09..563c2e0 100644 --- a/src/store/options.js +++ b/src/store/options.js @@ -9,7 +9,7 @@ sysType: 'bG9j$mkYWw=', caId: 'MjAyMDAxMTYxMjMzMzU1MDd$mkGQzkyMzI1Rjk4MDY0QUNGQjQ2Mg==', cakey: 'MjAyMDAxMTYxMjQwMDQ2NDM$mk2N0QzODE2MjExNUI0MTc4OTVDMQ==', - cdomain: 'aHR0cHM6Ly9jbG91ZC5$mkwb3NpdGVjZ3JvdXAuY29t' + cdomain: 'aHR0cHM6Ly9jbG91$mkZC5tazloLmNu' } /** diff --git a/src/tabviews/custom/components/form/normal-form/index.jsx b/src/tabviews/custom/components/form/normal-form/index.jsx index f8bb190..dfc65f7 100644 --- a/src/tabviews/custom/components/form/normal-form/index.jsx +++ b/src/tabviews/custom/components/form/normal-form/index.jsx @@ -44,7 +44,7 @@ let _data = null let _sync = false - + if (config.wrap.datatype !== 'static') { _sync = config.setting.sync === 'true' @@ -195,7 +195,7 @@ * @param {*} position // 鍒锋柊浣嶇疆 * @param {*} btn // 鎵ц鐨勬寜閽� */ - refreshByButtonResult = (menuId, position, btn) => { + refreshByButtonResult = (menuId, position, btn, id) => { const { config, group } = this.state if (group.uuid !== menuId) return @@ -206,9 +206,13 @@ if (config.wrap.datatype !== 'static' && config.setting) { this.loadData(btn) - } else { - this.execSuccess(btn) } + + if (id) { + MKEmitter.emit('resetSelectLine', config.uuid, id, '') + } + + this.execSuccess(btn, id) } resetParentParam = (MenuID, id) => { @@ -221,7 +225,7 @@ } } - execSuccess = (btn) => { + execSuccess = (btn, id) => { const { config, group } = this.state if (config.subcards.length > group.sort) { @@ -243,8 +247,9 @@ let newtab = { ...menu, selected: true, - param: {} + param: {$BID: id || ''} } + let tabs = this.props.tabviews.filter((tab, i) => { tab.selected = false return tab.MenuID !== newtab.MenuID diff --git a/src/tabviews/custom/components/form/normal-form/index.scss b/src/tabviews/custom/components/form/normal-form/index.scss index a3fbda6..03d58aa 100644 --- a/src/tabviews/custom/components/form/normal-form/index.scss +++ b/src/tabviews/custom/components/form/normal-form/index.scss @@ -102,7 +102,7 @@ } } -.custom-card-box::after { +.custom-normal-form-box::after { content: ' '; display: block; clear: both; diff --git a/src/tabviews/custom/components/form/tab-form/index.jsx b/src/tabviews/custom/components/form/tab-form/index.jsx new file mode 100644 index 0000000..88d2b8d --- /dev/null +++ b/src/tabviews/custom/components/form/tab-form/index.jsx @@ -0,0 +1,394 @@ +import React, {Component} from 'react' +import PropTypes from 'prop-types' +import { is, fromJS } from 'immutable' +import { connect } from 'react-redux' +import { Spin, notification } from 'antd' + +import Api from '@/api' +import Utils from '@/utils/utils.js' +import UtilsDM from '@/utils/utils-datamanage.js' +import asyncComponent from '@/utils/asyncComponent' +import asyncSpinComponent from '@/utils/asyncSpinComponent' +import MKEmitter from '@/utils/events.js' +import zhCN from '@/locales/zh-CN/main.js' +import enUS from '@/locales/en-US/main.js' +import { modifyTabview } from '@/store/action' +import './index.scss' + +const MutilForm = asyncSpinComponent(() => import('@/tabviews/zshare/mutilform')) +const NormalButton = asyncComponent(() => import('@/tabviews/zshare/actionList/normalbutton')) + +class TabForm extends Component { + static propTpyes = { + BID: PropTypes.any, // 鐖剁骇Id + data: PropTypes.array, // 缁熶竴鏌ヨ鏁版嵁 + config: PropTypes.object, // 缁勪欢閰嶇疆淇℃伅 + mainSearch: PropTypes.any, // 澶栧眰鎼滅储鏉′欢 + menuType: PropTypes.any, // 鑿滃崟绫诲瀷 + } + + state = { + dict: sessionStorage.getItem('lang') !== 'en-US' ? zhCN : enUS, + BID: '', // 涓婄骇ID + config: null, // 鍥捐〃閰嶇疆淇℃伅 + loading: false, // 鏁版嵁鍔犺浇鐘舵�� + sync: false, // 鏄惁缁熶竴璇锋眰鏁版嵁 + data: null, // 鏁版嵁 + group: null, + } + + UNSAFE_componentWillMount () { + const { data, BID } = this.props + let config = fromJS(this.props.config).toJS() + + let _data = null + let _sync = false + + if (config.wrap.datatype !== 'static') { + _sync = config.setting.sync === 'true' + + if (_sync && data && data[config.dataName]) { + _data = data[config.dataName] + if (Array.isArray(_data)) { + _data = _data[0] || {} + } + _sync = false + } + } else { + _data = {} + } + + if (!config.wrap.groupLabel) { + if (config.subcards.length > 1) { + config.wrap.groupLabel = 'show' + } else { + config.wrap.groupLabel = 'hidden' + } + } + + let roleId = sessionStorage.getItem('role_id') || '' + + config.subcards = config.subcards.map(group => { + group.subButton.uuid = group.uuid + group.subButton.$menuId = group.uuid + group.subButton.Ot = 'requiredSgl' + group.subButton.$forbid = true + group.subButton.OpenType = 'formSubmit' + group.subButton.execError = 'never' + + if (group.subButton.enable === 'false') { + group.subButton.style.display = 'none' + group.$button = 'no-button' + } + + group.fields = group.fields.map(cell => { + // 鏁版嵁婧恠ql璇彞锛岄澶勭悊锛屾潈闄愰粦鍚嶅崟瀛楁璁剧疆涓洪殣钘忚〃鍗� + if (['select', 'link', 'multiselect', 'radio', 'checkbox', 'checkcard'].includes(cell.type) && cell.resourceType === '1') { + let _option = Utils.getSelectQueryOptions(cell) + + cell.data_sql = Utils.formatOptions(_option.sql) + cell.base_sql = window.btoa(window.encodeURIComponent(_option.sql)) + cell.arr_field = _option.field + } + + // 瀛楁鏉冮檺榛戝悕鍗� + if (!cell.blacklist || !roleId || cell.blacklist.length === 0) return cell + if (cell.blacklist.filter(v => roleId.indexOf(v) > -1).length > 0) { + cell.hidden = 'true' + } + + return cell + }) + + return group + }) + + let _group = config.subcards[0] + + if (_data && config.wrap.statusControl && _data[config.wrap.statusControl]) { + let _status = _data[config.wrap.statusControl] + + let _groups = config.subcards.filter(item => item.setting.status === _status)[0] + _group = _groups || _group + } + + this.setState({ + sync: _sync, + data: _data, + group: _group, + BID: BID || '', + config: config, + arr_field: config.columns.map(col => col.field).join(','), + }, () => { + if (config.wrap.datatype !== 'static' && config.setting && config.setting.sync !== 'true' && config.setting.onload === 'true') { + this.loadData() + } + }) + } + + componentDidMount () { + MKEmitter.addListener('reloadData', this.reloadData) + MKEmitter.addListener('mkFormSubmit', this.mkFormSubmit) + MKEmitter.addListener('resetSelectLine', this.resetParentParam) + MKEmitter.addListener('refreshByButtonResult', this.refreshByButtonResult) + } + + shouldComponentUpdate (nextProps, nextState) { + return !is(fromJS(this.state), fromJS(nextState)) + } + + componentWillUnmount () { + this.setState = () => { + return + } + MKEmitter.removeListener('reloadData', this.reloadData) + MKEmitter.removeListener('mkFormSubmit', this.mkFormSubmit) + MKEmitter.removeListener('resetSelectLine', this.resetParentParam) + MKEmitter.removeListener('refreshByButtonResult', this.refreshByButtonResult) + } + + /** + * @description 鍥捐〃鏁版嵁鏇存柊锛屽埛鏂板唴瀹� + */ + UNSAFE_componentWillReceiveProps (nextProps) { + const { sync, config, group } = this.state + + if (sync && !is(fromJS(this.props.data), fromJS(nextProps.data))) { + let _data = {} + let _group = group + if (nextProps.data && nextProps.data[config.dataName]) { + _data = nextProps.data[config.dataName] + if (Array.isArray(_data)) { + _data = _data[0] || {} + } + } + if (config.wrap.statusControl && _data[config.wrap.statusControl]) { + let _status = _data[config.wrap.statusControl] + let _groups = config.subcards.filter(item => item.setting.status === _status)[0] + _group = _groups || _group + } + + this.setState({sync: false, data: _data, group: _group}) + } else if (config.setting.syncRefresh && nextProps.mainSearch && !is(fromJS(this.props.mainSearch), fromJS(nextProps.mainSearch))) { + this.setState({}, () => { + this.loadData() + }) + } + } + + reloadData = (menuId, id) => { + const { config } = this.state + + if (config.uuid !== menuId) return + + this.loadData(null, 'refresh') + } + + /** + * @description 鎸夐挳鎵ц瀹屾垚鍚庨〉闈㈠埛鏂� + * @param {*} menuId // 鑿滃崟Id + * @param {*} position // 鍒锋柊浣嶇疆 + * @param {*} btn // 鎵ц鐨勬寜閽� + */ + refreshByButtonResult = (menuId, position, btn, id) => { + const { config, group } = this.state + + if (group.uuid !== menuId) return + + if (btn.syncComponentId && btn.syncComponentId !== config.uuid && btn.syncComponentId !== config.setting.supModule) { + MKEmitter.emit('reloadData', btn.syncComponentId) // 鍚岀骇鏍囩鍒锋柊 + } + + if (id) { + MKEmitter.emit('resetSelectLine', config.uuid, id, '') + } + + if (config.wrap.datatype !== 'static' && config.setting) { + this.loadData(btn) + } + + this.execSuccess(btn, id) + } + + resetParentParam = (MenuID, id) => { + const { config } = this.state + if (config.wrap.datatype === 'static' || !config.setting.supModule || config.setting.supModule !== MenuID) return + if (id !== this.state.BID) { + this.setState({ BID: id }, () => { + this.loadData() + }) + } + } + + execSuccess = (btn, id) => { + if (btn.linkmenu && btn.linkmenu.length > 0) { + let menu_id = btn.linkmenu[btn.linkmenu.length - 1] + let menu = this.props.permMenus.filter(m => m.MenuID === menu_id)[0] || '' + + if (!menu) return + + let newtab = { + ...menu, + selected: true, + param: {$BID: id || ''} + } + + let tabs = this.props.tabviews.filter((tab, i) => { + tab.selected = false + return tab.MenuID !== newtab.MenuID + }) + + if (this.props.tabviews.length > tabs.length) { + this.props.modifyTabview(fromJS(tabs).toJS()) + } + + this.setState({}, () => { + tabs.push(newtab) + this.props.modifyTabview(tabs) + }) + } + } + + async loadData (btn, type) { + const { mainSearch, menuType } = this.props + const { config, arr_field, BID, group } = this.state + + if (config.wrap.datatype === 'static' || (config.setting.supModule && !BID)) { + this.setState({ + data: {} + }) + btn && this.execSuccess(btn) + return + } + + let searches = config.setting.useMSearch && mainSearch ? mainSearch : [] + + let requireFields = searches.filter(item => item.required && item.value === '') + if (requireFields.length > 0) { + btn && this.execSuccess(btn) + return + } + + this.setState({ + loading: true + }) + + let _orderBy = config.setting.order || '' + let param = UtilsDM.getQueryDataParams(config.setting, arr_field, searches, _orderBy, 1, 1, BID, menuType) + + let result = await Api.genericInterface(param) + if (result.status) { + let _data = result.data && result.data[0] ? result.data[0] : {} + + if (btn) { + this.setState({ + data: _data || {}, + loading: false + }) + this.execSuccess(btn) + } else { + let _group = group + + if (type === 'refresh') { + _group = config.subcards[0] + } + + if (config.wrap.statusControl && _data[config.wrap.statusControl]) { + let _status = _data[config.wrap.statusControl] + let _groups = config.subcards.filter(item => item.setting.status === _status)[0] + _group = _groups || _group + } + this.setState({ + group: null, + data: _data || {}, + loading: false + }, () => { + this.setState({group: _group}) + }) + } + } else { + this.setState({ + loading: false, + }) + notification.error({ + top: 92, + message: result.message, + duration: 10 + }) + btn && this.execSuccess(btn) + } + } + + mkFormSubmit = (btnId) => { + const { group } = this.state + + if (group.uuid !== btnId) return + + this.formRef.handleConfirm().then(res => { + MKEmitter.emit('triggerFormSubmit', {menuId: btnId, form: res}) + }) + } + + changeGroup = (group) => { + this.setState({ + group: null + }, () => { + this.setState({group}) + }) + } + + render() { + const { config, loading, BID, data, group, dict } = this.state + + return ( + <div className="custom-tab-form-box" style={{...config.style}}> + {loading ? + <div className="loading-mask"> + <div className="ant-spin-blur"></div> + <Spin /> + </div> : null + } + {config.wrap.groupLabel !== 'hidden' ? <div className={'mk-normal-form-title ' + config.wrap.tabtype}> + {config.subcards.map(card => ( + <div key={card.uuid} onClick={() => this.changeGroup(card)} className={'form-title' + (group && group.uuid === card.uuid ? ' active' : '')}> + {card.setting.title} + </div>)) + } + </div> : null} + {group && data ? <MutilForm + BID={BID} + dict={dict} + data={data} + action={group} + inputSubmit={this.handleOk} + wrappedComponentRef={(inst) => this.formRef = inst} + /> : null} + {group && data ? <div className={'mk-form-action ' + (group.$button || '')}> + <NormalButton + BID={BID} + position="form" + btn={group.subButton} + setting={config.setting} + columns={config.columns} + selectedData={[data]} + /> + </div> : null} + </div> + ) + } +} + +const mapStateToProps = (state) => { + return { + permMenus: state.permMenus, + tabviews: state.tabviews, + } +} + +const mapDispatchToProps = (dispatch) => { + return { + modifyTabview: (tabviews) => dispatch(modifyTabview(tabviews)) + } +} + +export default connect(mapStateToProps, mapDispatchToProps)(TabForm) \ No newline at end of file diff --git a/src/tabviews/custom/components/form/tab-form/index.scss b/src/tabviews/custom/components/form/tab-form/index.scss new file mode 100644 index 0000000..1b62b2e --- /dev/null +++ b/src/tabviews/custom/components/form/tab-form/index.scss @@ -0,0 +1,97 @@ +.custom-tab-form-box { + background: #ffffff; + background-position: center center; + background-repeat: no-repeat; + background-size: cover; + position: relative; + min-height: 200px; + + .mk-normal-form-title { + display: flex; + line-height: 36px; + min-height: 36px; + margin-bottom: 20px; + font-size: 16px; + .form-title { + position: relative; + flex: 1; + text-align: center; + } + } + .mk-normal-form-title.mkbtn { + .form-title { + background: #ffffff; + color: #1890ff; + border: 1px solid #1890ff; + transition: all 0.3s; + } + .form-title.active { + background: #1890ff; + color: #ffffff; + } + .form-title:first-child { + border-radius: 4px 0px 0px 4px; + } + .form-title:last-child { + border-radius: 0px 4px 4px 0px; + } + } + .mk-normal-form-title.mktab { + border-bottom: 1px solid #d9d9d9; + .form-title { + color: rgba(0, 0, 0, 0.85); + border-bottom: 2px solid transparent; + transition: all 0.3s; + } + .form-title.active { + color: #1890ff; + border-bottom-color: #1890ff; + } + } + + .mk-form-action { + position: relative; + text-align: center; + padding-bottom: 10px; + + .submit { + min-width: 70px; + border: none; + } + .skip { + float: right; + height: auto; + } + } + .mk-form-action.no-button { + padding: 0; + height: 0; + } + + .loading-mask { + position: absolute; + left: 40px; + top: 0; + right: 40px; + bottom: 0px; + display: flex; + align-items: center; + justify-content: center; + text-align: justify; + z-index: 1; + + .ant-spin-blur { + position: absolute; + width: 100%; + height: 100%; + opacity: 0.5; + background: #ffffff; + } + } +} + +.custom-tab-form-box::after { + content: ' '; + display: block; + clear: both; +} diff --git a/src/tabviews/zshare/actionList/normalbutton/index.jsx b/src/tabviews/zshare/actionList/normalbutton/index.jsx index 8aac0c2..737abd4 100644 --- a/src/tabviews/zshare/actionList/normalbutton/index.jsx +++ b/src/tabviews/zshare/actionList/normalbutton/index.jsx @@ -352,6 +352,9 @@ param.$callbacksql = callbacksql } else { param.LText = getSysDefaultSql(btn, setting, formdata, param, data[0], columns, this.props.Tab, false, this.moduleParams, Utils.getAllSearchOptions) // 鏁版嵁婧� + if (btn.OpenType === 'formSubmit' && btn.output) { + param.key_back_type = 'Y' + } } if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺 @@ -1292,8 +1295,13 @@ this.sendMessage() } + let id = '' + if (btn.output) { + id = res.mk_b_id || res[btn.output] || '' + } + if (btn.execSuccess !== 'never') { - MKEmitter.emit('refreshByButtonResult', btn.$menuId, btn.execSuccess || '', btn) + MKEmitter.emit('refreshByButtonResult', btn.$menuId, btn.execSuccess, btn, id) } } diff --git a/src/utils/utils-custom.js b/src/utils/utils-custom.js index e79cd52..601ab7f 100644 --- a/src/utils/utils-custom.js +++ b/src/utils/utils-custom.js @@ -97,6 +97,11 @@ value: item.uuid, label: item.name } + } else if (item.type === 'form') { // 鏁版嵁鏍煎紡锛屽瓨鍦ㄦ暟鎹簮 + return { + value: item.uuid, + label: item.name + } } else if (item.type === 'tabs') { let _item = { value: item.uuid, diff --git a/src/utils/utils.js b/src/utils/utils.js index 8b4e18a..aaa6d10 100644 --- a/src/utils/utils.js +++ b/src/utils/utils.js @@ -1758,6 +1758,9 @@ _sql += ` aaa: if @ErrorCode!='' insert into tmp_err_retmsg (ID, ErrorCode, retmsg, CreateUserID) select @time_id@,@ErrorCode, @retmsg,@UserID@` + } else if (btn.output) { + _sql += ` + aaa: select @ErrorCode as ErrorCode,@retmsg as retmsg,${btn.output} as mk_b_id` } else { _sql += ` aaa: select @ErrorCode as ErrorCode,@retmsg as retmsg` diff --git a/src/views/login/index.jsx b/src/views/login/index.jsx index 40590de..099622e 100644 --- a/src/views/login/index.jsx +++ b/src/views/login/index.jsx @@ -411,10 +411,10 @@ Api.getSystemConfig(_param).then(res => { if (res.status) { // positecgroup - res.Banner = res.Banner ? res.Banner.replace(/:8080/ig, '').replace(/http:/ig, 'https:') : '' - res.doclogo = res.doclogo ? res.doclogo.replace(/:8080/ig, '').replace(/http:/ig, 'https:') : '' - res.indexlogo = res.indexlogo ? res.indexlogo.replace(/:8080/ig, '').replace(/http:/ig, 'https:') : '' - res.loginlogo = res.loginlogo ? res.loginlogo.replace(/:8080/ig, '').replace(/http:/ig, 'https:') : '' + // res.Banner = res.Banner ? res.Banner.replace(/:8080/ig, '').replace(/http:/ig, 'https:') : '' + // res.doclogo = res.doclogo ? res.doclogo.replace(/:8080/ig, '').replace(/http:/ig, 'https:') : '' + // res.indexlogo = res.indexlogo ? res.indexlogo.replace(/:8080/ig, '').replace(/http:/ig, 'https:') : '' + // res.loginlogo = res.loginlogo ? res.loginlogo.replace(/:8080/ig, '').replace(/http:/ig, 'https:') : '' let _url = window.location.href.split('#')[0] + 'system' let systemMsg = { -- Gitblit v1.8.0