This commit is contained in:
linxd
2025-07-16 11:30:08 +08:00
17 changed files with 147 additions and 117 deletions

View File

@ -44,10 +44,10 @@ const bankColumns:ColumnsType<BankInfo> = [
{ title: intl.formatMessage({ id: 'component.globalModal.openingBank' }), dataIndex: 'bank', key: 'bank' }, { title: intl.formatMessage({ id: 'component.globalModal.openingBank' }), dataIndex: 'bank', key: 'bank' },
{ title: intl.formatMessage({ id: 'component.globalModal.accountName' }), dataIndex: 'accountName', key: 'accountName' }, { title: intl.formatMessage({ id: 'component.globalModal.accountName' }), dataIndex: 'accountName', key: 'accountName' },
{ title: intl.formatMessage({ id: 'component.globalModal.accountNumber' }), dataIndex: 'account', key: 'account' }, { title: intl.formatMessage({ id: 'component.globalModal.accountNumber' }), dataIndex: 'account', key: 'account' },
{ title: intl.formatMessage({id: 'component.globalModal.currency'}), dataIndex: 'currency', key: 'currency' }, { title: intl.formatMessage({ id: 'component.globalModal.currency' }), dataIndex: 'currencyName', key: 'currency' },
{ title: intl.formatMessage({id: 'component.globalModal.country'}), dataIndex: 'nation', key: 'nation' }, { title: intl.formatMessage({ id: 'component.globalModal.country' }), dataIndex: 'nationName', key: 'nation' },
{ title: intl.formatMessage({id: 'component.globalModal.province'}), dataIndex: 'province', key: 'province' }, { title: intl.formatMessage({ id: 'component.globalModal.province' }), dataIndex: 'provinceName', key: 'province' },
{ title: intl.formatMessage({id: 'component.globalModal.city'}), dataIndex: 'city', key: 'city' }, { title: intl.formatMessage({ id: 'component.globalModal.city' }), dataIndex: 'cityName', key: 'city' },
]; ];
if (!registerInfo) return <div>{intl.formatMessage({ id: 'component.globalModal.loading' })}...</div>; if (!registerInfo) return <div>{intl.formatMessage({ id: 'component.globalModal.loading' })}...</div>;
@ -61,9 +61,28 @@ const bankColumns:ColumnsType<BankInfo> = [
style={{ background: '#fff', padding: '16px 0 0' }} style={{ background: '#fff', padding: '16px 0 0' }}
> >
{registerInfo.coscoSupplierBase.supplierType === 'dvs' && ( {registerInfo.coscoSupplierBase.supplierType === 'dvs' && (
<>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.supplierIdentityType' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.supplierIdentityType' })}>
{intl.formatMessage({ id: 'component.globalModal.domesticEnterprise' })} {intl.formatMessage({ id: 'component.globalModal.domesticEnterprise' })}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label="营业执照附件">
{registerInfo.coscoSupplierBase.licenceAccessory ? (
<a
href={registerInfo.coscoSupplierBase.licenceAccessory}
target="_blank"
rel="noopener noreferrer"
>
<img
src={registerInfo.coscoSupplierBase.licenceAccessory}
alt="营业执照"
style={{ width: 80, height: 80, objectFit: 'cover', borderRadius: 4, border: '1px solid #eee', cursor: 'pointer' }}
/>
</a>
) : (
<span style={{ color: '#999' }}></span>
)}
</Descriptions.Item>
</>
)} )}
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.enterpriseName' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.enterpriseName' })}>
{registerInfo.coscoSupplierBase.name} {registerInfo.coscoSupplierBase.name}
@ -87,15 +106,9 @@ const bankColumns:ColumnsType<BankInfo> = [
</Descriptions.Item> </Descriptions.Item>
</> </>
)} )}
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.creditCode' })}>
{registerInfo.coscoSupplierBase.socialCreditCode}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.businessScope' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.businessScope' })}>
{registerInfo.coscoSupplierBase.range} {registerInfo.coscoSupplierBase.range}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.registerAddress' })}>
{registerInfo.coscoSupplierBase.regAddress}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.officeAddress' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.officeAddress' })}>
{registerInfo.coscoSupplierBase.workAddress} {registerInfo.coscoSupplierBase.workAddress}
</Descriptions.Item> </Descriptions.Item>
@ -105,23 +118,33 @@ const bankColumns:ColumnsType<BankInfo> = [
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.legalPerson' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.legalPerson' })}>
{registerInfo.coscoSupplierBase.legalPerson} {registerInfo.coscoSupplierBase.legalPerson}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.idCardNumber' })}>
{registerInfo.coscoSupplierBase.idCard}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.registeredCapital' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.registeredCapital' })}>
{registerInfo.coscoSupplierBase.capital} {registerInfo.coscoSupplierBase.capital}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.supplierType' })}> {registerInfo.coscoSupplierBase.supplierType === 'dvs' && (
{registerInfo.coscoSupplierBase.enterpriseType} <>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.creditCode' })}>
{registerInfo.coscoSupplierBase.socialCreditCode}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.contactName' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.registerAddress' })}>
{registerInfo.coscoSupplierBase.contactsName} {registerInfo.coscoSupplierBase.regAddress}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.contactIdType' })}>
{registerInfo.coscoSupplierBase.contactsTypeName}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.idCardNumber' })}>
{registerInfo.coscoSupplierBase.idCard}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.supplierType' })}>
{registerInfo.coscoSupplierBase.enterpriseTypeCn}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.contactMobile' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.contactMobile' })}>
{registerInfo.coscoSupplierBase.contactsPhone} {registerInfo.coscoSupplierBase.contactsPhone}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.contactIdType' })}> </>
{registerInfo.coscoSupplierBase.contactsType} )}
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.contactName' })}>
{registerInfo.coscoSupplierBase.contactsName}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.contactEmail' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.contactEmail' })}>
{registerInfo.coscoSupplierBase.contactsEmail} {registerInfo.coscoSupplierBase.contactsEmail}
@ -147,7 +170,7 @@ const bankColumns:ColumnsType<BankInfo> = [
style={{ background: '#fff', padding: '16px 0 0' }} style={{ background: '#fff', padding: '16px 0 0' }}
> >
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.taxpayerType' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.taxpayerType' })}>
{registerInfo.coscoSupplierInvoice.taxpayerType} {registerInfo.coscoSupplierInvoice.taxpayerTypeCn}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.invoiceTitle' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.invoiceTitle' })}>
{registerInfo.coscoSupplierInvoice.head} {registerInfo.coscoSupplierInvoice.head}
@ -185,10 +208,9 @@ const bankColumns:ColumnsType<BankInfo> = [
pagination={false} pagination={false}
title={() => <div style={{ fontWeight: 'bold', fontSize: 16, textIndent: '-16px' }}>{intl.formatMessage({ id: 'component.globalModal.bankAccount' })}</div>} title={() => <div style={{ fontWeight: 'bold', fontSize: 16, textIndent: '-16px' }}>{intl.formatMessage({ id: 'component.globalModal.bankAccount' })}</div>}
/> />
<div style={{ fontWeight: 'bold', fontSize: 16, textIndent: '-16px', padding: '16px 0 0', color: '#014f8f' }}>{intl.formatMessage({ id: 'component.globalModal.ethicsQuestionnaireTitle' })}</div> <div style={{ fontWeight: 'bold', fontSize: 16, textIndent: '-16px', padding: '16px 0 0', color: '#014f8f' }}>{intl.formatMessage({ id: 'component.globalModal.ethicsQuestionnaireTitle' })}</div>
{/* <Descriptions <Descriptions
title={intl.formatMessage({ id: 'component.globalModal.fillerInfo' })} title={intl.formatMessage({ id: 'component.globalModal.fillerInfo' })}
bordered bordered
column={3} column={3}
@ -196,37 +218,37 @@ const bankColumns:ColumnsType<BankInfo> = [
style={{ background: '#fff', padding: '16px 16px 0' }} style={{ background: '#fff', padding: '16px 16px 0' }}
> >
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.supplierName' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.supplierName' })}>
{registerInfo.survey.supplierName} {registerInfo.coscoSupplierSurvey.supplierName}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerName' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerName' })}>
{registerInfo.survey.name} {registerInfo.coscoSupplierSurvey.name}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerPosition' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerPosition' })}>
{registerInfo.survey.position} {registerInfo.coscoSupplierSurvey.position}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerPhone' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerPhone' })}>
{registerInfo.survey.phone} {registerInfo.coscoSupplierSurvey.phone}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerEmail' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerEmail' })}>
{registerInfo.survey.email} {registerInfo.coscoSupplierSurvey.email}
</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerDate' })}> <Descriptions.Item label={intl.formatMessage({ id: 'component.globalModal.fillerDate' })}>
{registerInfo.survey.dateTime} {registerInfo.coscoSupplierSurvey.dateTime}
</Descriptions.Item> </Descriptions.Item>
</Descriptions> */} </Descriptions>
{/* <div style={{ padding: '16px' }}> <div style={{ padding: '16px' }}>
<Table <Table
dataSource={registerInfo.coscoSupplierSurveyAttachments} dataSource={registerInfo.coscoSupplierSurveyQuestionReply}
columns={[ columns={[
{ title: intl.formatMessage({id: 'component.globalModal.index'}), dataIndex: 'index', key: 'index', width: 60, align: 'center', render: (_: any, __: any, index: number) => index + 1 }, { title: intl.formatMessage({id: 'component.globalModal.index'}), dataIndex: 'index', key: 'index', width: 60, align: 'center', render: (_: any, __: any, index: number) => index + 1 },
{ title: intl.formatMessage({id: 'component.globalModal.question'}), dataIndex: 'surveyQuestion', key: 'surveyQuestion' }, { title: intl.formatMessage({id: 'component.globalModal.question'}), dataIndex: 'questionName', key: 'questionName' },
{ title: intl.formatMessage({id: 'component.globalModal.answer'}), dataIndex: 'replyValue', key: 'replyValue', width: 120 }, { title: intl.formatMessage({id: 'component.globalModal.answer'}), dataIndex: 'replyValue', key: 'replyValue', width: 120 },
]} ]}
pagination={false} pagination={false}
title={() => <div style={{ fontWeight: 'bold', fontSize: 16, textIndent: '-16px' }}>{intl.formatMessage({id: 'component.globalModal.questionnaire'})}</div>} title={() => <div style={{ fontWeight: 'bold', fontSize: 16, textIndent: '-16px' }}>{intl.formatMessage({id: 'component.globalModal.questionnaire'})}</div>}
/> />
</div> */} </div>
<Descriptions <Descriptions
title={intl.formatMessage({ id: 'component.globalModal.antiBriberyTitle' })} title={intl.formatMessage({ id: 'component.globalModal.antiBriberyTitle' })}

View File

@ -102,8 +102,8 @@ const SupplierCategoryEntry: React.FC = () => {
render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1, render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1,
}, },
{ title: '准入工作', ellipsis: true, width: 120, dataIndex: 'accessWorkName' }, { title: '准入工作', ellipsis: true, width: 120, dataIndex: 'accessWorkName' },
{ title: '准入单位', ellipsis: true, width: 120, dataIndex: 'deptId' }, { title: '准入单位', ellipsis: true, width: 120, dataIndex: 'orgName' },
{ title: '准入部门', ellipsis: true, width: 120, dataIndex: 'deptId' }, { title: '准入部门', ellipsis: true, width: 120, dataIndex: 'deptName' },
{ title: '准入方式', ellipsis: true, width: 120, dataIndex: 'accessTypeText' }, { title: '准入方式', ellipsis: true, width: 120, dataIndex: 'accessTypeText' },
{ title: '申请时间', dataIndex: 'createTime', width: 180 }, { title: '申请时间', dataIndex: 'createTime', width: 180 },
{ title: '审批状态', ellipsis: true, width: 120, dataIndex: 'approveStatusText' }, { title: '审批状态', ellipsis: true, width: 120, dataIndex: 'approveStatusText' },

