From 3d5255109c20ab571407bff3882c456102b2d695 Mon Sep 17 00:00:00 2001 From: linxd <544554903@qq.com> Date: Tue, 15 Jul 2025 10:21:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=BB=84=E4=BB=B6=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../register/supplier/CommonFormSections.tsx | 16 +- src/pages/register/supplier/DomesticForm.tsx | 77 +++++--- src/pages/register/supplier/ForeignForm.tsx | 183 +++++++++--------- 3 files changed, 154 insertions(+), 122 deletions(-) diff --git a/src/pages/register/supplier/CommonFormSections.tsx b/src/pages/register/supplier/CommonFormSections.tsx index 07cd466..6f5e51e 100644 --- a/src/pages/register/supplier/CommonFormSections.tsx +++ b/src/pages/register/supplier/CommonFormSections.tsx @@ -261,6 +261,14 @@ export const QualificationSection: React.FC = ({ form } * 包含纳税人类型、开票抬头、纳税人识别号、开票地址等 */ export const InvoiceSection: React.FC = ({ form }) => { + const [taxpayerTypeOptions, setTaxpayerTypeOptions] = useState([]); + useEffect(() => { + getDictList('taxpayer_type').then(res => { + if (res.code === 200) { + setTaxpayerTypeOptions(res.data); + } + }); + }, []); return ( <>
开票信息
@@ -272,10 +280,10 @@ export const InvoiceSection: React.FC = ({ form }) => { label="纳税人类型" rules={[{ required: true, message: '请选择纳税人类型' }]} > - + - - - - - + } placeholder="请输入11位手机号码" /> + } + placeholder="请输入11位手机号码" + addonAfter={ + + } + /> @@ -217,21 +240,7 @@ const DomesticForm: React.FC = ({ label="验证码" rules={[{ required: true, message: '请输入验证码' }]} > - - - - - - - - + {/* @@ -244,16 +253,26 @@ const DomesticForm: React.FC = ({ */} - - - + + + - + diff --git a/src/pages/register/supplier/ForeignForm.tsx b/src/pages/register/supplier/ForeignForm.tsx index 4f8fbce..da7507a 100644 --- a/src/pages/register/supplier/ForeignForm.tsx +++ b/src/pages/register/supplier/ForeignForm.tsx @@ -1,11 +1,7 @@ /* 境外企业 表单项 */ import React, { useState, useEffect } from 'react'; -import { Form, Input, Button, Select, Row, Col, Cascader } from 'antd'; -import { - MobileOutlined, - MailOutlined, - EnvironmentOutlined, -} from '@ant-design/icons'; +import { Form, Input, Button, Select, Row, Col, Cascader } from 'antd'; +import { MobileOutlined, MailOutlined, EnvironmentOutlined } from '@ant-design/icons'; /** * 引入通用表单组件 */ @@ -18,6 +14,8 @@ import { } from './CommonFormSections'; import { getregionInternational } from '@/servers/api/register'; +import { getDictList } from '@/servers/api/dicts'; +import type { DictItem } from '@/servers/api/dicts'; const { Option } = Select; const { TextArea } = Input; @@ -34,15 +32,36 @@ interface ForeignFormProps { * 基本信息部分为境外企业特有 * 其他部分使用通用表单组件 */ -const ForeignForm: React.FC = ({ form, countdown, handleGetCaptcha, surveyQuestions }) => { +const ForeignForm: React.FC = ({ + form, + countdown, + handleGetCaptcha, + surveyQuestions, +}) => { // 全球 const [regionOptions, setRegionOptions] = useState([]); + // 企业类别 + const [companyTypeOptions, setCompanyTypeOptions] = useState([]); + // 币种 + const [currencyOptions, setCurrencyOptions] = useState([]); useEffect(() => { - getregionInternational().then(res => { - if (res.code === 200) { - setRegionOptions(res.data); - } - }); + getregionInternational().then((res) => { + if (res.code === 200) { + setRegionOptions(res.data); + } + }); + // 企业类别 + getDictList('enterprise_type').then((res) => { + if (res.code === 200) { + setCompanyTypeOptions(res.data); + } + }); + // 币种 + getDictList('currency').then((res) => { + if (res.code === 200) { + setCurrencyOptions(res.data); + } + }); }, []); return ( @@ -70,12 +89,8 @@ const ForeignForm: React.FC = ({ form, countdown, handleGetCap - - + + @@ -85,15 +100,13 @@ const ForeignForm: React.FC = ({ form, countdown, handleGetCap rules={[{ required: true, message: '请选择国家/地区' }]} > - + {/* = ({ form, countdown, handleGetCap > - - + */} + {/* = ({ form, countdown, handleGetCap > } placeholder="请具体注明" /> + */} + + + } placeholder="请具体注明" /> + - - } placeholder="请具体注明" /> + +