import { fromPageResponse, toPageQuery } from "~/utils/enterpriseInfo/adapter"; import { apiGet } from "~/utils/enterpriseInfo/http"; import { asId } from "~/utils/enterpriseInfo/idUtil"; export async function fetchOrgPersonnelOptions() { const query = toPageQuery({ current: 1, size: 500 }, { likeStaffName: "userName" }); const res = await apiGet("/safetyEval/org-personnel/page", query); const page = fromPageResponse(res); return (page?.data || []).map((data) => ({ label: data.userName, value: String(data.id), staffName: data.userName, positionName: data.postName ?? data.positionName, titleName: data.titleName, personType: data.personTypeName ?? "基础人员", registerEngineerFlag: data.registerEngineerFlag ?? 2, workExperience: data.workExperience, })); } export function mapEquipRowToFilingEquipment(row = {}) { const id = asId(row.id); return { id: `local-equip-${id}`, sourceEquipmentId: id, deviceName: row.deviceName, deviceModel: row.deviceModel, manufacturer: row.manufacturer, calibrationReportUrl: row.calibrationReportUrl || "", }; } export function mergeDetailFromForms(detail, { basicValues, commitmentValues }) { return { ...detail, ...basicValues, attachmentUrl: Array.isArray(basicValues?.attachmentUrl) ? JSON.stringify(basicValues?.attachmentUrl) : basicValues?.attachmentUrl, materials: detail.materials, personnelList: detail.personnelList, equipmentList: detail.equipmentList, commitment: { ...detail.commitment, ...commitmentValues, legalRepSignatureUrl: Array.isArray(commitmentValues?.legalRepSignatureUrl) ? commitmentValues?.legalRepSignatureUrl[0]?.url : commitmentValues?.legalRepSignatureUrl, }, }; }