添加重大隐患页面

majorHidden
853931625@qq.com 2026-04-29 15:49:09 +08:00
parent 8de1065acd
commit 3233b9f7c5
28 changed files with 2240 additions and 52 deletions

View File

@ -9,9 +9,10 @@ module.exports = {
// 应用后端分支名称,部署上线需要
javaGitBranch: "<branch-name>",
// 接口服务地址
API_HOST: "https://gbs-gateway.qhdsafety.com",
// API_HOST: "http://192.168.20.100:30140",
// API_HOST: "http://192.168.10.127",
API_HOST: "",
// API_HOST: "",
},
production: {
// 应用后端分支名称,部署上线需要

View File

@ -32,7 +32,7 @@
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-to-print": "^3.2.0",
"zy-react-library": "^1.2.35"
"zy-react-library": "^1.3.6"
},
"devDependencies": {
"@antfu/eslint-config": "^5.4.1",

View File

@ -27,6 +27,7 @@ import { NS_CONFIRM_USER, NS_LEDGER, NS_PART } from "~/enumerate/namespace";
function Add(props) {
const query = useGetUrlQuery();
const [form] = Form.useForm();
const hiddenLevel = Form.useWatch("hiddenLevel", form);
const hiddenFindDept = Form.useWatch("hiddenFindDept", form);
const rectificationDeptId = Form.useWatch("rectificationDeptId", form);
const checkDeptId = Form.useWatch("checkDeptId", form);
@ -128,12 +129,39 @@ function Add(props) {
setXgfProjectList(data);
};
const isBigOrMajorHidden = ["jdyh001", "hiddenLevel2002", "jdyh002"].includes(hiddenLevel);
const clearPresetRectificationFields = () => {
form.setFieldsValue({
rectificationDeadline: undefined,
rectificationDescr: undefined,
afterRectificationImageFiles: undefined,
rectificationDeptId: undefined,
rectificationDeptName: undefined,
rectificationUserId: undefined,
rectificationUserName: undefined,
checkDeptId: undefined,
checkDeptName: undefined,
checkUserId: undefined,
checkUserName: undefined,
});
};
useEffect(() => {
getData();
getConfirmUserList();
getXgfProjectList();
}, []);
useEffect(() => {
if (!hiddenLevel)
return;
if (isBigOrMajorHidden) {
form.setFieldValue("rectificationType", 2);
clearPresetRectificationFields();
}
}, [form, hiddenLevel, isBigOrMajorHidden]);
const clearHiddenRecognizeState = () => {
selectHiddens.current = [];
currentProcessHiddenIndex.current = -1;
@ -216,32 +244,49 @@ function Add(props) {
return false;
};
const onSubmit = async (values) => {
const submitValues = isBigOrMajorHidden
? {
...values,
rectificationType: 2,
rectificationDeadline: undefined,
rectificationDescr: undefined,
afterRectificationImageFiles: [],
rectificationDeptId: undefined,
rectificationDeptName: undefined,
rectificationUserId: undefined,
rectificationUserName: undefined,
checkDeptId: undefined,
checkDeptName: undefined,
checkUserId: undefined,
checkUserName: undefined,
}
: values;
await deleteFile({ single: false, files: deleteHiddenImageFiles.current });
await deleteFile({ single: false, files: deleteHiddenVideoFiles.current });
await deleteFile({ single: false, files: deleteAfterRectificationImageFiles.current });
const { id } = await uploadFile({
single: false,
files: values.hiddenImageFiles,
files: submitValues.hiddenImageFiles,
params: { type: UPLOAD_FILE_TYPE_ENUM["3"], foreignKey: query.hiddenId },
});
await uploadFile({
single: false,
files: values.hiddenVideoFiles,
files: submitValues.hiddenVideoFiles,
params: { type: UPLOAD_FILE_TYPE_ENUM["102"], foreignKey: id },
});
const { id: afterRectificationImageId } = await uploadFile({
single: false,
files: values.afterRectificationImageFiles,
files: submitValues.afterRectificationImageFiles,
params: { type: UPLOAD_FILE_TYPE_ENUM["4"], foreignKey: "" },
});
let hiddenPart = values.hiddenPart;
let hiddenPart = submitValues.hiddenPart;
if (hiddenPartType === "input") {
const { data } = await props["partAdd"]({ hiddenregion: values.hiddenPart });
const { data } = await props["partAdd"]({ hiddenregion: submitValues.hiddenPart });
hiddenPart = data;
}
const hiddenImageFiles = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM["3"], eqForeignKey: id });
const { success } = await props[!query.id ? "hiddenAdd" : "hiddenEdit"]({
...values,
...submitValues,
id: query.id,
hiddenId: id,
source: "1",
@ -524,6 +569,19 @@ function Add(props) {
},
{ name: "creatorName", label: "隐患发现人名称", onlyForLabel: true },
{ name: "hiddenFindTime", label: "隐患发现时间", render: FORM_ITEM_RENDER_ENUM.DATETIME },
{
name: "creatorId1",
label: "较大重大隐患确认人",
render: (
<PersonnelSelect
isNeedDepartmentId={false}
isNeedCorpInfoId={true}
params={{ corpinfoId: userInfo.current.id }}
onGetLabel={label => form.setFieldValue("creatorName", label)}
/>
),
hidden: !isBigOrMajorHidden,
},
{
name: "confirmUserId",
label: "隐患确认人",
@ -538,6 +596,7 @@ function Add(props) {
form.setFieldValue("confirmDeptId", findItem.deptId);
},
},
hidden: isBigOrMajorHidden,
},
{ name: "confirmUserName", label: "隐患确认人名称", onlyForLabel: true },
{ name: "confirmDeptName", label: "隐患确认人部门名称", onlyForLabel: true },
@ -546,7 +605,9 @@ function Add(props) {
name: "rectificationType",
label: "隐患处置",
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: HIDDEN_RECTIFICATION_TYPE_ENUM,
items: isBigOrMajorHidden
? HIDDEN_RECTIFICATION_TYPE_ENUM.filter(item => item.bianma === 2)
: HIDDEN_RECTIFICATION_TYPE_ENUM,
span: 24,
componentProps: {
onChange: (value) => {
@ -601,7 +662,7 @@ function Add(props) {
render: FORM_ITEM_RENDER_ENUM.DATE,
span: 24,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 2),
hidden: formValues => isBigOrMajorHidden || !(formValues.rectificationType === 2),
},
{
name: "rectificationDescr",
@ -609,7 +670,7 @@ function Add(props) {
render: FORM_ITEM_RENDER_ENUM.TEXTAREA,
span: 24,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 1),
hidden: formValues => isBigOrMajorHidden || !(formValues.rectificationType === 1),
},
{
name: "afterRectificationImageFiles",
@ -622,47 +683,51 @@ function Add(props) {
),
span: 24,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 1),
hidden: formValues => isBigOrMajorHidden || !(formValues.rectificationType === 1),
},
...(
isRelated === 0
? [
{
name: "rectificationDeptId",
label: "整改部门",
required: false,
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("rectificationUserId", "");
form.setFieldValue("rectificationUserName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("rectificationDeptName", label);
}}
/>
),
},
{ name: "rectificationDeptName", label: "整改部门名称", onlyForLabel: true },
{
name: "rectificationUserId",
label: "整改人",
required: false,
render: (
<PersonnelSelect
params={{ departmentId: rectificationDeptId }}
onGetLabel={label => form.setFieldValue("rectificationUserName", label)}
/>
),
},
{ name: "rectificationUserName", label: "整改人名称", onlyForLabel: true },
]
: [
{ name: "rectificationDeptName", label: "整改单位", componentProps: { disabled: true } },
{ name: "rectificationDeptId", label: "整改单位id", onlyForLabel: true },
{ name: "rectificationUserName", label: "整改人", componentProps: { disabled: true } },
{ name: "rectificationUserId", label: "整改人id", onlyForLabel: true },
]),
isBigOrMajorHidden
? []
: isRelated === 0
? [
{
name: "rectificationDeptId",
label: "整改部门",
required: false,
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("rectificationUserId", "");
form.setFieldValue("rectificationUserName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("rectificationDeptName", label);
}}
/>
),
hidden: isBigOrMajorHidden,
},
{ name: "rectificationDeptName", label: "整改部门名称", onlyForLabel: true },
{
name: "rectificationUserId",
label: "整改人",
required: false,
render: (
<PersonnelSelect
params={{ departmentId: rectificationDeptId }}
onGetLabel={label => form.setFieldValue("rectificationUserName", label)}
/>
),
hidden: isBigOrMajorHidden,
},
{ name: "rectificationUserName", label: "整改人名称", onlyForLabel: true },
]
: [
{ name: "rectificationDeptName", label: "整改单位", componentProps: { disabled: true } },
{ name: "rectificationDeptId", label: "整改单位id", onlyForLabel: true },
{ name: "rectificationUserName", label: "整改人", componentProps: { disabled: true } },
{ name: "rectificationUserId", label: "整改人id", onlyForLabel: true },
]),
{
name: "checkDeptId",
label: "验收部门",
@ -679,7 +744,7 @@ function Add(props) {
/>
),
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 1),
hidden: formValues => isBigOrMajorHidden || !(formValues.rectificationType === 1),
},
{ name: "checkDeptName", label: "验收部门名称", onlyForLabel: true },
{
@ -693,7 +758,7 @@ function Add(props) {
/>
),
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 1),
hidden: formValues => isBigOrMajorHidden || !(formValues.rectificationType === 1),
},
{ name: "checkUserName", label: "验收人名称", onlyForLabel: true },
]}

