diff --git a/src/pages/Container/Enterprise/EmergencyRescue/Rescue/Command/components/CommandFeedbackRecords/index.js b/src/pages/Container/Enterprise/EmergencyRescue/Rescue/Command/components/CommandFeedbackRecords/index.js index 7f5ed4e..c1b05d3 100644 --- a/src/pages/Container/Enterprise/EmergencyRescue/Rescue/Command/components/CommandFeedbackRecords/index.js +++ b/src/pages/Container/Enterprise/EmergencyRescue/Rescue/Command/components/CommandFeedbackRecords/index.js @@ -3,6 +3,7 @@ import VirtualList from "@rc-component/virtual-list"; import { useInterval } from "ahooks"; import { Image, Space } from "antd"; import { useEffect, useState } from "react"; +import { getFileUrl } from "zy-react-library/utils"; import { NS_RESUE } from "~/enumerate/namespace"; import circle from "../../images/circle.png"; @@ -88,8 +89,9 @@ function CommandFeedbackRecords(props) { 现场图片:
+ {(feedback.feedbackImageUrl ? feedback.feedbackImageUrl.split(",") : []).map((img, imgIndex) => ( - feedback + feedback ))}
diff --git a/src/pages/Container/Enterprise/PlanAndDrill/EnterprisePlan/Add/components/OrganizationStructure/index.js b/src/pages/Container/Enterprise/PlanAndDrill/EnterprisePlan/Add/components/OrganizationStructure/index.js index db31f23..500ea5a 100644 --- a/src/pages/Container/Enterprise/PlanAndDrill/EnterprisePlan/Add/components/OrganizationStructure/index.js +++ b/src/pages/Container/Enterprise/PlanAndDrill/EnterprisePlan/Add/components/OrganizationStructure/index.js @@ -6,8 +6,10 @@ import AddIcon from "zy-react-library/components/Icon/AddIcon"; import DeleteIcon from "zy-react-library/components/Icon/DeleteIcon"; import EditIcon from "zy-react-library/components/Icon/EditIcon"; import BasicLeftTree from "zy-react-library/components/LeftTree/Basic"; +import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj"; import Table from "zy-react-library/components/Table"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; +import useGetUserInfo from "zy-react-library/hooks/useGetUserInfo"; import useTable from "zy-react-library/hooks/useTable"; import { PHONE } from "zy-react-library/regular"; import { NS_ENTERPRISE_PLAN } from "~/enumerate/namespace"; @@ -22,7 +24,6 @@ const addModalTypeNames = { function OrganizationStructure(props) { const [treeList, setTreeList] = useState([]); - const [parentId, setParentId] = useState(defaultParentId); const [parentName, setParentName] = useState(defaultParentName); const [currentOrganization, setCurrentOrganization] = useState({}); @@ -32,13 +33,19 @@ function OrganizationStructure(props) { const [currentOrganizationPersonnelId, setCurrentOrganizationPersonnelId] = useState(""); const [addOrganizationPersonnelModalVisible, setAddOrganizationPersonnelModalVisible] = useState(false); + const [corpinfoid, setCorpinfoid] = useState(""); + + const { getUserInfo } = useGetUserInfo(); const { tableProps, getData } = useTable(props["enterprisePlanOrganizationPersonnelList"], { params: { planId: props.planId, organizationId: currentOrganization.id }, useStorageQueryCriteria: false, manual: true, }); - + const getInfoData = async () => { + const data = await getUserInfo(); + setCorpinfoid(data.corpinfoId); + }; const getTreeList = async () => { const { data } = await props["enterprisePlanLevelOrganizationListTree"]({ planId: props.planId }); setTreeList(data); @@ -46,6 +53,7 @@ function OrganizationStructure(props) { useEffect(() => { getTreeList(); + getInfoData(); }, []); const onDeleteOrganization = () => { @@ -226,6 +234,7 @@ function OrganizationStructure(props) { setCurrentOrganizationPersonnelId(""); }} id={currentOrganizationPersonnelId} + corpinfoid={corpinfoid} organizationId={currentOrganization.id} organizationName={currentOrganization.orgName} planId={props.planId} @@ -349,12 +358,25 @@ const AddOrganizationPersonnelModalComponent = (props) => { span={24} labelCol={{ span: 10 }} options={[ + { key: "organizationName", label: "所属机构", render: ({props.organizationName}), }, - { name: "userName", label: "姓名" }, + { name: "userId", label: "姓名", render: ( + form.setFieldValue("userName", label)} + onGetOption={(value) => { + form.setFieldValue("position", value.postName); + form.setFieldValue("contactPhone", value.phone); + }} + /> + ) }, + { name: "userName", label: "人员名称", onlyForLabel: true }, { name: "position", label: "职务" }, { name: "groupPost", label: "组内岗位", required: false }, { name: "contactPhone", label: "联系电话", rules: [{ pattern: PHONE, message: "请输入正确的电话号码" }] }, diff --git a/src/pages/Container/Enterprise/PlanAndDrill/EnterprisePlan/Add/components/PlanInstructions/index.js b/src/pages/Container/Enterprise/PlanAndDrill/EnterprisePlan/Add/components/PlanInstructions/index.js index 4227bfa..c39eeb4 100644 --- a/src/pages/Container/Enterprise/PlanAndDrill/EnterprisePlan/Add/components/PlanInstructions/index.js +++ b/src/pages/Container/Enterprise/PlanAndDrill/EnterprisePlan/Add/components/PlanInstructions/index.js @@ -14,6 +14,8 @@ function PlanInstructions(props) { const [responseLevelList, setResponseLevelList] = useState([]); const [executingAgencyListTree, setExecutingAgencyListTree] = useState([]); + const [disabled, setDisabled] = useState(false); + const [userData, setUserData] = useState([]); const isEditCommandIdRef = useRef(""); const { tableProps, getData } = useTable(props["enterprisePlanCommandSettingList"], { @@ -28,11 +30,14 @@ function PlanInstructions(props) { const { data } = await props["enterprisePlanLevelResponseListAll"]({ planId: props.planId }); setResponseLevelList(data); }; + const getUserDataFun = async (value) => { + const { data } = await props["enterprisePlanOrganizationPersonnelListAll"]({ organizationId: value.id }); + setUserData(data); + }; const getTreeList = async () => { if (props.mode === "view") return; - const { data } = await props["enterprisePlanLevelOrganizationListTree"]({ planId: props.planId }); setExecutingAgencyListTree(data); }; @@ -47,8 +52,6 @@ function PlanInstructions(props) { ...values, responseLevel: values.responseLevel.join(","), responseLevelName: values.responseLevelName.join(","), - executingAgencyId: values.executingAgencyId.join(","), - executingAgencyName: values.executingAgencyName.join(","), planId: props.planId, id: isEditCommandIdRef.current, }); @@ -69,6 +72,7 @@ function PlanInstructions(props) { if (success) { message.success("删除成功"); form.resetFields(); + setUserData([]); getData(); isEditCommandIdRef.current = ""; } @@ -116,16 +120,34 @@ function PlanInstructions(props) { label: "执行机构", render: ( { form.setFieldValue("executingAgencyName", label); + form.setFieldValue("userIds", undefined); + form.setFieldValue("userNames", undefined); }} + getNodePathsIsIncludeOneself={true} + onGetNodePaths={nodes => getUserDataFun(nodes[nodes.length - 1])} /> ), }, { name: "executingAgencyName", label: "执行机构名称", onlyForLabel: true }, + { + name: "userIds", + label: "执行人员", + render: FORM_ITEM_RENDER_ENUM.SELECT, + items: userData, + componentProps: { mode: "multiple", onChange: (value) => { + const result = userData + .filter(item => value.includes(item.id)) + .map(item => item.userName); + form.setFieldValue("userNames", result); + }, disabled }, + itemsField: { valueKey: "id", labelKey: "userName" }, + }, + { name: "userNames", label: "执行人员名称", onlyForLabel: true }, ]} form={form} onFinish={onSubmit} @@ -142,6 +164,7 @@ function PlanInstructions(props) {