监管端添加按钮权限

master
LiuJiaNan 2026-03-26 15:53:29 +08:00
parent 61f741884e
commit 248edd7a98
33 changed files with 672 additions and 525 deletions

View File

@ -1,10 +0,0 @@
import { declareRequest } from "@cqsjjb/jjb-dva-runtime";
export const relatedPersonnelPersonnelList = declareRequest(
"relatedPersonnelLoading",
`Post > @/primeport/`,
);
export const relatedPersonnelApproval = declareRequest(
"relatedPersonnelLoading",
`Post > @/primeport/`,
);

View File

@ -7,7 +7,6 @@ import { defineNamespace } from "@cqsjjb/jjb-dva-runtime";
export const NS_GLOBAL = defineNamespace("global"); export const NS_GLOBAL = defineNamespace("global");
export const NS_APPROVER_USER = defineNamespace("approverUser"); export const NS_APPROVER_USER = defineNamespace("approverUser");
export const NS_FIRST_LEVEL_DOOR_INFO = defineNamespace("firstLevelDoorInfo"); export const NS_FIRST_LEVEL_DOOR_INFO = defineNamespace("firstLevelDoorInfo");
export const NS_RELATED_PERSONNEL = defineNamespace("relatedPersonnel");
export const NS_VEHICLE_AUDIT = defineNamespace("vehicleAudit"); export const NS_VEHICLE_AUDIT = defineNamespace("vehicleAudit");
export const NS_TEMPORARY_PERSONNEL = defineNamespace("temporaryPersonnel"); export const NS_TEMPORARY_PERSONNEL = defineNamespace("temporaryPersonnel");
export const NS_TEMPORARY_VEHICLE = defineNamespace("temporaryVehicle"); export const NS_TEMPORARY_VEHICLE = defineNamespace("temporaryVehicle");

View File

@ -90,7 +90,7 @@ function List(props) {
type="link" type="link"
onClick={() => { onClick={() => {
setViewModalVisible(true); setViewModalVisible(true);
setCurrentId(record.id); setCurrentId(record.vehicleApplyId);
}} }}
> >
查看 查看
@ -168,7 +168,7 @@ const ViewModalComponent = (props) => {
const { loading: getFileLoading, getFile } = useGetFile(); const { loading: getFileLoading, getFile } = useGetFile();
const getData = async () => { const getData = async () => {
const { data } = await props["vehicleApplyInfo"]({ id: props.id }); const { data } = await props["vehicleApplyInfo"]({ vehicleApplyId: props.id });
const drivingLicenseFile = await getFile({ const drivingLicenseFile = await getFile({
eqType: UPLOAD_FILE_TYPE_ENUM[601], eqType: UPLOAD_FILE_TYPE_ENUM[601],
eqForeignKey: data.drivingLicenseId, eqForeignKey: data.drivingLicenseId,

View File

@ -1,5 +1,6 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button } from "antd"; import { Button, Space } from "antd";
import AddIcon from "zy-react-library/components/Icon/AddIcon"; import AddIcon from "zy-react-library/components/Icon/AddIcon";
import Page from "zy-react-library/components/Page"; import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search"; import Search from "zy-react-library/components/Search";
@ -35,15 +36,19 @@ function List(props) {
/> />
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Button <Space>
type="primary" {props.permission("jgd-enclosed-personnel-apply-add") && (
icon={(<AddIcon />)} <Button
onClick={() => { type="primary"
props.history.push("./add"); icon={(<AddIcon />)}
}} onClick={() => {
> props.history.push("./add");
申请权限 }}
</Button> >
申请权限
</Button>
)}
</Space>
)} )}
columns={[ columns={[
{ title: "姓名", dataIndex: "applyPersonUserName" }, { title: "姓名", dataIndex: "applyPersonUserName" },
@ -71,14 +76,18 @@ function List(props) {
width: 80, width: 80,
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Button <Space>
type="link" {props.permission("jgd-enclosed-personnel-apply-show") && (
onClick={() => { <Button
props.history.push(`./view?id=${record.id}`); type="link"
}} onClick={() => {
> props.history.push(`./view?id=${record.id}`);
查看 }}
</Button> >
查看
</Button>
)}
</Space>
), ),
}, },
]} ]}
@ -88,4 +97,4 @@ function List(props) {
); );
} }
export default Connect([NS_ENCLOSED_AREA_PERSONNEL_APPLY], true)(List); export default Connect([NS_ENCLOSED_AREA_PERSONNEL_APPLY], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Modal, Space } from "antd"; import { Button, Descriptions, Modal, Space } from "antd";
import { useState } from "react"; import { useState } from "react";
@ -65,15 +66,17 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-enclosed-personnel-records-show") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./view?id=${record.id}`); onClick={() => {
}} props.history.push(`./view?id=${record.id}`);
> }}
查看 >
</Button> 查看
{record.auditFlag === 3 && ( </Button>
)}
{(record.auditFlag === 3 && props.permission("jgd-enclosed-personnel-records-bh")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -129,4 +132,4 @@ const ViewRejectReasonModal = (props) => {
); );
}; };
export default Connect([NS_ENCLOSED_AREA_PERSONNEL_APPLY], true)(List); export default Connect([NS_ENCLOSED_AREA_PERSONNEL_APPLY], true)(Permission(List));

View File