View File

@ -0,0 +1,113 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import dayjs from "dayjs";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { HIDDEN_SOURCE_ENUM } from "zy-react-library/enum/hidden/gwj";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { IS_RELATED_ENUM } from "~/enumerate/constant";
import { NS_CONFIRM } from "~/enumerate/namespace";
function List(props) {
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["confirmList"], {
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
});
return (
<Page isShowAllAction={false}>
<Search
options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
{ name: "hiddenDesc", label: "隐患描述" },
{ name: "hiddenFindTime", label: "隐患发现时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
{ name: "hiddenFindDept", label: "隐患发现部门", render: <DepartmentSelectTree /> },
{
name: "hiddenType",
label: "隐患类型",
render: <DictionarySelectTree dictValue="hiddenType" onlyLastLevel />,
},
{
name: "hiddenLevel",
label: "隐患级别",
render: <HiddenLevelSelectTree isShowNeglect={false} isShowLarger={false} isShowMajor={false} />,
},
{ name: "creatorName", label: "隐患发现人" },
// { name: "confirmUserName", label: "确认人" },
{
name: "isRelated",
label: "是否相关方",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: IS_RELATED_ENUM,
},
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{
title: "隐患来源",
dataIndex: "source",
render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }),
},
{ title: "隐患描述", dataIndex: "hiddenDesc" },
{ title: "隐患类型", dataIndex: "hiddenTypeName" },
{ title: "隐患级别", dataIndex: "hiddenLevelName", width: 100 },
{ title: "隐患发现部门", dataIndex: "hiddenFindDeptName" },
{ title: "隐患发现人", dataIndex: "createName", width: 130 },
{
title: "隐患发现时间",
dataIndex: "hiddenFindTime",
render: (_, record) => record.hiddenFindTime ? dayjs(record.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : "",
},
{ title: "隐患状态", dataIndex: "state", render: () => "待确认" },
{
title: "操作",
width: 100,
fixed: "right",
render: (_, record) => (
<Space>
{/* {props.permission("fgs-yhqr-info") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`../HiddenView?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
查看
</Button>
{/* )} */}
{/* {props.permission("fgs-yhqr-confirm") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`./review?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
确认
</Button>
{/* )} */}
</Space>
),
},
]}
{...tableProps}
/>
</Page>
);
}
export default Connect([NS_CONFIRM], true)(Permission(List));

View File

