From 04beb13b51d896a24094595264872e0fd5e6dab0 Mon Sep 17 00:00:00 2001 From: "853931625@qq.com" Date: Mon, 22 Jun 2026 17:25:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20=E4=BC=81=E4=B8=9A?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E4=B8=AD=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/enterprise/index.js | 5 + src/api/user/index.js | 16 ++ .../ChangeList/index.js | 72 ++---- .../ChangeView/index.js | 225 ++++++++++++------ .../EnterpriseMiddleground/List/index.js | 38 +-- .../EnterpriseMiddleground/UserList/index.js | 48 ++-- 6 files changed, 244 insertions(+), 160 deletions(-) diff --git a/src/api/enterprise/index.js b/src/api/enterprise/index.js index 427d845..31ea67a 100644 --- a/src/api/enterprise/index.js +++ b/src/api/enterprise/index.js @@ -40,6 +40,11 @@ export const corpUserMiddlePage = declareRequest( "enterpriseLoading", "Post > @/basicInfo/corpInfo/corpUserMiddlePage", ); +export const userChangeRecordList = declareRequest( + "enterpriseLoading", + "Post > @/basicInfo/userChangeRecord/userCorpInfoList", +); + // 获取当前登录人信息 export const userGetInfo = declareRequest( diff --git a/src/api/user/index.js b/src/api/user/index.js index 956025c..67237d2 100644 --- a/src/api/user/index.js +++ b/src/api/user/index.js @@ -90,3 +90,19 @@ export const getChangerRecordInfoById = declareRequest( "userLoading", "Post > @/basicInfo/userCorpRecord/getUserCorpRecordById", ); +export const pageByNopermission = declareRequest( + "enterpriseLoading", + "Post > @/basicInfo/user/pageByNopermission", +); +export const userChangeRecordList = declareRequest( + "enterpriseLoading", + "Post > @/basicInfo/userChangeRecord/list", +); +export const userChangeRecordgGtRecordInfoById = declareRequest( + "enterpriseLoading", + "Post > @/basicInfo/userChangeRecord/getChangerRecordInfoById", +); +export const workChangeHandle = declareRequest( + "enterpriseLoading", + "Post > @/basicInfo/userChangeRecord/workChangeHandle", +); diff --git a/src/pages/Container/Supervision/EnterpriseMiddleground/ChangeList/index.js b/src/pages/Container/Supervision/EnterpriseMiddleground/ChangeList/index.js index 7c43f53..8aca7c3 100644 --- a/src/pages/Container/Supervision/EnterpriseMiddleground/ChangeList/index.js +++ b/src/pages/Container/Supervision/EnterpriseMiddleground/ChangeList/index.js @@ -2,88 +2,60 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Form, Space } from "antd"; import Page from "zy-react-library/components/Page"; -import Search from "zy-react-library/components/Search"; import Table from "zy-react-library/components/Table"; -import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; +import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useTable from "zy-react-library/hooks/useTable"; import { NS_USER } from "~/enumerate/namespace"; -const ENTERPRISE_TYPE = [ - { - bianma: 0, - name: "普通企业", - }, - { - bianma: 1, - name: "集团单位", - }, - { - bianma: 6, - name: "物资中心", - }, -]; function List(props) { const [form] = Form.useForm(); - const { tableProps, getData } = useTable(props["userEmploymentLogAll"], { + const queryParams = useGetUrlQuery(); + const { tableProps } = useTable(props["userChangeRecordList"], { form, usePermission: false, - transform: (formData) => { - return { - ...formData, + params: { eqUserId: queryParams.id }, - }; - }, }); return (
- + (
- {record.employmentFlag === 1 - ? "在职" - : record.employmentFlag === 1 - ? "离职" + {record.status === 1 + ? "待审批" + : record.status === 2 + ? "通过" : ""}
), @@ -97,7 +69,7 @@ function List(props) { diff --git a/src/pages/Container/Supervision/EnterpriseMiddleground/ChangeView/index.js b/src/pages/Container/Supervision/EnterpriseMiddleground/ChangeView/index.js index ad0d995..5c5995a 100644 --- a/src/pages/Container/Supervision/EnterpriseMiddleground/ChangeView/index.js +++ b/src/pages/Container/Supervision/EnterpriseMiddleground/ChangeView/index.js @@ -1,7 +1,9 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; -import { Button, Descriptions, Divider, message, Modal } from "antd"; +import { Button, Descriptions, Divider, Form, message, Modal, Space } from "antd"; import { useEffect, useState } from "react"; import Page from "zy-react-library/components/Page"; +import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj"; +import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import Table from "zy-react-library/components/Table"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; @@ -9,57 +11,61 @@ import { NS_ENTERPRISE, NS_USER } from "~/enumerate/namespace"; function ChangeView(props) { const queryParams = useGetUrlQuery(); + const [form] = Form.useForm(); const [info, setInfo] = useState({}); + const [handoverModalOpen, setHandoverModalOpen] = useState(false); + const [departmentId, setDepartmentId] = useState(); + const [currentHandoverRecord, setCurrentHandoverRecord] = useState({}); + const [handoverUserInfo, setHandoverUserInfo] = useState({}); - useEffect(() => { - props["getChangerRecordInfoById"]({ corpinfoId: queryParams["corpinfoId"], userId: queryParams["id"] }).then((res) => { + const getRecordInfo = () => { + props["userChangeRecordgGtRecordInfoById"]({ userChangeRecordId: queryParams["id"], userId: queryParams["userId"] }).then((res) => { if (res.data) { setInfo(res.data); } }); + }; + + useEffect(() => { + getRecordInfo(); }, []); - const onSubmit = async () => { - Modal.confirm({ - title: "提示", - content: "确认后,该名员工的信息将处于离职状态,涉及的待完成相关工作,可能会受到异常。", - onOk: () => { - props["reviewStatus"]({ - corpinfoId: queryParams["corpinfoId"], - employmentFlag: queryParams["employmentFlag"], - reviewStatus: 2, - userId: queryParams["id"], - }).then((res) => { - if (res.success) { - message.success("审核成功"); - window.history.back(); - } - }); - }, - }); - }; - const handleReject = () => { - Modal.confirm({ - title: "提示", - content: "确定驳回吗?", - onOk: () => { - props["reviewStatus"]({ - corpinfoId: queryParams["corpinfoId"], - employmentFlag: queryParams["employmentFlag"], - reviewStatus: 3, - userId: queryParams["id"], - }).then((res) => { - if (res.success) { - message.success("驳回成功"); - window.history.back(); - } - }); - }, - }); + const onOpenHandoverModal = (record) => { + form.resetFields(); + setDepartmentId(); + setCurrentHandoverRecord(record || {}); + setHandoverUserInfo({}); + setHandoverModalOpen(true); }; - const onGoBack = () => { - window.history.back(); + const onCloseHandoverModal = () => { + form.resetFields(); + setDepartmentId(); + setCurrentHandoverRecord({}); + setHandoverUserInfo({}); + setHandoverModalOpen(false); + }; + + const onSubmitHandover = (values) => { + const params = { + handoverCompanyId: handoverUserInfo.corpinfoId || handoverUserInfo.corpInfoId, + handoverCompanyName: handoverUserInfo.corpinfoName || handoverUserInfo.corpInfoName, + handoverDepartmentId: handoverUserInfo.departmentId, + handoverDepartmentName: handoverUserInfo.departmentName, + handoverPostId: handoverUserInfo.postId, + handoverPostName: handoverUserInfo.postName, + handoverUserId: handoverUserInfo.id || values.userId, + handoverUserName: handoverUserInfo.name, + id: currentHandoverRecord.id, + }; + + props["workChangeHandle"](params).then((res) => { + if (res.success) { + message.success("交接成功"); + onCloseHandoverModal(); + getRecordInfo(); + } + }); }; return ( @@ -90,7 +96,15 @@ function ChangeView(props) { }, { label: "员工状态", - children: info.userStatusBefore, + children: ( +
+ {info.userStatusBefore === 1 + ? "待审批" + : info.userStatusBefore === 2 + ? "通过" + : ""} +
+ ), }, ]} @@ -98,6 +112,7 @@ function ChangeView(props) { labelStyle={{ width: 200, }} + contentStyle={{ width: 500 }} /> 变更后信息 + {info.userStatusAfter === 1 + ? "待审批" + : info.userStatusAfter === 2 + ? "通过" + : ""} + + ), + }, { label: "变更时间", children: info.changeTime, - contentStyle: { display: queryParams["type"] === "disposal" ? "none" : "" }, - labelStyle: { display: queryParams["type"] === "disposal" ? "none" : "" }, + }, ]} column={2} labelStyle={{ width: 200, }} + contentStyle={{ width: 500 }} /> - {queryParams["type"] === "disposal" ? "未完成工作" : "工作交接"} + {queryParams["type"] === "disposal" ? "工作交接情况" : "交接信息"}
( + + + + ), }, ]} dataSource={info.userJobHandoverCOList} /> - { - queryParams["type"] === "disposal" + form.submit()} + onCancel={onCloseHandoverModal} + > +
+ + { + setDepartmentId(value); + setHandoverUserInfo({}); + form.setFieldValue("userId", undefined); + }} + /> + + + - - - - - - - - ) - } + onGetOption={(value) => { + // 在这里 公司 部门 岗位 人员 取value里的这些字段 + // { + // "id":"2008787570160480256" + // "name": "股份_王雯仲", + // "corpinfoId": "1976974388809424896", + // "corpinfoName": "秦皇岛港股份有限公司", + // "departmentId": "2008786394509651968", + // "departmentName": "总经办", + // "postId": "2008786566382211074", + // "postName": "董事长助理", + // } + setHandoverUserInfo(value || {}); + }} + params={{ departmentId }} + placeholder="选择部门下人员、单选" + /> + + +
diff --git a/src/pages/Container/Supervision/EnterpriseMiddleground/List/index.js b/src/pages/Container/Supervision/EnterpriseMiddleground/List/index.js index 7860174..1cc47ba 100644 --- a/src/pages/Container/Supervision/EnterpriseMiddleground/List/index.js +++ b/src/pages/Container/Supervision/EnterpriseMiddleground/List/index.js @@ -19,6 +19,22 @@ const ENTERPRISE_TYPE = [ bianma: 1, name: "集团单位", }, + { + bianma: 2, + name: "股份单位", + }, + { + bianma: 3, + name: "普通企业", + }, + { + bianma: 4, + name: "货主单位", + }, + { + bianma: 5, + name: "驻港单位", + }, { bianma: 6, name: "物资中心", @@ -26,12 +42,11 @@ const ENTERPRISE_TYPE = [ ]; function List(props) { const [form] = Form.useForm(); - const { tableProps, getData } = useTable(props["corpUserMiddlePage"], { + const { tableProps, getData } = useTable(props["userChangeRecordList"], { form, transform: (formData) => { return { ...formData, - enterpriseType: 2, }; }, }); @@ -45,12 +60,7 @@ function List(props) { name: "name", label: "公司名称", }, - { - name: "eqType", - label: "企业类型", - render: FORM_ITEM_RENDER_ENUM.SELECT, - items: ENTERPRISE_TYPE, - }, + ]} onFinish={getData} /> @@ -74,27 +84,27 @@ function List(props) { }, { title: "部门数", - dataIndex: "departMentCount", + dataIndex: "departmentCount", }, { title: "岗位数", dataIndex: "postCount", }, { - title: "用户数", + title: "人员总数", dataIndex: "userCount", }, { - title: "中台人员存在数", - dataIndex: "middleUserCount", + title: "人资存在数", + dataIndex: "rzUserCount", render: (_, record) => ( -
{record.middleUserCount ?? 0}
+
{record.rzUserCount ?? 0}
), }, { title: "操作", width: 200, - // hidden: !(props.permission("qyyhzt-info")), + hidden: !(props.permission("qyyhzt-info")), render: (_, record) => ( diff --git a/src/pages/Container/Supervision/EnterpriseMiddleground/UserList/index.js b/src/pages/Container/Supervision/EnterpriseMiddleground/UserList/index.js index 681ee38..c2b4988 100644 --- a/src/pages/Container/Supervision/EnterpriseMiddleground/UserList/index.js +++ b/src/pages/Container/Supervision/EnterpriseMiddleground/UserList/index.js @@ -18,13 +18,17 @@ import { UseDecodeIdCard } from "~/utils"; const USER_TYPE = [ { - bianma: 1, + bianma: "1", name: "在职", }, { - bianma: 2, + bianma: "0", name: "离职", }, + { + bianma: "2", + name: "信息变更中", + }, ]; function List(props) { const [selectedNodeId, setSelectedNodeId] = useState(); @@ -32,14 +36,14 @@ function List(props) { const [currentId, setCurrentId] = useState(""); const queryParams = useGetUrlQuery(); const [form] = Form.useForm(); - const { tableProps, getData } = useTable(props["userList"], { + const { tableProps, getData } = useTable(props["pageByNopermission"], { form, usePermission: false, transform: (formData) => { return { ...formData, eqDepartmentId: selectedNodeId, - corpinfoId: queryParams["id"], + eqCorpinfoId: queryParams["id"], noMain: 1, }; @@ -68,7 +72,7 @@ function List(props) { return (
(
- {record.employmentFlag === 1 - ? "在职" - : record.employmentFlag === 1 - ? "离职" + {record.rzFlag === 1 + ? "是" + : record.rzFlag === 0 + ? "否" : ""}
), }, + { + title: "人员状态", + dataIndex: "employmentFlag", + render: (_, record) => ( +
+ { + getLabelName({ list: USER_TYPE, status: record.employmentFlag }) + } +
+ ), + }, { title: "操作", width: 180, @@ -169,13 +180,12 @@ function List(props) { ) } { - props.permission("qyyuzt-info-disposal") - && ( + props.permission("qyyuzt-info-disposal") && record.employmentFlag === 2 && (