@ -1,5 +1,6 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button } from "antd"; import { Button, Space } from "antd";
import { useState } from "react"; import { useState } from "react";
import AddIcon from "zy-react-library/components/Icon/AddIcon"; import AddIcon from "zy-react-library/components/Icon/AddIcon";
import Page from "zy-react-library/components/Page"; import Page from "zy-react-library/components/Page";
@ -46,15 +47,19 @@ function List(props) {
/> />
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Button <Space>
type="primary" {props.permission("jgd-enclosed-vehicle-apply-add") && (
icon={(<AddIcon />)} <Button
onClick={() => { type="primary"
props.history.push("./add"); icon={(<AddIcon />)}
}} onClick={() => {
> props.history.push("./add");
申请权限 }}
</Button> >
申请权限
</Button>
)}
</Space>
)} )}
columns={[ columns={[
{ title: "车辆类型", dataIndex: "vehicleTypeName" }, { title: "车辆类型", dataIndex: "vehicleTypeName" },
@ -81,14 +86,18 @@ function List(props) {
width: 80, width: 80,
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Button <Space>
type="link" {props.permission("jgd-enclosed-vehicle-apply-show") && (
onClick={() => { <Button
props.history.push(`./view?id=${record.id}`); type="link"
}} onClick={() => {
> props.history.push(`./view?id=${record.id}`);
查看 }}
</Button> >
查看
</Button>
)}
</Space>
), ),
}, },
]} ]}
@ -100,4 +109,4 @@ function List(props) {
); );
} }
export default Connect([NS_ENCLOSED_AREA_VEHICLE_APPLY], true)(List); export default Connect([NS_ENCLOSED_AREA_VEHICLE_APPLY], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Modal, Space } from "antd"; import { Button, Descriptions, Modal, Space } from "antd";
import { useState } from "react"; import { useState } from "react";
@ -72,23 +73,27 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-enclosed-vehicle-records-show") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./view?id=${record.id}`); onClick={() => {
}} props.history.push(`./view?id=${record.id}`);
> }}
查看 >
</Button> 查看
<Button </Button>
type="link" )}
onClick={() => { {props.permission("jgd-enclosed-vehicle-records-bh") && (
setViewRejectReasonModalVisible(true); <Button
setCurrentRefusalReason(record.refusalReason); type="link"
}} onClick={() => {
> setViewRejectReasonModalVisible(true);
驳回原因 setCurrentRefusalReason(record.refusalReason);
</Button> }}
>
驳回原因
</Button>
)}
</Space> </Space>
), ),
}, },
@ -136,4 +141,4 @@ const ViewRejectReasonModal = (props) => {
); );
}; };
export default Connect([NS_ENCLOSED_AREA_VEHICLE_APPLY], true)(List); export default Connect([NS_ENCLOSED_AREA_VEHICLE_APPLY], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Space } from "antd"; import { Button, Space } from "antd";
import Page from "zy-react-library/components/Page"; import Page from "zy-react-library/components/Page";
@ -21,14 +22,16 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-feng-bi-qu-yu-guan-li-show") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./detailList?hgAuthArea=${record.hgAuthArea}&hgAuthAreaName=${record.hgAuthAreaName}`); onClick={() => {
}} props.history.push(`./detailList?hgAuthArea=${record.hgAuthArea}&hgAuthAreaName=${record.hgAuthAreaName}`);
> }}
查看 >
</Button> 查看
</Button>
)}
</Space> </Space>
), ),
}, },
@ -39,4 +42,4 @@ function List(props) {
); );
} }
export default Connect([NS_ENCLOSED_AREA], true)(List); export default Connect([NS_ENCLOSED_AREA], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, message, Modal, Space } from "antd"; import { Button, Descriptions, message, Modal, Space } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -65,7 +66,7 @@ function List(props) {
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Space> <Space>
{props.entrance !== "enterprise" && ( {(props.entrance !== "enterprise" && props.permission("jgd-enclosed-door-add")) && (
<Button <Button
type="primary" type="primary"
icon={(<AddIcon />)} icon={(<AddIcon />)}
@ -100,16 +101,18 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-enclosed-door-show") && (
type="link" <Button
onClick={() => { type="link"
setCurrentId(record.id); onClick={() => {
setViewModalVisible(true); setCurrentId(record.id);
}} setViewModalVisible(true);
> }}
查看 >
</Button> 查看
{props.entrance !== "enterprise" && ( </Button>
)}
{(props.entrance !== "enterprise" && props.permission("jgd-enclosed-door-edit")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -120,7 +123,7 @@ function List(props) {
编辑 编辑
</Button> </Button>
)} )}
{props.entrance !== "enterprise" && ( {(props.entrance !== "enterprise" && props.permission("jgd-enclosed-door-updstate")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -130,22 +133,26 @@ function List(props) {
{record.mkmjStatus === 2 ? "停用" : "开启"} {record.mkmjStatus === 2 ? "停用" : "开启"}
</Button> </Button>
)} )}
<Button {props.permission("jgd-enclosed-door-add-td") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./channel/list?id=${record.id}`); onClick={() => {
}} props.history.push(`./channel/list?id=${record.id}`);
> }}
{props.entrance !== "enterprise" ? "添加通道" : "查看通道"} >
</Button> {props.entrance !== "enterprise" ? "添加通道" : "查看通道"}
<Button </Button>
type="link" )}
onClick={() => { {props.permission("jgd-enclosed-door-add-vedio") && (
props.history.push(`./camera/list?id=${record.id}`); <Button
}} type="link"
> onClick={() => {
{props.entrance !== "enterprise" ? "添加摄像头" : "查看摄像头"} props.history.push(`./camera/list?id=${record.id}`);
</Button> }}
>
{props.entrance !== "enterprise" ? "添加摄像头" : "查看摄像头"}
</Button>
)}
</Space> </Space>
), ),
}, },
@ -393,4 +400,4 @@ const ViewModalComponent = (props) => {
const AddModal = Connect([NS_FIRST_LEVEL_DOOR_INFO, NS_ENCLOSED_AREA], true)(AddModalComponent); const AddModal = Connect([NS_FIRST_LEVEL_DOOR_INFO, NS_ENCLOSED_AREA], true)(AddModalComponent);
const ViewModal = Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(ViewModalComponent); const ViewModal = Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(ViewModalComponent);
export default Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(List); export default Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(Permission(List));

View File

@ -1,4 +1,5 @@
import useUrlState from "@ahooksjs/use-url-state"; import useUrlState from "@ahooksjs/use-url-state";
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Space } from "antd"; import { Button, Space } from "antd";
import { useEffect } from "react"; import { useEffect } from "react";
@ -86,22 +87,26 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-enclosed-area-stats-add-carinout") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./vehicleEntryAndExitRecords?id=${record.id}`); onClick={() => {
}} props.history.push(`./vehicleEntryAndExitRecords?id=${record.id}`);
> }}
车辆进出记录 >
</Button> 车辆进出记录
<Button </Button>
type="link" )}
onClick={() => { {props.permission("jgd-enclosed-area-stats-add-personinout") && (
props.history.push(`./personnelEntryAndExitRecords?id=${record.id}`); <Button
}} type="link"
> onClick={() => {
人员进出记录 props.history.push(`./personnelEntryAndExitRecords?id=${record.id}`);
</Button> }}
>
人员进出记录
</Button>
)}
</Space> </Space>
), ),
}, },
@ -112,4 +117,4 @@ function List(props) {
); );
} }
export default Connect([NS_ENCLOSED_PERSONNEL_AND_VEHICLE_STATISTICS], true)(List); export default Connect([NS_ENCLOSED_PERSONNEL_AND_VEHICLE_STATISTICS], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, message, Modal, Space } from "antd"; import { Button, message, Modal, Space } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -47,13 +48,15 @@ function ApproverUser(props) {
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Space> <Space>
<Button {props.permission("jgd-first-level-approver-add") && (
type="primary" <Button
icon={<AddIcon />} type="primary"
onClick={() => setAddModalVisible(true)} icon={<AddIcon />}
> onClick={() => setAddModalVisible(true)}
新增 >
</Button> 新增
</Button>
)}
</Space> </Space>
)} )}
columns={[ columns={[
@ -79,22 +82,26 @@ function ApproverUser(props) {
width: 120, width: 120,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-first-level-approver-edit") && (
type="link" <Button
onClick={() => { type="link"
setAddModalVisible(true); onClick={() => {
setCurrentId(record.id); setAddModalVisible(true);
}} setCurrentId(record.id);
> }}
编辑 >
</Button> 编辑
<Button </Button>
type="link" )}
danger {props.permission("jgd-first-level-approver-del") && (
onClick={() => onDelete(record)} <Button
> type="link"
删除 danger
</Button> onClick={() => onDelete(record)}
>
删除
</Button>
)}
</Space> </Space>
), ),
}, },
@ -237,4 +244,4 @@ function AddModalComponent(props) {
} }
const AddModal = Connect([NS_APPROVER_USER], true)(AddModalComponent); const AddModal = Connect([NS_APPROVER_USER], true)(AddModalComponent);
export default Connect([NS_APPROVER_USER], true)(ApproverUser); export default Connect([NS_APPROVER_USER], true)(Permission(ApproverUser));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, message, Modal, Space } from "antd"; import { Button, Descriptions, message, Modal, Space } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -60,7 +61,15 @@ function List(props) {
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Space> <Space>
<Button type="primary" icon={<AddIcon />} onClick={() => setAddModalVisible(true)}>新增</Button> {props.permission("jgd-first-level-door-info-add") && (
<Button
type="primary"
icon={<AddIcon />}
onClick={() => setAddModalVisible(true)}
>
新增
</Button>
)}
</Space> </Space>
)} )}
columns={[ columns={[
@ -84,49 +93,59 @@ function List(props) {
width: 300, width: 300,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-first-level-door-info-show") && (
type="link" <Button
onClick={() => { type="link"
setCurrentId(record.id); onClick={() => {
setInfoModalVisible(true); setCurrentId(record.id);
}} setInfoModalVisible(true);
> }}
查看 >
</Button> 查看
<Button </Button>
type="link" )}
onClick={() => { {props.permission("jgd-first-level-door-info-edit") && (
setCurrentId(record.id); <Button
setAddModalVisible(true); type="link"
}} onClick={() => {
> setCurrentId(record.id);
编辑 setAddModalVisible(true);
</Button> }}
<Button >
type="link" 编辑
danger </Button>
onClick={() => { )}
onDelete(record); {props.permission("jgd-first-level-door-info-del") && (
}} <Button
> type="link"
删除 danger
</Button> onClick={() => {
<Button onDelete(record);
type="link" }}
onClick={() => { >
props.history.push(`./channel/list?id=${record.id}`); 删除
}} </Button>
> )}
添加通道 {props.permission("jgd-first-level-door-info-add-channel") && (
</Button> <Button
<Button type="link"
type="link" onClick={() => {
onClick={() => { props.history.push(`./channel/list?id=${record.id}`);
props.history.push(`./camera/list?id=${record.id}&deviceType=1`); }}
}} >
> 添加通道
添加摄像头 </Button>
</Button> )}
{props.permission("jgd-first-level-door-info-add-camera") && (
<Button
type="link"
onClick={() => {
props.history.push(`./camera/list?id=${record.id}&deviceType=1`);
}}
>
添加摄像头
</Button>
)}
</Space> </Space>
), ),
}, },
@ -312,4 +331,4 @@ function InfoModalComponent(props) {
const AddModal = Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(AddModalComponent); const AddModal = Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(AddModalComponent);
const InfoModal = Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(InfoModalComponent); const InfoModal = Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(InfoModalComponent);
export default Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(List); export default Connect([NS_FIRST_LEVEL_DOOR_INFO], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Space } from "antd"; import { Button, Space } from "antd";
import Page from "zy-react-library/components/Page"; import Page from "zy-react-library/components/Page";
@ -35,22 +36,26 @@ function List(props) {
width: 200, width: 200,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-io-branch-pv-personinfo") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./personnelAndVehicle/list?id=${record.corpId}`); onClick={() => {
}} props.history.push(`./personnelAndVehicle/list?id=${record.corpId}`);
> }}
人员及车辆详情 >
</Button> 人员及车辆详情
<Button </Button>
type="link" )}
onClick={() => { {props.permission("jgd-io-branch-pv-pubinfo") && (
props.history.push(`./unitVehicle/list?id=${record.corpId}`); <Button
}} type="link"
> onClick={() => {
单位车辆详情 props.history.push(`./unitVehicle/list?id=${record.corpId}`);
</Button> }}
>
单位车辆详情
</Button>
)}
</Space> </Space>
), ),
}, },
@ -61,4 +66,4 @@ function List(props) {
); );
} }
export default Connect([NS_BRANCH_PERSONNEL_AND_VEHICLES], true)(List); export default Connect([NS_BRANCH_PERSONNEL_AND_VEHICLES], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal, Space } from "antd"; import { Button, Descriptions, Divider, message, Modal, Space } from "antd";
import { useState } from "react"; import { useState } from "react";
@ -50,15 +51,17 @@ function List(props) {
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Space> <Space>
<Button {props.permission("jgd-io-inspect-vehicle-add") && (
type="primary" <Button
icon={(<AddIcon />)} type="primary"
onClick={() => { icon={(<AddIcon />)}
setAddModalVisible(true); onClick={() => {
}} setAddModalVisible(true);
> }}
新增 >
</Button> 新增
</Button>
)}
</Space> </Space>
)} )}
columns={[ columns={[
@ -72,41 +75,49 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-io-inspect-vehicle-show") && (
type="link" <Button
onClick={() => { type="link"
setViewModalVisible(true); onClick={() => {
setCurrentInfo(record); setViewModalVisible(true);
}} setCurrentInfo(record);
> }}
查看 >
</Button> 查看
<Button </Button>
type="link" )}
onClick={() => { {props.permission("jgd-io-inspect-vehicle-edit") && (
setAddModalVisible(true); <Button
setCurrentInfo(record); type="link"
}} onClick={() => {
> setAddModalVisible(true);
编辑 setCurrentInfo(record);
</Button> }}
<Button >
type="link" 编辑
danger </Button>
onClick={() => { )}
onDelete(record.id); {props.permission("jgd-io-inspect-vehicle-del") && (
}} <Button
> type="link"
删除 danger
</Button> onClick={() => {
<Button onDelete(record.id);
type="link" }}
onClick={() => { >
props.history.push(`./vehicleRecords?vehicleId=${record.id}`); 删除
}} </Button>
> )}
车辆进出记录 {props.permission("jgd-io-inspect-vehicle-inout") && (
</Button> <Button
type="link"
onClick={() => {
props.history.push(`./vehicleRecords?vehicleId=${record.id}`);
}}
>
车辆进出记录
</Button>
)}
</Space> </Space>
), ),
}, },
@ -288,4 +299,4 @@ const ViewModalComponent = (props) => {
const AddModal = Connect([NS_VEHICLE_APPLY], true)(AddModalComponent); const AddModal = Connect([NS_VEHICLE_APPLY], true)(AddModalComponent);
const ViewModal = Connect([NS_VEHICLE_APPLY], true)(ViewModalComponent); const ViewModal = Connect([NS_VEHICLE_APPLY], true)(ViewModalComponent);
export default Connect([NS_VEHICLE_APPLY], true)(List); export default Connect([NS_VEHICLE_APPLY], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, message, Modal, Space } from "antd"; import { Button, message, Modal, Space } from "antd";
import AddIcon from "zy-react-library/components/Icon/AddIcon"; import AddIcon from "zy-react-library/components/Icon/AddIcon";
@ -37,15 +38,17 @@ function List(props) {
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Space> <Space>
<Button {props.permission("jgd-io-personal-vehicle-add") && (
icon={(<AddIcon />)} <Button
type="primary" icon={(<AddIcon />)}
onClick={() => { type="primary"
props.history.push("./add"); onClick={() => {
}} props.history.push("./add");
> }}
新增 >
</Button> 新增
</Button>
)}
</Space> </Space>
)} )}
columns={[ columns={[
@ -75,32 +78,38 @@ function List(props) {
width: 350, width: 350,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-io-personal-vehicle-inout") && (
type="link" <Button
onClick={() => { type="link"
onClick={() => {
// TODO // TODO
props.history.push(`./vehicleRecords?id=${record.id}`); props.history.push(`./vehicleRecords?id=${record.id}`);
}} }}
> >
车辆进出记录 车辆进出记录
</Button> </Button>
<Button )}
type="link" {props.permission("jgd-io-personal-vehicle-auditrecord") && (
onClick={() => { <Button
props.history.push(`./approvalRecords?id=${record.id}`); type="link"
}} onClick={() => {
> props.history.push(`./approvalRecords?id=${record.id}`);
审批记录 }}
</Button> >
<Button 审批记录
type="link" </Button>
onClick={() => { )}
props.history.push(`./view?id=${record.id}`); {props.permission("jgd-io-personal-vehicle-show") && (
}} <Button
> type="link"
查看 onClick={() => {
</Button> props.history.push(`./view?id=${record.id}`);
{record.auditFlag === 3 && ( }}
>
查看
</Button>
)}
{(record.auditFlag === 3 && props.permission("jgd-io-personal-vehicle-reapply")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -110,15 +119,17 @@ function List(props) {
重新申请 重新申请
</Button> </Button>
)} )}
<Button {props.permission("jgd-io-personal-vehicle-del") && (
type="link" <Button
danger type="link"
onClick={() => { danger
onDelete(record.id); onClick={() => {
}} onDelete(record.id);
> }}
删除 >
</Button> 删除
</Button>
)}
</Space> </Space>
), ),
}, },
@ -129,4 +140,4 @@ function List(props) {
); );
} }
export default Connect([NS_VEHICLE_APPLY], true)(List); export default Connect([NS_VEHICLE_APPLY], true)(Permission(List));

