From 312dd9ac9d611feca64fa6fcda9259b61d1e836e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=AF=E8=BE=89?= Date: Sun, 28 Jun 2026 02:12:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=BF=E7=AD=96=E5=90=AF=E7=94=A8=E7=A6=81?= =?UTF-8?q?=E7=94=A8=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/JobPortal/Policy/Detail/index.tsx | 6 +-- src/pages/JobPortal/Policy/index.tsx | 4 +- .../Policy/Mgmt/components/DetailModal.tsx | 1 + .../Policy/Mgmt/components/EditModal.tsx | 11 ++++- src/pages/Policy/Mgmt/index.tsx | 40 ++++++++++++++++++- src/services/cms/policyInfo.ts | 23 +++++++++++ src/types/cms/policyInfo.d.ts | 1 + 7 files changed, 78 insertions(+), 8 deletions(-) diff --git a/src/pages/JobPortal/Policy/Detail/index.tsx b/src/pages/JobPortal/Policy/Detail/index.tsx index b5e5c2c..7014697 100644 --- a/src/pages/JobPortal/Policy/Detail/index.tsx +++ b/src/pages/JobPortal/Policy/Detail/index.tsx @@ -16,14 +16,14 @@ import { } from '@ant-design/icons'; import { history, useSearchParams } from '@umijs/max'; import JobPortalHeader from '@/components/JobPortalHeader'; -import { getPolicyInfoDetail } from '@/services/cms/policyInfo'; +import { getPortalPolicyDetail } from '@/services/cms/policyInfo'; import { getDictValueEnum } from '@/services/system/dict'; import DictTag, { DictValueEnumObj } from '@/components/DictTag'; import './index.less'; const { Title, Paragraph, Text } = Typography; -/** 解析 GET /cms/policyInfo/{id} 响应 */ +/** 解析 GET /app/policyInfo/detail/{id} 响应 */ const parsePolicyDetail = ( response: API.PolicyInfo.PolicyInfoDetailResult | undefined, ): API.PolicyInfo.PolicyInfoItem | null => { @@ -54,7 +54,7 @@ const PolicyDetailPage: React.FC = () => { try { setLoading(true); setDetail(null); - const response = await getPolicyInfoDetail(policyId); + const response = await getPortalPolicyDetail(policyId); const policy = parsePolicyDetail(response); if (policy) { setDetail(policy); diff --git a/src/pages/JobPortal/Policy/index.tsx b/src/pages/JobPortal/Policy/index.tsx index c7c2ec2..5aa7cb2 100644 --- a/src/pages/JobPortal/Policy/index.tsx +++ b/src/pages/JobPortal/Policy/index.tsx @@ -18,7 +18,7 @@ import { } from '@ant-design/icons'; import { history } from '@umijs/max'; import JobPortalHeader from '@/components/JobPortalHeader'; -import { getPolicyInfoList } from '@/services/cms/policyInfo'; +import { getPortalPolicyList } from '@/services/cms/policyInfo'; import { getDictValueEnum } from '@/services/system/dict'; import type { DictValueEnumObj } from '@/components/DictTag'; import './index.less'; @@ -74,7 +74,7 @@ const PolicyListPage: React.FC = () => { const fetchList = useCallback(async () => { try { setLoading(true); - const response = await getPolicyInfoList({ + const response = await getPortalPolicyList({ pageNum, pageSize, searchValue: keyword || undefined, diff --git a/src/pages/Policy/Mgmt/components/DetailModal.tsx b/src/pages/Policy/Mgmt/components/DetailModal.tsx index afc27bb..707d846 100644 --- a/src/pages/Policy/Mgmt/components/DetailModal.tsx +++ b/src/pages/Policy/Mgmt/components/DetailModal.tsx @@ -24,6 +24,7 @@ const DetailModal: React.FC = ({ open, data, onCancel }) => { {data?.acceptUnit} {data?.publishTime} {data?.viewNum} + {data?.status === '1' ? '禁用' : '启用'} {data?.zcContent} {data?.subsidyStandard} {data?.handleChannel} diff --git a/src/pages/Policy/Mgmt/components/EditModal.tsx b/src/pages/Policy/Mgmt/components/EditModal.tsx index b10c6be..26b8002 100644 --- a/src/pages/Policy/Mgmt/components/EditModal.tsx +++ b/src/pages/Policy/Mgmt/components/EditModal.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useState } from 'react'; -import { Modal, Form, Input, DatePicker, Upload, Button, message, Row, Col, Select } from 'antd'; +import { Modal, Form, Input, DatePicker, Upload, Button, message, Row, Col, Select, Switch } from 'antd'; import { UploadOutlined, DeleteOutlined } from '@ant-design/icons'; import type { UploadFile } from 'antd/es/upload/interface'; import dayjs from 'dayjs'; @@ -37,6 +37,7 @@ const EditModal: React.FC = ({ open, values, onCancel, onSubmit policyTag: values.policyTag ? String(values.policyTag).split(',').filter(Boolean) : undefined, + status: values.status !== '1', }); // 如果有已上传的文件,显示在列表中 if (values.fileUrl && values.fileName) { @@ -93,12 +94,13 @@ const EditModal: React.FC = ({ open, values, onCancel, onSubmit const handleOk = async () => { const formValues = await form.validateFields(); - const { policyTag, publishTime, ...rest } = formValues; + const { policyTag, publishTime, status, ...rest } = formValues; onSubmit({ ...rest, id: values?.id, publishTime: publishTime?.format('YYYY-MM-DD'), policyTag: Array.isArray(policyTag) ? policyTag.join(',') : policyTag, + status: status ? '0' : '1', }); }; @@ -206,6 +208,11 @@ const EditModal: React.FC = ({ open, values, onCancel, onSubmit )} + + + + +