feat: 🎸 对接了企业岗位的部分信息

This commit is contained in:
2025-08-22 11:41:15 +08:00
parent d0075937e1
commit cf5f161458
14 changed files with 717 additions and 104 deletions

View File

@@ -10,6 +10,7 @@ const InputSearch = Input.Search;
const { userResumes } = mockData;
export default ({ visible, onClose, data }) => {
console.log(data);
const [resumeModalShow, setResumeModalShow] = useState(false);
const [resumeInfoModalShow, setResumeInfoModalShow] = useState(false);
@@ -90,7 +91,7 @@ export default ({ visible, onClose, data }) => {
{data?.position}
</span>
<span className="job-info-modal-content-position-info-num">
该岗位仅剩9
该岗位仅剩{data?.remainingPositions}
</span>
<span className="job-info-modal-content-position-info-salary">
{data?.salary}
@@ -105,15 +106,19 @@ export default ({ visible, onClose, data }) => {
))}
</ul>
)}
{data?.details?.description && (
{data?.description && (
<div className="job-info-modal-content-position-info-description">
<p className="description-title">岗位描述</p>
<p className="description-content">
{data?.details?.description}
</p>
<p className="description-content">{data?.description}</p>
</div>
)}
{data?.details?.requirements?.length > 0 && (
{data?.requirements && (
<div className="job-info-modal-content-position-info-description">
<p className="description-title">岗位要求</p>
<p className="description-content">{data?.requirements}</p>
</div>
)}
{/* {data?.details?.requirements?.length > 0 && (
<div className="job-info-modal-content-position-info-requirements">
<p className="requirements-title">岗位要求</p>
<ul className="requirements-content">
@@ -124,12 +129,12 @@ export default ({ visible, onClose, data }) => {
))}
</ul>
</div>
)}
{data?.details?.companyInfo && (
)} */}
{data?.company?.industry && (
<div className="job-info-modal-content-position-info-companyInfo">
<p className="companyInfo-title">公司介绍</p>
<p className="companyInfo-content">
{data?.details?.companyInfo}
{data?.company?.industry}
</p>
</div>
)}

View File

@@ -1,17 +1,23 @@
import { useState } from "react";
import { useNavigate } from "react-router-dom";
import toast from "@/components/Toast";
import JobInfoModal from "../JobInfoModal";
import { getJobsDetail } from "@/services";
import { mapJob } from "@/utils/dataMapper";
import "./index.css";
export default ({ className = "", data = [], backgroundColor = "#FFFFFF" }) => {
const navigate = useNavigate();
const [jobInfoData, setJobInfoData] = useState(undefined);
const [jobInfoModalVisible, setJobInfoModalVisible] = useState(false);
const handleJobClick = (e, item) => {
const handleJobClick = async (e, item) => {
e.stopPropagation();
setJobInfoModalVisible(true);
setJobInfoData(item);
const res = await getJobsDetail(item.id);
if (res.success) {
setJobInfoData(mapJob(res.data));
setJobInfoModalVisible(true);
} else {
toast.error(res.message);
}
};
const onClickJobInfoModalClose = () => {