View File

@ -1,5 +1,6 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; 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 Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search"; import Search from "zy-react-library/components/Search";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
@ -32,14 +33,18 @@ function List(props) {
width: 150, width: 150,
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Button <Space>
type="link" {props.permission("jgd-io-port-unit-pv-show") && (
onClick={() => { <Button
props.history.push(`./personnelAndVehicle/list?id=${record.corpId}`); type="link"
}} onClick={() => {
> props.history.push(`./personnelAndVehicle/list?id=${record.corpId}`);
人员及车辆详情 }}
</Button> >
人员及车辆详情
</Button>
)}
</Space>
), ),
}, },
]} ]}
@ -49,4 +54,4 @@ function List(props) {
); );
} }
export default Connect([NS_BRANCH_PERSONNEL_AND_VEHICLES], true)(List); export default Connect([NS_BRANCH_PERSONNEL_AND_VEHICLES], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Space } from "antd"; import { Button, Space } from "antd";
import Page from "zy-react-library/components/Page"; import Page from "zy-react-library/components/Page";
@ -33,22 +34,26 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-io-stk-pv-personlist") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./personnel/list?id=${record.applyCorpId}`); onClick={() => {
}} props.history.push(`./personnel/list?id=${record.applyCorpId}`);
> }}
人员列表 >
</Button> 人员列表
<Button </Button>
type="link" )}
onClick={() => { {props.permission("jgd-io-stk-pv-carlist") && (
props.history.push(`./vehicle/list?id=${record.applyCorpId}`); <Button
}} type="link"
> onClick={() => {
车辆列表 props.history.push(`./vehicle/list?id=${record.applyCorpId}`);
</Button> }}
>
车辆列表
</Button>
)}
</Space> </Space>
), ),
}, },
@ -59,4 +64,4 @@ function List(props) {
); );
} }
export default Connect([NS_STAKEHOLDER_PERSONNEL_AND_VEHICLES], true)(List); export default Connect([NS_STAKEHOLDER_PERSONNEL_AND_VEHICLES], true)(Permission(List));

