From 137fb8ea6af2789b3238b22bac31d80bced41dfe Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 28 七月 2021 11:39:39 +0800 Subject: [PATCH] 2021-07-28 --- src/views/appmanage/submutilform/index.jsx | 144 ++++++++++++++++++++++++++++------------------- 1 files changed, 86 insertions(+), 58 deletions(-) diff --git a/src/views/appmanage/submutilform/index.jsx b/src/views/appmanage/submutilform/index.jsx index 712464f..137c862 100644 --- a/src/views/appmanage/submutilform/index.jsx +++ b/src/views/appmanage/submutilform/index.jsx @@ -1,6 +1,6 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' -import { Form, Row, Col, Select, Radio, Input } from 'antd' +import { Form, Row, Col, Select, Radio, Input, Tooltip, Icon, notification } from 'antd' import asyncComponent from '@/utils/asyncComponent' import './index.scss' @@ -14,7 +14,21 @@ inputSubmit: PropTypes.func // input鍥炶溅鎻愪氦 } - state = {} + state = {msgs: [], typename: 'mob', user_binding: []} + + UNSAFE_componentWillMount() { + const { card } = this.props + let msgs = sessionStorage.getItem('msgTemplate') + let user_binding = [] + let typename = 'mob' + + if (card) { + typename = card.typename || 'mob' + user_binding = card.user_binding ? card.user_binding.split(',') : [] + } + + this.setState({msgs: JSON.parse(msgs), typename, user_binding}) + } /** * @description 鑾峰彇琛ㄥ崟鍊� @@ -23,10 +37,14 @@ return new Promise(resolve => { this.props.form.validateFieldsAndScroll((err, values) => { if (!err) { - if (values.favicon && values.favicon.length > 0 && values.favicon[0].status === 'done') { - values.favicon = values.favicon[0].response || values.favicon[0].url || '' - } else { - values.favicon = '' + values.user_binding = values.user_binding ? values.user_binding.join(',') : '' + if (values.user_binding.indexOf('sms_vcode') > -1 && !values.sms_id) { + notification.warning({ + top: 92, + message: '鎵嬫満鍙风粦瀹氭椂锛岄渶瑕佺煭淇℃ā鏉匡紒', + duration: 5 + }) + return } resolve(values) } @@ -45,6 +63,7 @@ render() { const { card, type } = this.props const { getFieldDecorator } = this.props.form + const { msgs, typename, user_binding } = this.state const formItemLayout = { labelCol: { xs: { span: 24 }, @@ -56,28 +75,23 @@ } } - let filelist = [] + let file = '' if (type === 'edit' && card && card.favicon) { - filelist = [{ - uid: `favicon`, - name: card.favicon.slice(card.favicon.lastIndexOf('/') + 1), - status: 'done', - url: card.favicon, - origin: true - }] + file = card.favicon } return ( - <Form {...formItemLayout} className="mob-card-edit-form"> + <Form {...formItemLayout} className="sub-app-edit-form"> <Row gutter={24}> <Col span={12}> <Form.Item label="搴旂敤绫诲瀷"> {getFieldDecorator('typename', { - initialValue: card ? card.typename : 'mob' + initialValue: typename })( - <Select disabled={type === 'edit'}> + <Select disabled={type === 'edit'} onChange={(val) => this.setState({typename: val})}> <Select.Option value="mob">绉诲姩绔�(鍖呮嫭android銆乮os)</Select.Option> + <Select.Option value="pad">Pad绔�</Select.Option> <Select.Option value="pc">PC绔�</Select.Option> </Select> )} @@ -95,7 +109,7 @@ )} </Form.Item> </Col> - <Col span={12}> + {/* <Col span={12}> <Form.Item label="鐧诲綍"> {getFieldDecorator('login_types', { initialValue: card ? card.login_types || 'true' : 'true' @@ -106,7 +120,7 @@ </Radio.Group> )} </Form.Item> - </Col> + </Col> */} <Col span={12}> <Form.Item label="鏉冮檺绠$悊"> {getFieldDecorator('role_type', { @@ -119,52 +133,61 @@ )} </Form.Item> </Col> - <Col span={12}> - <Form.Item label="鐭繛鎺�"> - {getFieldDecorator('link_type', { - initialValue: card ? card.link_type || 'true' : 'true' + {typename !== 'pc' ? <Col span={12}> + <Form.Item label={ + <Tooltip placement="topLeft" title="浣跨敤寰俊鎺堟潈鐧诲綍鏃讹紝鏄惁闇�瑕佺粦瀹氱敤鎴枫��"> + <Icon type="question-circle" /> + 鐢ㄦ埛缁戝畾 + </Tooltip> + }> + {getFieldDecorator('user_binding', { + initialValue: user_binding })( - <Radio.Group> - <Radio value="true">鍚敤</Radio> - <Radio value="false">涓嶅惎鐢�</Radio> - </Radio.Group> + <Select mode="multiple"> + <Select.Option value="uname_pwd">鐢ㄦ埛鍚�</Select.Option> + <Select.Option value="sms_vcode">鎵嬫満鍙�</Select.Option> + </Select> )} </Form.Item> - </Col> + </Col> : null} + {typename !== 'pc' ? <Col span={12}> + <Form.Item label={ + <Tooltip placement="topLeft" title="鐭俊妯℃澘鍙湪绠$悊绯荤粺 HS-濂囦簯鐭俊妯℃澘 澶勬坊鍔犮��"> + <Icon type="question-circle" /> + 鐭俊妯℃澘 + </Tooltip> + }> + {getFieldDecorator('sms_id', { + initialValue: card ? card.sms_id || '' : '' + })( + <Select allowClear> + {msgs.map(option => + <Select.Option key={option.ID} value={option.ID}>{option.SignName + ' - ' + option.TemplateCode}</Select.Option> + )} + </Select> + )} + </Form.Item> + </Col> : null} <Col span={12}> <Form.Item label="鐨偆"> {getFieldDecorator('css', { initialValue: card ? card.css : 'bg_black_style_blue' })( <Select> - <Select.Option value="bg_black_style_blue">钃濋粦鑹茬郴</Select.Option> - <Select.Option value="bg_white_style_blue">钃濈櫧鑹茬郴</Select.Option> - <Select.Option value="bg_black_style_red">绾㈤粦鑹茬郴</Select.Option> - <Select.Option value="bg_white_style_red">绾㈢櫧鑹茬郴</Select.Option> - <Select.Option value="bg_black_style_orange_red">姗欑孩榛戣壊绯�</Select.Option> - <Select.Option value="bg_white_style_orange_red">姗欑孩鐧借壊绯�</Select.Option> - <Select.Option value="bg_black_style_orange">姗欓粦鑹茬郴</Select.Option> - <Select.Option value="bg_white_style_orange">姗欑櫧鑹茬郴</Select.Option> - <Select.Option value="bg_black_style_orange_yellow">姗欓粍榛戣壊绯�</Select.Option> - <Select.Option value="bg_white_style_orange_yellow">姗欓粍鐧借壊绯�</Select.Option> - <Select.Option value="bg_black_style_yellow">榛勯粦鑹茬郴</Select.Option> - <Select.Option value="bg_white_style_yellow">榛勭櫧鑹茬郴</Select.Option> - <Select.Option value="bg_black_style_yellow_green">榛勭豢榛戣壊绯�</Select.Option> - <Select.Option value="bg_white_style_yellow_green">榛勭豢鐧借壊绯�</Select.Option> - <Select.Option value="bg_black_style_green">缁块粦鑹茬郴</Select.Option> - <Select.Option value="bg_white_style_green">缁跨櫧鑹茬郴</Select.Option> - <Select.Option value="bg_black_style_cyan">闈掗粦鑹茬郴</Select.Option> - <Select.Option value="bg_white_style_cyan">闈掔櫧鑹茬郴</Select.Option> - <Select.Option value="bg_black_style_blue_purple">钃濈传榛戣壊绯�</Select.Option> - <Select.Option value="bg_white_style_blue_purple">钃濈传鐧借壊绯�</Select.Option> - <Select.Option value="bg_black_style_purple">绱粦鑹茬郴</Select.Option> - <Select.Option value="bg_white_style_purple">绱櫧鑹茬郴</Select.Option> - <Select.Option value="bg_black_style_magenta">娲嬬孩榛戣壊绯�</Select.Option> - <Select.Option value="bg_white_style_magenta">娲嬬孩鐧借壊绯�</Select.Option> - <Select.Option value="bg_black_style_grass_green">鑽夌豢榛戣壊绯�</Select.Option> - <Select.Option value="bg_white_style_grass_green">鑽夌豢鐧借壊绯�</Select.Option> - <Select.Option value="bg_black_style_deep_red">娣辩孩榛戣壊绯�</Select.Option> - <Select.Option value="bg_white_style_deep_red">娣辩孩鐧借壊绯�</Select.Option> + <Select.Option value="bg_black_style_blue">钃濊壊</Select.Option> + <Select.Option value="bg_black_style_red">绾㈣壊</Select.Option> + <Select.Option value="bg_black_style_orange_red">姗欑孩鑹�</Select.Option> + <Select.Option value="bg_black_style_orange">姗欒壊</Select.Option> + <Select.Option value="bg_black_style_orange_yellow">姗欓粍鑹�</Select.Option> + <Select.Option value="bg_black_style_yellow">榛勮壊</Select.Option> + <Select.Option value="bg_black_style_yellow_green">榛勭豢鑹�</Select.Option> + <Select.Option value="bg_black_style_green">缁胯壊</Select.Option> + <Select.Option value="bg_black_style_cyan">闈掕壊</Select.Option> + <Select.Option value="bg_black_style_blue_purple">钃濈传鑹�</Select.Option> + <Select.Option value="bg_black_style_purple">绱壊</Select.Option> + <Select.Option value="bg_black_style_magenta">娲嬬孩鑹�</Select.Option> + <Select.Option value="bg_black_style_grass_green">鑽夌豢鑹�</Select.Option> + <Select.Option value="bg_black_style_deep_red">娣辩孩鑹�</Select.Option> </Select> )} </Form.Item> @@ -179,8 +202,13 @@ <Col span={12}> <Form.Item label="鍥炬爣"> {getFieldDecorator('favicon', { - initialValue: filelist - })(<FileUpload accept=".jpg,.png,.gif,.pjp,.pjpeg,.jpeg,.jfif,.webp,.ico" maxFile={1} fileType={'text'} />)} + initialValue: file + })(<FileUpload config={{ + initval: file, + suffix: '.jpg,.png,.gif,.pjp,.pjpeg,.jpeg,.jfif,.webp,.ico', + maxfile: 1, + fileType: 'text' + }}/>)} </Form.Item> </Col> </Row> -- Gitblit v1.8.0