src/assets/css/design.scss
New file @@ -0,0 +1,92 @@ .ant-modal-wrap.mk-pop-modal { .ant-modal { top: 50px; } .ant-modal-body { padding: 0; .mk-com-name { position: absolute; top: 38px; left: 10px; color: rgba(0, 0, 0, 0.85); font-size: 15px; } .ant-tabs { .ant-tabs-nav-wrap { text-align: center; } .ant-tabs-bar { padding-top: 15px; .ant-tabs-nav-container { font-size: 15px; } } .ant-tabs-content { min-height: 50vh; max-height: calc(100vh - 210px); .ant-tabs-tabpane { position: relative; overflow-x: hidden; overflow-y: auto; padding: 0 24px 24px; } .ant-tabs-tabpane::-webkit-scrollbar { width: 7px; } .ant-tabs-tabpane::-webkit-scrollbar-thumb { border-radius: 5px; box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.13); background: rgba(0, 0, 0, 0.13); } .ant-tabs-tabpane::-webkit-scrollbar-track { box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05); border-radius: 3px; border: 1px solid rgba(0, 0, 0, 0.07); background: rgba(0, 0, 0, 0); } } } } } .ant-modal { .ant-radio-group { white-space: nowrap; .ant-radio-wrapper { margin-right: 4px; } } } // 通行宽度 .mk-through-line2 { .ant-form-item-label { width: 16.5%; } .ant-form-item-control-wrapper { width: 83.5%; } .CodeMirror { height: 150px; } } .mk-through-line3 { .ant-form-item-label { width: 11%; } .ant-form-item-control-wrapper { width: 89%; } .CodeMirror { height: 150px; } } .mk-color-move { .color-sketch-block { position: relative; top: 7px; } } src/assets/css/main.scss
@@ -311,59 +311,6 @@ } } .ant-modal-wrap.mk-pop-modal { .ant-modal { top: 50px; } .ant-modal-body { padding: 0; .mk-com-name { position: absolute; top: 38px; left: 10px; color: rgba(0, 0, 0, 0.85); font-size: 15px; } .ant-tabs { .ant-tabs-nav-wrap { text-align: center; } .ant-tabs-bar { padding-top: 15px; .ant-tabs-nav-container { font-size: 15px; } } .ant-tabs-content { min-height: 50vh; max-height: calc(100vh - 210px); .ant-tabs-tabpane { position: relative; overflow-x: hidden; overflow-y: auto; padding: 0 24px 24px; } .ant-tabs-tabpane::-webkit-scrollbar { width: 7px; } .ant-tabs-tabpane::-webkit-scrollbar-thumb { border-radius: 5px; box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.13); background: rgba(0, 0, 0, 0.13); } .ant-tabs-tabpane::-webkit-scrollbar-track { box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05); border-radius: 3px; border: 1px solid rgba(0, 0, 0, 0.07); background: rgba(0, 0, 0, 0); } } } } } // 设置模态框样式,规定最大最小高度,重置滚动条 .action-modal { .ant-modal { src/mob/components/formdragelement/card.jsx
@@ -78,7 +78,7 @@ if (card.type === 'text' || card.type === 'linkMain') { formItem = (<div className={'am-list-item input ' + (card.place || '')}><div className="am-list-line"><div className="am-input-label">{card.label}</div><div className={'am-input-control ' + card.cursor}>{card.initval ? card.initval : <span style={{color: '#bcbcbc'}}>{card.placeholder || <span style={{color: 'transparent'}}>input</span>}</span> }</div>{card.scan && card.scan !== 'false' ? <div className="am-list-extra"><ScanOutlined /></div> : null}</div></div>) } else if (card.type === 'number') { formItem = (<div className={'am-list-item input ' + (card.place || '')}><div className="am-list-line"><div className="am-input-label">{card.label}</div><div className={'am-input-control ' + card.cursor}>{card.initval ? card.initval : <span style={{color: '#bcbcbc'}}><span style={{color: 'transparent'}}>input</span></span> }</div>{card.placeholder ? <div className="am-list-extra" style={{color: '#999999', width: 'auto', lineHeight: 1.5}}>{card.placeholder}</div> : null}</div></div>) formItem = (<div className={'am-list-item input ' + (card.place || '')}><div className="am-list-line"><div className="am-input-label">{card.label}</div><div className={'am-input-control ' + card.cursor}>{card.initval || 0}</div>{card.placeholder ? <div className="am-list-extra" style={{color: '#999999', width: 'auto', lineHeight: 1.5, height: '22px'}}>{card.placeholder}</div> : null}</div></div>) } else if (card.type === 'number') { formItem = (<div className="am-list-item input"><div className="am-list-line"><div className="am-input-label">{card.label}</div><div className={'am-input-control ' + card.cursor}>{card.initval || <span style={{color: 'transparent'}}>input</span>}</div></div></div>) } else if (card.type === 'select' || card.type === 'link' || card.type === 'cascader') { src/templates/sharecomponent/searchcomponent/settingform/index.jsx
@@ -53,8 +53,7 @@ } return ( <div className="model-table-datasource-setting-form-box"> <Form {...formItemLayout} className="model-setting-form"> <Form {...formItemLayout}> <Row gutter={24}> <Col span={12}> <Form.Item label="搜索按钮"> @@ -143,7 +142,6 @@ </Col> </Row> </Form> </div> ) } } src/templates/sharecomponent/settingcalcomponent/index.jsx
@@ -83,8 +83,7 @@ <div className="model-datasource"> <SettingOutlined onClick={() => this.editDataSource()} /> <Modal wrapClassName="popview-modal" title="数据源配置" wrapClassName="mk-pop-modal" visible={visible} width={'75vw'} maskClosable={false} src/templates/sharecomponent/settingcalcomponent/index.scss
@@ -8,79 +8,4 @@ font-size: 18px; padding: 10px; } .model-input-group-wrapper { padding: 0 20px; display: inline-block; width: 100%; text-align: start; vertical-align: top; margin-bottom: 15px; .model-input-wrapper { position: relative; display: table; width: 100%; border-collapse: separate; border-spacing: 0; .model-input-value { display: table-cell; width: 100%; border: 1px solid #d9d9d9; border-radius: 4px 0px 0px 4px; overflow: hidden; text-overflow:ellipsis; white-space: nowrap; padding: 2px 10px; color: #ffffff; } .model-input-group-addon { display: table-cell; width: 1px; position: relative; padding: 0 11px; color: rgba(0, 0, 0, 0.65); font-weight: normal; font-size: 14px; line-height: 1; text-align: center; background-color: #fafafa; border: 1px solid #d9d9d9; border-radius: 0px 4px 4px 0px; white-space: nowrap; } .model-input-insert { display: table-cell; width: 100%; border: 1px dotted #d9d9d9; border-radius: 4px; text-align: center; cursor: pointer; .anticon-plus { padding: 6px; font-size: 16px; color: rgb(38, 194, 129); } } } .anticon-setting { margin-right: 5px; padding: 6px; cursor: pointer; } .anticon-setting:hover { color: #1890ff; } .anticon-close { padding: 6px; cursor: pointer; } .anticon-close:hover { color: #ff4d4f; } } } src/templates/sharecomponent/settingcalcomponent/verifycard/index.jsx
@@ -119,21 +119,6 @@ handleEdit = (record) => { this.contrastForm.edit(record) let node = document.getElementById('model-setting-form-body').parentNode if (node && node.scrollTop) { let inter = Math.ceil(node.scrollTop / 10) let timer = setInterval(() => { if (node.scrollTop - inter > 0) { node.scrollTop = node.scrollTop - inter } else { node.scrollTop = 0 clearInterval(timer) } }, 10) } } changeTab = (val) => { @@ -400,7 +385,7 @@ const { columns, setting, scripts, colColumns, activeKey, loading } = this.state return ( <div className="model-verify-card-box-tab" id="model-setting-form-body"> <div className="model-verify-card-box-tab"> {loading && <Spin size="large" />} <Tabs activeKey={activeKey} className="verify-card-box" onChange={this.changeTab}> <TabPane tab="数据源" key="setting"> @@ -438,7 +423,7 @@ 自定义脚本 {scripts.length ? <span className="count-tip">{scripts.length}</span> : null} </span> } key="scripts"> } key="scripts" id="mk-setting-scripts"> <CustomScript dict={this.props.dict} setting={setting} src/templates/sharecomponent/settingcomponent/index.jsx
@@ -12,7 +12,7 @@ import CreateFunc from '@/templates/zshare/createfunc' import CreateInterface from '@/templates/zshare/createinterface' import './index.scss' // import './index.scss' class SettingComponent extends Component { static propTpyes = { @@ -181,14 +181,13 @@ const { dict, visible, search, menu, record } = this.state return ( <div className="model-menu-setting"> <SettingOutlined onClick={this.changeSetting} /> <> <SettingOutlined style={{position: 'absolute', fontSize: '18px', right: '7px', top: '5px', padding: '10px', zIndex: 1}} onClick={this.changeSetting} /> {/* 设置全局配置及列表数据源 */} <Modal wrapClassName="model-table-setting-verify-modal" title="数据源配置" wrapClassName="mk-pop-modal" visible={visible} width={900} width={'75vw'} maskClosable={false} onCancel={() => { MKEmitter.emit('modalStatus', false); this.setState({ visible: false, loading: false })}} footer={[ @@ -208,7 +207,7 @@ wrappedComponentRef={(inst) => this.settingRef = inst} /> </Modal> </div> </> ) } } src/templates/sharecomponent/settingcomponent/index.scss
@@ -1,40 +1 @@ .model-menu-setting { > .anticon-setting { position: absolute; font-size: 18px; right: 7px; top: 5px; padding: 10px; z-index: 1; } } .model-table-setting-verify-modal { .ant-modal { top: 50px; padding-bottom: 5px; .ant-modal-body { max-height: calc(100vh - 190px); min-height: 250px; overflow-y: auto; padding-top: 10px; } .ant-modal-body::-webkit-scrollbar { width: 7px; } .ant-modal-body::-webkit-scrollbar-thumb { border-radius: 5px; box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.13); background: rgba(0, 0, 0, 0.13); } .ant-modal-body::-webkit-scrollbar-track { box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05); border-radius: 3px; border: 1px solid rgba(0, 0, 0, 0.07); background: rgba(0, 0, 0, 0); } .ant-empty-normal { margin: 5px 0px; } } } src/templates/sharecomponent/settingcomponent/settingform/datasource/index.jsx
@@ -8,7 +8,7 @@ import { formRule } from '@/utils/option.js' import Utils from '@/utils/utils.js' import asyncComponent from '@/utils/asyncComponent' import './index.scss' // import './index.scss' const CodeMirror = asyncComponent(() => import('@/templates/zshare/codemirror')) const MKColor = asyncComponent(() => import('@/tabviews/zshare/mutilform/mkColor')) @@ -218,10 +218,9 @@ } return ( <div className="model-table-datasource-setting-form-box"> <Form {...formItemLayout} className="model-setting-form"> <Form {...formItemLayout}> <Row gutter={24}> <Col span={12}> <Col span={8}> <Form.Item label="表名"> {getFieldDecorator('tableName', { initialValue: setting.tableName || '', @@ -238,7 +237,26 @@ })(<Input placeholder={''} autoComplete="off" />)} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label={dict['header.form.intertype']}> {getFieldDecorator('interType', { initialValue: interType, rules: [ { required: true, message: dict['form.required.select'] + dict['header.form.intertype'] + '!' }, ] })( <Radio.Group onChange={(e) => {this.onRadioChange(e, 'interType')}}> <Radio value="system">系统</Radio> <Radio value="inner">内部</Radio> <Radio value="outer">外部</Radio> <Radio value="custom">自定义</Radio> </Radio.Group>)} </Form.Item> </Col> <Col span={8}> <Form.Item label="表格属性"> {getFieldDecorator('tableType', { initialValue: setting.tableType @@ -251,26 +269,7 @@ )} </Form.Item> </Col> <Col span={12}> <Form.Item label={dict['header.form.intertype']}> {getFieldDecorator('interType', { initialValue: interType, rules: [ { required: true, message: dict['form.required.select'] + dict['header.form.intertype'] + '!' }, ] })( <Radio.Group style={{whiteSpace: 'nowrap'}} onChange={(e) => {this.onRadioChange(e, 'interType')}}> <Radio value="system">系统</Radio> <Radio value="inner">内部</Radio> <Radio value="outer">外部</Radio> <Radio value="custom">自定义</Radio> </Radio.Group>)} </Form.Item> </Col> {interType === 'outer' ? <Col span={12}> {interType === 'outer' ? <Col span={8}> <Form.Item label={dict['header.form.sysInterface']}> {getFieldDecorator('sysInterface', { initialValue: sysInterface, @@ -287,7 +286,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} {interType === 'custom' ? <Col span={12}> {interType === 'custom' ? <Col span={8}> <Form.Item label="参数处理"> {getFieldDecorator('procMode', { initialValue: procMode, @@ -298,13 +297,13 @@ }, ] })( <Radio.Group style={{whiteSpace: 'nowrap'}} onChange={(e) => {this.onRadioChange(e, 'procMode')}}> <Radio.Group onChange={(e) => {this.onRadioChange(e, 'procMode')}}> <Radio value="script">前置脚本</Radio> <Radio value="inner">前置函数</Radio> </Radio.Group>)} </Form.Item> </Col> : null} {interType === 'custom' && procMode === 'inner' ? <Col span={12}> {interType === 'custom' && procMode === 'inner' ? <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title={funcTooltip}> <QuestionCircleOutlined className="mk-form-tip" /> @@ -327,7 +326,7 @@ })(<Input placeholder={''} autoComplete="off" />)} </Form.Item> </Col> : null} {interType === 'outer' || interType === 'custom' ? <Col className="data-source" span={24}> {interType === 'outer' || interType === 'custom' ? <Col className="mk-through-line3" span={24}> <Form.Item label="接口地址"> {getFieldDecorator('interface', { initialValue: setting.interface || (interType === 'outer' && sysInterface === 'true' ? window.GLOB.mainSystemApi : ''), @@ -340,7 +339,7 @@ })(<TextArea rows={2} readOnly={interType === 'outer' && sysInterface === 'true'}/>)} </Form.Item> </Col> : null} {(interType === 'outer' && sysInterface !== 'true') || interType === 'custom' ? <Col className="data-source" span={24}> {(interType === 'outer' && sysInterface !== 'true') || interType === 'custom' ? <Col className="mk-through-line3" span={24}> <Form.Item label={ <Tooltip placement="topLeft" title="正式系统所使用的的接口地址。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -352,7 +351,7 @@ })(<TextArea rows={2} />)} </Form.Item> </Col> : null} {interType === 'custom' ? <Col span={12}> {interType === 'custom' ? <Col span={8}> <Form.Item label="请求方式"> {getFieldDecorator('method', { initialValue: setting.method || 'post', @@ -369,7 +368,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} {interType === 'custom' ? <Col span={12}> {interType === 'custom' ? <Col span={8}> <Form.Item label="数据请求"> {getFieldDecorator('requestMode', { initialValue: requestMode, @@ -380,13 +379,13 @@ }, ] })( <Radio.Group style={{whiteSpace: 'nowrap'}} onChange={(e) => {this.onRadioChange(e, 'requestMode')}}> <Radio.Group onChange={(e) => {this.onRadioChange(e, 'requestMode')}}> <Radio value="system">系统函数</Radio> <Radio value="inner">内部函数</Radio> </Radio.Group>)} </Form.Item> </Col> : null} {interType === 'inner' || (interType === 'custom' && requestMode === 'inner') ? <Col span={12}> {interType === 'inner' || (interType === 'custom' && requestMode === 'inner') ? <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title={funcTooltip}> <QuestionCircleOutlined className="mk-form-tip" /> @@ -409,7 +408,7 @@ })(<Input placeholder={''} autoComplete="off" />)} </Form.Item> </Col> : null} {interType === 'outer' ? <Col span={12}> {interType === 'outer' ? <Col span={8}> <Form.Item label="外部函数"> {getFieldDecorator('outerFunc', { initialValue: setting.outerFunc || '', @@ -425,7 +424,7 @@ })(<Input placeholder={''} autoComplete="off" />)} </Form.Item> </Col> : null} {interType === 'system' || (interType === 'custom' && requestMode === 'system') ? <Col span={24} className="data-source" style={{paddingLeft: '7px'}}> {interType === 'system' || (interType === 'custom' && requestMode === 'system') ? <Col span={24} className="mk-through-line3" style={{paddingLeft: '7px'}}> <Form.Item help={'数据ID:' + menu.MenuID} labelCol={{xs: { span: 24 }, sm: { span: 4 }}} wrapperCol={ {xs: { span: 24 }, sm: { span: 20 }} } label={ <Tooltip placement="topLeft" title={`使用系统函数时,需填写数据源。注:数据权限替换符 $@ -> /* 或 ''、 @$ -> */ 或 '';查询替换符 $select@ -> /* 或 ''、 @select$ -> */ 或 '';统计替换符 $sum@ -> /* 或 ''、 @sum$ -> */ 或 ''。`}> <QuestionCircleOutlined className="mk-form-tip" /> @@ -437,7 +436,7 @@ })(<CodeMirror />)} </Form.Item> </Col> : null} {interType === 'system' || (interType === 'custom' && requestMode === 'system') ? <Col span={12}> {interType === 'system' || (interType === 'custom' && requestMode === 'system') ? <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title={'查询时,搜索条件以where条件拼接进入sql,统计时,将数据源中以“@+搜索字段+@”的内容,以搜索条件中的值进行替换后,提交查询,注:查询类型仅在使用系统函数时有效。'}> <QuestionCircleOutlined className="mk-form-tip" /> @@ -453,7 +452,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} {interType === 'system' || (interType === 'custom' && requestMode === 'system') ? <Col span={12}> {interType === 'system' || (interType === 'custom' && requestMode === 'system') ? <Col span={8}> <Form.Item label="默认sql"> {getFieldDecorator('default', { initialValue: setting.default || 'true' @@ -464,7 +463,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} <Col span={12}> <Col span={8}> <Form.Item label="主键"> {getFieldDecorator('primaryKey', { initialValue: setting.primaryKey || '' @@ -480,7 +479,7 @@ )} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label="默认排序"> {getFieldDecorator('order', { initialValue: setting.order || 'ID desc', @@ -497,7 +496,7 @@ })(<Input placeholder={'ID asc, UID desc'} autoComplete="off" />)} </Form.Item> </Col> {interType === 'custom' ? <Col span={12}> {interType === 'custom' ? <Col span={8}> <Form.Item label="回调方式"> {getFieldDecorator('callbackType', { initialValue: setting.callbackType || 'script' @@ -508,7 +507,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} {interType === 'custom' ? <Col span={12}> {interType === 'custom' ? <Col span={8}> <Form.Item label="回调表名"> {getFieldDecorator('cbTable', { initialValue: setting.cbTable || '', @@ -525,7 +524,7 @@ })(<Input placeholder={''} autoComplete="off" />)} </Form.Item> </Col> : null} {interType === 'custom' ? <Col span={12}> {interType === 'custom' ? <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title={'同步执行:外部接口调用成功后再请求数据;异步执行:外部接口调用与请求数据同时进行。'}> <QuestionCircleOutlined className="mk-form-tip" /> @@ -541,7 +540,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} {interType === 'custom' ? <Col span={12}> {interType === 'custom' ? <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title={'如果自定义接口不支持跨域请求,会通过当前系统转发。'}> <QuestionCircleOutlined className="mk-form-tip" /> @@ -557,7 +556,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} {interType === 'custom' ? <Col span={12}> {interType === 'custom' ? <Col span={8}> <Form.Item label="执行次数"> {getFieldDecorator('execTime', { initialValue: setting.execTime || 'once' @@ -568,7 +567,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} <Col span={12}> <Col span={8}> <Form.Item label="是否分页"> {getFieldDecorator('laypage', { initialValue: setting.laypage || 'true' @@ -579,7 +578,7 @@ </Radio.Group>)} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label="初始化"> {getFieldDecorator('onload', { initialValue: setting.onload || 'true' @@ -590,7 +589,7 @@ </Radio.Group>)} </Form.Item> </Col> {config.Template === 'CommonTable' ? <Col span={12}> {config.Template === 'CommonTable' ? <Col span={8}> <Form.Item label="按钮固定"> {getFieldDecorator('actionfixed', { initialValue: setting.actionfixed === 'true' || setting.actionfixed === true ? 'true' : 'false' @@ -601,7 +600,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} {config.Template === 'CommonTable' ? <Col span={12}> {config.Template === 'CommonTable' ? <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title={'含有合并列或表格出现横向滚动时会显示异常,请慎用!'}> <QuestionCircleOutlined className="mk-form-tip" /> @@ -617,7 +616,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} <Col span={12}> <Col span={8}> <Form.Item label="边框"> {getFieldDecorator('bordered', { initialValue: setting.bordered || 'true' @@ -628,7 +627,7 @@ </Radio.Group>)} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title={'表格的内边距,从大到小依次递减。'}> <QuestionCircleOutlined className="mk-form-tip" /> @@ -646,7 +645,7 @@ </Radio.Group>)} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label="事务"> {getFieldDecorator('transaction', { initialValue: setting.transaction || 'false' @@ -657,7 +656,7 @@ </Radio.Group>)} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="使用急速模式时,表格中的标记、双击事件、格式化、行合并、前缀、后缀、字段透视等效果将无效,且数据都会以文本格式显示。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -673,7 +672,7 @@ </Radio.Group>)} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="数据加载时,是否显示加载中的遮罩。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -689,7 +688,7 @@ </Radio.Group>)} </Form.Item> </Col> {/* <Col span={12}> {/* <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="在搜索条件存在时,是否显示搜索和重置按钮。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -705,7 +704,7 @@ </Radio.Group>)} </Form.Item> </Col> */} {tableType !== '' ? <Col span={12}> {tableType !== '' ? <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="当按钮执行完成并返回主键值时,默认选中主键值对应行。注:在启用无人值守功能时无效。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -722,7 +721,7 @@ </Radio.Group>)} </Form.Item> </Col> : null} <Col span={12}> <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="选择分页时有效,默认为10条。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -734,7 +733,7 @@ })(<InputNumber min={1} max={500} precision={0} />)} </Form.Item> </Col> {/* <Col span={12}> {/* <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="高级搜索弹窗的宽度,注:当宽度值小于100时表示占窗口的百分比,大于100时表示宽度的绝对值。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -746,7 +745,7 @@ })(<InputNumber min={10} max={3000} precision={0}/>)} </Form.Item> </Col> */} <Col span={12}> <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="双击表格中行,触发的按钮。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -764,7 +763,7 @@ )} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="空值时高度自适应。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -776,8 +775,8 @@ })(<InputNumber min={10} max={3000} precision={0}/>)} </Form.Item> </Col> <Col span={12}> <Form.Item label={ <Col span={8}> <Form.Item className="mk-color-move" label={ <Tooltip placement="topLeft" title="默认值rgba(0, 0, 0, 0.65)"> <QuestionCircleOutlined className="mk-form-tip" /> 字体颜色 @@ -788,14 +787,14 @@ })(<MKColor config={{initval: setting.color || 'rgba(0, 0, 0, 0.65)'}} />)} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label="字体大小"> {getFieldDecorator('fontSize', { initialValue: setting.fontSize || 14 })(<InputNumber min={12} max={50} precision={0}/>)} </Form.Item> </Col> <Col span={12}> <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="用于控制行数据是否可选择。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -815,7 +814,7 @@ )} </Form.Item> </Col> {controlField ? <Col span={12}> {controlField ? <Col span={8}> <Form.Item label={ <Tooltip placement="topLeft" title="当字段值与控制值相等时,行数据会禁用,多个值用逗号分隔。"> <QuestionCircleOutlined className="mk-form-tip" /> @@ -829,7 +828,6 @@ </Col> : null} </Row> </Form> </div> ) } } src/templates/sharecomponent/settingcomponent/settingform/datasource/index.scss
@@ -1,22 +0,0 @@ .model-table-datasource-setting-form-box { position: relative; .model-setting-form { .data-source { .ant-form-item-label { width: 16.5%; } .ant-form-item-control-wrapper { width: 83.5%; } .CodeMirror { height: 150px; } } } .color-sketch-block { position: relative; top: 7px; } } src/templates/sharecomponent/settingcomponent/settingform/index.jsx
@@ -576,7 +576,7 @@ const { loading, activeKey, setting, defaultSql, columns, scripts, preScripts, cbScripts, status, regoptions, visible, script, scriptValue } = this.state return ( <div className="model-table-setting-form-box" id="model-setting-form-body"> <div className="model-table-setting-form-box"> {loading && <Spin size="large" />} <Tabs activeKey={activeKey} onChange={this.changeTab}> <TabPane tab="数据源" key="setting"> @@ -596,8 +596,8 @@ 自定义脚本 {scripts.length ? <span className="count-tip">{scripts.length}</span> : null} </span> } disabled={!(status.interType === 'system' || (status.interType === 'custom' && status.requestMode === 'system'))} key="scripts"> <BorderOutlined className="full-scripts" onClick={() => { } disabled={!(status.interType === 'system' || (status.interType === 'custom' && status.requestMode === 'system'))} key="scripts" id="mk-setting-scripts"> {scripts.length ? <BorderOutlined className="full-scripts" onClick={() => { if (this.scriptsForm && (this.scriptsForm.state.editItem || (this.scriptsForm.props.form.getFieldValue('sql') && !/^\s+$/.test(this.scriptsForm.props.form.getFieldValue('sql'))))) { notification.warning({ top: 92, @@ -607,7 +607,7 @@ return } this.setState({visible: true, script: null, scriptValue: ''}) }}/> }}/> : null} <CustomScript dict={dict} setting={setting} src/templates/sharecomponent/settingcomponent/settingform/index.scss
@@ -60,10 +60,11 @@ } .full-scripts { position: absolute; right: 0px; top: 18px; right: 24px; top: 0px; font-size: 18px; color: #1890ff; z-index: 1; } } src/templates/sharecomponent/settingcomponent/settingform/simplescript/index.jsx
@@ -28,6 +28,7 @@ } state = { wrapId: Utils.getuuid(), editItem: null, loading: false, usefulFields: '', @@ -358,7 +359,7 @@ } scrolltop = () => { let node = document.getElementById('model-setting-form-body').parentNode let node = document.getElementById(this.state.wrapId).parentNode if (node && node.scrollTop) { let inter = Math.ceil(node.scrollTop / 10) @@ -406,7 +407,7 @@ render() { const { setting, scripts } = this.props const { getFieldDecorator } = this.props.form const { usefulFields, scriptsColumns, systemScripts, urlFields } = this.state const { usefulFields, scriptsColumns, systemScripts, urlFields, wrapId } = this.state const formItemLayout = { labelCol: { xs: { span: 24 }, @@ -419,7 +420,7 @@ } return ( <div className="modal-menu-setting-script"> <div className="modal-menu-setting-script" id={wrapId}> <Form {...formItemLayout}> <Row gutter={24}> <Col span={4}> src/templates/sharecomponent/treesettingcomponent/index.jsx
@@ -99,10 +99,9 @@ <SettingOutlined onClick={this.changeSetting} /> {/* 设置全局配置及列表数据源 */} <Modal wrapClassName="model-tree-setting-verify-modal" title="数据源配置" wrapClassName="mk-pop-modal" visible={visible} width={900} width={'75vw'} maskClosable={false} onCancel={() => { MKEmitter.emit('modalStatus', false); this.setState({ visible: false })}} confirmLoading={loading} src/templates/sharecomponent/treesettingcomponent/index.scss
@@ -9,32 +9,3 @@ color: #1890ff; } } .model-tree-setting-verify-modal { .ant-modal { top: 50px; padding-bottom: 5px; .ant-modal-body { max-height: calc(100vh - 190px); overflow-y: auto; padding-top: 10px; } .ant-modal-body::-webkit-scrollbar { width: 7px; } .ant-modal-body::-webkit-scrollbar-thumb { border-radius: 5px; box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.13); background: rgba(0, 0, 0, 0.13); } .ant-modal-body::-webkit-scrollbar-track { box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05); border-radius: 3px; border: 1px solid rgba(0, 0, 0, 0.07); background: rgba(0, 0, 0, 0); } .ant-empty-normal { margin: 5px 0px; } } } src/templates/sharecomponent/treesettingcomponent/settingform/index.jsx
@@ -249,7 +249,7 @@ const { activeKey, setting, loading, scripts } = this.state return ( <div className="model-tree-setting-form-box" id="model-setting-form-body"> <div className="model-tree-setting-form-box"> {loading && <Spin size="large" />} <Tabs activeKey={activeKey} onChange={this.changeTab}> <TabPane tab="数据源" key="setting"> @@ -266,7 +266,7 @@ 自定义脚本 {scripts.length ? <span className="count-tip">{scripts.length}</span> : null} </span> } key="scripts"> } key="scripts" id="mk-setting-scripts"> <CustomScript dict={this.props.dict} setting={setting} src/templates/zshare/customscript/index.jsx
@@ -303,7 +303,7 @@ } scrolltop = () => { let node = document.getElementById('model-setting-form-body').parentNode let node = document.getElementById('mk-setting-scripts') if (node && node.scrollTop) { let inter = Math.ceil(node.scrollTop / 10) src/templates/zshare/verifycard/index.jsx
@@ -853,11 +853,14 @@ if (!_arr.includes('submitdate')) { _form.push('submitdate=getdate()') } if (!_arr.includes('submituserid')) { _form.push('submituserid=@userid@') } if (!_arr.includes('submituser')) { _form.push('submituser=@username') } if (!_arr.includes('submitstaff')) { _form.push('submitstaff=@fullname') } if (!_arr.includes('submituserid')) { _form.push('submituserid=@userid@') } } else { if (!_arr.includes('modifydate')) { @@ -866,6 +869,9 @@ if (!_arr.includes('modifyuser')) { _form.push('modifyuser=@username') } if (!_arr.includes('modifystaff')) { _form.push('modifystaff=@fullname') } if (!_arr.includes('modifyuserid')) { _form.push('modifyuserid=@userid@') } src/utils/utils.js
@@ -1966,11 +1966,14 @@ if (!_arr.includes('submitdate')) { _form.push('submitdate=getdate()') } if (!_arr.includes('submituserid')) { _form.push('submituserid=@userid@') } if (!_arr.includes('submituser')) { _form.push('submituser=@username') } if (!_arr.includes('submitstaff')) { _form.push('submitstaff=@fullname') } if (!_arr.includes('submituserid')) { _form.push('submituserid=@userid@') } } else { if (!_arr.includes('modifydate')) { @@ -1979,6 +1982,9 @@ if (!_arr.includes('modifyuser')) { _form.push('modifyuser=@username') } if (!_arr.includes('modifystaff')) { _form.push('modifystaff=@fullname') } if (!_arr.includes('modifyuserid')) { _form.push('modifyuserid=@userid@') } src/views/basedesign/index.jsx
@@ -6,6 +6,8 @@ import Api from '@/api' import asyncComponent from '@/utils/asyncComponent' import asyncLoadComponent from '@/utils/asyncLoadComponent' import '@/assets/css/design.scss' import './index.scss' const _locale = sessionStorage.getItem('lang') !== 'en-US' ? zhCN : enUS src/views/menudesign/index.jsx
@@ -19,6 +19,7 @@ import MenuUtils from '@/utils/utils-custom.js' import asyncComponent from '@/utils/asyncComponent' import '@/assets/css/design.scss' import './index.scss' const { Panel } = Collapse src/views/mobdesign/index.jsx
@@ -17,6 +17,7 @@ import MenuUtils from '@/utils/utils-custom.js' import asyncComponent from '@/utils/asyncComponent' import '@/assets/css/design.scss' import './index.scss' const { Panel } = Collapse src/views/pcdesign/index.jsx
@@ -17,6 +17,7 @@ import MenuUtils from '@/utils/utils-custom.js' import asyncComponent from '@/utils/asyncComponent' import '@/assets/css/design.scss' import './index.scss' const { Panel } = Collapse src/views/popdesign/index.jsx
@@ -13,6 +13,7 @@ // import antdEnUS from 'antd/es/locale/en_US' import antdZhCN from 'antd/es/locale/zh_CN' import '@/assets/css/design.scss' import './index.scss' const _locale = antdZhCN src/views/tabledesign/index.jsx
@@ -13,6 +13,7 @@ import MKEmitter from '@/utils/events.js' import asyncComponent from '@/utils/asyncComponent' import '@/assets/css/design.scss' import './index.scss' const { Panel } = Collapse