| | |
| | | |
| | | > .ant-collapse-item > .ant-collapse-header { |
| | | padding: 10px 40px 10px 16px; |
| | | background: #262E3F; |
| | | color: rgba(255, 255, 255, 0.85); |
| | | } |
| | | } |
| | | } |
| | |
| | | }).then(res => { |
| | | if (!res) return |
| | | // 外部请求 |
| | | _outParam = JSON.parse(JSON.stringify(res)) |
| | | _outParam = fromJS(res).toJS() |
| | | |
| | | if (this.props.menuType === 'HS') { |
| | | if (btn.sysInterface === 'true' && options.cloudServiceApi) { |
| | |
| | | if (btn.outerFunc) { |
| | | res.func = btn.outerFunc |
| | | } |
| | | |
| | | if (this.props.menuType === 'HS' && res.func === 's_sDataDictb_excelIn') { // s_sDataDictb_excelIn 云端验证 |
| | | param.LText = Utils.formatOptions(result.sql) |
| | | param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000' |
| | | param.secretkey = Utils.encrypt(param.LText, param.timestamp) |
| | | param.open_key = Utils.encrypt(param.secretkey, param.timestamp, true) |
| | | } |
| | | |
| | | return Api.genericInterface(res) |
| | | }).then(response => { |
| | |
| | | import React, {Component} from 'react' |
| | | import PropTypes from 'prop-types' |
| | | import { fromJS } from 'immutable' |
| | | import moment from 'moment' |
| | | import { Upload, Button, Icon, Progress, notification } from 'antd' |
| | | import SparkMD5 from 'spark-md5' |
| | | import Api from '@/api' |
| | | import Utils from '@/utils/utils.js' |
| | | import './index.scss' |
| | | |
| | | let Url = '/Upload' |
| | |
| | | params.file.fileSize = file.size // 文件大小 |
| | | params.file.fileChunks = chunks // 记录所有chunks的长度 |
| | | |
| | | if (!/^[A-Za-z0-9]+$/.test(params.file.fileName)) { // 文件名称含有英文及数字之外字符时,名称系统生成 |
| | | params.file.fileName = moment().format('YYYYMMDDHHmmss') + Utils.getuuid().substr(14) |
| | | } |
| | | |
| | | totalFileReader.readAsArrayBuffer(file) |
| | | totalFileReader.onload = (e) => { // 对整个totalFile生成md5 |
| | | spark.append(e.target.result) |
| | |
| | | _options = ['label', 'OpenType', 'funcType', 'execMode', 'intertype', 'innerFunc', 'Ot', 'icon', 'class', 'execSuccess', 'execError'] |
| | | } |
| | | } |
| | | let _fieldval = {} |
| | | |
| | | this.setState({ |
| | | formlist: this.state.formlist.map(item => { |
| | |
| | | |
| | | if (item.hidden) return item |
| | | |
| | | if (item.key === 'Ot' && value === 'print') { |
| | | if (item.key === 'intertype') { |
| | | _fieldval.intertype = this.state.interType |
| | | } else if (item.key === 'Ot' && value === 'print') { |
| | | item.options = this.state.requireOptions |
| | | } |
| | | |
| | | return item |
| | | }) |
| | | }, () => { |
| | | this.props.form.setFieldsValue(_fieldval) |
| | | }) |
| | | } else if (key === 'sqlType') { |
| | | let _fieldval = {} |
| | |
| | | <Row gutter={24}> |
| | | <Col span={24} className="print-tip"> |
| | | <Form.Item label={'提示'}> |
| | | 如果此按钮的打印功能涉及多种打印类型,且不同类型需要设置不同的打印机时,可以添加打印类型控制信息, |
| | | 设置完成后,用户可针对不同的类型设置对应的打印机。注:在返回数据顶层结构中添加 printType、printCount、templateID 字段,可分别控制打印类型、打印数量和打印模板。 |
| | | 如果此按钮涉及多种数据类型的打印,需要设置不同的打印机时,请添加打印类型控制信息,用户在自定义设置中,可根据打印类型设置对应的打印机。 |
| | | 打印时,数据的打印类型取决于返回值(内部或外部接口)中的 printType 字段。 |
| | | 注:返回值中的 printCount、templateID 字段,可分别控制打印数量和打印模板。 |
| | | </Form.Item> |
| | | </Col> |
| | | <Col span={24}> |
| | |
| | | .print-tip { |
| | | margin-bottom: 25px; |
| | | .ant-form-item-label { |
| | | width: 10.5%; |
| | | width: 8.5%; |
| | | line-height: 25px; |
| | | } |
| | | .ant-form-item-control-wrapper { |
| | | width: 89.5%; |
| | | width: 91.5%; |
| | | .ant-form-item-children { |
| | | line-height: 25px; |
| | | } |
| | |
| | | options: opentypes |
| | | }, |
| | | { |
| | | type: 'select', |
| | | key: 'funcType', |
| | | label: Formdict['header.form.funcType'], |
| | | initVal: card.funcType || '', |
| | | required: true, |
| | | options: [{ |
| | | value: 'changeuser', |
| | | text: Formdict['header.form.func.changeuser'] |
| | | }, { |
| | | value: 'print', |
| | | text: Formdict['header.form.func.print'] |
| | | }] |
| | | }, |
| | | { |
| | | type: 'select', |
| | | key: 'execMode', |
| | | label: Formdict['model.form.execMode'], |
| | | initVal: card.execMode || 'exec', |
| | | required: true, |
| | | options: [{ |
| | | value: 'exec', |
| | | text: Formdict['model.form.exec'] |
| | | }, { |
| | | value: 'prompt', |
| | | text: Formdict['model.form.prompt'] |
| | | }, { |
| | | value: 'pop', |
| | | text: Formdict['model.form.popform'] |
| | | }] |
| | | }, |
| | | { |
| | | type: 'radio', |
| | | key: 'intertype', |
| | | label: Formdict['header.form.intertype'], |
| | |
| | | tooltipClass: 'middle', |
| | | required: false, |
| | | readonly: false |
| | | }, |
| | | { |
| | | type: 'select', |
| | | key: 'funcType', |
| | | label: Formdict['header.form.funcType'], |
| | | initVal: card.funcType || '', |
| | | required: true, |
| | | options: [{ |
| | | value: 'changeuser', |
| | | text: Formdict['header.form.func.changeuser'] |
| | | }, { |
| | | value: 'print', |
| | | text: Formdict['header.form.func.print'] |
| | | }] |
| | | }, |
| | | { |
| | | type: 'select', |
| | | key: 'execMode', |
| | | label: Formdict['model.form.execMode'], |
| | | initVal: card.execMode || 'exec', |
| | | required: true, |
| | | options: [{ |
| | | value: 'exec', |
| | | text: Formdict['model.form.exec'] |
| | | }, { |
| | | value: 'prompt', |
| | | text: Formdict['model.form.prompt'] |
| | | }, { |
| | | value: 'pop', |
| | | text: Formdict['model.form.popform'] |
| | | }] |
| | | }, |
| | | { |
| | | type: 'select', |
| | |
| | | let fsql = `${_sql}${_sqlInsert}${_sqlBottom}` |
| | | fsql = fsql.replace(/\n\s{8}/ig, '\n') |
| | | console.log(fsql) |
| | | } else { // s_sDataDictb_excelIn 云端密钥验证参数 |
| | | _sql = ` |
| | | /* 系统生成 */ |
| | | declare @${item.sheet} table (jskey nvarchar(50)) |
| | | Declare @UserName nvarchar(50),@FullName nvarchar(50),@ErrorCode nvarchar(50),@retmsg nvarchar(4000),@tbid Nvarchar(512) |
| | | |
| | | Select @ErrorCode='', @retmsg='', @UserName='${userName}', @FullName='${fullName}' |
| | | ` |
| | | } |
| | | |
| | | return { |
| | |
| | | border-bottom: 1px solid #000; |
| | | cursor: pointer; |
| | | z-index: 10; |
| | | background: #262626; |
| | | background: #202735; |
| | | i { |
| | | margin-bottom: 5px; |
| | | margin-left: 2px; |
| | |
| | | position: relative; |
| | | z-index: 10; |
| | | height: 1000px; |
| | | background: #262626; |
| | | background: #202735; |
| | | } |
| | | } |
| | | |
| | |
| | | top: 0; |
| | | height: 100%; |
| | | width: 300px; |
| | | background: #ffffff; |
| | | background: #202735; |
| | | box-shadow: 0px 2px 2px #000; |
| | | |
| | | >.ant-tabs { |
| | | >.ant-tabs-bar { |
| | | border-bottom: 1px solid #181F29; |
| | | .ant-tabs-tab { |
| | | color: rgba(255, 255, 255, 0.85); |
| | | } |
| | | .ant-tabs-tab-active.ant-tabs-tab { |
| | | color: #1890ff; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .mob-shell { |