@ -0,0 +1,248 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Divider, Form, message, Modal } from "antd";
import { useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useUploadFile from "zy-react-library/hooks/useUploadFile";
import { NS_CONFIRM, NS_LEDGER } from "~/enumerate/namespace";
function Confirm(props) {
const [form] = Form.useForm();
const hiddenLevel = Form.useWatch("hiddenLevel", form);
const checkDeptId = Form.useWatch("checkDeptId", form);
const [data, setData] = useState({});
const xgfProjectInfo = useRef({});
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
const isNeglectHidden = hiddenLevel === "hiddenLevel1001";
const isMinorOrGeneralHidden = ["hiddenLevel1004", "hiddenLevel1002"].includes(hiddenLevel);
const isBigOrMajorHidden = ["jdyh001", "hiddenLevel2002"].includes(hiddenLevel);
const isShowConfirmTime = isNeglectHidden || isMinorOrGeneralHidden || isBigOrMajorHidden;
const getXgfProjectInfo = async (id) => {
const { data } = await props["xgfProjectInfo"]({ id });
xgfProjectInfo.current = data;
};
const clearLevelRelatedFields = () => {
form.setFieldsValue({
confirmUserId: undefined,
confirmUserName: undefined,
rectificationDeadline: undefined,
deptId: undefined,
deptName: undefined,
checkDeptId: undefined,
checkDeptName: undefined,
checkUserId: undefined,
checkUserName: undefined,
linshi: undefined,
buchong: undefined,
});
};
const onSubmit = (values) => {
Modal.confirm({
title: "提示",
content: "是否确认隐患?",
onOk: async () => {
const { id } = await uploadFile({
single: false,
files: values.linshiFilse,
params: {
type: UPLOAD_FILE_TYPE_ENUM[179],
foreignKey: "",
},
});
await uploadFile({
single: false,
files: values.buchongFilse,
params: {
type: UPLOAD_FILE_TYPE_ENUM[180],
foreignKey: id,
},
});
const { success } = await props["confirmSubmit"]({
status: "1",
rectificationType: data.rectificationType,
...values,
id: data.id,
hiddenId: data.hiddenId,
});
if (success) {
message.success("确认成功");
props.history.goBack();
}
},
});
};
return (
<div>
<Page headerTitle="查看" contentPadding="0 20px 20px 20px" isShowFooter={false}>
<HiddenInfo
onGetData={(data) => {
setData(data);
if (data.isRelated === 1)
getXgfProjectInfo(data.projectId);
form.setFieldValue("hiddenLevel", data.hiddenLevel);
form.setFieldValue("hiddenLevelName", data.hiddenLevelName);
const hiddenUserPresetsCO = data.hiddenUserPresetsCO || {};
if (data.source !== 4 || data.source !== 7) {
form.setFieldValue("deptId", hiddenUserPresetsCO.rectifyDeptId || data.hiddenFindDept);
form.setFieldValue("deptName", hiddenUserPresetsCO.rectifyDeptName || data.hiddenFindDeptName);
form.setFieldValue("userId", hiddenUserPresetsCO.rectifyUserId || data.creatorId);
form.setFieldValue("userName", hiddenUserPresetsCO.rectifyUserName || data.creatorName);
form.setFieldValue("checkDeptId", hiddenUserPresetsCO.checkDeptId || data.hiddenFindDept);
form.setFieldValue("checkDeptName", hiddenUserPresetsCO.checkDeptName || data.hiddenFindDeptName);
form.setFieldValue("checkUserId", hiddenUserPresetsCO.checkUserId || data.creatorId);
form.setFieldValue("checkUserName", hiddenUserPresetsCO.checkUserName || data.creatorName);
}
}}
/>
<Divider orientation="left">发现隐患部门负责人确认</Divider>
<div>
<FormBuilder
form={form}
loading={props.confirm.confirmLoading || uploadFileLoading}
showCancelButton={false}
submitButtonText="通过"
onFinish={onSubmit}
values={{ rectificationType: 1 }}
options={[
{
name: "hiddenLevel",
label: "隐患级别",
render: (
<HiddenLevelSelectTree
isShowNeglect={data.rectificationType === 2}
onChange={(value) => {
clearLevelRelatedFields();
form.setFieldValue("hiddenLevel", value);
}}
onGetLabel={(label) => {
form.setFieldValue("hiddenLevelName", label);
}}
/>
),
},
{ name: "hiddenLevelName", label: "隐患级别名称", onlyForLabel: true },
{
name: "rectificationTime",
label: "隐患确认时间",
render: FORM_ITEM_RENDER_ENUM.DATE,
hidden: !isShowConfirmTime,
},
{
name: "confirmUserId",
label: "一般隐患确认人",
render: (
<PersonnelSelect
params={{ departmentId: checkDeptId }}
onGetLabel={label => form.setFieldValue("confirmUserName", label)}
/>
),
hidden: !isMinorOrGeneralHidden,
},
{ name: "confirmUserName", label: "一般隐患确认人名称", onlyForLabel: true },
{
name: "rectificationDeadline",
label: "整改完成期限",
render: FORM_ITEM_RENDER_ENUM.DATE,
hidden: !isMinorOrGeneralHidden,
},
...(
data.isRelated === 0
? [
{
name: "deptId",
label: "整改部门",
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("userId", "");
form.setFieldValue("userName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("deptName", label);
}}
/>
),
hidden: !isMinorOrGeneralHidden,
},
{ name: "deptName", label: "整改部门名称", onlyForLabel: true },
]
: [
{ name: "deptName", label: "整改单位", componentProps: { disabled: true }, hidden: !isMinorOrGeneralHidden },
{ name: "deptId", label: "整改单位id", onlyForLabel: true },
]
),
{
name: "checkUserId",
label: "隐患核实人",
render: (
<PersonnelSelect
params={{ departmentId: checkDeptId }}
onGetLabel={label => form.setFieldValue("checkUserName", label)}
/>
),
hidden: !isBigOrMajorHidden,
},
{ name: "checkUserName", label: "隐患核实人名称", onlyForLabel: true },
{
name: "linshiFilse",
label: "临时处置信息",
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
span: 24,
hidden: !isBigOrMajorHidden,
},
{
name: "buchongFilse",
label: "补充重大/较大隐患信息",
span: 24,
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
hidden: !isBigOrMajorHidden,
},
]}
/>
</div>
</Page>
</div>
);
}
export default Connect([NS_CONFIRM, NS_LEDGER], true)(Confirm);

View File

@ -0,0 +1,9 @@
function Confirm(props) {
return (
<div>
{props.children}
</div>
);
}
export default Confirm;

View File

@ -0,0 +1,114 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import dayjs from "dayjs";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { HIDDEN_SOURCE_ENUM } from "zy-react-library/enum/hidden/gwj";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { IS_RELATED_ENUM } from "~/enumerate/constant";
import { NS_CONFIRM } from "~/enumerate/namespace";
function List(props) {
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["confirmList"], {
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
});
return (
<Page isShowAllAction={false}>
<Search
options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
{ name: "hiddenDesc", label: "隐患描述" },
{ name: "hiddenFindTime", label: "隐患发现时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
{ name: "hiddenFindDept", label: "隐患发现部门", render: <DepartmentSelectTree /> },
{
name: "hiddenType",
label: "隐患类型",
render: <DictionarySelectTree dictValue="hiddenType" onlyLastLevel />,
},
{
name: "hiddenLevel",
label: "隐患级别",
render: <HiddenLevelSelectTree isShowNeglect={false} isShowLarger={false} isShowMajor={false} />,
},
{ name: "creatorName", label: "隐患发现人" },
// { name: "confirmUserName", label: "确认人" },
{
name: "isRelated",
label: "是否相关方",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: IS_RELATED_ENUM,
},
{ name: "creatorName", label: "隐患确认人" },
{ name: "creatorName", label: "隐患核实人" },
{ name: "creatorName", label: "隐患核定人" },
{ name: "creatorName", label: "隐患整改人" },
{ name: "creatorName", label: "隐患验收人" },
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{
title: "隐患来源",
dataIndex: "source",
render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }),
},
{ title: "隐患描述", dataIndex: "hiddenDesc" },
{ title: "隐患类型", dataIndex: "hiddenTypeName" },
{ title: "隐患级别", dataIndex: "hiddenLevelName", width: 100 },
{ title: "隐患发现部门", dataIndex: "hiddenFindDeptName" },
{ title: "隐患发现人", dataIndex: "createName", width: 130 },
{
title: "隐患发现时间",
dataIndex: "hiddenFindTime",
render: (_, record) => record.hiddenFindTime ? dayjs(record.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : "",
},
{ title: "确认人", dataIndex: "createName", width: 130 },
{ title: "核实人", dataIndex: "createName", width: 130 },
{ title: "核定人", dataIndex: "createName", width: 130 },
{ title: "整改人", dataIndex: "createName", width: 130 },
{ title: "验收人", dataIndex: "createName", width: 130 },
{ title: "隐患状态", dataIndex: "state", render: () => "待确认" },
{
title: "操作",
width: 100,
fixed: "right",
render: (_, record) => (
<Space>
{/* {props.permission("fgs-yhgl-info") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`../HiddenView?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
查看
</Button>
{/* )} */}
</Space>
),
},
]}
{...tableProps}
/>
</Page>
);
}
export default Connect([NS_CONFIRM], true)(Permission(List));

