huwei 2026-07-09 09:24:30 +08:00
commit f3d9291fdb
9 changed files with 34 additions and 24 deletions

View File

@ -10,7 +10,7 @@ module.exports = {
javaGitBranch: "dev",
// 本地联调 safetyEval-servicecontext-path: /safetyEval默认端口 8095
// 可通过环境变量覆盖: SAFETY_EVAL_API_HOST=http://192.168.x.x:8095
API_HOST: "http://192.168.0.149",
API_HOST: "http://192.168.0.152",
},
production: {
// 应用后端分支名称,部署上线需要

View File

@ -120,7 +120,7 @@ export default function StaffViewModal({
onCancel={onCancel}
>
<Descriptions bordered column={2} labelStyle={{ width: 120 }}>
<Descriptions.Item label="姓名">{info.userName}</Descriptions.Item>
<Descriptions.Item label="姓名">{info.titleName}</Descriptions.Item>
<Descriptions.Item label="性别">
{GENDER_MAP[info.genderCode]}
</Descriptions.Item>
@ -131,7 +131,7 @@ export default function StaffViewModal({
<Descriptions.Item label="部门">{info.deptName}</Descriptions.Item>
<Descriptions.Item label="岗位">{info.postName}</Descriptions.Item>
<Descriptions.Item label="人员类型">
{info.personType || "基础人员"}
{info.personTypeName || "基础人员"}
</Descriptions.Item>
<Descriptions.Item label="资质范围">
{info.qualScope || "-"}
@ -183,17 +183,23 @@ export default function StaffViewModal({
<Descriptions.Item label="申报专业能力证明材料" span={2}>
{proofMaterialUrl.length
? proofMaterialUrl.map((item) => {
const isImage = /\.(jpg|jpeg|png|gif|webp|bmp|svg)(\?.*)?$/i.test(item.url);
const isImage =
/\.(jpg|jpeg|png|gif|webp|bmp|svg)(\?.*)?$/i.test(item.url);
return (
<div key={item.id}>
{isImage ? (
<Image
src={item.url}
style={{ maxWidth: 200, cursor: "pointer" }}
preview={{ mask: item.fileName || item.name || "预览" }}
preview={{
mask: item.fileName || item.name || "预览",
}}
/>
) : (
<Button type="link" onClick={() => window.open(item.url)}>
<Button
type="link"
onClick={() => window.open(item.url)}
>
{item.fileName || item.name || item.url}
</Button>
)}
@ -217,7 +223,7 @@ export default function StaffViewModal({
columns={[
{ title: "证照名称", dataIndex: "certName" },
{ title: "证书编号", dataIndex: "certNo" },
{ title: "证书类别", dataIndex: "certCategory" },
{ title: "证书类别", dataIndex: "certTypeName" },
{ title: "发证机关", dataIndex: "issueOrg" },
{ title: "有效开始日期", dataIndex: "validStartDate", width: 120 },
{ title: "有效结束日期", dataIndex: "validEndDate", width: 120 },
@ -284,7 +290,7 @@ export default function StaffViewModal({
{certPreviewInfo.certNo}
</Descriptions.Item>
<Descriptions.Item label="证书类别">
{certPreviewInfo.certCategory || "-"}
{certPreviewInfo.certTypeName || "-"}
</Descriptions.Item>
<Descriptions.Item label="发证机关">
{certPreviewInfo.issueOrg || "-"}
@ -295,11 +301,17 @@ export default function StaffViewModal({
<Descriptions.Item label="有效结束日期">
{certPreviewInfo.validEndDate || "-"}
</Descriptions.Item>
<Descriptions.Item label="查看证书">
{certPreviewInfo.certAttachmentUrl &&
certPreviewInfo.certAttachmentUrl.split(",").map((item) => (
<div>
<a key={item} onClick={() => window.open(item)}>
{item}
</a>
</div>
))}
</Descriptions.Item>
</Descriptions>
<FilePreviewContent
url={certPreviewUrl}
fileName={certPreviewName}
/>
</div>
)}
</Modal>

View File

@ -32,7 +32,7 @@ import {
import { getBirthDateFromIdCard } from "~/utils";
import { idCardRule, mobileRule } from "~/utils/validators";
import AttachmentUpload from "~/components/AttachmentUpload";
import StaffViewModal from "../StaffViewModal";
import StaffViewModal from "~/components/StaffViewModal";
const { router } = tools;
@ -303,7 +303,7 @@ function PersonnelInfoPage(props) {
<StaffViewModal
open={viewModalOpen}
currentId={currentId}
requestDetails={props.staffInfoGet}
onCancel={() => {
setViewModalOpen(false);
setCurrentId("");

View File

@ -2,7 +2,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Input, Modal, Table } from "antd";
import { useEffect, useState } from "react";
import { NS_STAFF_INFO } from "~/enumerate/namespace";
import StaffViewModal from "~/pages/Container/EnterpriseInfo/PersonnelInfo/StaffViewModal";
import StaffViewModal from "~/components/StaffViewModal";
function OrgPersonnelSelectModalInner(props) {
const { open, onCancel, onConfirm, existingIds = [] } = props;
@ -110,7 +110,7 @@ function OrgPersonnelSelectModalInner(props) {
<StaffViewModal
open={!!viewId}
currentId={viewId}
requestDetails={props.staffInfoGet}
onCancel={() => setViewId("")}
/>
</>

View File

@ -1,6 +1,6 @@
import { Button, Modal, Space, Table } from "antd";
import { useState } from "react";
import StaffViewModal from "~/pages/Container/EnterpriseInfo/PersonnelInfo/StaffViewModal";
import StaffViewModal from "~/components/StaffViewModal";
import OrgPersonnelSelectModal from "./OrgPersonnelSelectModal";

View File

@ -177,6 +177,7 @@ function FilingFormPage(props) {
return {
...item,
personName: item.userName,
sourcePersonnelId: item.id,
};
});
delete params.personnelList;

View File

@ -2,7 +2,7 @@ import React, { useState, useEffect } from "react";
import { Button, Descriptions, Table, Tag, Tabs, Select, Modal, Space, Image } from "antd";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { NS_QUAL_REVIEW } from "~/enumerate/namespace";
import StaffViewModal from "~/pages/Container/EnterpriseInfo/PersonnelInfo/StaffViewModal";
import StaffViewModal from "~/components/StaffViewModal";
import PreviewUrlButton from "~/components/PreviewUrlButton/index";

View File

@ -12,7 +12,7 @@ import {
fetchRegisteredOrgQualificationGroups,
} from "~/utils/regulatorOrgInfo";
import { buildOrgInfoFormOptions } from "../../../../EnterpriseInfo/OrgInfo/formOptions";
import StaffViewModal from "../../../../EnterpriseInfo/PersonnelInfo/StaffViewModal";
import StaffViewModal from "~/components/StaffViewModal";
const LIST_PATH = "/container/supervision/basicInfo/registeredOrg/list";
const ORG_INFO_FORM_OPTIONS = buildOrgInfoFormOptions();
@ -283,9 +283,7 @@ function RegisteredOrgDetailPage(props) {
<StaffViewModal
open={!!viewPersonnelId}
currentId={viewPersonnelId}
requestDetails={fetchRegisteredOrgPersonnelDetail}
requestCertList={fetchRegisteredOrgPersonnelCertList}
requestCertDetails={fetchRegisteredOrgPersonnelCertDetail}
onCancel={() => setViewPersonnelId("")}
/>
)}

View File

@ -1,8 +1,7 @@
import { fromSingleResponse, toStaffForm } from "../enterpriseInfo/adapter";
import { apiGet } from "../enterpriseInfo/http";
import { asId } from "../enterpriseInfo/idUtil";
export async function fetchOrgPersonnelDetail(params) {
const res = await apiGet("/safetyEval/org-personnel/get", { id: asId(params?.id) });
return fromSingleResponse(res, toStaffForm);
return res;
}