View File

@ -1,4 +1,5 @@
import useUrlState from "@ahooksjs/use-url-state"; import useUrlState from "@ahooksjs/use-url-state";
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, message, Modal, Space } from "antd"; import { Button, message, Modal, Space } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -99,32 +100,38 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-io-stock-pv-edit") && (
type="link" <Button
onClick={() => { type="link"
setCurrentInfo(record); onClick={() => {
setAuthorizationModalVisible(true); setCurrentInfo(record);
}} setAuthorizationModalVisible(true);
> }}
授权范围 >
</Button> 授权范围
<Button </Button>
type="link" )}
onClick={() => { {props.permission("jgd-io-stock-pv-show") && (
<Button
type="link"
onClick={() => {
// TODO // TODO
props.history.push(`./personnelRecords?id=${record.userId}`); props.history.push(`./personnelRecords?id=${record.userId}`);
}} }}
> >
人员进出记录 人员进出记录
</Button> </Button>
<Button )}
type="link" {props.permission("jgd-io-stock-pv-add") && (
onClick={() => { <Button
props.history.push(`./vehicleManagement/list?id=${record.userId}`); type="link"
}} onClick={() => {
> props.history.push(`./vehicleManagement/list?id=${record.userId}`);
车辆管理 }}
</Button> >
车辆管理
</Button>
)}
</Space> </Space>
), ),
}, },
@ -227,4 +234,4 @@ const AuthorizationModalVisibleComponent = (props) => {
const AuthorizationModalVisible = Connect([NS_STOCK_PERSONNEL_AND_VEHICLES], true)(AuthorizationModalVisibleComponent); const AuthorizationModalVisible = Connect([NS_STOCK_PERSONNEL_AND_VEHICLES], true)(AuthorizationModalVisibleComponent);
export default Connect([NS_STOCK_PERSONNEL_AND_VEHICLES], true)(List); export default Connect([NS_STOCK_PERSONNEL_AND_VEHICLES], true)(Permission(List));

View File

@ -1,4 +1,5 @@
import useUrlState from "@ahooksjs/use-url-state"; import useUrlState from "@ahooksjs/use-url-state";
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Space } from "antd"; import { Button, Space } from "antd";
import { useEffect } from "react"; import { useEffect } from "react";
@ -90,7 +91,7 @@ function List(props) {
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Space> <Space>
{props.type !== "view" && ( {(props.type !== "view" && props.permission("jgd-io-stock-unit-vehicle-add")) && (
<Button <Button
icon={<AddIcon />} icon={<AddIcon />}
type="primary" type="primary"
@ -145,7 +146,7 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
{props.type !== "view" && ( {(props.type !== "view" && props.permission("jgd-io-stock-unit-vehicle-auditrecord")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -155,16 +156,18 @@ function List(props) {
审核记录 审核记录
</Button> </Button>
)} )}
<Button {props.permission("jgd-io-stock-unit-vehicle-inout") && (
type="link" <Button
onClick={() => { type="link"
onClick={() => {
// TODO // TODO
props.history.push(`./vehicleRecords?id=${record.id}`); props.history.push(`./vehicleRecords?id=${record.id}`);
}} }}
> >
车辆进出记录 车辆进出记录
</Button> </Button>
{(props.type !== "view" && record.auditFlag === 3) && ( )}
{(props.type !== "view" && record.auditFlag === 3 && props.permission("jgd-io-stock-unit-vehicle-edit")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -174,14 +177,16 @@ function List(props) {
重新申请 重新申请
</Button> </Button>
)} )}
<Button {props.permission("jgd-io-stock-unit-vehicle-show") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./view?id=${record.id}`); onClick={() => {
}} props.history.push(`./view?id=${record.id}`);
> }}
查看 >
</Button> 查看
</Button>
)}
</Space> </Space>
), ),
}, },
@ -194,4 +199,4 @@ function List(props) {
); );
} }
export default Connect([NS_VEHICLE_APPLY], true)(List); export default Connect([NS_VEHICLE_APPLY], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, message, Modal, Space } from "antd"; import { Button, Descriptions, message, Modal, Space } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -58,15 +59,19 @@ function List(props) {
/> />
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Button <Space>
type="primary" {props.permission("jgd-io-blacklist-add") && (
icon={(<AddIcon />)} <Button
onClick={() => { type="primary"
setAddModalVisible(true); icon={(<AddIcon />)}
}} onClick={() => {
> setAddModalVisible(true);
新增 }}
</Button> >
新增
</Button>
)}
</Space>
)} )}
columns={[ columns={[
{ title: "车辆所属单位", dataIndex: "vehicleCorpName" }, { title: "车辆所属单位", dataIndex: "vehicleCorpName" },
@ -81,24 +86,28 @@ function List(props) {
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission("jgd-io-blacklist-show") && (
type="link" <Button
onClick={() => { type="link"
setViewModalVisible(true); onClick={() => {
setCurrentId(record.id); setViewModalVisible(true);
}} setCurrentId(record.id);
> }}
查看 >
</Button> 查看
<Button </Button>
type="link" )}
danger {props.permission("jgd-io-blacklist-del") && (
onClick={() => { <Button
onDelete(record); type="link"
}} danger
> onClick={() => {
移除黑名单 onDelete(record);
</Button> }}
>
移除黑名单
</Button>
)}
</Space> </Space>
), ),
}, },
@ -247,4 +256,4 @@ const ViewModalComponent = (props) => {
const AddModal = Connect([NS_VEHICLE_BLACKLIST], true)(AddModalComponent); const AddModal = Connect([NS_VEHICLE_BLACKLIST], true)(AddModalComponent);
const ViewModal = Connect([NS_VEHICLE_BLACKLIST], true)(ViewModalComponent); const ViewModal = Connect([NS_VEHICLE_BLACKLIST], true)(ViewModalComponent);
export default Connect([NS_VEHICLE_BLACKLIST], true)(List); export default Connect([NS_VEHICLE_BLACKLIST], true)(Permission(List));

View File

@ -1,5 +1,6 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, message, Modal } from "antd"; import { Button, message, Modal, Space } from "antd";
import { useState } from "react"; import { useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder"; import FormBuilder from "zy-react-library/components/FormBuilder";
import AddIcon from "zy-react-library/components/Icon/AddIcon"; import AddIcon from "zy-react-library/components/Icon/AddIcon";
@ -43,15 +44,19 @@ function List(props) {
/> />
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Button <Space>
type="primary" {props.permission("jgd-che-liang-wei-gui-guan-li-add") && (
icon={(<AddIcon />)} <Button
onClick={() => { type="primary"
setAddModalVisible(true); icon={(<AddIcon />)}
}} onClick={() => {
> setAddModalVisible(true);
新增 }}
</Button> >
新增
</Button>
)}
</Space>
)} )}
columns={[ columns={[
{ title: "车辆所属单位", dataIndex: "vehicleCorpName" }, { title: "车辆所属单位", dataIndex: "vehicleCorpName" },
@ -66,14 +71,18 @@ function List(props) {
width: 120, width: 120,
fixed: "right", fixed: "right",
render: (_, record) => ( render: (_, record) => (
<Button <Space>
type="link" {props.permission("jgd-che-liang-wei-gui-guan-li-show") && (
onClick={() => { <Button
props.history.push(`./violationRecords?id=${record.id}`); type="link"
}} onClick={() => {
> props.history.push(`./violationRecords?id=${record.id}`);
查看违规记录 }}
</Button> >
查看违规记录
</Button>
)}
</Space>
), ),
}, },
]} ]}
@ -180,4 +189,4 @@ const AddModalComponent = (props) => {
const AddModal = Connect([NS_VEHICLES_VIOLATION], true)(AddModalComponent); const AddModal = Connect([NS_VEHICLES_VIOLATION], true)(AddModalComponent);
export default Connect([NS_VEHICLES_VIOLATION], true)(List); export default Connect([NS_VEHICLES_VIOLATION], true)(Permission(List));

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal, Space, Spin } from "antd"; import { Button, Descriptions, Divider, message, Modal, Space, Spin } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -16,6 +17,7 @@ import { NS_VEHICLE_AUDIT } from "~/enumerate/namespace";
function RelatedVehicles(props) { function RelatedVehicles(props) {
const [currentId, setCurrentId] = useState(""); const [currentId, setCurrentId] = useState("");
const [currentVehicleApplyId, setCurrentVehicleApplyId] = useState("");
const [reviewModalVisible, setReviewModalVisible] = useState(false); const [reviewModalVisible, setReviewModalVisible] = useState(false);
const [infoModalVisible, setInfoModalVisible] = useState(false); const [infoModalVisible, setInfoModalVisible] = useState(false);
const [viewRejectReasonModalVisible, setViewRejectReasonModalVisible] = useState(false); const [viewRejectReasonModalVisible, setViewRejectReasonModalVisible] = useState(false);
@ -63,27 +65,31 @@ function RelatedVehicles(props) {
width: 150, width: 150,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
{(!props.isRecords && record.currentUserCanAudit === 1) && ( {(!props.isRecords && record.currentUserCanAudit === 1 && props.permission("jgd-entry-stk-vehicle-approval-audit")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
setReviewModalVisible(true); setReviewModalVisible(true);
setCurrentId(record.id); setCurrentId(record.id);
setCurrentVehicleApplyId(record.vehicleApplyId);
}} }}
> >
审核 审核
</Button> </Button>
)} )}
<Button {props.permission(props.viewBtn || "jgd-entry-stk-vehicle-approval-show") && (
type="link" <Button
onClick={() => { type="link"
setInfoModalVisible(true); onClick={() => {
setCurrentId(record.id); setInfoModalVisible(true);
}} setCurrentId(record.id);
> setCurrentVehicleApplyId(record.vehicleApplyId);
查看 }}
</Button> >
{record.auditStatus === 3 && ( 查看
</Button>
)}
{(record.auditStatus === 3 && props.permission(props.viewReasonsRefusalBtn || "jgd-entry-stk-vehicle-approval-show-reasons-refusal")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -104,9 +110,11 @@ function RelatedVehicles(props) {
reviewModalVisible && ( reviewModalVisible && (
<ReviewModal <ReviewModal
id={currentId} id={currentId}
vehicleApplyId={currentVehicleApplyId}
onCancel={() => { onCancel={() => {
setReviewModalVisible(false); setReviewModalVisible(false);
setCurrentId(""); setCurrentId("");
setCurrentVehicleApplyId("");
}} }}
getData={getData} getData={getData}
/> />
@ -116,9 +124,11 @@ function RelatedVehicles(props) {
infoModalVisible && ( infoModalVisible && (
<InfoModal <InfoModal
id={currentId} id={currentId}
vehicleApplyId={currentVehicleApplyId}
onCancel={() => { onCancel={() => {
setInfoModalVisible(false); setInfoModalVisible(false);
setCurrentId(""); setCurrentId("");
setCurrentVehicleApplyId("");
}} }}
/> />
) )
@ -164,7 +174,7 @@ const ReviewModalComponent = (props) => {
confirmLoading={props.vehicleAudit.vehicleAuditLoading} confirmLoading={props.vehicleAudit.vehicleAuditLoading}
> >
<Spin spinning={props.vehicleAudit.vehicleAuditLoading}> <Spin spinning={props.vehicleAudit.vehicleAuditLoading}>
<PublicInfoModal id={props.id} /> <PublicInfoModal id={props.id} vehicleApplyId={props.vehicleApplyId} />
<FormBuilder <FormBuilder
form={form} form={form}
onFinish={onSubmit} onFinish={onSubmit}
@ -225,7 +235,7 @@ const InfoModalComponent = (props) => {
const { getFile } = useGetFile(); const { getFile } = useGetFile();
const getData = async () => { const getData = async () => {
const { data } = await props["vehicleAuditInfo"]({ id: props.id }); const { data } = await props["vehicleAuditInfo"]({ vehicleApplyId: props.vehicleApplyId });
const drivingLicenseFile = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM[601], eqForeignKey: data.drivingLicenseId }); const drivingLicenseFile = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM[601], eqForeignKey: data.drivingLicenseId });
const attachmentFile = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM[602], eqForeignKey: data.attachmentId }); const attachmentFile = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM[602], eqForeignKey: data.attachmentId });
const informSignFile = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM[606], eqForeignKey: data.informSignId }); const informSignFile = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM[606], eqForeignKey: data.informSignId });
@ -280,11 +290,11 @@ function InfoModal(props) {
<Button key="cancel" onClick={props.onCancel}>取消</Button>, <Button key="cancel" onClick={props.onCancel}>取消</Button>,
]} ]}
> >
<PublicInfoModal id={props.id} /> <PublicInfoModal id={props.id} vehicleApplyId={props.vehicleApplyId} />
</Modal> </Modal>
); );
} }
const ReviewModal = Connect([NS_VEHICLE_AUDIT], true)(ReviewModalComponent); const ReviewModal = Connect([NS_VEHICLE_AUDIT], true)(ReviewModalComponent);
const PublicInfoModal = Connect([NS_VEHICLE_AUDIT], true)(InfoModalComponent); const PublicInfoModal = Connect([NS_VEHICLE_AUDIT], true)(InfoModalComponent);
export default Connect([NS_VEHICLE_AUDIT], true)(RelatedVehicles); export default Connect([NS_VEHICLE_AUDIT], true)(Permission(RelatedVehicles));

View File

@ -1,7 +1,7 @@
import RelatedVehiclesPage from "../RelatedVehicles"; import RelatedVehiclesPage from "../RelatedVehicles";
function RelatedVehiclesRecords(props) { function RelatedVehiclesRecords(props) {
return (<RelatedVehiclesPage isRecords={true} {...props} />); return (<RelatedVehiclesPage viewBtn="jgd-entry-stk-vehicle-records-show" viewReasonsRefusalBtn="jgd-entry-stk-vehicle-records-show-reasons-refusal" isRecords={true} {...props} />);
} }
export default RelatedVehiclesRecords; export default RelatedVehiclesRecords;

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal, Space, Spin } from "antd"; import { Button, Descriptions, Divider, message, Modal, Space, Spin } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -67,7 +68,7 @@ function ShareVehicles(props) {
width: 100, width: 100,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
{(!props.isRecords && record.currentUserCanAudit === 1) && ( {(!props.isRecords && record.currentUserCanAudit === 1 && props.permission("jgd-entry-share-vehicle-approval-audit")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -79,16 +80,18 @@ function ShareVehicles(props) {
审核 审核
</Button> </Button>
)} )}
<Button {props.permission(props.viewBtn || "jgd-entry-share-vehicle-approval-show") && (
type="link" <Button
onClick={() => { type="link"
setInfoModalVisible(true); onClick={() => {
setCurrentId(record.id); setInfoModalVisible(true);
setCurrentVehicleApplyId(record.vehicleApplyId); setCurrentId(record.id);
}} setCurrentVehicleApplyId(record.vehicleApplyId);
> }}
查看 >
</Button> 查看
</Button>
)}
</Space> </Space>
), ),
}, },
@ -195,7 +198,7 @@ function InfoModalComponent(props) {
const [recordsList, setRecordsList] = useState([]); const [recordsList, setRecordsList] = useState([]);
const getData = async () => { const getData = async () => {
const { data } = await props["vehicleAuditInfo"]({ id: props.id }); const { data } = await props["vehicleAuditInfo"]({ vehicleApplyId: props.vehicleApplyId });
const changeAfter = data.changeAfter ? JSON.parse(data.changeAfter) : {}; const changeAfter = data.changeAfter ? JSON.parse(data.changeAfter) : {};
const changeBefore = data.changeBefore ? JSON.parse(data.changeBefore) : {}; const changeBefore = data.changeBefore ? JSON.parse(data.changeBefore) : {};
const changeAfterDrivingLicenseFile = await getFile({ const changeAfterDrivingLicenseFile = await getFile({
@ -410,4 +413,4 @@ function InfoModal(props) {
const ReviewModal = Connect([NS_VEHICLE_AUDIT], true)(ReviewModalComponent); const ReviewModal = Connect([NS_VEHICLE_AUDIT], true)(ReviewModalComponent);
const PublicInfoModal = Connect([NS_VEHICLE_AUDIT], true)(InfoModalComponent); const PublicInfoModal = Connect([NS_VEHICLE_AUDIT], true)(InfoModalComponent);
export default Connect([NS_VEHICLE_AUDIT], true)(ShareVehicles); export default Connect([NS_VEHICLE_AUDIT], true)(Permission(ShareVehicles));

View File

@ -1,7 +1,7 @@
import ShareVehiclesPage from "../ShareVehicles"; import ShareVehiclesPage from "../ShareVehicles";
function ShareVehiclesRecords(props) { function ShareVehiclesRecords(props) {
return (<ShareVehiclesPage isRecords={true} {...props} />); return (<ShareVehiclesPage viewBtn="jgd-entry-share-vehicle-records-show" isRecords={true} {...props} />);
} }
export default ShareVehiclesRecords; export default ShareVehiclesRecords;

View File

@ -1,3 +1,4 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal, Space } from "antd"; import { Button, Descriptions, Divider, message, Modal, Space } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -11,7 +12,7 @@ import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useGetFile from "zy-react-library/hooks/useGetFile"; import useGetFile from "zy-react-library/hooks/useGetFile";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils"; import { getLabelName } from "zy-react-library/utils";
import { NS_RELATED_PERSONNEL, NS_TEMPORARY_PERSONNEL } from "~/enumerate/namespace"; import { NS_TEMPORARY_PERSONNEL } from "~/enumerate/namespace";
const STATUS_ENUM = [ const STATUS_ENUM = [
{ bianma: "1", name: "审核中" }, { bianma: "1", name: "审核中" },
@ -68,7 +69,7 @@ function RelatedPersonnel(props) {
width: 150, width: 150,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
{(!props.isRecords && record.currentUserCanAudit === 1) && ( {(!props.isRecords && record.currentUserCanAudit === 1 && props.permission("jgd-entry-stk-personnel-approval-audit")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -79,16 +80,18 @@ function RelatedPersonnel(props) {
审核 审核
</Button> </Button>
)} )}
<Button {props.permission(props.viewBtn || "jgd-entry-stk-personnel-approval-show") && (
type="link" <Button
onClick={() => { type="link"
setInfoModalVisible(true); onClick={() => {
setCurrentId(record.id); setInfoModalVisible(true);
}} setCurrentId(record.id);
> }}
查看 >
</Button> 查看
{record.auditFlag === 3 && ( </Button>
)}
{(record.auditFlag === 3 && props.permission(props.viewReasonsRefusalBtn || "jgd-entry-stk-personnel-approval-show-reasons-refusal")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -203,13 +206,6 @@ const InfoModalComponent = (props) => {
const { getFile } = useGetFile(); const { getFile } = useGetFile();
const { tableProps } = useTable(props["relatedPersonnelPersonnelList"], {
params: {
id: props.id,
},
useStorageQueryCriteria: false,
});
const getData = async () => { const getData = async () => {
const { data } = await props["temporaryPersonnelInfo"]({ id: props.id }); const { data } = await props["temporaryPersonnelInfo"]({ id: props.id });
const informSignFile = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM[606], eqForeignKey: data.informSignId }); const informSignFile = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM[606], eqForeignKey: data.informSignId });
@ -240,7 +236,7 @@ const InfoModalComponent = (props) => {
{ label: "访问期限", children: `${info.visitStartTime}${info.visitEndTime}` }, { label: "访问期限", children: `${info.visitStartTime}${info.visitEndTime}` },
{ label: "项目人员数", children: info.personApplyCount }, { label: "项目人员数", children: info.personApplyCount },
{ label: "申请时间", children: info.applyTime }, { label: "申请时间", children: info.applyTime },
{ label: "申请状态", children: getLabelName({ list: STATUS_ENUM, status: info.auditFlag })}, { label: "申请状态", children: getLabelName({ list: STATUS_ENUM, status: info.auditFlag }) },
{ label: "申请人签字", children: (<PreviewImg files={info.informSignFile} />) }, { label: "申请人签字", children: (<PreviewImg files={info.informSignFile} />) },
]} ]}
/> />
@ -253,7 +249,8 @@ const InfoModalComponent = (props) => {
{ title: "部门", dataIndex: "personDepartmentName" }, { title: "部门", dataIndex: "personDepartmentName" },
// { title: "是否培训", dataIndex: "todo3" }, // { title: "是否培训", dataIndex: "todo3" },
]} ]}
{...tableProps} pagination={false}
dataSource={info.personApplyList}
/> />
</div> </div>
); );
@ -301,5 +298,5 @@ function InfoModal(props) {
} }
const ReviewModal = Connect([NS_TEMPORARY_PERSONNEL], true)(ReviewModalComponent); const ReviewModal = Connect([NS_TEMPORARY_PERSONNEL], true)(ReviewModalComponent);
const PublicInfoModal = Connect([NS_RELATED_PERSONNEL, NS_TEMPORARY_PERSONNEL], true)(InfoModalComponent); const PublicInfoModal = Connect([NS_TEMPORARY_PERSONNEL], true)(InfoModalComponent);
export default Connect([NS_TEMPORARY_PERSONNEL], true)(RelatedPersonnel); export default Connect([NS_TEMPORARY_PERSONNEL], true)(Permission(RelatedPersonnel));

View File

@ -1,7 +1,7 @@
import RelatedPersonnelPage from "../RelatedPersonnel"; import RelatedPersonnelPage from "../RelatedPersonnel";
function RelatedPersonnelRecords(props) { function RelatedPersonnelRecords(props) {
return (<RelatedPersonnelPage isRecords={true} {...props} />); return (<RelatedPersonnelPage viewBtn="jgd-entry-stk-personnel-records-show" viewReasonsRefusalBtn="jgd-entry-stk-personnel-records-show-reasons-refusal" isRecords={true} {...props} />);
} }
export default RelatedPersonnelRecords; export default RelatedPersonnelRecords;

View File

@ -1,4 +1,5 @@
import { CameraOutlined } from "@ant-design/icons"; import { CameraOutlined } from "@ant-design/icons";
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal, QRCode, Space, Spin } from "antd"; import { Button, Descriptions, Divider, message, Modal, QRCode, Space, Spin } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -64,7 +65,7 @@ function List(props) {
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Space> <Space>
{!props.isRecords && ( {(!props.isRecords && props.permission("jgd-entry-temp-personnel-add")) && (
<Button <Button
type="primary" type="primary"
icon={(<AddIcon />)} icon={(<AddIcon />)}
@ -106,24 +107,28 @@ function List(props) {
width: 200, width: 200,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission(props.viewBtn || "jgd-entry-temp-personnel-show") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./view?id=${record.id}`); onClick={() => {
}} props.history.push(`./view?id=${record.id}`);
> }}
查看 >
</Button> 查看
<Button </Button>
type="link" )}
onClick={() => { {props.permission(props.auditInfoBtn || "jgd-entry-temp-personnel-audit-info") && (
setApprovalDetailsModalVisible(true); <Button
setCurrentId(record.id); type="link"
}} onClick={() => {
> setApprovalDetailsModalVisible(true);
审批详情 setCurrentId(record.id);
</Button> }}
{(!props.isRecords && record.currentUserCanAudit === 1) && ( >
审批详情
</Button>
)}
{(!props.isRecords && record.currentUserCanAudit === 1 && props.permission("jgd-entry-temp-personnel-audit")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -374,4 +379,4 @@ const ApprovalDetailsModalComponent = (props) => {
const ReviewModal = Connect([NS_TEMPORARY_PERSONNEL], true)(ReviewModalComponent); const ReviewModal = Connect([NS_TEMPORARY_PERSONNEL], true)(ReviewModalComponent);
const ApprovalDetailsModal = Connect([NS_TEMPORARY_PERSONNEL], true)(ApprovalDetailsModalComponent); const ApprovalDetailsModal = Connect([NS_TEMPORARY_PERSONNEL], true)(ApprovalDetailsModalComponent);
export default Connect([NS_TEMPORARY_PERSONNEL, NS_FIRST_LEVEL_DOOR_INFO], true)(List); export default Connect([NS_TEMPORARY_PERSONNEL, NS_FIRST_LEVEL_DOOR_INFO], true)(Permission(List));

View File

@ -1,6 +1,7 @@
import ListPage from "../../TemporaryPersonnel/List"; import ListPage from "../../TemporaryPersonnel/List";
function List(props) { function List(props) {
return (<ListPage isRecords={true} {...props} />); return (<ListPage viewBtn="jgd-entry-temp-personnel-records-show" auditInfoBtn="jgd-entry-temp-personnel-records-audit-info" isRecords={true} {...props} />);
} }
export default List; export default List;

View File

@ -3,4 +3,5 @@ import ViewPage from "../../TemporaryPersonnel/View";
function View(props) { function View(props) {
return (<ViewPage {...props} />); return (<ViewPage {...props} />);
} }
export default View; export default View;

View File

@ -1,4 +1,5 @@
import { CameraOutlined } from "@ant-design/icons"; import { CameraOutlined } from "@ant-design/icons";
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Divider, message, Modal, QRCode, Space, Spin } from "antd"; import { Button, Descriptions, Divider, message, Modal, QRCode, Space, Spin } from "antd";
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
@ -60,7 +61,7 @@ function List(props) {
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<Space> <Space>
{!props.isRecords && ( {(!props.isRecords && props.permission("jgd-entry-temp-vehicle-add")) && (
<Button <Button
type="primary" type="primary"
icon={(<AddIcon />)} icon={(<AddIcon />)}
@ -105,24 +106,28 @@ function List(props) {
width: 200, width: 200,
render: (_, record) => ( render: (_, record) => (
<Space> <Space>
<Button {props.permission(props.viewBtn || "jgd-entry-temp-vehicle-show") && (
type="link" <Button
onClick={() => { type="link"
props.history.push(`./view?id=${record.id}`); onClick={() => {
}} props.history.push(`./view?id=${record.id}`);
> }}
查看 >
</Button> 查看
<Button </Button>
type="link" )}
onClick={() => { {props.permission(props.auditInfoBtn || "jgd-entry-temp-vehicle-audit-info") && (
setApprovalDetailsModalVisible(true); <Button
setCurrentId(record.id); type="link"
}} onClick={() => {
> setApprovalDetailsModalVisible(true);
审批详情 setCurrentId(record.id);
</Button> }}
{(!props.isRecords && record.currentUserCanAudit === 1) && ( >
审批详情
</Button>
)}
{(!props.isRecords && record.currentUserCanAudit === 1 && props.permission("jgd-entry-temp-vehicle-audit")) && (
<Button <Button
type="link" type="link"
onClick={() => { onClick={() => {
@ -384,4 +389,4 @@ const ApprovalDetailsModalComponent = (props) => {
const ReviewModal = Connect([NS_VEHICLE_AUDIT], true)(ReviewModalComponent); const ReviewModal = Connect([NS_VEHICLE_AUDIT], true)(ReviewModalComponent);
const ApprovalDetailsModal = Connect([NS_TEMPORARY_VEHICLE], true)(ApprovalDetailsModalComponent); const ApprovalDetailsModal = Connect([NS_TEMPORARY_VEHICLE], true)(ApprovalDetailsModalComponent);
export default Connect([NS_VEHICLE_AUDIT, NS_FIRST_LEVEL_DOOR_INFO], true)(List); export default Connect([NS_VEHICLE_AUDIT, NS_FIRST_LEVEL_DOOR_INFO], true)(Permission(List));

View File

@ -1,6 +1,7 @@
import ListPage from "../../TemporaryVehicle/List"; import ListPage from "../../TemporaryVehicle/List";
function List(props) { function List(props) {
return (<ListPage isRecords={true} {...props} />); return (<ListPage viewBtn="jgd-entry-temp-vehicle-records-show" auditInfoBtn="jgd-entry-temp-vehicle-records-audit-info" isRecords={true} {...props} />);
} }
export default List; export default List;

View File

@ -3,4 +3,5 @@ import ViewPage from "../../TemporaryVehicle/View";
function View(props) { function View(props) {
return (<ViewPage isRecords={true} {...props} />); return (<ViewPage isRecords={true} {...props} />);
} }
export default View; export default View;