| | |
| | | if (!config) { |
| | | _config = JSON.parse(JSON.stringify(Source.baseConfig)) |
| | | _config.isAdd = true |
| | | if (menu && menu.LongParam && menu.LongParam.setting.dataresource) { |
| | | if (menu && menu.LongParam && menu.LongParam.setting) { |
| | | _config.setting.tableName = menu.LongParam.setting.tableName |
| | | _config.setting.primaryKey = menu.LongParam.setting.primaryKey |
| | | _config.setting.dataresource = menu.LongParam.setting.dataresource |
| | | _config.setting.interType = menu.LongParam.setting.interType |
| | | _config.setting.interface = menu.LongParam.setting.interface |
| | | _config.setting.outerFunc = menu.LongParam.setting.outerFunc |
| | | _config.setting.innerFunc = menu.LongParam.setting.innerFunc |
| | | _config.setting.sysInterface = menu.LongParam.setting.sysInterface |
| | | } |
| | | } else { |
| | | _config = config |
| | | |
| | | if (menu && menu.LongParam && menu.LongParam.setting) { |
| | | _config.setting.primaryKey = menu.LongParam.setting.primaryKey |
| | | } |
| | | |
| | | _config.groups.forEach(group => { |
| | | group.sublist.forEach(item => { |
| | |
| | | |
| | | if (modaltype === 'search') { |
| | | this.modalFormRef.handleConfirm().then(res => { |
| | | if (config.setting.primaryKey && config.setting.primaryKey.toLowerCase() === res.field.toLowerCase()) { |
| | | notification.warning({ |
| | | top: 92, |
| | | message: '表单中字段名不可与主键重复!', |
| | | duration: 10 |
| | | }) |
| | | return |
| | | } |
| | | if ( // 更新下拉字典 |
| | | (res.type === 'select' || res.type === 'multiselect' || res.type === 'link') && |
| | | res.resourceType === '0' && |
| | |
| | | } |
| | | |
| | | // 存在多余的空表单组 |
| | | if (_config.groups.length > 1) { |
| | | let _ismutil = _config.groups.length > 1 |
| | | let _primary = _config.setting.primaryKey ? _config.setting.primaryKey.toLowerCase() : '' |
| | | |
| | | _config.groups.forEach(group => { |
| | | if (group.sublist.length === 0) { |
| | | if (_ismutil && group.sublist.length === 0) { |
| | | _config.enabled = false |
| | | } |
| | | let arr = group.sublist.filter(item => item.field.toLowerCase() === _primary) |
| | | |
| | | if (arr.length > 0) { |
| | | _config.enabled = false |
| | | } |
| | | }) |
| | | } |
| | | |
| | | _config.funcs = [] // 页面及子页面存储过程集 |
| | | |
| | |
| | | }) |
| | | } |
| | | |
| | | let _primary = config.setting.primaryKey ? config.setting.primaryKey.toLowerCase() : '' |
| | | let primaryrepeat = false |
| | | |
| | | config.groups.forEach(group => { |
| | | let arr = group.sublist.filter(item => item.field.toLowerCase() === _primary) |
| | | |
| | | if (arr.length > 0) { |
| | | primaryrepeat = true |
| | | } |
| | | }) |
| | | |
| | | if (config.setting.datatype === 'query' && config.setting.interType === 'inner' && !config.setting.innerFunc && !config.setting.dataresource) { |
| | | notification.warning({ |
| | | top: 92, |
| | | message: '尚未设置数据源,不可启用!', |
| | | duration: 10 |
| | | }) |
| | | } else if (config.setting.datatype === 'query' && config.setting.primaryKey) { |
| | | } else if (config.setting.datatype === 'query' && !config.setting.primaryKey) { |
| | | notification.warning({ |
| | | top: 92, |
| | | message: '尚未设置主键,不可启用!', |
| | |
| | | message: '存在多余空表单组,不可启用!', |
| | | duration: 10 |
| | | }) |
| | | } else if (primaryrepeat) { |
| | | notification.warning({ |
| | | top: 92, |
| | | message: '表单字段与主键重复,不可启用!', |
| | | duration: 10 |
| | | }) |
| | | } else { |
| | | this.setState({ |
| | | config: {...config, enabled: !config.enabled} |