View File

@ -0,0 +1,9 @@
function HiddenManage(props) {
return (
<div>
{props.children}
</div>
);
}
export default HiddenManage;

View File

@ -0,0 +1,175 @@
import { Button, Descriptions, Divider } from "antd";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useDownloadFile from "zy-react-library/hooks/useDownloadFile";
import useGetFile from "zy-react-library/hooks/useGetFile";
function ViewModal(props) {
const record = props.record || {};
const { loading: getFileLoading, getFile } = useGetFile();
const { downloadFile } = useDownloadFile();
const downloadFun = async (type) => {
const data = await getFile({
eqType: UPLOAD_FILE_TYPE_ENUM[type],
eqForeignKey: record.id,
});
if (data && data.length > 0) {
data.forEach((item) => {
downloadFile({ url: item.filePath });
});
}
};
return (
<div>
<div>
<Divider orientation="left">发现隐患部门负责人确认</Divider>
<Descriptions
bordered
column={2}
labelStyle={{ width: 200 }}
items={[
{ label: "隐患级别", children: record.sensorCode || "-", span: 2 },
{ label: "隐患确认人", children: record.sensorName || "-", span: 2 },
{ label: "隐患确认时间", children: record.sensorTypeName || "-", span: 2 },
{ label: "临时处置信息", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(179)}
>
下载
</Button>
), span: 2 },
{ label: "补充重大/较大隐患信息", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(180)}
>
下载
</Button>
), span: 2 },
]}
/>
</div>
<div>
<Divider orientation="left">分公司安委会办公室副主任核实</Divider>
<Descriptions
bordered
column={2}
labelStyle={{ width: 200 }}
items={[
{ label: "隐患级别", children: record.sensorCode || "-", span: 2 },
{ label: "核实人", children: record.sensorName || "-", span: 2 },
{ label: "核对时间", children: record.sensorTypeName || "-", span: 2 },
{ label: "核对结果", children: record.sensorTypeName || "-", span: 2 },
{ label: "安委会办公室会议记录", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(181)}
>
下载
</Button>
), span: 2 },
{ label: "整改建议及方案", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(182)}
>
下载
</Button>
), span: 2 },
]}
/>
</div>
<div>
<Divider orientation="left">港股公司安委会办公室核定</Divider>
<Descriptions
bordered
column={2}
labelStyle={{ width: 200 }}
items={[
{ label: "隐患级别", children: record.sensorCode || "-", span: 2 },
{ label: "核实人", children: record.sensorName || "-", span: 2 },
{ label: "核对时间", children: record.sensorTypeName || "-", span: 2 },
{ label: "隐患调查报告", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(183)}
>
下载
</Button>
), span: 2 },
{ label: "安委会或党委会决议记录", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(184)}
>
下载
</Button>
), span: 2 },
]}
/>
</div>
<div>
<Divider orientation="left">较大隐患整改</Divider>
<Descriptions
bordered
column={2}
labelStyle={{ width: 200 }}
items={[
{ label: "整改部门", children: record.sensorCode || "-", span: 2 },
{ label: "整改人", children: record.sensorName || "-", span: 2 },
{ label: "临时处置措施", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(185)}
>
下载
</Button>
), span: 2 },
{ label: "隐患整改方案", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(186)}
>
下载
</Button>
), span: 2 },
{ label: "隐患整改过程记录", children: (
<Button
type="primary"
loading={getFileLoading}
onClick={() => downloadFun(187)}
>
下载
</Button>
), span: 2 },
]}
/>
</div>
<div>
<Divider orientation="left">较大隐患验收</Divider>
<Descriptions
bordered
column={2}
labelStyle={{ width: 200 }}
items={[
{ label: "验收人", children: record.sensorCode || "-", span: 2 },
{ label: "验收时间", children: record.sensorName || "-", span: 2 },
{ label: "验收结果", children: record.sensorTypeName || "-", span: 2 },
]}
/>
</div>
</div>
);
}
export default ViewModal;

View File

@ -0,0 +1,17 @@
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import ConfirmViev from "./confirmViev";
function HiddenView() {
const query = useGetUrlQuery();
return (
<Page headerTitle="查看" contentPadding="0 20px 20px 20px">
<HiddenInfo history={query.history === "1"} />
<ConfirmViev />
</Page>
);
}
export default HiddenView;

View File

@ -0,0 +1,121 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import dayjs from "dayjs";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { HIDDEN_SOURCE_ENUM } from "zy-react-library/enum/hidden/gwj";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { IS_RELATED_ENUM } from "~/enumerate/constant";
import { NS_CONFIRM } from "~/enumerate/namespace";
function List(props) {
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["confirmList"], {
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
});
return (
<Page isShowAllAction={false}>
<Search
options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
{ name: "hiddenDesc", label: "隐患描述" },
{ name: "hiddenFindTime", label: "隐患发现时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
{ name: "hiddenFindDept", label: "隐患发现部门", render: <DepartmentSelectTree /> },
{
name: "hiddenType",
label: "隐患类型",
render: <DictionarySelectTree dictValue="hiddenType" onlyLastLevel />,
},
{
name: "hiddenLevel",
label: "隐患级别",
render: <HiddenLevelSelectTree isShowNeglect={false} isShowLarger={false} isShowMajor={false} />,
},
{ name: "creatorName", label: "隐患发现人" },
// { name: "confirmUserName", label: "确认人" },
{
name: "isRelated",
label: "是否相关方",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: IS_RELATED_ENUM,
},
{ name: "creatorName", label: "确认人" },
{ name: "creatorName", label: "核实人" },
{ name: "creatorName", label: "核定人" },
{ name: "creatorName", label: "整改人" },
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{
title: "隐患来源",
dataIndex: "source",
render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }),
},
{ title: "隐患描述", dataIndex: "hiddenDesc" },
{ title: "隐患类型", dataIndex: "hiddenTypeName" },
{ title: "隐患级别", dataIndex: "hiddenLevelName", width: 100 },
{ title: "隐患发现部门", dataIndex: "hiddenFindDeptName" },
{ title: "隐患发现人", dataIndex: "createName", width: 130 },
{
title: "隐患发现时间",
dataIndex: "hiddenFindTime",
render: (_, record) => record.hiddenFindTime ? dayjs(record.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : "",
},
{ title: "确认人", dataIndex: "createName", width: 130 },
{ title: "核实人", dataIndex: "createName", width: 130 },
{ title: "核定人", dataIndex: "createName", width: 130 },
{ title: "整改人", dataIndex: "createName", width: 130 },
{ title: "隐患状态", dataIndex: "state", render: () => "待确认" },
{
title: "操作",
width: 100,
fixed: "right",
render: (_, record) => (
<Space>
{/* {props.permission("fgs-yhzg-info") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`../HiddenView?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
查看
</Button>
{/* )} */}
{/* {props.permission("fgs-yhzg-rectification") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`./Rectification?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
整改
</Button>
{/* )} */}
</Space>
),
},
]}
{...tableProps}
/>
</Page>
);
}
export default Connect([NS_CONFIRM], true)(Permission(List));

