feat: show outdoor fair content in cms and portal
Some checks failed
Node CI / build (14.x, macOS-latest) (push) Has been cancelled
Node CI / build (14.x, ubuntu-latest) (push) Has been cancelled
Node CI / build (14.x, windows-latest) (push) Has been cancelled
Node CI / build (16.x, macOS-latest) (push) Has been cancelled
Node CI / build (16.x, ubuntu-latest) (push) Has been cancelled
Node CI / build (16.x, windows-latest) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
coverage CI / build (push) Has been cancelled
Node pnpm CI / build (16.x, macOS-latest) (push) Has been cancelled
Node pnpm CI / build (16.x, ubuntu-latest) (push) Has been cancelled
Node pnpm CI / build (16.x, windows-latest) (push) Has been cancelled

This commit is contained in:
2026-07-23 10:21:59 +08:00
parent bef39f6894
commit befc27adae
5 changed files with 38 additions and 1 deletions

View File

@@ -247,6 +247,12 @@ const PortalJobFairDetailPage: React.FC = () => {
<Title level={4}></Title>
<Paragraph>{detail.jobFairIntroduction || '暂未提供招聘会简介。'}</Paragraph>
</section>
{channel === 'outdoor' && (
<section className="job-fair-detail-introduction">
<Title level={4}></Title>
<Paragraph>{detail.jobFairProcess || '暂未提供招聘会整体流程。'}</Paragraph>
</section>
)}
</Card>
) : (
!loading && (

View File

@@ -157,6 +157,12 @@ const FairInfoTab: React.FC<Props> = ({ fairInfo, onFairUpdate }) => {
'--'
)}
</Descriptions.Item>
<Descriptions.Item label="招聘会简介" span={3}>
<div style={{ whiteSpace: 'pre-wrap' }}>{fairInfo.fairIntroduction || '--'}</div>
</Descriptions.Item>
<Descriptions.Item label="招聘会整体流程" span={3}>
<div style={{ whiteSpace: 'pre-wrap' }}>{fairInfo.fairProcess || '--'}</div>
</Descriptions.Item>
</Descriptions>
</Card>

View File

@@ -6,6 +6,7 @@ import {
ProFormSwitch,
ProFormSelect,
ProFormText,
ProFormTextArea,
} from '@ant-design/pro-components';
import { Button, Divider, Form, Image, Input, message, Modal, Space, Upload } from 'antd';
import { PlusOutlined, UploadOutlined } from '@ant-design/icons';
@@ -297,6 +298,18 @@ const EditModal: React.FC<EditModalProps> = ({
colProps={{ md: 24 }}
initialValue={false}
/>
<ProFormTextArea
name="fairIntroduction"
label="招聘会简介"
placeholder="请输入招聘会简介"
fieldProps={{ maxLength: 5000, showCount: true, autoSize: { minRows: 4, maxRows: 8 } }}
/>
<ProFormTextArea
name="fairProcess"
label="招聘会整体流程"
placeholder="请输入招聘会整体流程"
fieldProps={{ maxLength: 5000, showCount: true, autoSize: { minRows: 4, maxRows: 8 } }}
/>
<ProForm.Item label="招聘会照片" required>
<Space direction="vertical" size={12}>
<Upload

View File

@@ -15,6 +15,7 @@ export interface PortalJobFairItem {
jobFairHostUnit?: string;
jobFairOrganizeUnit?: string;
jobFairIntroduction?: string;
jobFairProcess?: string;
jobFairPhone?: string;
jobFairImage?: string;
enterpriseNum?: string;
@@ -71,6 +72,8 @@ interface PortalOutdoorFairDetailData extends Partial<PortalJobFairItem> {
holdTime?: string;
endTime?: string;
photoUrl?: string;
fairIntroduction?: string;
fairProcess?: string;
}
interface PortalOutdoorFairDetailResult {
@@ -197,7 +200,8 @@ export async function getPortalJobFairDetail(channel: JobFairChannel, jobFairId:
jobFairEndTime: fair.jobFairEndTime || fair.endTime,
jobFairHostUnit: fair.jobFairHostUnit || fair.hostUnit,
jobFairOrganizeUnit: fair.jobFairOrganizeUnit,
jobFairIntroduction: fair.jobFairIntroduction,
jobFairIntroduction: fair.jobFairIntroduction || fair.fairIntroduction,
jobFairProcess: fair.jobFairProcess || fair.fairProcess,
jobFairPhone: fair.jobFairPhone,
jobFairImage: fair.jobFairImage || fair.photoUrl,
boothNum:

View File

@@ -33,6 +33,10 @@ export interface OutdoorFairItem {
onlineApply: boolean;
/** 招聘会照片 */
photoUrl: string;
/** 招聘会简介 */
fairIntroduction?: string;
/** 招聘会整体流程 */
fairProcess?: string;
/** 当前企业ID */
companyId?: number;
/** 当前企业名称 */
@@ -88,6 +92,10 @@ export interface OutdoorFairForm {
applyEndTime: string;
onlineApply: boolean;
photoUrl: string;
/** 招聘会简介 */
fairIntroduction?: string;
/** 招聘会整体流程 */
fairProcess?: string;
/** 更换场地时确认清空旧展位图与预定,并按新模板重建 */
resetBoothMap?: boolean;
}