From dad8ee5b2c6d2359d2821653baee2847f97d542e Mon Sep 17 00:00:00 2001
From: zhangyongtian <1181606322@qq.com>
Date: Mon, 19 Aug 2024 17:43:11 +0800
Subject: [PATCH] feat: 添加当事人信息逻辑

---
 gz-customerSystem/src/views/register/visit/component/agentDialog.jsx |   48 ++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 40 insertions(+), 8 deletions(-)

diff --git a/gz-customerSystem/src/views/register/visit/component/agentDialog.jsx b/gz-customerSystem/src/views/register/visit/component/agentDialog.jsx
index 684f9a7..0f92863 100644
--- a/gz-customerSystem/src/views/register/visit/component/agentDialog.jsx
+++ b/gz-customerSystem/src/views/register/visit/component/agentDialog.jsx
@@ -13,13 +13,29 @@
 const CheckboxGroup = Checkbox.Group;
 
 export default function AgentDialog(props) {
+  const formRef = useRef();
+
+  //保存信息
+  const handleSave = () => {
+    if (formRef.current) {
+      formRef.current.validate(undefined, (errors, values) => {
+        props.handleAddParty({
+          ...values,
+          // partyType: props.dialogType,
+          // perClass: perClass,
+          // perClassName: props.dialogType === 0 ? '申请方代理人' : '被申请方当事人'
+        })
+        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={{
@@ -64,7 +80,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>
@@ -72,7 +89,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>
@@ -80,7 +101,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) => (
@@ -94,8 +116,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='读取卡证'
@@ -190,7 +215,14 @@
                     rules={[{ required: true }]}
                     field='dailimap'
                   >
-                    <CheckboxGroup direction='vertical' options={['张三丰', '广东好又多贸易有限公司', '广东科贸创意有限公司']} />
+                    <CheckboxGroup
+                      direction='vertical'
+                      options={props.fakeData.map(x => ({
+                        label: <span>{x.trueName}&nbsp;&nbsp;<span style={{ color: '#86909c' }}>({x.perClassName})</span></span>,
+                        value: x.id,
+                      }))}
+                    >
+                    </CheckboxGroup>
                   </FormItem>
                 </Col>
               </Row>
@@ -207,7 +239,7 @@
         <Button
           type="primary"
           className="dialogPrimary"
-        // onClick={handleSave}
+          onClick={handleSave}
         >
           保存信息
         </Button>

--
Gitblit v1.8.0