View File

@ -0,0 +1,204 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Descriptions, Divider, Form, message, Modal } from "antd";
import { useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Upload from "zy-react-library/components/Upload";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useUploadFile from "zy-react-library/hooks/useUploadFile";
import { NS_CONFIRM, NS_LEDGER } from "~/enumerate/namespace";
import ConfirmViev from "~/pages/Container/BranchCompany/MajorHidden/HiddenView/confirmViev";
function Rectification(props) {
const [form] = Form.useForm();
const deptId = Form.useWatch("deptId", form);
const [data, setData] = useState({});
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
const xgfProjectInfo = useRef({});
const getXgfProjectInfo = async (id) => {
const { data } = await props["xgfProjectInfo"]({ id });
xgfProjectInfo.current = data;
};
const onSubmit = (values) => {
Modal.confirm({
title: "提示",
content: "是否确认整改?",
onOk: async () => {
const { id } = await uploadFile({
single: false,
files: values.linshiFilse,
params: {
type: UPLOAD_FILE_TYPE_ENUM[185],
foreignKey: "",
},
});
await uploadFile({
single: false,
files: values.yhzgfyFiles,
params: {
type: UPLOAD_FILE_TYPE_ENUM[186],
foreignKey: id,
},
});
await uploadFile({
single: false,
files: values.yhzggcjlFilse,
params: {
type: UPLOAD_FILE_TYPE_ENUM[187],
foreignKey: id,
},
});
const { success } = await props["confirmSubmit"]({
status: "1",
rectificationType: data.rectificationType,
...values,
id: data.id,
hiddenId: data.hiddenId,
});
if (success) {
message.success("确认成功");
props.history.goBack();
}
},
});
};
return (
<div>
<Page headerTitle="查看" isShowFooter={false}>
<HiddenInfo
onGetData={(data) => {
setData(data);
if (data.isRelated === 1)
getXgfProjectInfo(data.projectId);
}}
/>
<ConfirmViev />
<Divider orientation="left">较大隐患整改</Divider>
<div>
<Descriptions
bordered
column={2}
labelStyle={{ width: 200 }}
items={[
{ label: "整改部门", children: "-", span: 2 },
{ label: "整改负责人", children: "-", span: 2 },
]}
/>
</div>
<div>
<FormBuilder
form={form}
loading={props.confirm.confirmLoading || uploadFileLoading}
showCancelButton={false}
submitButtonText="通过"
onFinish={onSubmit}
values={{ rectificationType: 1 }}
options={[
{
name: "linshiFilse",
label: "临时处置措施",
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
span: 24,
},
{
name: "yhzgfyFiles",
label: "隐患整改方案",
span: 24,
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
},
{
name: "yhzggcjlFilse",
label: "隐患整改过程记录",
span: 24,
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
},
{
name: "deptId",
label: "隐患验收部门",
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("userId", "");
form.setFieldValue("userName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("deptName", label);
}}
/>
),
},
{ name: "deptName", label: "隐患验收部门名称", onlyForLabel: true },
{
name: "userId",
label: "隐患验收人",
render: (
<PersonnelSelect
params={{ departmentId: deptId }}
onGetLabel={label => form.setFieldValue("userName", label)}
/>
),
},
{ name: "userName", label: "隐患验收人名称", onlyForLabel: true },
]}
/>
</div>
</Page>
</div>
);
}
export default Connect([NS_CONFIRM, NS_LEDGER], true)(Rectification);

View File

@ -0,0 +1,9 @@
function Rectification(props) {
return (
<div>
{props.children}
</div>
);
}
export default Rectification;

View File

@ -0,0 +1,117 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import dayjs from "dayjs";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { HIDDEN_SOURCE_ENUM } from "zy-react-library/enum/hidden/gwj";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { IS_RELATED_ENUM } from "~/enumerate/constant";
import { NS_CONFIRM } from "~/enumerate/namespace";
function List(props) {
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["confirmList"], {
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
});
return (
<Page isShowAllAction={false}>
<Search
options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
{ name: "hiddenDesc", label: "隐患描述" },
{ name: "hiddenFindTime", label: "隐患发现时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
{ name: "hiddenFindDept", label: "隐患发现部门", render: <DepartmentSelectTree /> },
{
name: "hiddenType",
label: "隐患类型",
render: <DictionarySelectTree dictValue="hiddenType" onlyLastLevel />,
},
{
name: "hiddenLevel",
label: "隐患级别",
render: <HiddenLevelSelectTree isShowNeglect={false} isShowLarger={false} isShowMajor={false} />,
},
{ name: "creatorName", label: "隐患发现人" },
// { name: "confirmUserName", label: "确认人" },
{
name: "isRelated",
label: "是否相关方",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: IS_RELATED_ENUM,
},
{ name: "creatorName", label: "隐患确认人" },
{ name: "creatorName", label: "隐患核实人" },
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{
title: "隐患来源",
dataIndex: "source",
render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }),
},
{ title: "隐患描述", dataIndex: "hiddenDesc" },
{ title: "隐患类型", dataIndex: "hiddenTypeName" },
{ title: "隐患级别", dataIndex: "hiddenLevelName", width: 100 },
{ title: "隐患发现部门", dataIndex: "hiddenFindDeptName" },
{ title: "隐患发现人", dataIndex: "createName", width: 130 },
{
title: "隐患发现时间",
dataIndex: "hiddenFindTime",
render: (_, record) => record.hiddenFindTime ? dayjs(record.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : "",
},
{ title: "确认人", dataIndex: "createName", width: 130 },
{ title: "核实人", dataIndex: "createName", width: 130 },
{ title: "隐患状态", dataIndex: "state", render: () => "待确认" },
{
title: "操作",
width: 100,
fixed: "right",
render: (_, record) => (
<Space>
{/* {props.permission("fgs-yhhs-info") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`../HiddenView?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
查看
</Button>
{/* )} */}
{/* {props.permission("fgs-yhhs-verify") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`./Verify?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
核实
</Button>
{/* )} */}
</Space>
),
},
]}
{...tableProps}
/>
</Page>
);
}
export default Connect([NS_CONFIRM], true)(Permission(List));

View File