View File

@ -73,8 +73,8 @@ const SupplierCategoryEntryReview: React.FC = () => {
render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1, render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1,
}, },
{ title: '准入工作', dataIndex: 'accessWorkName', ellipsis: true }, { title: '准入工作', dataIndex: 'accessWorkName', ellipsis: true },
{ title: '准入单位', dataIndex: 'deptId', ellipsis: true }, { title: '准入单位', dataIndex: 'orgName', ellipsis: true },
{ title: '准入部门', dataIndex: 'deptId', ellipsis: true }, { title: '准入部门', dataIndex: 'deptName', ellipsis: true },
{ title: '准入方式', dataIndex: 'accessTypeText', width: 120 }, { title: '准入方式', dataIndex: 'accessTypeText', width: 120 },
{ title: '申请时间', dataIndex: 'createTime', width: 180 }, { title: '申请时间', dataIndex: 'createTime', width: 180 },
{ title: '审批状态', dataIndex: 'approveStatusText', width: 120 }, { title: '审批状态', dataIndex: 'approveStatusText', width: 120 },

View File

@ -31,12 +31,6 @@ interface ModalInfo {
record: string | null; record: string | null;
} }
const deptOptions = [
{ label: '全部', value: '' },
{ label: '采购部', value: 'DEPT001' },
{ label: '业务部', value: 'DEPT002' },
];
interface Dict { interface Dict {
dicName: string; dicName: string;
code: string; code: string;
@ -136,7 +130,7 @@ const SupplierEntryReview: React.FC = () => {
}, },
{ {
title: '准入部门', title: '准入部门',
dataIndex: 'deptId', dataIndex: 'deptName',
align: 'center', align: 'center',
width: 120, width: 120,
}, },

View File

@ -19,6 +19,7 @@ interface Reviewer {
name: string; name: string;
id: string; id: string;
deptId: string; deptId: string;
orgName: string;
} }
// 传入的人接口 // 传入的人接口
interface ReviewerSelectorData { interface ReviewerSelectorData {

View File

@ -8,6 +8,7 @@ interface Reviewer {
name: string; name: string;
id: string; id: string;
deptId: string; deptId: string;
orgName: string;
} }
// 传入的人接口 // 传入的人接口
interface ReviewerSelectorData { interface ReviewerSelectorData {

View File

@ -10,6 +10,7 @@ interface Reviewer {
name: string; name: string;
userId: string; userId: string;
deptId: string; deptId: string;
orgName: string;
isLeader: number; isLeader: number;
} }
interface ReviewerSelectorData { interface ReviewerSelectorData {
@ -30,7 +31,8 @@ function orgIdAndDeptId(data:any) {
const sss = data.map((item:any) => { const sss = data.map((item:any) => {
return { return {
...item, ...item,
deptId: item.orgId deptId: item.orgId,
orgName: item.orgName
} }
}) })
@ -93,7 +95,7 @@ const ReviewerSelector: React.FC<ReviewerSelectorProps> = ({
const columns: ColumnsType<Reviewer> = [ const columns: ColumnsType<Reviewer> = [
{ title: '姓名', dataIndex: 'name' }, { title: '姓名', dataIndex: 'name' },
{ title: '工号', dataIndex: 'userId' }, { title: '工号', dataIndex: 'userId' },
{ title: '部门', dataIndex: 'deptId' }, { title: '部门', dataIndex: 'orgName' },
{ {
title: '组长', title: '组长',
render: (_: any, record: Reviewer) => ( render: (_: any, record: Reviewer) => (

View File

@ -92,8 +92,8 @@ const AccessManagement: React.FC = () => {
render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1, render: (_: any, __: any, idx: number) => (((pagination.current ?? 1) - 1) * (pagination.pageSize ?? 10)) + idx + 1,
}, },
{ title: '准入工作', ellipsis: true, width: 120, dataIndex: 'accessWorkName' }, { title: '准入工作', ellipsis: true, width: 120, dataIndex: 'accessWorkName' },
{ title: '准入单位', ellipsis: true, width: 120, dataIndex: 'deptId' }, { title: '准入单位', ellipsis: true, width: 120, dataIndex: 'orgName' },
{ title: '准入部门', ellipsis: true, width: 120, dataIndex: 'deptId' }, { title: '准入部门', ellipsis: true, width: 120, dataIndex: 'deptName' },
{ title: '准入方式', ellipsis: true, width: 120, dataIndex: 'accessTypeText' }, { title: '准入方式', ellipsis: true, width: 120, dataIndex: 'accessTypeText' },
{ title: '申请时间', ellipsis: true, width: 180, dataIndex: 'createTime' }, { title: '申请时间', ellipsis: true, width: 180, dataIndex: 'createTime' },
{ {

View File

@ -99,15 +99,15 @@ const CooperateEnterprise: React.FC = () => {
}, },
{ {
title: '发起单位', title: '发起单位',
dataIndex: 'deptId', dataIndex: 'orgName',
key: 'deptId', key: 'orgName',
ellipsis: true, ellipsis: true,
width: 120, width: 120,
}, },
{ {
title: '准入部门', title: '准入部门',
dataIndex: 'deptId', dataIndex: 'deptName',
key: 'deptId', key: 'deptName',
ellipsis: true, ellipsis: true,
width: 120, width: 120,
}, },

View File

@ -53,7 +53,7 @@ const DetailView: React.FC<DetailViewProps> = ({ visible, onClose, detailId }) =
// 把info数组两两合并成一行显示 // 把info数组两两合并成一行显示
function renderInfoTable(infoArr: InfoItem[]) { function renderInfoTable(infoArr: InfoItem[]) {
const rows = []; const rows = [];
for (let i = 0; i < infoArr.length; i += 2) { for (let i = 0; i < infoArr.length; i++) {
rows.push( rows.push(
<> <>
<Descriptions.Item label={`变更前-${infoArr[i].fieldAnnotation}` }>{infoArr[i].oldValue}</Descriptions.Item> <Descriptions.Item label={`变更前-${infoArr[i].fieldAnnotation}` }>{infoArr[i].oldValue}</Descriptions.Item>

View File

@ -1,33 +1,51 @@
import React, { useEffect, useState } from 'react'; import React, { useMemo } from 'react';
import { Descriptions } from 'antd'; import { Descriptions } from 'antd';
import { coscoSupplier } from '../services'
import { useIntl } from 'umi'; import { useIntl } from 'umi';
// 性别转中文
const getGenderLabel = (sex: string | number | undefined) => {
if (sex === '1' || sex === 1) return '男';
if (sex === '0' || sex === 0) return '女';
return '';
};
const PersonalInfo: React.FC = () => { const PersonalInfo: React.FC = () => {
const intl = useIntl(); const intl = useIntl();
const [registerInfo, setRegisterInfo] = useState<any>({ base: {} }); // 从缓存读取,推荐用 useMemo 保证只读一次
const localUser = useMemo(() => {
const fetchData = async () => { const cacheStr = sessionStorage.getItem('currentUser');
const { code, data } = await coscoSupplier({}); if (!cacheStr) return {};
if (code === 200) { try {
setRegisterInfo(data); return JSON.parse(cacheStr);
} catch {
return {};
} }
};
// 个人信息
useEffect(() => {
fetchData()
}, []); }, []);
// 优先显示 user其次 supplierUser
const base = localUser.user || localUser.supplierUser || {};
return ( return (
<div style={{ padding: '24px 24px 0 0' }}> <div style={{ padding: '24px 24px 0 0' }}>
<Descriptions bordered column={2} labelStyle={{ width: '120px' }}> <Descriptions bordered column={2} labelStyle={{ width: '120px' }}>
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.name' })}>{registerInfo.base.name}</Descriptions.Item> <Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.name' })}>
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.gender' })}>{registerInfo.base.gender}</Descriptions.Item> {base.name || '-'}
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.phone' })}>{registerInfo.base.phone}</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.email' })}>{registerInfo.base.email}</Descriptions.Item> <Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.gender' })}>
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.department' })}>{registerInfo.base.department}</Descriptions.Item> {getGenderLabel(base.sex)}
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.position' })}>{registerInfo.base.position}</Descriptions.Item> </Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.entryDate' })}>{registerInfo.base.entryDate}</Descriptions.Item> <Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.phone' })}>
{base.mobile || base.phone || '-'}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.email' })}>
{base.email || '-'}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.department' })}>
{base.orgName || '-'}
</Descriptions.Item>
<Descriptions.Item label={intl.formatMessage({ id: 'page.workbench.personal.position' })}>
{base.position || '-'}
</Descriptions.Item>
{/* 如有入职日期再补 */}
</Descriptions> </Descriptions>
</div> </div>
); );

View File

@ -73,7 +73,7 @@ const DetailView: React.FC<DetailViewProps> = ({ visible, onClose, detailId }) =
// 把info数组两两合并成一行显示 // 把info数组两两合并成一行显示
function renderInfoTable(infoArr: InfoItem[]) { function renderInfoTable(infoArr: InfoItem[]) {
const rows = []; const rows = [];
for (let i = 0; i < infoArr.length; i += 2) { for (let i = 0; i < infoArr.length; i++) {
const left = infoArr[i]; const left = infoArr[i];
const right = infoArr[i + 1] || { label: '', value: '' }; const right = infoArr[i + 1] || { label: '', value: '' };
rows.push( rows.push(

View File

@ -51,7 +51,7 @@ const DetailView: React.FC<DetailViewProps> = ({ visible, onClose, detailId }) =
// 把info数组两两合并成一行显示 // 把info数组两两合并成一行显示
function renderInfoTable(infoArr: InfoItem[]) { function renderInfoTable(infoArr: InfoItem[]) {
const rows = []; const rows = [];
for (let i = 0; i < infoArr.length; i += 2) { for (let i = 0; i < infoArr.length; i++) {
rows.push( rows.push(
<> <>
<Descriptions.Item label={`变更前-${infoArr[i].fieldAnnotation}` }>{infoArr[i].oldValue}</Descriptions.Item> <Descriptions.Item label={`变更前-${infoArr[i].fieldAnnotation}` }>{infoArr[i].oldValue}</Descriptions.Item>

View File

@ -210,11 +210,9 @@ const groupQualifiedSupplierQuery: React.FC<Props> = ({ dispatch }) => {
render: (record: any) => ( render: (record: any) => (
<Space> <Space>
<a <a
style={{ color: '#1677ff' }}
onClick={() => { setCurrentRecord(record.id); setViewVisible(true); }} onClick={() => { setCurrentRecord(record.id); setViewVisible(true); }}
></a> ></a>
<a <a
style={{ color: '#1677ff' }}
onClick={() => { setCurrentRecord(record.id); setDetailVisible(true); }} onClick={() => { setCurrentRecord(record.id); setDetailVisible(true); }}
></a> ></a>
</Space> </Space>

View File

@ -179,11 +179,9 @@ const mySupplierInquiry: React.FC<mySupplierInquiryProps> = ({ dispatch }) => {
render: (record: any) => ( render: (record: any) => (
<Space> <Space>
<a <a
style={{ color: '#1677ff' }}
onClick={() => { setCurrentRecord(record.id); setViewVisible(true); }} onClick={() => { setCurrentRecord(record.id); setViewVisible(true); }}
></a> ></a>
<a <a
style={{ color: '#1677ff' }}
onClick={() => { setCurrentRecord(record.id); setDetailVisible(true); }} onClick={() => { setCurrentRecord(record.id); setDetailVisible(true); }}
></a> ></a>
</Space> </Space>

View File

@ -195,11 +195,9 @@ const personQualifiedSupplierQuery: React.FC<Props> = ({ dispatch }) => {
render: (record: any) => ( render: (record: any) => (
<Space> <Space>
<a <a
style={{ color: '#1677ff' }}
onClick={() => { setCurrentRecord(record.id); setViewVisible(true); }} onClick={() => { setCurrentRecord(record.id); setViewVisible(true); }}
></a> ></a>
<a <a
style={{ color: '#1677ff' }}
onClick={() => { setCurrentRecord(record.id); setDetailVisible(true); }} onClick={() => { setCurrentRecord(record.id); setDetailVisible(true); }}
></a> ></a>
</Space> </Space>

View File

@ -27,8 +27,8 @@ interface Data {
type OptionType = { label: string; value: string }; type OptionType = { label: string; value: string };
//准入状态 //准入状态
const statusColor = (status: string) => { const statusColor = (status: string) => {
if (status === '已驳回' || status === '已退出') return 'red'; if (status === '已驳回' || status === '已退出') return '#ef6969';
if (status === '已准入') return 'green'; if (status === '已准入') return '#004f8e';
return undefined; return undefined;
}; };
@ -177,11 +177,9 @@ const RegistrationQuery: React.FC<RegistrationQueryProps> = ({ dispatch }) => {
render: (record) => ( render: (record) => (
<Space> <Space>
<a <a
style={{ color: '#1677ff' }}
onClick={() => { setCurrentRecord(record.id); setViewVisible(true); }} onClick={() => { setCurrentRecord(record.id); setViewVisible(true); }}
></a> ></a>
<a <a
style={{ color: '#1677ff' }}
onClick={() => { setCurrentRecord(record.id); setDetailVisible(true); }} onClick={() => { setCurrentRecord(record.id); setDetailVisible(true); }}
></a> ></a>
</Space> </Space>