From 928edd66c4ed508840197ec3a292aa6bcfcfdbf4 Mon Sep 17 00:00:00 2001 From: LiuJiaNan <15703339975@163.com> Date: Tue, 24 Mar 2026 11:37:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=81=E9=97=AD=E5=8C=BA=E5=9F=9F=E7=94=B3?= =?UTF-8?q?=E8=AF=B7=EF=BC=9A=E4=BC=81=E4=B8=9A=E4=BA=BA=E5=91=98=E6=9D=83?= =?UTF-8?q?=E9=99=90=E3=80=81=E9=95=BF=E6=9C=9F=E4=BA=BA=E5=91=98=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E3=80=81=E9=95=BF=E6=9C=9F=E4=BA=BA=E5=91=98=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E8=AE=B0=E5=BD=95=E3=80=81=E9=95=BF=E6=9C=9F=E8=BD=A6?= =?UTF-8?q?=E8=BE=86=E5=AE=A1=E6=A0=B8=E3=80=81=E9=95=BF=E6=9C=9F=E8=BD=A6?= =?UTF-8?q?=E8=BE=86=E5=AE=A1=E6=A0=B8=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- router.md | 10 +- src/api/enclosedAreaPersonnelApply/index.js | 4 + src/api/enclosedAreaVehicleApply/index.js | 4 + .../index.js | 6 +- .../enclosedLongTermPersonnelReview/index.js | 18 --- .../enclosedLongTermVehicleReview/index.js | 18 --- src/enumerate/constant/index.js | 14 ++ src/enumerate/namespace/index.js | 2 - .../List/index.js | 120 ++++++++++++++---- .../LongTermPersonnelReview/List/index.js | 72 ++++++----- .../LongTermPersonnelReview/Review/index.js | 20 +-- .../List/index.js | 88 +++++++------ .../LongTermVehicleReview/List/index.js | 71 ++++++----- .../LongTermVehicleReview/Review/index.js | 20 +-- .../List/index.js | 86 ++++++------- .../List/index.js | 4 +- .../Apply/Personnel/List/index.js | 9 +- .../Apply/PersonnelRecords/List/index.js | 8 +- .../EnclosedArea/Apply/Vehicle/List/index.js | 9 +- .../Apply/VehicleRecords/List/index.js | 8 +- 20 files changed, 327 insertions(+), 264 deletions(-) delete mode 100644 src/api/enclosedLongTermPersonnelReview/index.js delete mode 100644 src/api/enclosedLongTermVehicleReview/index.js diff --git a/router.md b/router.md index 819289c..bd5835e 100644 --- a/router.md +++ b/router.md @@ -102,21 +102,21 @@ `/primeport/container/enterprise/enclosedArea/apply/vehicleRecords/list` - 区域人员及车辆统计 `/primeport/container/enterprise/enclosedArea/personnelAndVehicleStatistics/list` -- 企业人员权限 +- 企业人员权限 ## `/primeport/container/enterprise/enclosedArea/enterprisePersonnelPermissions/list` -- 人员审核/长期人员审核 +- 人员审核/长期人员审核 ## `/primeport/container/enterprise/enclosedArea/personnelReview/longTermPersonnelReview/list` - 人员审核/临时人员审核 `/primeport/container/enterprise/enclosedArea/personnelReview/temporaryPersonnelReview/list` -- 人员审核/长期人员审核记录 +- 人员审核/长期人员审核记录 ## `/primeport/container/enterprise/enclosedArea/personnelReview/longTermPersonnelReviewRecords/list` - 人员审核/临时访客人员记录 `/primeport/container/enterprise/enclosedArea/personnelReview/temporaryPersonnelReviewRecords/list` -- 车辆审核/长期车辆审核 +- 车辆审核/长期车辆审核 ## `/primeport/container/enterprise/enclosedArea/vehicleReview/longTermVehicleReview/list` - 车辆审核/临时车辆审核 `/primeport/container/enterprise/enclosedArea/vehicleReview/temporaryVehicleReview/list` -- 车辆审核/长期车辆审核记录 +- 车辆审核/长期车辆审核记录 ## `/primeport/container/enterprise/enclosedArea/vehicleReview/longTermVehicleReviewRecords/list` - 车辆审核/临时车辆审核记录 `/primeport/container/enterprise/enclosedArea/vehicleReview/temporaryVehicleReviewRecords/list` diff --git a/src/api/enclosedAreaPersonnelApply/index.js b/src/api/enclosedAreaPersonnelApply/index.js index 32b31ab..f15d647 100644 --- a/src/api/enclosedAreaPersonnelApply/index.js +++ b/src/api/enclosedAreaPersonnelApply/index.js @@ -4,6 +4,10 @@ export const enclosedAreaPersonnelApplyList = declareRequest( "enclosedAreaPersonnelApplyLoading", `Post > @/primeport/closedAreaPersonApply/pendingApprovalRecordList`, ); +export const enclosedAreaPersonnelApplyReviewSubmit = declareRequest( + "enclosedAreaPersonnelApplyLoading", + `Post > @/primeport/closedAreaPersonApply/auditPersonApply`, +); export const enclosedAreaPersonnelApplyInfo = declareRequest( "enclosedAreaPersonnelApplyLoading", `Get > /primeport/closedAreaPersonApply/{id}`, diff --git a/src/api/enclosedAreaVehicleApply/index.js b/src/api/enclosedAreaVehicleApply/index.js index c4636a5..27fbfdf 100644 --- a/src/api/enclosedAreaVehicleApply/index.js +++ b/src/api/enclosedAreaVehicleApply/index.js @@ -4,6 +4,10 @@ export const enclosedAreaVehicleApplyList = declareRequest( "enclosedAreaVehicleApplyLoading", `Post > @/primeport/closedAreaCarApply/list`, ); +export const enclosedAreaVehicleApplyReviewSubmit = declareRequest( + "enclosedAreaVehicleApplyLoading", + `Post > @/primeport/closedAreaCarApply/auditCarApply`, +); export const enclosedAreaVehicleApplyInfo = declareRequest( "enclosedAreaVehicleApplyLoading", `Get > /primeport/closedAreaCarApply/{id}`, diff --git a/src/api/enclosedEnterprisePersonnelPermissions/index.js b/src/api/enclosedEnterprisePersonnelPermissions/index.js index 0fad406..5357698 100644 --- a/src/api/enclosedEnterprisePersonnelPermissions/index.js +++ b/src/api/enclosedEnterprisePersonnelPermissions/index.js @@ -2,7 +2,7 @@ import { declareRequest } from "@cqsjjb/jjb-dva-runtime"; export const enclosedEnterprisePersonnelPermissionsList = declareRequest( "enclosedEnterprisePersonnelPermissionsLoading", - `Post > @/primeport/`, + `Post > @/primeport/closedAreaPersonApply/getCorpUserList`, ); export const enclosedEnterprisePersonnelPermissionsPersonnelRecordsList = declareRequest( "enclosedEnterprisePersonnelPermissionsLoading", @@ -10,9 +10,9 @@ export const enclosedEnterprisePersonnelPermissionsPersonnelRecordsList = declar ); export const enclosedEnterprisePersonnelPermissionsInfo = declareRequest( "enclosedEnterprisePersonnelPermissionsLoading", - `Post > @/primeport/`, + `Get > /primeport/closedAreaPersonApply/getAuthorizationPersonInfo/{id}`, ); export const enclosedEnterprisePersonnelPermissionsSave = declareRequest( "enclosedEnterprisePersonnelPermissionsLoading", - `Post > @/primeport/`, + `Post > @/primeport/closedAreaPersonApply/authorizationPerson`, ); diff --git a/src/api/enclosedLongTermPersonnelReview/index.js b/src/api/enclosedLongTermPersonnelReview/index.js deleted file mode 100644 index b1e5961..0000000 --- a/src/api/enclosedLongTermPersonnelReview/index.js +++ /dev/null @@ -1,18 +0,0 @@ -import { declareRequest } from "@cqsjjb/jjb-dva-runtime"; - -export const enclosedLongTermPersonnelReviewList = declareRequest( - "enclosedLongTermPersonnelReviewLoading", - `Post > @/primeport/`, -); -export const enclosedLongTermPersonnelReviewSubmit = declareRequest( - "enclosedLongTermPersonnelReviewLoading", - `Post > @/primeport/`, -); -export const enclosedLongTermPersonnelReviewRecordsList = declareRequest( - "enclosedLongTermPersonnelReviewLoading", - `Post > @/primeport/`, -); -export const enclosedLongTermPersonnelReviewRecordsRejectReason = declareRequest( - "enclosedLongTermPersonnelReviewLoading", - `Post > @/primeport/`, -); diff --git a/src/api/enclosedLongTermVehicleReview/index.js b/src/api/enclosedLongTermVehicleReview/index.js deleted file mode 100644 index 929fde9..0000000 --- a/src/api/enclosedLongTermVehicleReview/index.js +++ /dev/null @@ -1,18 +0,0 @@ -import { declareRequest } from "@cqsjjb/jjb-dva-runtime"; - -export const enclosedLongTermVehicleReviewList = declareRequest( - "enclosedLongTermVehicleReviewLoading", - `Post > @/primeport/`, -); -export const enclosedLongTermVehicleReviewSubmit = declareRequest( - "enclosedLongTermVehicleReviewLoading", - `Post > @/primeport/`, -); -export const enclosedLongTermVehicleReviewRecordsList = declareRequest( - "enclosedLongTermVehicleReviewLoading", - `Post > @/primeport/`, -); -export const enclosedLongTermVehicleReviewRecordsRejectReason = declareRequest( - "enclosedLongTermVehicleReviewLoading", - `Post > @/primeport/`, -); diff --git a/src/enumerate/constant/index.js b/src/enumerate/constant/index.js index f927895..b6371b4 100644 --- a/src/enumerate/constant/index.js +++ b/src/enumerate/constant/index.js @@ -55,3 +55,17 @@ export const CURRENT_IN_PORT_STATUS_ENUM = [ { name: "港内", bianma: "1" }, { name: "港外", bianma: "2" }, ]; + +// 封闭区域车辆人员审核状态 +export const ENCLOSED_AREA_AUDIT_STATUS_ENUM = [ + { name: "审核中", bianma: "1" }, + { name: "审核通过", bianma: "2" }, + { name: "审核驳回", bianma: "3" }, +]; + +// 封闭区域车辆人员申请来源状态 +export const ENCLOSED_AREA_BELONGING_END_ENUM = [ + { bianma: "3", name: "相关方端" }, + { bianma: "1", name: "监管端" }, + { bianma: "2", name: "企业端" }, +]; diff --git a/src/enumerate/namespace/index.js b/src/enumerate/namespace/index.js index a0c444d..81a951e 100644 --- a/src/enumerate/namespace/index.js +++ b/src/enumerate/namespace/index.js @@ -27,7 +27,5 @@ export const NS_ENCLOSED_AREA_PERSONNEL_APPLY = defineNamespace("enclosedAreaPer export const NS_ENCLOSED_AREA_VEHICLE_APPLY = defineNamespace("enclosedAreaVehicleApply"); export const NS_ENCLOSED_PERSONNEL_AND_VEHICLE_STATISTICS = defineNamespace("enclosedPersonnelAndVehicleStatistics"); export const NS_ENCLOSED_ENTERPRISE_PERSONNEL_PERMISSIONS = defineNamespace("enclosedEnterprisePersonnelPermissions"); -export const NS_ENCLOSED_LONG_TERM_PERSONNEL_REVIEW = defineNamespace("enclosedLongTermPersonnelReview"); export const NS_ENCLOSED_TEMPORARY_PERSONNEL_REVIEW = defineNamespace("enclosedTemporaryPersonnelReview"); -export const NS_ENCLOSED_LONG_TERM_VEHICLE_REVIEW = defineNamespace("enclosedLongTermVehicleReview"); export const NS_ENCLOSED_TEMPORARY_VEHICLE_REVIEW = defineNamespace("enclosedTemporaryVehicleReview"); diff --git a/src/pages/Container/Enterprise/EnclosedArea/EnterprisePersonnelPermissions/List/index.js b/src/pages/Container/Enterprise/EnclosedArea/EnterprisePersonnelPermissions/List/index.js index 5ee4baf..b611e3f 100644 --- a/src/pages/Container/Enterprise/EnclosedArea/EnterprisePersonnelPermissions/List/index.js +++ b/src/pages/Container/Enterprise/EnclosedArea/EnterprisePersonnelPermissions/List/index.js @@ -1,16 +1,17 @@ import useUrlState from "@ahooksjs/use-url-state"; import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, message, Modal, Space } from "antd"; -import { useEffect, useState } from "react"; +import { useEffect, useRef, useState } from "react"; import FormBuilder from "zy-react-library/components/FormBuilder"; import BackIcon from "zy-react-library/components/Icon/BackIcon"; import DepartmentLeftTree from "zy-react-library/components/LeftTree/Department/Gwj"; import Page from "zy-react-library/components/Page"; import Search from "zy-react-library/components/Search"; +import BasicSelectTree from "zy-react-library/components/SelectTree/Basic"; import Table from "zy-react-library/components/Table"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import useTable from "zy-react-library/hooks/useTable"; -import { NS_ENCLOSED_ENTERPRISE_PERSONNEL_PERMISSIONS } from "~/enumerate/namespace"; +import { NS_ENCLOSED_AREA, NS_ENCLOSED_ENTERPRISE_PERSONNEL_PERMISSIONS } from "~/enumerate/namespace"; function List(props) { const [authorizationScopeModalVisible, setAuthorizationScopeModalVisible] = useState(false); @@ -32,7 +33,7 @@ function List(props) { const { tableProps, getData } = useTable(props["enclosedEnterprisePersonnelPermissionsList"], { form, - params: () => ({ departmentId: urlState.departmentId }), + params: () => ({ deptId: urlState.departmentId }), manual: true, }); @@ -64,7 +65,7 @@ function List(props) { >
- + ( <> @@ -86,13 +87,21 @@ function List(props) { )} columns={[ - { title: "部门", dataIndex: "todo1" }, - { title: "姓名", dataIndex: "todo2" }, - { title: "岗位", dataIndex: "todo3" }, - { title: "手机号", dataIndex: "todo4" }, - { title: "车辆数", dataIndex: "todo5" }, - { title: "封闭区域权限", dataIndex: "todo6", render: (_, record) => record.todo6 === 1 ? "开启" : "关闭" }, - { title: "是否录入人脸", dataIndex: "todo7", render: (_, record) => record.todo7 === 1 ? "是" : "否" }, + { title: "部门", dataIndex: "deptName" }, + { title: "姓名", dataIndex: "name" }, + { title: "岗位", dataIndex: "postName" }, + { title: "手机号", dataIndex: "phone" }, + { title: "车辆数", dataIndex: "vehicleCount" }, + { + title: "封闭区域权限", + dataIndex: "mkmjPermission", + render: (_, record) => record.mkmjPermission === 1 ? "开启" : "关闭", + }, + { + title: "是否录入人脸", + dataIndex: "userFaceUrl", + render: (_, record) => record.userFaceUrl ? "是" : "否", + }, { title: "操作", width: 200, @@ -130,7 +139,7 @@ function List(props) { info={currentInfo} onCancel={() => { setAuthorizationScopeModalVisible(false); - setCurrentInfo(""); + setCurrentInfo({}); }} getData={getData} /> @@ -141,22 +150,72 @@ function List(props) { } const AuthorizationScopeModalComponent = (props) => { + const [enclosedAreaList, setEnclosedAreaList] = useState([]); + + const closedAreaListTreeRef = useRef([]); + const [form] = FormBuilder.useForm(); const getData = async () => { - const { data } = await props["enclosedEnterprisePersonnelPermissionsInfo"]({ id: props.info.id }); - form.setFieldsValue({ ...data }); + const { data } = await props["enclosedEnterprisePersonnelPermissionsInfo"]({ id: props.info.userId }); + form.setFieldsValue({ + ...data, + mkmjPermission: data.mkmjPermission || 1, + closedAreaId: (data.areaList || []).map(item => item.closedAreaId), + }); + }; + + const getEnclosedAreaList = async (jurisdictionalCorpId) => { + const { data } = await props["enclosedAreaDetailListTree"]({ jurisdictionalCorpId }); + setEnclosedAreaList(data); }; useEffect(() => { getData(); + getEnclosedAreaList(props.info.corpId); }, []); + const getAreaList = (areaIds) => { + if (!areaIds || !Array.isArray(areaIds) || areaIds.length === 0) { + return []; + } + + const result = []; + + // 递归查找树形结构中的节点 + const findNodesInTree = (tree, ids) => { + for (const node of tree) { + // 如果当前节点 ID 在选中列表中,添加到结果集 + if (ids.includes(node.id)) { + result.push({ + fgsPersonAuthId: props.info.userId, + closedAreaId: node.id, + closedAreaName: node.closedAreaName, + }); + } + + // 如果有子节点,递归查找 + if (node.children && node.children.length > 0) { + findNodesInTree(node.children, ids); + } + } + }; + + // 在树形结构中查找所有选中的节点 + findNodesInTree(closedAreaListTreeRef.current, areaIds); + + return result; + }; + const onSubmit = (values) => { const performSave = async () => { + const areaList = getAreaList(values.closedAreaId); const { success } = await props["enclosedEnterprisePersonnelPermissionsSave"]({ ...values, - id: props.info.id, + areaList, + userId: props.info.userId, + corpId: props.info.corpId, + departmentId: props.info.deptId, }); if (success) { message.success("操作成功"); @@ -165,10 +224,10 @@ const AuthorizationScopeModalComponent = (props) => { } }; - if (values.todo1 === 2) { + if (values.mkmjPermission === 2 && props.info.mkmjPermission === 1) { Modal.confirm({ title: "提示", - content: `确定要给【${props.info.todo1}】用户关闭门禁权限吗?`, + content: `确定要给【${props.info.name}】用户关闭门禁权限吗?`, onOk: performSave, }); } @@ -195,17 +254,32 @@ const AuthorizationScopeModalComponent = (props) => { onFinish={onSubmit} options={[ { - name: "todo1", + name: "mkmjPermission", label: "是否授权", render: FORM_ITEM_RENDER_ENUM.RADIO, items: [{ bianma: 1, name: "是" }, { bianma: 2, name: "否" }], + componentProps: { + onChange: () => { + form.setFieldValue("areaList", []); + }, + }, }, { - name: "todo2", + name: "closedAreaId", label: "封闭区域", - render: FORM_ITEM_RENDER_ENUM.SELECT, - items: [], - componentProps: { mode: "multiple" }, + render: ( + { + closedAreaListTreeRef.current = data; + }} + /> + ), + dependencies: ["mkmjPermission"], + hidden: formValues => !(formValues.mkmjPermission === 1), }, ]} form={form} @@ -214,6 +288,6 @@ const AuthorizationScopeModalComponent = (props) => { ); }; -const AuthorizationScopeModal = Connect([NS_ENCLOSED_ENTERPRISE_PERSONNEL_PERMISSIONS], true)(AuthorizationScopeModalComponent); +const AuthorizationScopeModal = Connect([NS_ENCLOSED_ENTERPRISE_PERSONNEL_PERMISSIONS, NS_ENCLOSED_AREA], true)(AuthorizationScopeModalComponent); export default Connect([NS_ENCLOSED_ENTERPRISE_PERSONNEL_PERMISSIONS], true)(List); diff --git a/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReview/List/index.js b/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReview/List/index.js index 9e6376a..cef6a4d 100644 --- a/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReview/List/index.js +++ b/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReview/List/index.js @@ -1,30 +1,26 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; -import { Button } from "antd"; +import { Button, 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 useTable from "zy-react-library/hooks/useTable"; import { getLabelName } from "zy-react-library/utils"; -import { NS_ENCLOSED_LONG_TERM_PERSONNEL_REVIEW } from "~/enumerate/namespace"; - -export const BELONGING_END_ENUM = [ - { bianma: "stakeholder", name: "相关方端" }, - { bianma: "supervision", name: "监管端" }, - { bianma: "enterprise", name: "企业端" }, -]; +import { ENCLOSED_AREA_AUDIT_STATUS_ENUM, ENCLOSED_AREA_BELONGING_END_ENUM } from "~/enumerate/constant"; +import { NS_ENCLOSED_AREA_PERSONNEL_APPLY } from "~/enumerate/namespace"; function List(props) { const [form] = Search.useForm(); - const { tableProps, getData } = useTable(props["enclosedLongTermPersonnelReviewList"], { + const { tableProps, getData } = useTable(props["enclosedAreaPersonnelApplyList"], { form, + params: { processOrRecord: 1, personBelongType: -1 }, }); return ( getLabelName({ list: BELONGING_END_ENUM, status: record.todo1 }), + dataIndex: "personBelongType", + render: (_, record) => getLabelName({ list: ENCLOSED_AREA_BELONGING_END_ENUM, status: record.personBelongType }), + }, + { title: "公司名称", dataIndex: "applyPersonCorpName" }, + { title: "姓名", dataIndex: "applyPersonUserName" }, + { title: "部门", dataIndex: "applyPersonDepartmentName" }, + { title: "手机号", dataIndex: "userPhone" }, + { title: "申请区域", dataIndex: "closedAreaName" }, + { + title: "申请时间范围", + dataIndex: "visitStartTime", + render: (_, record) => `${record.visitStartTime}-${record.visitEndTime}`, + }, + { + title: "申请人数", + dataIndex: "entourage", + render: (_, record) => record.entourage ? JSON.parse(record.entourage).length : 0, + }, + { + title: "审核状态", + dataIndex: "auditFlag", + render: (_, record) => getLabelName({ list: ENCLOSED_AREA_AUDIT_STATUS_ENUM, status: record.auditFlag }), }, - { title: "公司名称", dataIndex: "todo2" }, - { title: "姓名", dataIndex: "todo3" }, - { title: "部门", dataIndex: "todo4" }, - { title: "手机号", dataIndex: "todo5" }, - { title: "申请区域", dataIndex: "todo6" }, - { title: "申请时间范围", dataIndex: "todo7", render: (_, record) => `${record.todo7}-${record.todo8}` }, - { title: "申请人数", dataIndex: "todo9" }, - { title: "审核状态", dataIndex: "todo10" }, { title: "操作", width: 100, fixed: "right", render: (_, record) => ( - + + {record.currentUserCanAudit === 1 && ( + + )} + ), }, ]} @@ -67,4 +79,4 @@ function List(props) { ); } -export default Connect([NS_ENCLOSED_LONG_TERM_PERSONNEL_REVIEW], true)(List); +export default Connect([NS_ENCLOSED_AREA_PERSONNEL_APPLY], true)(List); diff --git a/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReview/Review/index.js b/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReview/Review/index.js index cda7142..6ff7fdf 100644 --- a/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReview/Review/index.js +++ b/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReview/Review/index.js @@ -3,7 +3,7 @@ import { message } from "antd"; import FormBuilder from "zy-react-library/components/FormBuilder"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; -import { NS_ENCLOSED_LONG_TERM_PERSONNEL_REVIEW } from "~/enumerate/namespace"; +import { NS_ENCLOSED_AREA_PERSONNEL_APPLY } from "~/enumerate/namespace"; import ViewPage from "~/pages/Container/Supervision/EnclosedArea/Apply/Personnel/View"; function Review(props) { @@ -11,7 +11,7 @@ function Review(props) { const [form] = FormBuilder.useForm(); const onSubmit = async (values) => { - const { success } = await props["enclosedLongTermPersonnelReviewSubmit"]({ + const { success } = await props["enclosedAreaPersonnelApplyReviewSubmit"]({ ...values, id: query.id, }); @@ -33,22 +33,22 @@ function Review(props) { span={24} onFinish={onSubmit} values={{ - todo1: "1", + auditFlag: "2", }} - loading={props.enclosedLongTermPersonnelReview.enclosedLongTermPersonnelReviewLoading} + loading={props.enclosedAreaPersonnelApply.enclosedAreaPersonnelApplyLoading} options={[ { - name: "todo1", + name: "auditFlag", label: "是否通过审核", render: FORM_ITEM_RENDER_ENUM.RADIO, - items: [{ bianma: "1", name: "是" }, { bianma: "0", name: "否" }], + items: [{ bianma: "2", name: "是" }, { bianma: "3", name: "否" }], }, { - name: "todo2", + name: "refusalReason", label: "驳回原因", render: FORM_ITEM_RENDER_ENUM.TEXTAREA, - dependencies: ["todo1"], - hidden: formValues => !(formValues.todo1 === "0"), + dependencies: ["auditFlag"], + hidden: formValues => !(formValues.auditFlag === "3"), }, ]} form={form} @@ -57,4 +57,4 @@ function Review(props) { ); } -export default Connect([NS_ENCLOSED_LONG_TERM_PERSONNEL_REVIEW], true)(Review); +export default Connect([NS_ENCLOSED_AREA_PERSONNEL_APPLY], true)(Review); diff --git a/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReviewRecords/List/index.js b/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReviewRecords/List/index.js index 6c784cf..bb1fa3a 100644 --- a/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReviewRecords/List/index.js +++ b/src/pages/Container/Enterprise/EnclosedArea/PersonnelReview/LongTermPersonnelReviewRecords/List/index.js @@ -1,29 +1,30 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Descriptions, Modal, Space } from "antd"; -import { useEffect, useState } from "react"; +import { useState } from "react"; 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 useTable from "zy-react-library/hooks/useTable"; import { getLabelName } from "zy-react-library/utils"; -import { NS_ENCLOSED_LONG_TERM_PERSONNEL_REVIEW } from "~/enumerate/namespace"; -import { BELONGING_END_ENUM } from "../../LongTermPersonnelReview/List"; +import { ENCLOSED_AREA_AUDIT_STATUS_ENUM, ENCLOSED_AREA_BELONGING_END_ENUM } from "~/enumerate/constant"; +import { NS_ENCLOSED_AREA_PERSONNEL_APPLY } from "~/enumerate/namespace"; function List(props) { const [viewRejectReasonModalVisible, setViewRejectReasonModalVisible] = useState(false); - const [currentId, setCurrentId] = useState(""); + const [refusalReason, setCurrentRefusalReason] = useState(""); const [form] = Search.useForm(); - const { tableProps, getData } = useTable(props["enclosedLongTermPersonnelReviewRecordsList"], { + const { tableProps, getData } = useTable(props["enclosedAreaPersonnelApplyList"], { form, + params: { processOrRecord: 2, personBelongType: -1 }, }); return ( getLabelName({ list: BELONGING_END_ENUM, status: record.todo1 }), + dataIndex: "personBelongType", + render: (_, record) => getLabelName({ list: ENCLOSED_AREA_BELONGING_END_ENUM, status: record.personBelongType }), + }, + { title: "公司名称", dataIndex: "applyPersonCorpName" }, + { title: "姓名", dataIndex: "applyPersonUserName" }, + { title: "部门", dataIndex: "applyPersonDepartmentName" }, + { title: "手机号", dataIndex: "userPhone" }, + { title: "申请区域", dataIndex: "closedAreaName" }, + { + title: "申请时间范围", + dataIndex: "visitStartTime", + render: (_, record) => `${record.visitStartTime}-${record.visitEndTime}`, + }, + { + title: "申请人数", + dataIndex: "entourage", + render: (_, record) => record.entourage ? JSON.parse(record.entourage).length : 0, + }, + { + title: "审核状态", + dataIndex: "auditFlag", + render: (_, record) => getLabelName({ list: ENCLOSED_AREA_AUDIT_STATUS_ENUM, status: record.auditFlag }), }, - { title: "公司名称", dataIndex: "todo2" }, - { title: "姓名", dataIndex: "todo3" }, - { title: "部门", dataIndex: "todo4" }, - { title: "手机号", dataIndex: "todo5" }, - { title: "申请区域", dataIndex: "todo6" }, - { title: "申请时间范围", dataIndex: "todo7", render: (_, record) => `${record.todo7}-${record.todo8}` }, - { title: "申请人数", dataIndex: "todo9" }, - { title: "审核状态", dataIndex: "todo10" }, { title: "操作", width: 150, @@ -52,21 +65,23 @@ function List(props) { - + {record.auditFlag === 3 && ( + + )} ), }, @@ -76,10 +91,10 @@ function List(props) { { viewRejectReasonModalVisible && ( { setViewRejectReasonModalVisible(false); - setCurrentId(""); + setCurrentRefusalReason(""); }} /> ) @@ -89,16 +104,6 @@ function List(props) { } const ViewRejectReasonModalComponent = (props) => { - const [info, setInfo] = useState({}); - const getData = async () => { - const { data } = await props["enclosedLongTermPersonnelReviewRecordsRejectReason"]({ id: props.id }); - setInfo(data); - }; - - useEffect(() => { - getData(); - }, []); - return ( { footer={[ , ]} - loading={props.enclosedLongTermPersonnelReview.enclosedLongTermPersonnelReviewLoading} > ); }; -const ViewRejectReasonModal = Connect([NS_ENCLOSED_LONG_TERM_PERSONNEL_REVIEW], true)(ViewRejectReasonModalComponent); +const ViewRejectReasonModal = Connect([NS_ENCLOSED_AREA_PERSONNEL_APPLY], true)(ViewRejectReasonModalComponent); -export default Connect([NS_ENCLOSED_LONG_TERM_PERSONNEL_REVIEW], true)(List); +export default Connect([NS_ENCLOSED_AREA_PERSONNEL_APPLY], true)(List); diff --git a/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/List/index.js b/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/List/index.js index d07c126..642d6cf 100644 --- a/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/List/index.js +++ b/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/List/index.js @@ -1,31 +1,26 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; -import { Button } from "antd"; +import { Button, 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 useTable from "zy-react-library/hooks/useTable"; import { getLabelName } from "zy-react-library/utils"; -import { NS_ENCLOSED_LONG_TERM_VEHICLE_REVIEW } from "~/enumerate/namespace"; - -export const BELONGING_END_ENUM = [ - { bianma: "stakeholder", name: "相关方端" }, - { bianma: "supervision", name: "监管端" }, - { bianma: "enterprise", name: "企业端" }, - { bianma: "internal", name: "内部车辆" }, -]; +import { ENCLOSED_AREA_AUDIT_STATUS_ENUM, ENCLOSED_AREA_BELONGING_END_ENUM } from "~/enumerate/constant"; +import { NS_ENCLOSED_AREA_VEHICLE_APPLY } from "~/enumerate/namespace"; function List(props) { const [form] = Search.useForm(); - const { tableProps, getData } = useTable(props["enclosedLongTermVehicleReviewList"], { + const { tableProps, getData } = useTable(props["enclosedAreaVehicleApplyList"], { form, + params: { processOrRecord: 1, carBelongType: -1 }, }); return ( getLabelName({ list: BELONGING_END_ENUM, status: record.todo1 }), + dataIndex: "carBelongType", + render: (_, record) => getLabelName({ list: ENCLOSED_AREA_BELONGING_END_ENUM, status: record.carBelongType }), + }, + { title: "车辆类型", dataIndex: "vehicleTypeName" }, + { title: "车牌号", dataIndex: "licenceNo" }, + { title: "申请人姓名", dataIndex: "applyPersonUserName" }, + { title: "手机号", dataIndex: "userPhone" }, + { title: "部门", dataIndex: "applyPersonDepartmentName" }, + { title: "申请区域", dataIndex: "closedAreaName" }, + { + title: "申请时间范围", + dataIndex: "visitStartTime", + render: (_, record) => `${record.visitStartTime} - ${record.visitEndTime}`, + }, + { + title: "审核状态", + dataIndex: "auditFlag", + render: (_, record) => getLabelName({ list: ENCLOSED_AREA_AUDIT_STATUS_ENUM, status: record.auditFlag }), }, - { title: "车辆类型", dataIndex: "todo2" }, - { title: "车牌号", dataIndex: "todo3" }, - { title: "驾驶人姓名", dataIndex: "todo4" }, - { title: "手机号", dataIndex: "todo5" }, - { title: "部门", dataIndex: "todo6" }, - { title: "申请区域", dataIndex: "todo7" }, - { title: "申请时间范围", dataIndex: "todo8", render: (_, record) => `${record.todo8} - ${record.todo9}` }, - { title: "审核状态", dataIndex: "todo10" }, { title: "操作", width: 80, fixed: "right", render: (_, record) => ( - + + {record.currentUserCanAudit === 1 && ( + + )} + ), }, ]} @@ -68,4 +75,4 @@ function List(props) { ); } -export default Connect([NS_ENCLOSED_LONG_TERM_VEHICLE_REVIEW], true)(List); +export default Connect([NS_ENCLOSED_AREA_VEHICLE_APPLY], true)(List); diff --git a/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/Review/index.js b/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/Review/index.js index 84099e1..63f8ab1 100644 --- a/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/Review/index.js +++ b/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/Review/index.js @@ -3,7 +3,7 @@ import { message } from "antd"; import FormBuilder from "zy-react-library/components/FormBuilder"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; -import { NS_ENCLOSED_LONG_TERM_VEHICLE_REVIEW } from "~/enumerate/namespace"; +import { NS_ENCLOSED_AREA_VEHICLE_APPLY } from "~/enumerate/namespace"; import ViewPage from "~/pages/Container/Supervision/EnclosedArea/Apply/Vehicle/View"; function Review(props) { @@ -11,7 +11,7 @@ function Review(props) { const [form] = FormBuilder.useForm(); const onSubmit = async (values) => { - const { success } = await props["enclosedLongTermVehicleReviewSubmit"]({ + const { success } = await props["enclosedAreaVehicleApplyReviewSubmit"]({ ...values, id: query.id, }); @@ -33,22 +33,22 @@ function Review(props) { span={24} onFinish={onSubmit} values={{ - todo1: "1", + auditFlag: "2", }} - loading={props.enclosedLongTermVehicleReview.enclosedLongTermVehicleReviewLoading} + loading={props.enclosedAreaVehicleApply.enclosedAreaVehicleApplyLoading} options={[ { - name: "todo1", + name: "auditFlag", label: "是否通过审核", render: FORM_ITEM_RENDER_ENUM.RADIO, - items: [{ bianma: "1", name: "是" }, { bianma: "0", name: "否" }], + items: [{ bianma: "2", name: "是" }, { bianma: "3", name: "否" }], }, { - name: "todo2", + name: "refusalReason", label: "驳回原因", render: FORM_ITEM_RENDER_ENUM.TEXTAREA, - dependencies: ["todo1"], - hidden: formValues => !(formValues.todo1 === "0"), + dependencies: ["auditFlag"], + hidden: formValues => !(formValues.auditFlag === "3"), }, ]} form={form} @@ -57,4 +57,4 @@ function Review(props) { ); } -export default Connect([NS_ENCLOSED_LONG_TERM_VEHICLE_REVIEW], true)(Review); +export default Connect([NS_ENCLOSED_AREA_VEHICLE_APPLY], true)(Review); diff --git a/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReviewRecords/List/index.js b/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReviewRecords/List/index.js index 1831838..f004ff6 100644 --- a/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReviewRecords/List/index.js +++ b/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReviewRecords/List/index.js @@ -1,29 +1,30 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Descriptions, Modal, Space } from "antd"; -import { useEffect, useState } from "react"; +import { useState } from "react"; 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 useTable from "zy-react-library/hooks/useTable"; import { getLabelName } from "zy-react-library/utils"; -import { NS_ENCLOSED_LONG_TERM_VEHICLE_REVIEW } from "~/enumerate/namespace"; -import { BELONGING_END_ENUM } from "../../LongTermVehicleReview/List"; +import { ENCLOSED_AREA_AUDIT_STATUS_ENUM, ENCLOSED_AREA_BELONGING_END_ENUM } from "~/enumerate/constant"; +import { NS_ENCLOSED_AREA_VEHICLE_APPLY } from "~/enumerate/namespace"; function List(props) { const [viewRejectReasonModalVisible, setViewRejectReasonModalVisible] = useState(false); - const [currentId, setCurrentId] = useState(""); + const [refusalReason, setCurrentRefusalReason] = useState(""); const [form] = Search.useForm(); - const { tableProps, getData } = useTable(props["enclosedLongTermVehicleReviewRecordsList"], { + const { tableProps, getData } = useTable(props["enclosedAreaVehicleApplyList"], { form, + params: { processOrRecord: 2, carBelongType: -1 }, }); return ( getLabelName({ list: BELONGING_END_ENUM, status: record.todo1 }), + dataIndex: "carBelongType", + render: (_, record) => getLabelName({ list: ENCLOSED_AREA_BELONGING_END_ENUM, status: record.carBelongType }), + }, + { title: "车辆类型", dataIndex: "vehicleTypeName" }, + { title: "车牌号", dataIndex: "licenceNo" }, + { title: "申请人姓名", dataIndex: "applyPersonUserName" }, + { title: "手机号", dataIndex: "userPhone" }, + { title: "部门", dataIndex: "applyPersonDepartmentName" }, + { title: "申请区域", dataIndex: "closedAreaName" }, + { + title: "申请时间范围", + dataIndex: "visitStartTime", + render: (_, record) => `${record.visitStartTime} - ${record.visitEndTime}`, + }, + { + title: "审核状态", + dataIndex: "auditFlag", + render: (_, record) => getLabelName({ list: ENCLOSED_AREA_AUDIT_STATUS_ENUM, status: record.auditFlag }), }, - { title: "车辆类型", dataIndex: "todo2" }, - { title: "车牌号", dataIndex: "todo3" }, - { title: "驾驶人姓名", dataIndex: "todo4" }, - { title: "手机号", dataIndex: "todo5" }, - { title: "部门", dataIndex: "todo6" }, - { title: "申请区域", dataIndex: "todo7" }, - { title: "申请时间范围", dataIndex: "todo8", render: (_, record) => `${record.todo8} - ${record.todo9}` }, - { title: "审核状态", dataIndex: "todo10" }, { title: "操作", width: 80, @@ -52,21 +61,23 @@ function List(props) { - + {record.auditFlag === 3 && ( + + )} ), }, @@ -76,10 +87,10 @@ function List(props) { { viewRejectReasonModalVisible && ( { setViewRejectReasonModalVisible(false); - setCurrentId(""); + setCurrentRefusalReason(""); }} /> ) @@ -89,16 +100,6 @@ function List(props) { } const ViewRejectReasonModalComponent = (props) => { - const [info, setInfo] = useState({}); - const getData = async () => { - const { data } = await props["enclosedLongTermVehicleReviewRecordsRejectReason"]({ id: props.id }); - setInfo(data); - }; - - useEffect(() => { - getData(); - }, []); - return ( { footer={[ , ]} - loading={props.enclosedLongTermVehicleReview.enclosedLongTermVehicleReviewLoading} > ); }; -const ViewRejectReasonModal = Connect([NS_ENCLOSED_LONG_TERM_VEHICLE_REVIEW], true)(ViewRejectReasonModalComponent); +const ViewRejectReasonModal = Connect([NS_ENCLOSED_AREA_VEHICLE_APPLY], true)(ViewRejectReasonModalComponent); -export default Connect([NS_ENCLOSED_LONG_TERM_VEHICLE_REVIEW], true)(List); +export default Connect([NS_ENCLOSED_AREA_VEHICLE_APPLY], true)(List); diff --git a/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/TemporaryVehicleReviewRecords/List/index.js b/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/TemporaryVehicleReviewRecords/List/index.js index a368023..fb79a91 100644 --- a/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/TemporaryVehicleReviewRecords/List/index.js +++ b/src/pages/Container/Enterprise/EnclosedArea/VehicleReview/TemporaryVehicleReviewRecords/List/index.js @@ -5,8 +5,8 @@ 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 useTable from "zy-react-library/hooks/useTable"; +import { ENCLOSED_AREA_BELONGING_END_ENUM } from "~/enumerate/constant"; import { NS_ENCLOSED_TEMPORARY_VEHICLE_REVIEW } from "~/enumerate/namespace"; -import { BELONGING_END_ENUM } from "~/pages/Container/Enterprise/EnclosedArea/VehicleReview/LongTermVehicleReview/List"; function List(props) { const [viewRejectReasonModalVisible, setViewRejectReasonModalVisible] = useState(false); @@ -47,7 +47,7 @@ function List(props) {