@ -0,0 +1,182 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Divider, Form, message, Modal } from "antd";
import { useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useUploadFile from "zy-react-library/hooks/useUploadFile";
import { NS_CONFIRM, NS_LEDGER } from "~/enumerate/namespace";
import ConfirmViev from "~/pages/Container/BranchCompany/MajorHidden/HiddenView/confirmViev";
function Verify(props) {
const [form] = Form.useForm();
const deptId = Form.useWatch("deptId", form);
const [data, setData] = useState({});
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
const xgfProjectInfo = useRef({});
const getXgfProjectInfo = async (id) => {
const { data } = await props["xgfProjectInfo"]({ id });
xgfProjectInfo.current = data;
};
const onSubmit = (values) => {
Modal.confirm({
title: "提示",
content: "是否确认核实?",
onOk: async () => {
const { id } = await uploadFile({
single: false,
files: values.awhbgsjlFilse,
params: {
type: UPLOAD_FILE_TYPE_ENUM[181],
foreignKey: "",
},
});
await uploadFile({
single: true,
files: values.zgjyfaFilse,
params: {
type: UPLOAD_FILE_TYPE_ENUM[182],
foreignKey: id,
},
});
const { success } = await props["confirmSubmit"]({
status: "1",
rectificationType: data.rectificationType,
...values,
id: data.id,
hiddenId: data.hiddenId,
});
if (success) {
message.success("确认成功");
props.history.goBack();
}
},
});
};
return (
<div>
<Page headerTitle="查看" isShowFooter={false}>
<HiddenInfo
onGetData={(data) => {
setData(data);
if (data.isRelated === 1)
getXgfProjectInfo(data.projectId);
}}
/>
<ConfirmViev />
<Divider orientation="left">分公司安委会办公室副主任核实</Divider>
<div>
<FormBuilder
form={form}
loading={props.confirm.confirmLoading || uploadFileLoading}
showCancelButton={false}
submitButtonText="通过"
onFinish={onSubmit}
values={{ rectificationType: 1 }}
options={[
{
name: "rectificationTime",
label: "核实结果",
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: [{ bianma: 2, name: "打回" }, { bianma: 1, name: "核实通过" }],
},
{
name: "deptId",
label: "隐患核实部门",
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("userId", "");
form.setFieldValue("userName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("deptName", label);
}}
/>
),
},
{ name: "deptName", label: "隐患核实部门名称", onlyForLabel: true },
{
name: "userId",
label: "隐患核定人",
render: (
<PersonnelSelect
params={{ departmentId: deptId }}
onGetLabel={label => form.setFieldValue("userName", label)}
/>
),
},
{ name: "userName", label: "隐患核定人名称", onlyForLabel: true },
{
name: "rectificationTime",
label: "隐患核实时间",
render: FORM_ITEM_RENDER_ENUM.DATE,
},
{
name: "awhbgsjlFilse",
label: "安委会办公室会议记录",
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
span: 24,
},
{
name: "zgjyfaFilse",
label: "整改建议及方案",
span: 24,
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
},
{
name: "rectificationTime",
label: "打回原因",
},
]}
/>
</div>
</Page>
</div>
);
}
export default Connect([NS_CONFIRM, NS_LEDGER], true)(Verify);

View File

@ -0,0 +1,9 @@
function Verify(props) {
return (
<div>
{props.children}
</div>
);
}
export default Verify;

View File

@ -0,0 +1,9 @@
function MajorHidden(props) {
return (
<div>
{props.children}
</div>
);
}
export default MajorHidden;

View File

@ -0,0 +1,114 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Descriptions, Divider, Form, message, Modal } from "antd";
import { useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useUploadFile from "zy-react-library/hooks/useUploadFile";
import { NS_CONFIRM, NS_LEDGER } from "~/enumerate/namespace";
import ConfirmViev from "~/pages/Container/BranchCompany/MajorHidden/HiddenView/confirmViev";
function Rectification(props) {
const [form] = Form.useForm();
const deptId = Form.useWatch("deptId", form);
const [data, setData] = useState({});
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
const xgfProjectInfo = useRef({});
const getXgfProjectInfo = async (id) => {
const { data } = await props["xgfProjectInfo"]({ id });
xgfProjectInfo.current = data;
};
const onSubmit = (values) => {
Modal.confirm({
title: "提示",
content: "是否确认隐患?",
onOk: async () => {
const { filePath } = await uploadFile({
single: true,
files: values.filepath,
params: {
type: UPLOAD_FILE_TYPE_ENUM[1],
foreignKey: "",
},
});
const { success } = await props["confirmSubmit"]({
status: "1",
rectificationType: data.rectificationType,
...values,
id: data.id,
hiddenId: data.hiddenId,
});
if (success) {
message.success("确认成功");
props.history.goBack();
}
},
});
};
return (
<div>
<Page headerTitle="查看" isShowFooter={false}>
<HiddenInfo
onGetData={(data) => {
setData(data);
if (data.isRelated === 1)
getXgfProjectInfo(data.projectId);
}}
/>
<ConfirmViev />
<Divider orientation="left">较大隐患验收</Divider>
<div>
<Descriptions
bordered
column={2}
labelStyle={{ width: 200 }}
items={[
{ label: "验收人", children: "-", span: 2 },
]}
/>
</div>
<div>
<FormBuilder
form={form}
loading={props.confirm.confirmLoading || uploadFileLoading}
showCancelButton={false}
submitButtonText="通过"
onFinish={onSubmit}
values={{ rectificationType: 1 }}
options={[
{
name: "yanshoujieguo",
label: "验收结果",
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: [{ bianma: 1, name: "验收通过" }, { bianma: 2, name: "验收打回" }],
},
{
name: "yanshoushijian",
label: "验收时间",
render: FORM_ITEM_RENDER_ENUM.DATETIME,
},
{
name: "yanshoushijian",
label: "打回原因",
},
]}
/>
</div>
</Page>
</div>
);
}
export default Connect([NS_CONFIRM, NS_LEDGER], true)(Rectification);

View File

@ -0,0 +1,123 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import dayjs from "dayjs";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { HIDDEN_SOURCE_ENUM } from "zy-react-library/enum/hidden/gwj";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { IS_RELATED_ENUM } from "~/enumerate/constant";
import { NS_CONFIRM } from "~/enumerate/namespace";
function List(props) {
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["confirmList"], {
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
});
return (
<Page isShowAllAction={false}>
<Search
options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
{ name: "hiddenDesc", label: "隐患描述" },
{ name: "hiddenFindTime", label: "隐患发现时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
{ name: "hiddenFindDept", label: "隐患发现部门", render: <DepartmentSelectTree /> },
{
name: "hiddenType",
label: "隐患类型",
render: <DictionarySelectTree dictValue="hiddenType" onlyLastLevel />,
},
{
name: "hiddenLevel",
label: "隐患级别",
render: <HiddenLevelSelectTree isShowNeglect={false} isShowLarger={false} isShowMajor={false} />,
},
{ name: "creatorName", label: "隐患发现人" },
// { name: "confirmUserName", label: "确认人" },
{
name: "isRelated",
label: "是否相关方",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: IS_RELATED_ENUM,
},
{ name: "creatorName", label: "隐患确认人" },
{ name: "creatorName", label: "隐患核实人" },
{ name: "creatorName", label: "隐患核定人" },
{ name: "creatorName", label: "隐患整改人" },
{ name: "creatorName", label: "隐患验收人" },
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{
title: "隐患来源",
dataIndex: "source",
render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }),
},
{ title: "隐患描述", dataIndex: "hiddenDesc" },
{ title: "隐患类型", dataIndex: "hiddenTypeName" },
{ title: "隐患级别", dataIndex: "hiddenLevelName", width: 100 },
{ title: "隐患发现部门", dataIndex: "hiddenFindDeptName" },
{ title: "隐患发现人", dataIndex: "createName", width: 130 },
{
title: "隐患发现时间",
dataIndex: "hiddenFindTime",
render: (_, record) => record.hiddenFindTime ? dayjs(record.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : "",
},
{ title: "确认人", dataIndex: "createName", width: 130 },
{ title: "核实人", dataIndex: "createName", width: 130 },
{ title: "核定人", dataIndex: "createName", width: 130 },
{ title: "整改人", dataIndex: "createName", width: 130 },
{ title: "验收人", dataIndex: "createName", width: 130 },
{ title: "隐患状态", dataIndex: "state", render: () => "待确认" },
{
title: "操作",
width: 100,
fixed: "right",
render: (_, record) => (
<Space>
{/* {props.permission("gfd-yhys-info") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`../HiddenView?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
查看
</Button>
{/* )} */}
{/* {props.permission("gfd-yhys-acceptance") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`./Acceptance?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
验收
</Button>
{/* )} */}
</Space>
),
},
]}
{...tableProps}
/>
</Page>
);
}
export default Connect([NS_CONFIRM], true)(Permission(List));

