From d3eefcaf3762ca97483e1517697b6941bd9a58d8 Mon Sep 17 00:00:00 2001
From: dminyi <1301963064@qq.com>
Date: Wed, 28 Aug 2024 09:51:50 +0800
Subject: [PATCH] Merge branch 'master' of http://120.79.193.119:9090/r/gzzfw/frontEnd/gzDyh into master
---
gz-customerSystem/src/views/register/visit/component/agentDialog.jsx | 95 ++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 85 insertions(+), 10 deletions(-)
diff --git a/gz-customerSystem/src/views/register/visit/component/agentDialog.jsx b/gz-customerSystem/src/views/register/visit/component/agentDialog.jsx
index d3c4e7b..bea0658 100644
--- a/gz-customerSystem/src/views/register/visit/component/agentDialog.jsx
+++ b/gz-customerSystem/src/views/register/visit/component/agentDialog.jsx
@@ -2,6 +2,9 @@
import { Row, Col, Space } from 'antd';
import { Form, Input, Button, Radio, Select, Checkbox, Upload } from '@arco-design/web-react';
import KeyVisits from "./keyVisits";
+import {
+ IconLink,
+} from '@arco-design/web-react/icon';
const FormItem = Form.Item;
const Option = Select.Option;
@@ -10,17 +13,70 @@
const CheckboxGroup = Checkbox.Group;
export default function AgentDialog(props) {
+ const formRef = useRef();
+ const [visitList, setVisitList] = useState([])
+
+ useEffect(() => {
+ if (props.editData) {
+ //编辑
+ formRef.current.setFieldsValue({
+ ...props.editData
+ })
+ //过滤代理人
+ setVisitList(props.fakeData.filter(item => {
+ if (props.editData.dialogType === 2) {
+ return item.partyType === 0
+ } else {
+ return item.partyType === 1
+ }
+ }))
+ } else {
+ //过滤代理人
+ setVisitList(props.fakeData.filter(item => {
+ if (props.dialogType === 2) {
+ return item.partyType === 0
+ } else {
+ return item.partyType === 1
+ }
+ }))
+ }
+ }, [])
+
+ //保存信息
+ const handleSave = () => {
+ if (formRef.current) {
+ formRef.current.validate(undefined, (errors, values) => {
+ if (!errors) {
+ if (props.editData) {
+ props.handleAddParty({
+ ...props.editData,
+ ...values,
+ })
+ } else {
+ props.handleAddParty({
+ ...values,
+ partyType: props.dialogType,
+ perClassName: props.dialogType === 2 ? '申请方代理人' : '被申请方代理人',
+ })
+ }
+ props.onClose()
+ }
+ });
+ }
+ }
+
return (
<div className="applyDialog">
<div style={{ height: '590px', overflowY: 'scroll' }}>
<Row gutter={[16, 16]} style={{ margin: '0 2px 0 0' }}>
<Col span={24}>
<Form
- ref={props.formRef}
+ ref={formRef}
layout='vertical'
requiredSymbol={false}
initialValues={{
}}//默认值
+ scrollToFirstError
>
<Row gutter={[32, 0]} style={{ margin: '0 -10px' }}>
<Col span={24}>
@@ -36,6 +92,9 @@
onDrop={(e) => {
}}
tip='支持png、jpg、pdf格式的图片上传,每次上传大小不超过10M'
+ showUploadList={{
+ fileIcon: <IconLink style={{ color: '#1D2129' }} />,
+ }}
/>
</FormItem>
</Col>
@@ -58,7 +117,8 @@
<Col span={12}>
<FormItem
label={(<div style={{ display: 'flex' }}>姓名<div className="must">必填</div></div>)}
- field='name'
+ field='trueName'
+ rules={[{ required: true, message: '请输入姓名' }]}
>
<Input placeholder='请填写' />
</FormItem>
@@ -66,7 +126,11 @@
<Col span={12}>
<FormItem
label={(<div style={{ display: 'flex' }}>联系方式<div className="must">必填</div></div>)}
- field='phone'
+ field='personNumber'
+ rules={[
+ { required: true, message: '请输入联系方式' },
+ { match: /^\+?(\d{1,3})?[-. (]*(\d{3})[-. )]*(\d{3})[-. ]*(\d{4})$/, message: '请输入正确的电话号码' },
+ ]}
>
<Input placeholder='请填写' />
</FormItem>
@@ -74,7 +138,8 @@
<Col span={12}>
<FormItem
label={(<div style={{ display: 'flex' }}>证件类型<div className="must">必填</div></div>)}
- field='zhengjian'
+ field='docType'
+ rules={[{ required: true, message: '请选择证件类型' }]}
>
<Select placeholder='请选择' allowClear>
{['居民身份证',].map((option, index) => (
@@ -88,8 +153,11 @@
<Col span={12}>
<FormItem
label={(<div style={{ display: 'flex' }}>证件号码<div className="must">必填</div></div>)}
- rules={[{ required: true }]}
- field='peopleNumber'
+ rules={[
+ { required: true, message: '请输入证件号码' },
+ { match: /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])\d{3}(\d|X)$/, message: '请输入正确的证件号码' }
+ ]}
+ field='mobile'
>
<InputSearch
searchButton='读取卡证'
@@ -181,10 +249,17 @@
<Col span={12}>
<FormItem
label={(<div style={{ display: 'flex' }}>代理对象<div className="must">必填</div></div>)}
- rules={[{ required: true }]}
+ rules={[{ required: true, message: '请选择代理对象' }]}
field='dailimap'
>
- <CheckboxGroup direction='vertical' options={['张三丰', '广东好又多贸易有限公司', '广东科贸创意有限公司']} />
+ <CheckboxGroup
+ direction='vertical'
+ options={visitList.map(x => ({
+ label: <span>{x.trueName} <span style={{ color: '#86909c' }}>({x.perClassName})</span></span>,
+ value: x.id,
+ }))}
+ >
+ </CheckboxGroup>
</FormItem>
</Col>
</Row>
@@ -201,9 +276,9 @@
<Button
type="primary"
className="dialogPrimary"
- // onClick={handleSave}
+ onClick={handleSave}
>
- 保存信息
+ 保存
</Button>
<Button className="dialogBack">
重置
--
Gitblit v1.8.0