| | |
| | | style: { backgroundColor: '#ffffff', paddingTop: '16px', paddingBottom: '80px', paddingLeft: '16px', paddingRight: '16px'}, |
| | | } |
| | | |
| | | let uuids = {} |
| | | let formActions = [] |
| | | let popActions = [] |
| | | let errors = [] |
| | | let mainTb = {name: '主表', uuid: Utils.getuuid(), useMSearch: 'false'} |
| | | let mainTb = {name: '主表', uuid: Utils.getuuid(), useMSearch: 'false', isMain: true} |
| | | |
| | | let oldtabs = { |
| | | mainTable: mainTb.uuid |
| | | } |
| | | |
| | | let tbl = this.getTable(config, mainTb, uuids, errors, formActions, popActions, oldtabs) |
| | | let tbl = this.getTable(config, mainTb, errors, formActions, popActions, oldtabs) |
| | | |
| | | if (config.autoMatic && config.autoMatic.enable === 'true' && uuids[config.autoMatic.action]) { |
| | | _config.autoMatic = {...config.autoMatic} |
| | | _config.autoMatic.action = uuids[config.autoMatic.action] |
| | | |
| | | if (tbl.action.filter(item => item.uuid === _config.autoMatic.action && (['pop', 'prompt', 'exec'].includes(item.OpenType) || (item.OpenType === 'funcbutton' && item.funcType === 'print'))).length === 0) { |
| | | if (config.autoMatic && config.autoMatic.enable === 'true') { |
| | | if (tbl.action.filter(item => item.uuid === config.autoMatic.action && (['pop', 'prompt', 'exec'].includes(item.OpenType) || (item.OpenType === 'funcbutton' && item.funcType === 'print'))).length === 0) { |
| | | _config.autoMatic = {enable: 'false'} |
| | | } else { |
| | | _config.autoMatic = {...config.autoMatic} |
| | | } |
| | | } else { |
| | | _config.autoMatic = {enable: 'false'} |
| | |
| | | _config.components = _config.components.map(item => { |
| | | if (item.type === 'tabs') { |
| | | item.subtabs = item.subtabs.map(tab => { |
| | | tab.components[0] = this.getTable(menus[tab.components[0].linkTab], tab.components[0], uuids, errors, formActions, popActions, oldtabs) |
| | | tab.components[0] = this.getTable(menus[tab.components[0].linkTab], tab.components[0], errors, formActions, popActions, oldtabs) |
| | | |
| | | return tab |
| | | }) |
| | |
| | | MenuName: btn.label, |
| | | tables: _config.tables || [], |
| | | Template: 'BaseTable', |
| | | components: [this.getTable(menus[btn.uuid], mainTb, {}, errors, formActions)], |
| | | components: [this.getTable(menus[btn.uuid], mainTb, errors, formActions)], |
| | | viewType: 'popview', |
| | | style: { backgroundColor: '#ffffff', backgroundImage: '', paddingTop: '16px', paddingBottom: '40px', paddingLeft: '16px', paddingRight: '16px' } |
| | | } |
| | |
| | | MenuName: btn.label, |
| | | tables: _config.tables || [], |
| | | Template: 'BaseTable', |
| | | components: [this.getTable(menus[btn.uuid], mainTb, {}, errors, formActions)], |
| | | components: [this.getTable(menus[btn.uuid], mainTb, errors, formActions)], |
| | | viewType: 'popview', |
| | | style: { backgroundColor: '#ffffff', backgroundImage: '', paddingTop: '16px', paddingBottom: '40px', paddingLeft: '16px', paddingRight: '16px' } |
| | | } |
| | |
| | | MenuName: btn.label, |
| | | tables: _config.tables || [], |
| | | Template: 'BaseTable', |
| | | components: [this.getTable(menus[btn.uuid], mainTb, {}, errors, formActions)], |
| | | components: [this.getTable(menus[btn.uuid], mainTb, errors, formActions)], |
| | | viewType: 'popview', |
| | | style: { backgroundColor: '#ffffff', backgroundImage: '', paddingTop: '16px', paddingBottom: '40px', paddingLeft: '16px', paddingRight: '16px' } |
| | | } |
| | |
| | | MenuName: btn.label, |
| | | tables: _config.tables || [], |
| | | Template: 'BaseTable', |
| | | components: [this.getTable(menus[btn.uuid], mainTb, {}, errors, formActions)], |
| | | components: [this.getTable(menus[btn.uuid], mainTb, errors, formActions)], |
| | | viewType: 'popview', |
| | | style: { backgroundColor: '#ffffff', backgroundImage: '', paddingTop: '16px', paddingBottom: '40px', paddingLeft: '16px', paddingRight: '16px' } |
| | | } |
| | |
| | | param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') |
| | | param.secretkey = Utils.encrypt(param.LText, param.timestamp) |
| | | |
| | | let save = false |
| | | |
| | | new Promise(resolve => { |
| | | Api.getSystemConfig(param).then(res => { |
| | | resolve(res) |
| | |
| | | }).then(res => { // 删除原菜单 |
| | | if (!res || !res.status) return res |
| | | |
| | | save = true |
| | | localStorage.setItem('menuUpdate', new Date().getTime() + ',' + config.uuid) |
| | | |
| | | if (this.delButtons.length === 0) return res |
| | | |
| | | return Api.getSystemConfig({ |
| | | func: 'sPC_MainMenu_Del', |
| | | up_type: 'Y', |
| | | MenuID: this.delButtons.join(',') |
| | | }) |
| | | }).then(res => { |
| | |
| | | _resolve() |
| | | |
| | | if (res.status) { |
| | | localStorage.setItem('menuUpdate', new Date().getTime()) |
| | | |
| | | notification.success({ |
| | | top: 92, |
| | | message: '升级成功', |
| | |
| | | window.location.reload() |
| | | }, 2000) |
| | | } else { |
| | | notification.warning({ |
| | | top: 92, |
| | | message: res.message, |
| | | duration: 5 |
| | | Modal.warning({ |
| | | title: res.message, |
| | | okText: '知道了', |
| | | onOk: () => { |
| | | if (save) { |
| | | delete urlparam.type |
| | | delete urlparam.MenuType |
| | | |
| | | let _param = window.btoa(window.encodeURIComponent(JSON.stringify(urlparam))) |
| | | |
| | | window.history.replaceState(null, null, window.location.href.split('#')[0] + `#/tabledesign/${_param}`) |
| | | window.location.reload() |
| | | } else { |
| | | window.location.reload() |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | |
| | | getTable = (config, newCon, uuids, errors, formActions, popActions, oldtabs) => { |
| | | getTable = (config, newCon, errors, formActions, popActions, oldtabs) => { |
| | | let _card = { |
| | | uuid: newCon.uuid, |
| | | type: 'table', |
| | |
| | | let colbtns = [] |
| | | let colors = { primary: '#1890ff', yellow: '#c49f47', orange: 'orange', danger: '#ff4d4f', green: '#26C281', dgreen: '#32c5d2', purple: '#8E44AD', cyan: '#13c2c2', gray: '#666666', default: 'rgba(0, 0, 0, 0.65)' } |
| | | |
| | | let uuids = {} |
| | | config.action.forEach(btn => { |
| | | let _c = btn.class ? btn.class.replace('border-', '') : '' |
| | | let color = colors[_c] || '#1890ff' |
| | | let _btn = fromJS(btn).toJS() |
| | | _btn.uuid = Utils.getuuid() |
| | | // _btn.uuid = Utils.getuuid() |
| | | delete _btn.position |
| | | delete _btn.linkTab |
| | | |
| | |
| | | _btn.popClose = 'mainline' |
| | | } |
| | | |
| | | uuids[btn.uuid] = _btn.uuid |
| | | |
| | | if (btn.OpenType === 'pop' || (btn.OpenType === 'funcbutton' && btn.funcType === 'print' && btn.execMode === 'pop')) { |
| | | |
| | | formActions.push({origin: btn.uuid, uuid: _btn.uuid, name: newCon.name, label: btn.label}) |
| | |
| | | return |
| | | } |
| | | } |
| | | |
| | | uuids[btn.uuid] = true |
| | | |
| | | if (_btn.tabType === 'CommonTable' || _btn.tabType === 'SubTable') { |
| | | _btn.tabType = 'BaseTable' |
| | |
| | | } |
| | | }) |
| | | |
| | | if (config.setting.doubleClick && uuids[config.setting.doubleClick]) { |
| | | _card.wrap.doubleClick = uuids[config.setting.doubleClick] |
| | | } else { |
| | | if (config.setting.doubleClick && !uuids[config.setting.doubleClick]) { |
| | | _card.wrap.doubleClick = '' |
| | | } |
| | | |