View File

@ -0,0 +1,9 @@
function Acceptance(props) {
return (
<div>
{props.children}
</div>
);
}
export default Acceptance;

View File

@ -0,0 +1,199 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Divider, Form, message, Modal } from "antd";
import { useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
import useUploadFile from "zy-react-library/hooks/useUploadFile";
import { NS_CONFIRM, NS_LEDGER } from "~/enumerate/namespace";
import ConfirmViev from "~/pages/Container/BranchCompany/MajorHidden/HiddenView/confirmViev";
function Approval(props) {
const [form] = Form.useForm();
const hiddenLevel = Form.useWatch("hiddenLevel", form);
const deptId = Form.useWatch("deptId", form);
const [data, setData] = useState({});
const xgfProjectInfo = useRef({});
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
const isMajorHidden = hiddenLevel === "hiddenLevel2002";
const getXgfProjectInfo = async (id) => {
const { data } = await props["xgfProjectInfo"]({ id });
xgfProjectInfo.current = data;
};
const onSubmit = (values) => {
Modal.confirm({
title: "提示",
content: "是否确认隐患?",
onOk: async () => {
const { id } = await uploadFile({
single: false,
files: values.yhdcboFilse,
params: {
type: UPLOAD_FILE_TYPE_ENUM[183],
foreignKey: "",
},
});
await uploadFile({
single: false,
files: values.awhdwhjybgFulse,
params: {
type: UPLOAD_FILE_TYPE_ENUM[184],
foreignKey: id,
},
});
const { success } = await props["confirmSubmit"]({
status: "1",
rectificationType: data.rectificationType,
...values,
id: data.id,
hiddenId: data.hiddenId,
});
if (success) {
message.success("确认成功");
props.history.goBack();
}
},
});
};
return (
<div>
<Page headerTitle="查看" isShowFooter={false}>
<HiddenInfo
onGetData={(data) => {
setData(data);
if (data.isRelated === 1)
getXgfProjectInfo(data.projectId);
form.setFieldValue("hiddenLevel", data.hiddenLevel);
form.setFieldValue("hiddenLevelName", data.hiddenLevelName);
}}
/>
<ConfirmViev />
<Divider orientation="left">港股公司安委会办公室核定</Divider>
<div>
<FormBuilder
form={form}
loading={props.confirm.confirmLoading || uploadFileLoading}
showCancelButton={false}
submitButtonText="通过"
onFinish={onSubmit}
labelCol={{ span: 6 }}
values={{ rectificationType: 1 }}
options={[
{
name: "hiddenLevel",
label: "隐患级别",
render: (
<HiddenLevelSelectTree
isShowNeglect={data.rectificationType === 2}
onChange={(value) => {
form.setFieldValue("hiddenLevel", value);
}}
onGetLabel={(label) => {
form.setFieldValue("hiddenLevelName", label);
}}
/>
),
},
{
name: "rectificationTime",
label: "隐患核实时间",
render: FORM_ITEM_RENDER_ENUM.DATETIME,
},
{
name: "deptId",
label: " 整改部门/整改单位",
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("userId", "");
form.setFieldValue("userName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("deptName", label);
}}
/>
),
hidden: isMajorHidden,
},
{ name: "deptName", label: "整改部门名称", onlyForLabel: true, hidden: isMajorHidden },
{
name: "userId",
label: "整改负责人",
render: (
<PersonnelSelect
params={{ departmentId: deptId }}
onGetLabel={label => form.setFieldValue("userName", label)}
/>
),
hidden: isMajorHidden,
},
{ name: "userName", label: "整改人名称", onlyForLabel: true, hidden: isMajorHidden },
{ name: "hiddenLevelName", label: "隐患级别名称", onlyForLabel: true, hidden: isMajorHidden },
{
name: "yhdcboFilse",
label: "隐患调查报告",
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
span: 24,
hidden: isMajorHidden,
},
{
name: "awhdwhjybgFulse",
label: "安委会或党委会决议记录",
span: 24,
render: (
<Upload
maxCount={1}
accept=".pdf"
fileType="document"
tipContent="默认上限1个且只支持pdf格式"
onRemove={() => {
form.setFieldValue("filepath");
return false;
}}
/>
),
hidden: isMajorHidden,
},
]}
/>
</div>
</Page>
</div>
);
}
export default Connect([NS_CONFIRM, NS_LEDGER], true)(Approval);

View File

@ -0,0 +1,119 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import dayjs from "dayjs";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { HIDDEN_SOURCE_ENUM } from "zy-react-library/enum/hidden/gwj";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { IS_RELATED_ENUM } from "~/enumerate/constant";
import { NS_CONFIRM } from "~/enumerate/namespace";
function List(props) {
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["confirmList"], {
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
});
return (
<Page isShowAllAction={false}>
<Search
options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
{ name: "hiddenDesc", label: "隐患描述" },
{ name: "hiddenFindTime", label: "隐患发现时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
{ name: "hiddenFindDept", label: "隐患发现部门", render: <DepartmentSelectTree /> },
{
name: "hiddenType",
label: "隐患类型",
render: <DictionarySelectTree dictValue="hiddenType" onlyLastLevel />,
},
{
name: "hiddenLevel",
label: "隐患级别",
render: <HiddenLevelSelectTree isShowNeglect={false} isShowLarger={false} isShowMajor={false} />,
},
{ name: "creatorName", label: "隐患发现人" },
// { name: "confirmUserName", label: "确认人" },
{
name: "isRelated",
label: "是否相关方",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: IS_RELATED_ENUM,
},
{ name: "creatorName", label: "隐患确认人" },
{ name: "creatorName", label: "隐患核实人" },
{ name: "creatorName", label: "隐患核定人" },
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{
title: "隐患来源",
dataIndex: "source",
render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }),
},
{ title: "隐患描述", dataIndex: "hiddenDesc" },
{ title: "隐患类型", dataIndex: "hiddenTypeName" },
{ title: "隐患级别", dataIndex: "hiddenLevelName", width: 100 },
{ title: "隐患发现部门", dataIndex: "hiddenFindDeptName" },
{ title: "隐患发现人", dataIndex: "createName", width: 130 },
{
title: "隐患发现时间",
dataIndex: "hiddenFindTime",
render: (_, record) => record.hiddenFindTime ? dayjs(record.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : "",
},
{ title: "确认人", dataIndex: "createName", width: 130 },
{ title: "核实人", dataIndex: "createName", width: 130 },
{ title: "核定人", dataIndex: "createName", width: 130 },
{ title: "隐患状态", dataIndex: "state", render: () => "待确认" },
{
title: "操作",
width: 100,
fixed: "right",
render: (_, record) => (
<Space>
{/* {props.permission("gfd-yhhd-info") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`../HiddenView?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
查看
</Button>
{/* )} */}
{/* {props.permission("gfd-yhhd-approval") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`./Approval?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
核定
</Button>
{/* )} */}
</Space>
),
},
]}
{...tableProps}
/>
</Page>
);
}
export default Connect([NS_CONFIRM], true)(Permission(List));

View File

@ -0,0 +1,9 @@
function Approval(props) {
return (
<div>
{props.children}
</div>
);
}
export default Approval;

View File

@ -0,0 +1,116 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd";
import dayjs from "dayjs";
import Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { HIDDEN_SOURCE_ENUM } from "zy-react-library/enum/hidden/gwj";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable";
import { getLabelName } from "zy-react-library/utils";
import { IS_RELATED_ENUM } from "~/enumerate/constant";
import { NS_CONFIRM } from "~/enumerate/namespace";
function HiddenList(props) {
const [form] = Form.useForm();
const query = useGetUrlQuery();
const { tableProps, getData } = useTable(props["confirmList"], {
usePermission: false,
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
});
return (
<Page headerTitle={query.type !== "1" ? "重大隐患数" : "较大隐患数"} isShowFooter={false}>
<Search
options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
{ name: "hiddenDesc", label: "隐患描述" },
{ name: "hiddenFindTime", label: "隐患发现时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
{ name: "hiddenFindDept", label: "隐患发现部门", render: <DepartmentSelectTree /> },
{
name: "hiddenType",
label: "隐患类型",
render: <DictionarySelectTree dictValue="hiddenType" onlyLastLevel />,
},
{
name: "hiddenLevel",
label: "隐患级别",
render: <HiddenLevelSelectTree isShowNeglect={false} isShowLarger={false} isShowMajor={false} />,
},
{ name: "creatorName", label: "隐患发现人" },
// { name: "confirmUserName", label: "确认人" },
{
name: "isRelated",
label: "是否相关方",
render: FORM_ITEM_RENDER_ENUM.SELECT,
items: IS_RELATED_ENUM,
},
{ name: "querenren", label: "隐患确认人" },
{ name: "hehsiren", label: "隐患核实人" },
{ name: "hedingren", label: "隐患核定人", hidden: query.type !== "2" },
{ name: "zhenggairen", label: "隐患整改人", hidden: query.type !== "2" },
{ name: "yanshouren", label: "隐患验收人", hidden: query.type !== "2" },
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{
title: "隐患来源",
dataIndex: "source",
render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }),
},
{ title: "隐患描述", dataIndex: "hiddenDesc" },
{ title: "隐患类型", dataIndex: "hiddenTypeName" },
{ title: "隐患级别", dataIndex: "hiddenLevelName", width: 100 },
{ title: "隐患发现部门", dataIndex: "hiddenFindDeptName" },
{ title: "隐患发现人", dataIndex: "createName", width: 130 },
{
title: "隐患发现时间",
dataIndex: "hiddenFindTime",
render: (_, record) => record.hiddenFindTime ? dayjs(record.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : "",
},
{ title: "确认人", dataIndex: "createName", width: 130 },
{ title: "核实人", dataIndex: "createName", width: 130 },
{ title: "核定人", dataIndex: "createName", width: 130 },
{ title: "隐患状态", dataIndex: "state", render: () => "待确认" },
{
title: "操作",
width: 100,
fixed: "right",
render: (_, record) => (
<Space>
{/* {props.permission("fgs-zd-yhqr-ck") && ( */}
<Button
type="link"
onClick={() => {
props.history.push(`../HiddenView?id=${record.id}&hiddenId=${record.hiddenId}`);
}}
>
查看
</Button>
{/* )} */}
</Space>
),
},
]}
{...tableProps}
/>
</Page>
);
}
export default Connect([NS_CONFIRM], true)(Permission(HiddenList));

View File

@ -0,0 +1,62 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form } 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 { NS_CONFIRM } from "~/enumerate/namespace";
function List(props) {
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["confirmList"], {
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
});
return (
<Page isShowAllAction={false}>
<Search
options={[
{ name: "creatorName", label: "企业名称" },
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{ title: "企业名称", dataIndex: "hiddenDesc" },
{ title: "重大隐患数", dataIndex: "riskUnitCount", render: (text, record) => (
<Button
type="link"
// disabled={!props.permission("gfd-yhtj-zdyhs")}
onClick={() =>
props.history.push(`./RiskPointList?id=${record.id}&type=1`)}
>
{record.riskUnitCount || 0}
</Button>
) },
{ title: "较大隐患数", dataIndex: "riskUnitCount", render: (text, record) => (
<Button
type="link"
// disabled={!props.permission("gfd-yhtj-jdyhs")}
onClick={() =>
props.history.push(`./RiskPointList?id=${record.id}&type=2`)}
>
{record.riskUnitCount || 0}
</Button>
) },
]}
{...tableProps}
/>
</Page>
);
}
export default Connect([NS_CONFIRM], true)(Permission(List));

View File

@ -0,0 +1,9 @@
function HiddenRecord(props) {
return (
<div>
{props.children}
</div>
);
}
export default HiddenRecord;

View File

@ -0,0 +1,17 @@
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import ConfirmViev from "~/pages/Container/BranchCompany/MajorHidden/HiddenView/confirmViev";
function HiddenView() {
const query = useGetUrlQuery();
return (
<Page headerTitle="查看" contentPadding="0 20px 20px 20px">
<HiddenInfo history={query.history === "1"} />
<ConfirmViev />
</Page>
);
}
export default HiddenView;

View File

@ -0,0 +1,9 @@
function MajorHidden(props) {
return (
<div>
{props.children}
</div>
);
}
export default MajorHidden;