bug修改:12968、12966、12960、12931、12924、12916、12913、12910、12906、12905、12630、12604、12365、12330

master
LiuJiaNan 2025-12-26 14:07:53 +08:00
parent b8624ae3df
commit 3a99f0b5ff
48 changed files with 1884 additions and 2106 deletions

View File

@ -9,6 +9,7 @@ module.exports = {
// 应用后端分支名称,部署上线需要 // 应用后端分支名称,部署上线需要
javaGitBranch: "<branch-name>", javaGitBranch: "<branch-name>",
// 接口服务地址 // 接口服务地址
// API_HOST: "http://192.168.20.100:30140",
API_HOST: "https://gbs-gateway.qhdsafety.com", API_HOST: "https://gbs-gateway.qhdsafety.com",
}, },
production: { production: {
@ -62,7 +63,7 @@ module.exports = {
// 全局主题色 // 全局主题色
"colorPrimary": "#1677ff", "colorPrimary": "#1677ff",
// 全局圆角 // 全局圆角
"borderRadius": 2, "borderRadius": 4,
}, },
}, },
// webpack // webpack

View File

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

View File

@ -36,3 +36,7 @@ export const xgfProjectInfo = declareRequest(
"xgfProjectLoading", "xgfProjectLoading",
`Get > /xgfManager/project/{id}`, `Get > /xgfManager/project/{id}`,
); );
export const hiddenPrintList = declareRequest(
"xgfProjectLoading",
`Post > @/hidden/hidden/printList`,
);

View File

@ -6,6 +6,7 @@ import "dayjs/locale/zh-cn";
import "../blessed_by_buddha"; import "../blessed_by_buddha";
require("antd/dist/reset.css"); require("antd/dist/reset.css");
require("zy-react-library/css/common.less");
dayjs.locale("zh-cn"); dayjs.locale("zh-cn");
setJJBCommonAntdMessage(message); setJJBCommonAntdMessage(message);

View File

@ -2,6 +2,7 @@ import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -26,7 +27,7 @@ function List(props) {
}); });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM }, { name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
@ -118,7 +119,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
); );
} }

View File

@ -2,8 +2,8 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Divider, Form, message } from "antd"; import { Divider, Form, message } 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 HeaderBack from "zy-react-library/components/HeaderBack";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
import Upload from "zy-react-library/components/Upload"; import Upload from "zy-react-library/components/Upload";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj"; import { UPLOAD_FILE_TYPE_ENUM } from "zy-react-library/enum/uploadFile/gwj";
@ -21,14 +21,15 @@ function Rectification(props) {
const [data, setData] = useState({}); const [data, setData] = useState({});
const onSubmit = async (values) => { const onSubmit = async (values) => {
await uploadFile({ const { id } = await uploadFile({
single: false, single: false,
files: values.files, files: values.files,
params: { type: UPLOAD_FILE_TYPE_ENUM["5"], foreignKey: query.hiddenId }, params: { type: UPLOAD_FILE_TYPE_ENUM["5"], foreignKey: "" },
}); });
const { success } = await props["acceptanceReview"]({ const { success } = await props["acceptanceReview"]({
id: query.id, id: query.id,
hiddenId: query.hiddenId, hiddenId: query.hiddenId,
hiddenUserId: id,
...values, ...values,
}); });
if (success) { if (success) {
@ -36,17 +37,15 @@ function Rectification(props) {
props.history.goBack(); props.history.goBack();
} }
}; };
return ( return (
<div> <Page headerTitle="隐患验收" contentPadding="0 20px 20px 20px" isShowFooter={false}>
<HeaderBack title="隐患验收" />
<HiddenInfo <HiddenInfo
isShowHeaderBack={false}
onGetData={(data) => { onGetData={(data) => {
setData(data); setData(data);
}} }}
/> />
<Divider orientation="left">隐患验收</Divider> <Divider orientation="left">隐患验收</Divider>
<div style={{ paddingBottom: 20 }}>
<FormBuilder <FormBuilder
values={{ values={{
status: 1, status: 1,
@ -86,8 +85,7 @@ function Rectification(props) {
), ),
]} ]}
/> />
</div> </Page>
</div>
); );
} }

View File

@ -2,6 +2,7 @@ import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -25,7 +26,7 @@ function List(props) {
}); });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM }, { name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
@ -111,7 +112,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
); );
} }

View File

@ -2,8 +2,8 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Divider, Form, message, Modal } from "antd"; import { Button, Divider, Form, message, Modal } from "antd";
import { useRef, useState } from "react"; import { useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder"; import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; 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 PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj"; import HiddenLevelSelectTree from "zy-react-library/components/SelectTree/HiddenLevel/Gwj";
@ -84,14 +84,6 @@ function Confirm(props) {
render: FORM_ITEM_RENDER_ENUM.RADIO, render: FORM_ITEM_RENDER_ENUM.RADIO,
items: [{ bianma: 1, name: "是" }, { bianma: 2, name: "否" }], items: [{ bianma: 1, name: "是" }, { bianma: 2, name: "否" }],
span: 24, span: 24,
componentProps: {
onChange: () => {
if (data.isRelated === 0) {
form.setFieldValue("checkDeptName", "");
form.setFieldValue("checkUserName", "");
}
},
},
}, },
...commonDeptUserFields, ...commonDeptUserFields,
{ {
@ -165,9 +157,8 @@ function Confirm(props) {
return ( return (
<div> <div>
<HeaderBack title="确认" /> <Page headerTitle="确认" contentPadding="0 20px 20px 20px" isShowFooter={false}>
<HiddenInfo <HiddenInfo
isShowHeaderBack={false}
onGetData={(data) => { onGetData={(data) => {
setData(data); setData(data);
data.isRelated === 1 && getXgfProjectInfo(data.projectId); data.isRelated === 1 && getXgfProjectInfo(data.projectId);
@ -184,7 +175,7 @@ function Confirm(props) {
}} }}
/> />
<Divider orientation="left">隐患确认</Divider> <Divider orientation="left">隐患确认</Divider>
<div style={{ paddingBottom: 20 }}> <div>
{ {
Object.keys(data).length > 0 Object.keys(data).length > 0
? ( ? (
@ -197,6 +188,9 @@ function Confirm(props) {
extraActionButtons={[ extraActionButtons={[
!isFromInspection && <Button key="reject" type="primary" danger onClick={() => setRejectModalOpen(true)}>打回</Button>, !isFromInspection && <Button key="reject" type="primary" danger onClick={() => setRejectModalOpen(true)}>打回</Button>,
]} ]}
values={{
rectificationType: 1,
}}
options={[ options={[
...(!isFromInspection ...(!isFromInspection
? [ ? [
@ -233,6 +227,7 @@ function Confirm(props) {
: null : null
} }
</div> </div>
</Page>
{rejectModalOpen && <RejectModal onCancel={() => setRejectModalOpen(false)} data={data} />} {rejectModalOpen && <RejectModal onCancel={() => setRejectModalOpen(false)} data={data} />}
</div> </div>
); );
@ -259,12 +254,14 @@ const RejectModalComponent = (props) => {
<Modal <Modal
title="驳回原因" title="驳回原因"
open open
width={600}
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
confirmLoading={props.confirm.confirmLoading} confirmLoading={props.confirm.confirmLoading}
> >
<FormBuilder <FormBuilder
loading={props.confirm.confirmLoading}
form={form} form={form}
onFinish={onSubmit} onFinish={onSubmit}
showActionButtons={false} showActionButtons={false}

View File

@ -4,6 +4,7 @@ import { Button, Form, message, Modal, Space } from "antd";
import { useEffect, useState } from "react"; import { useEffect, 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";
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 PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj"; import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
@ -38,7 +39,7 @@ function HiddenConfirmUser(props) {
}; };
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
options={[ options={[
@ -103,7 +104,7 @@ function HiddenConfirmUser(props) {
getData={getData} getData={getData}
/> />
)} )}
</div> </Page>
); );
} }
@ -138,17 +139,18 @@ const AddModalComponent = (props) => {
return ( return (
<Modal <Modal
title="新增隐患确认人" title="新增隐患确认人"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
loading={props.confirmUser.confirmUserLoading} confirmLoading={props.confirmUser.confirmUserLoading}
> >
<FormBuilder <FormBuilder
loading={props.confirmUser.confirmUserLoading}
form={form} form={form}
span={24} span={24}
labelCol={{ span: 10 }} labelCol={{ span: 12 }}
showActionButtons={false} showActionButtons={false}
onFinish={onSubmit} onFinish={onSubmit}
options={[ options={[
@ -191,7 +193,7 @@ const AddModalComponent = (props) => {
{ name: "postId", label: "确认人", onlyForLabel: true }, { name: "postId", label: "确认人", onlyForLabel: true },
{ {
name: "confirmRange", name: "confirmRange",
label: "确认范围(部门)", label: "确认范围(部门)",
render: ( render: (
<DepartmentSelectTree <DepartmentSelectTree
treeCheckable treeCheckable
@ -202,7 +204,7 @@ const AddModalComponent = (props) => {
/> />
), ),
}, },
{ name: "confirmRangeName", label: "确认范围(部门)", onlyForLabel: true }, { name: "confirmRangeName", label: "确认范围(部门)名称", onlyForLabel: true },
]} ]}
/> />
</Modal> </Modal>

View File

@ -1,13 +1,14 @@
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; 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 useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
function HiddenView() { function HiddenView() {
const query = useGetUrlQuery(); const query = useGetUrlQuery();
return ( return (
<div> <Page headerTitle={query.history === "1" ? "过程记录" : "查看"} contentPadding="0 20px 20px 20px">
<HiddenInfo history={query.history === "1"} /> <HiddenInfo history={query.history === "1"} />
</div> </Page>
); );
} }

View File

@ -2,6 +2,7 @@ import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -25,7 +26,7 @@ function List(props) {
}); });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM }, { name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
@ -100,7 +101,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
); );
} }

View File

@ -2,8 +2,8 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Col, Form, Image, Input, message, Modal, Row } from "antd"; import { Button, Col, Form, Image, Input, message, Modal, Row } from "antd";
import { useEffect, useRef, useState } from "react"; import { useEffect, useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder"; import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Map from "zy-react-library/components/Map"; import Map from "zy-react-library/components/Map";
import Page from "zy-react-library/components/Page";
import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj"; import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -282,8 +282,7 @@ function Add(props) {
return ( return (
<div> <div>
<HeaderBack title={query.id ? "编辑" : "新增"} /> <Page headerTitle={query.id ? "编辑" : "新增"} isShowFooter={false}>
<div style={{ paddingBottom: 10 }}>
<FormBuilder <FormBuilder
form={form} form={form}
loading={deleteFileLoading || uploadFileLoading || getFileLoading || props.ledger.ledgerLoading} loading={deleteFileLoading || uploadFileLoading || getFileLoading || props.ledger.ledgerLoading}
@ -678,7 +677,7 @@ function Add(props) {
{ name: "checkUserName", label: "验收人名称", onlyForLabel: true }, { name: "checkUserName", label: "验收人名称", onlyForLabel: true },
]} ]}
/> />
</div> </Page>
{ {
aiHiddenModalOpen && ( aiHiddenModalOpen && (
<AiHiddenModal <AiHiddenModal

View File

@ -8,6 +8,7 @@ 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";
import ExportIcon from "zy-react-library/components/Icon/ExportIcon"; import ExportIcon from "zy-react-library/components/Icon/ExportIcon";
import PrintIcon from "zy-react-library/components/Icon/PrintIcon"; import PrintIcon from "zy-react-library/components/Icon/PrintIcon";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -27,7 +28,6 @@ function List(props) {
const [selectedRowKeys, setSelectedRowKeys] = useState([]); const [selectedRowKeys, setSelectedRowKeys] = useState([]);
const [exportByColumnModalOpen, setExportByColumnModalOpen] = useState(false); const [exportByColumnModalOpen, setExportByColumnModalOpen] = useState(false);
const [printModalOpen, setPrintModalOpen] = useState(false); const [printModalOpen, setPrintModalOpen] = useState(false);
const [printData, setPrintData] = useState([]);
const { loading: downloadBlobLoading, downloadBlob } = useDownloadBlob(); const { loading: downloadBlobLoading, downloadBlob } = useDownloadBlob();
const { tableProps, getData } = useTable(props["ledgerList"], { const { tableProps, getData } = useTable(props["ledgerList"], {
form, form,
@ -74,7 +74,7 @@ function List(props) {
}; };
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Spin spinning={downloadBlobLoading}> <Spin spinning={downloadBlobLoading}>
<Search <Search
options={[ options={[
@ -91,7 +91,7 @@ function List(props) {
name: "hiddenLevel", name: "hiddenLevel",
label: "隐患级别", label: "隐患级别",
render: ( render: (
<HiddenLevelSelectTree isShowNeglect={false} isShowLarger={false} isShowMajor={false} /> <HiddenLevelSelectTree isShowLarger={false} isShowMajor={false} />
), ),
}, },
{ name: "creatorName", label: "隐患发现人" }, { name: "creatorName", label: "隐患发现人" },
@ -141,13 +141,13 @@ function List(props) {
<Button <Button
type="primary" type="primary"
icon={<PrintIcon />} icon={<PrintIcon />}
ghost
onClick={() => { onClick={() => {
if (selectedRowKeys.length === 0) { if (selectedRowKeys.length === 0) {
message.error("请选中要打印的数据"); message.error("请选中要打印的数据");
return; return;
} }
setPrintModalOpen(true); setPrintModalOpen(true);
setPrintData(tableProps.dataSource.filter(item => selectedRowKeys.includes(item.id)));
}} }}
> >
打印 打印
@ -157,6 +157,7 @@ function List(props) {
<Button <Button
type="primary" type="primary"
icon={<ExportIcon />} icon={<ExportIcon />}
ghost
onClick={() => { onClick={() => {
onExportExcel(); onExportExcel();
}} }}
@ -168,6 +169,7 @@ function List(props) {
<Button <Button
type="primary" type="primary"
icon={<ExportIcon />} icon={<ExportIcon />}
ghost
onClick={() => { onClick={() => {
const hiddenFindTime = form.getFieldValue("hiddenFindTime"); const hiddenFindTime = form.getFieldValue("hiddenFindTime");
if (!hiddenFindTime) { if (!hiddenFindTime) {
@ -233,7 +235,7 @@ function List(props) {
{ {
title: "隐患状态", title: "隐患状态",
dataIndex: "state", dataIndex: "state",
render: (_, record) => getLabelName({ list: HIDDEN_STATE_ENUM, status: record.state }), render: (_, record) => record.hiddenLevelName !== "忽略隐患" ? getLabelName({ list: HIDDEN_STATE_ENUM, status: record.state }) : "",
}, },
{ {
title: "操作", title: "操作",
@ -291,14 +293,11 @@ function List(props) {
)} )}
{printModalOpen && ( {printModalOpen && (
<PrintModal <PrintModal
data={printData} data={selectedRowKeys}
onCancel={() => { onCancel={() => setPrintModalOpen(false)}
setPrintModalOpen(false);
setPrintData([]);
}}
/> />
)} )}
</div> </Page>
); );
} }
@ -329,14 +328,15 @@ const ExportByColumnModalComponent = (props) => {
return ( return (
<Modal <Modal
title="按列导出" title="按列导出"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
loading={loading} confirmLoading={loading}
> >
<FormBuilder <FormBuilder
loading={loading}
form={form} form={form}
span={24} span={24}
labelCol={{ span: 8 }} labelCol={{ span: 8 }}
@ -358,7 +358,8 @@ const ExportByColumnModalComponent = (props) => {
); );
}; };
const PrintModal = (props) => { const PrintModalComponent = (props) => {
const [list, setList] = useState([]);
const contentRef = useRef(null); const contentRef = useRef(null);
const handlePrint = useReactToPrint({ const handlePrint = useReactToPrint({
contentRef, contentRef,
@ -375,6 +376,18 @@ const PrintModal = (props) => {
`, `,
documentTitle: "", documentTitle: "",
}); });
const getData = async () => {
const { data } = await props["hiddenPrintList"]({
ids: props.data.join(","),
});
setList(data);
};
useEffect(() => {
getData();
}, []);
const getIsQualified = (isQualified) => { const getIsQualified = (isQualified) => {
if (isQualified === "1") if (isQualified === "1")
return "合格"; return "合格";
@ -382,6 +395,7 @@ const PrintModal = (props) => {
return "不合格"; return "不合格";
return ""; return "";
}; };
return ( return (
<Modal <Modal
title="打印" title="打印"
@ -395,7 +409,7 @@ const PrintModal = (props) => {
<Table <Table
options={false} options={false}
disabledResizer={false} disabledResizer={false}
dataSource={props.data} dataSource={list}
pagination={false} pagination={false}
columns={[ columns={[
{ {
@ -407,7 +421,7 @@ const PrintModal = (props) => {
{ title: "责任部门", dataIndex: "hiddenFindDeptName" }, { title: "责任部门", dataIndex: "hiddenFindDeptName" },
{ title: "事故隐患", dataIndex: "hiddenDesc" }, { title: "事故隐患", dataIndex: "hiddenDesc" },
{ title: "隐患等级", dataIndex: "hiddenLevelName" }, { title: "隐患等级", dataIndex: "hiddenLevelName" },
{ title: "治理措施", dataIndex: "tempSafeMeasure" }, { title: "治理措施", dataIndex: "rectificationDesc" },
{ {
title: "完成时限", title: "完成时限",
dataIndex: "rectificationDeadline", dataIndex: "rectificationDeadline",
@ -427,7 +441,7 @@ const PrintModal = (props) => {
{ {
title: "验收结果", title: "验收结果",
dataIndex: "isQualified", dataIndex: "isQualified",
render: (_, record) => record.state === 301 ? getIsQualified(record.isQualified) : "", render: (_, record) => record.hiddenLevelName !== "忽略隐患" ? (record.state === 301 ? getIsQualified(record.isQualified) : "") : "",
}, },
]} ]}
/> />
@ -449,14 +463,14 @@ const PrintModal = (props) => {
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
{(props.data || []).map(item => ( {list.map(item => (
<tr key={item.id}> <tr key={item.id}>
<td>{item.hiddenFindTime ? dayjs(item.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : ""}</td> <td>{item.hiddenFindTime ? dayjs(item.hiddenFindTime).format("YYYY-MM-DD HH:mm:ss") : ""}</td>
<td>{item.createName}</td> <td>{item.createName}</td>
<td>{item.hiddenFindDeptName}</td> <td>{item.hiddenFindDeptName}</td>
<td>{item.hiddenDesc}</td> <td>{item.hiddenDesc}</td>
<td>{item.hiddenLevelName}</td> <td>{item.hiddenLevelName}</td>
<td>{item.tempSafeMeasure}</td> <td>{item.rectificationDesc}</td>
<td>{item.rectificationDeadline ? dayjs(item.rectificationDeadline).format("YYYY-MM-DD HH:mm:ss") : ""}</td> <td>{item.rectificationDeadline ? dayjs(item.rectificationDeadline).format("YYYY-MM-DD HH:mm:ss") : ""}</td>
<td>{item.rectifyUserName}</td> <td>{item.rectifyUserName}</td>
<td>{item.state === 301 ? item.hiddenYUserName : ""}</td> <td>{item.state === 301 ? item.hiddenYUserName : ""}</td>
@ -471,5 +485,6 @@ const PrintModal = (props) => {
); );
}; };
const PrintModal = Connect([NS_LEDGER], true)(PrintModalComponent);
const ExportByColumnModal = Connect([NS_LEDGER], true)(ExportByColumnModalComponent); const ExportByColumnModal = Connect([NS_LEDGER], true)(ExportByColumnModalComponent);
export default Connect([NS_LEDGER], true)(Permission(List)); export default Connect([NS_LEDGER], true)(Permission(List));

View File

@ -7,6 +7,7 @@ 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";
import BackIcon from "zy-react-library/components/Icon/BackIcon"; import BackIcon from "zy-react-library/components/Icon/BackIcon";
import BasicLeftTree from "zy-react-library/components/LeftTree/Basic"; import BasicLeftTree from "zy-react-library/components/LeftTree/Basic";
import Page from "zy-react-library/components/Page";
import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj"; import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
@ -76,7 +77,7 @@ function Part(props) {
}; };
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<div style={{ display: "flex", gap: 20 }}> <div style={{ display: "flex", gap: 20 }}>
<div style={{ width: 300 }}> <div style={{ width: 300 }}>
<Spin spinning={props.part.partLoading}> <Spin spinning={props.part.partLoading}>
@ -92,7 +93,8 @@ function Part(props) {
/> />
</Spin> </Spin>
</div> </div>
<div style={{ flex: 1 }}> <div style={{ backgroundColor: "rgb(241, 241, 242)", width: 10, marginTop: "-20px", marginBottom: "-20px", height: "calc(100vh - 112px)" }}></div>
<div style={{ width: "calc(100% - 300px - 50px)" }}>
<Table <Table
toolBarRender={() => ( toolBarRender={() => (
<> <>
@ -182,7 +184,7 @@ function Part(props) {
}} }}
/> />
)} )}
</div> </Page>
); );
} }
@ -210,14 +212,15 @@ const AddModalComponent = (props) => {
return ( return (
<Modal <Modal
title={props.id ? "编辑" : "新增"} title={props.id ? "编辑" : "新增"}
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
loading={props.part.partLoading} confirmLoading={props.part.partLoading}
> >
<FormBuilder <FormBuilder
loading={props.part.partLoading}
form={form} form={form}
span={24} span={24}
labelCol={{ span: 10 }} labelCol={{ span: 10 }}

View File

@ -2,6 +2,7 @@ import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -27,7 +28,7 @@ function List(props) {
}); });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM }, { name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
@ -122,7 +123,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
); );
} }

View File

@ -1,9 +1,9 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, message, Modal, Space } from "antd"; import { Button, Form, message, Modal } 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 HeaderBack from "zy-react-library/components/HeaderBack";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; 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 { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import { NS_SPECIAL_DISPOSAL } from "~/enumerate/namespace"; import { NS_SPECIAL_DISPOSAL } from "~/enumerate/namespace";
@ -28,18 +28,30 @@ function Review(props) {
}, },
}); });
}; };
return ( return (
<div> <div>
<HeaderBack title="延期审核" /> <Page headerTitle="延期审核" isShowFooter={false} contentPadding="0 20px 20px 20px">
<HiddenInfo isShowHeaderBack={false} /> <HiddenInfo />
<div style={{ paddingBottom: 20, textAlign: "center" }}> <FormBuilder
<Space> options={[]}
<Button type="primary" onClick={onSubmit}>通过</Button> submitButtonText="通过"
<Button key="reject" type="primary" danger onClick={() => setRejectModalOpen(true)}>打回</Button> extraActionButtons={(
<Button key="back" onClick={() => props.history.goBack()}>取消</Button> <Button
</Space> type="primary"
</div> danger
{rejectModalOpen && <RejectModal onCancel={() => setRejectModalOpen(false)} data={{ id: query.id, hiddenId: query.hiddenId }} />} onClick={() => setRejectModalOpen(true)}
>
打回
</Button>
)}
onFinish={onSubmit}
loading={props.specialDisposal.specialDisposalLoading}
/>
</Page>
{
rejectModalOpen && (<RejectModal onCancel={() => setRejectModalOpen(false)} data={{ id: query.id, hiddenId: query.hiddenId }} />)
}
</div> </div>
); );
} }
@ -64,12 +76,14 @@ const RejectModalComponent = (props) => {
<Modal <Modal
title="驳回原因" title="驳回原因"
open open
width={600}
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
confirmLoading={props.specialDisposal.specialDisposalLoading} confirmLoading={props.specialDisposal.specialDisposalLoading}
> >
<FormBuilder <FormBuilder
loading={props.specialDisposal.specialDisposalLoading}
form={form} form={form}
onFinish={onSubmit} onFinish={onSubmit}
showActionButtons={false} showActionButtons={false}

View File

@ -4,6 +4,7 @@ import { Button, Form, message, Modal, Space } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
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 Page from "zy-react-library/components/Page";
import Search from "zy-react-library/components/Search"; import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -34,7 +35,7 @@ function List(props) {
}); });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM }, { name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
@ -171,7 +172,7 @@ function List(props) {
getData={getData} getData={getData}
/> />
)} )}
</div> </Page>
); );
} }
@ -189,17 +190,18 @@ const TemporarySafetyMeasuresModalComponent = (props) => {
return ( return (
<Modal <Modal
title="添加临时安全措施" title="添加临时安全措施"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
loading={props.rectification.rectificationLoading} confirmLoading={props.rectification.rectificationLoading}
> >
<FormBuilder <FormBuilder
loading={props.rectification.rectificationLoading}
form={form} form={form}
span={24} span={24}
labelCol={{ span: 8 }} labelCol={{ span: 10 }}
showActionButtons={false} showActionButtons={false}
onFinish={onSubmit} onFinish={onSubmit}
options={[ options={[
@ -226,17 +228,18 @@ const RequestAnExtensionModalComponent = (props) => {
return ( return (
<Modal <Modal
title="申请延期" title="申请延期"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
loading={props.rectification.rectificationLoading || uploadFileLoading} confirmLoading={props.rectification.rectificationLoading || uploadFileLoading}
> >
<FormBuilder <FormBuilder
loading={props.rectification.rectificationLoading || uploadFileLoading}
form={form} form={form}
span={24} span={24}
labelCol={{ span: 8 }} labelCol={{ span: 10 }}
showActionButtons={false} showActionButtons={false}
onFinish={onSubmit} onFinish={onSubmit}
options={[ options={[

View File

@ -3,8 +3,8 @@ import { Divider, Form, message } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
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 HeaderBack from "zy-react-library/components/HeaderBack";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; 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 PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Upload from "zy-react-library/components/Upload"; import Upload from "zy-react-library/components/Upload";
@ -74,11 +74,10 @@ function Rectification(props) {
} }
return {}; return {};
}; };
return ( return (
<div> <Page headerTitle="整改" isShowFooter={false} contentPadding="0 20px 20px 20px">
<HeaderBack title="整改" />
<HiddenInfo <HiddenInfo
isShowHeaderBack={false}
onGetData={(data) => { onGetData={(data) => {
setData(data); setData(data);
form.setFieldValue("tempSafeMeasure", data.tempSafeMeasure); form.setFieldValue("tempSafeMeasure", data.tempSafeMeasure);
@ -97,7 +96,6 @@ function Rectification(props) {
}} }}
/> />
<Divider orientation="left">隐患整改</Divider> <Divider orientation="left">隐患整改</Divider>
<div style={{ paddingBottom: 20 }}>
<FormBuilder <FormBuilder
values={{ values={{
status: 1, status: 1,
@ -241,8 +239,7 @@ function Rectification(props) {
), ),
]} ]}
/> />
</div> </Page>
</div>
); );
} }

View File

@ -2,6 +2,7 @@ import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -27,7 +28,7 @@ function List(props) {
}); });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM }, { name: "source", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
@ -122,7 +123,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
); );
} }

View File

@ -2,8 +2,8 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Divider, Form, message } from "antd"; import { Divider, Form, message } 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 HeaderBack from "zy-react-library/components/HeaderBack";
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; 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 PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Upload from "zy-react-library/components/Upload"; import Upload from "zy-react-library/components/Upload";
@ -36,17 +36,14 @@ function Review(props) {
}; };
return ( return (
<div> <Page headerTitle="特殊处理审核" isShowFooter={false} contentPadding="0 20px 20px 20px">
<HeaderBack title="特殊处理审核" />
<HiddenInfo <HiddenInfo
isShowHeaderBack={false}
onGetData={(data) => { onGetData={(data) => {
setData(data); setData(data);
form.setFieldValue("tempSafeMeasure", data.tempSafeMeasure); form.setFieldValue("tempSafeMeasure", data.tempSafeMeasure);
}} }}
/> />
<Divider orientation="left">特殊处理审核</Divider> <Divider orientation="left">特殊处理审核</Divider>
<div style={{ paddingBottom: 20 }}>
<FormBuilder <FormBuilder
values={{ values={{
state: 3, state: 3,
@ -145,8 +142,7 @@ function Review(props) {
), ),
]} ]}
/> />
</div> </Page>
</div>
); );
} }

View File

@ -1,6 +1,7 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
import { NS_AVERAGE } from "~/enumerate/namespace"; import { NS_AVERAGE } from "~/enumerate/namespace";
@ -10,9 +11,9 @@ function List(props) {
const { tableProps } = useTable(props["averageAiHiddenRecord"], { const { tableProps } = useTable(props["averageAiHiddenRecord"], {
form, form,
}); });
return ( return (
<div> <Page isShowAllAction={false}>
<div style={{ padding: 20 }}>
<Table <Table
columns={[ columns={[
{ title: "企业名称", dataIndex: "corpName" }, { title: "企业名称", dataIndex: "corpName" },
@ -39,9 +40,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</Page>
</div>
</div>
); );
} }

View File

@ -1,6 +1,6 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Form } from "antd"; import { Button, Form } from "antd";
import HeaderBack from "zy-react-library/components/HeaderBack"; import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
@ -15,12 +15,11 @@ function ListView(props) {
corpId: query.id, corpId: query.id,
}, },
}); });
return ( return (
<div> <Page headerTitle="重复隐患">
<HeaderBack title="重复隐患" />
<div style={{ padding: 20 }}>
<Table <Table
title={() => `企业名称:${query.corpName}`} headerTitle={`企业名称:${query.corpName}`}
columns={[ columns={[
{ title: "使用人", dataIndex: "userName" }, { title: "使用人", dataIndex: "userName" },
{ title: "使用时间", dataIndex: "useTime" }, { title: "使用时间", dataIndex: "useTime" },
@ -30,13 +29,14 @@ function ListView(props) {
render: (_, record) => { render: (_, record) => {
return ( return (
<> <>
<a <Button
type="link"
onClick={() => { onClick={() => {
props.history.push(`./ViewContent?userId=${record.userId}`); props.history.push(`./ViewContent?userId=${record.userId}`);
}} }}
> >
{record.hiddenNum} {record.hiddenNum}
</a> </Button>
</> </>
); );
}, },
@ -44,9 +44,7 @@ function ListView(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</Page>
</div>
</div>
); );
} }

View File

@ -1,6 +1,6 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Form } from "antd"; import { Form } from "antd";
import HeaderBack from "zy-react-library/components/HeaderBack"; import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
@ -15,10 +15,9 @@ function ViewContent(props) {
userId: query.userId, userId: query.userId,
}, },
}); });
return ( return (
<div> <Page headerTitle="查看">
<HeaderBack title="查看" />
<div style={{ padding: 20 }}>
<Table <Table
columns={[ columns={[
{ title: "隐患描述", dataIndex: "hiddenDesc" }, { title: "隐患描述", dataIndex: "hiddenDesc" },
@ -27,9 +26,7 @@ function ViewContent(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</Page>
</div>
</div>
); );
} }

View File

@ -1,6 +1,7 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
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";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
@ -11,7 +12,7 @@ function CorpInfoList(props) {
const { tableProps, getData } = useTable(props["averageCorpInfoCountList"], { form }); const { tableProps, getData } = useTable(props["averageCorpInfoCountList"], { form });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "corpName", label: "企业名称" }, { name: "corpName", label: "企业名称" },
@ -48,7 +49,7 @@ function CorpInfoList(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
); );
} }

View File

@ -3,9 +3,9 @@ import { Button, Form, message, Modal, Space, Spin } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
import { useRef, useState } from "react"; import { useRef, useState } from "react";
import { useReactToPrint } from "react-to-print"; import { useReactToPrint } from "react-to-print";
import HeaderBack from "zy-react-library/components/HeaderBack";
import ExportIcon from "zy-react-library/components/Icon/ExportIcon"; import ExportIcon from "zy-react-library/components/Icon/ExportIcon";
import PrintIcon from "zy-react-library/components/Icon/PrintIcon"; import PrintIcon from "zy-react-library/components/Icon/PrintIcon";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -58,9 +58,7 @@ function HiddenList(props) {
}; };
return ( return (
<div> <Page headerTitle="一般隐患">
<HeaderBack title="一般隐患" />
<div style={{ padding: 20 }}>
<Spin spinning={downloadBlobLoading}> <Spin spinning={downloadBlobLoading}>
<Search <Search
options={[ options={[
@ -112,6 +110,7 @@ function HiddenList(props) {
<Space> <Space>
<Button <Button
type="primary" type="primary"
ghost
icon={<PrintIcon />} icon={<PrintIcon />}
onClick={() => { onClick={() => {
if (selectedRowKeys.length === 0) { if (selectedRowKeys.length === 0) {
@ -188,7 +187,6 @@ function HiddenList(props) {
{...tableProps} {...tableProps}
/> />
</Spin> </Spin>
</div>
{printModalOpen && ( {printModalOpen && (
<PrintModal <PrintModal
data={printData} data={printData}
@ -198,7 +196,7 @@ function HiddenList(props) {
}} }}
/> />
)} )}
</div> </Page>
); );
} }

View File

@ -1,6 +1,7 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
import { NS_AVERAGE } from "~/enumerate/namespace"; import { NS_AVERAGE } from "~/enumerate/namespace";
@ -10,9 +11,9 @@ function List(props) {
const { tableProps } = useTable(props["averageRepeatHiddenCount"], { const { tableProps } = useTable(props["averageRepeatHiddenCount"], {
form, form,
}); });
return ( return (
<div> <Page isShowAllAction={false}>
<div style={{ padding: 20 }}>
<Table <Table
columns={[ columns={[
{ title: "企业名称", dataIndex: "corpName" }, { title: "企业名称", dataIndex: "corpName" },
@ -39,9 +40,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</Page>
</div>
</div>
); );
} }

View File

@ -1,6 +1,6 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import HeaderBack from "zy-react-library/components/HeaderBack"; import Page from "zy-react-library/components/Page";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
import { HIDDEN_SOURCE_ENUM, HIDDEN_STATE_ENUM } from "zy-react-library/enum/hidden/gwj"; import { HIDDEN_SOURCE_ENUM, HIDDEN_STATE_ENUM } from "zy-react-library/enum/hidden/gwj";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
@ -17,12 +17,11 @@ function ListView(props) {
corpId: query.id, corpId: query.id,
}, },
}); });
return ( return (
<div> <Page headerTitle="重复隐患">
<HeaderBack title="重复隐患" />
<div style={{ padding: 20 }}>
<Table <Table
title={() => `企业名称:${query.corpName}`} headerTitle={`企业名称:${query.corpName}`}
columns={[ columns={[
{ title: "隐患描述", dataIndex: "hiddenDesc" }, { title: "隐患描述", dataIndex: "hiddenDesc" },
{ title: "隐患来源", dataIndex: "source", render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }) }, { title: "隐患来源", dataIndex: "source", render: (_, record) => getLabelName({ list: HIDDEN_SOURCE_ENUM, status: record.source }) },
@ -31,7 +30,7 @@ function ListView(props) {
{ title: "隐患发现部门", dataIndex: "hiddenFindDeptName" }, { title: "隐患发现部门", dataIndex: "hiddenFindDeptName" },
{ title: "隐患发现人", dataIndex: "createName" }, { title: "隐患发现人", dataIndex: "createName" },
{ title: "隐患发现时间", dataIndex: "hiddenFindTime" }, { title: "隐患发现时间", dataIndex: "hiddenFindTime" },
{ title: "隐患状态", dataIndex: "state", render: (_, record) => getLabelName({ list: HIDDEN_STATE_ENUM, status: record.state }), }, { title: "隐患状态", dataIndex: "state", render: (_, record) => getLabelName({ list: HIDDEN_STATE_ENUM, status: record.state }) },
{ {
title: "操作", title: "操作",
width: 100, width: 100,
@ -52,9 +51,7 @@ function ListView(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</Page>
</div>
</div>
); );
} }

View File

@ -1,10 +1,11 @@
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
function HiddenView() { function HiddenView() {
return ( return (
<div> <Page headerTitle="查看" contentPadding="0 20px 20px 20px">
<HiddenInfo /> <HiddenInfo />
</div> </Page>
); );
} }

View File

@ -1,6 +1,7 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
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";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
@ -11,7 +12,7 @@ function CorpInfoList(props) {
const { tableProps, getData } = useTable(props["ignoreCorpInfoCountList"], { form }); const { tableProps, getData } = useTable(props["ignoreCorpInfoCountList"], { form });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "corpName", label: "企业名称" }, { name: "corpName", label: "企业名称" },
@ -45,7 +46,7 @@ function CorpInfoList(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
); );
} }

View File

@ -2,8 +2,8 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, message, Modal, Space, Spin } from "antd"; import { Button, Form, message, Modal, Space, Spin } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
import { useState } from "react"; import { useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import ExportIcon from "zy-react-library/components/Icon/ExportIcon"; import ExportIcon from "zy-react-library/components/Icon/ExportIcon";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -52,9 +52,7 @@ function HiddenList(props) {
}; };
return ( return (
<div> <Page headerTitle="忽略隐患">
<HeaderBack title="忽略隐患" />
<div style={{ padding: 20 }}>
<Spin spinning={downloadBlobLoading}> <Spin spinning={downloadBlobLoading}>
<Search <Search
options={[ options={[
@ -96,6 +94,7 @@ function HiddenList(props) {
toolBarRender={() => ( toolBarRender={() => (
<Button <Button
type="primary" type="primary"
ghost
icon={<ExportIcon />} icon={<ExportIcon />}
onClick={() => { onClick={() => {
onExportExcel(); onExportExcel();
@ -148,8 +147,7 @@ function HiddenList(props) {
{...tableProps} {...tableProps}
/> />
</Spin> </Spin>
</div> </Page>
</div>
); );
} }

View File

@ -1,6 +1,7 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
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";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
@ -11,7 +12,7 @@ function CorpInfoList(props) {
const { tableProps, getData } = useTable(props["specialDisposalCorpInfoCountList"], { form }); const { tableProps, getData } = useTable(props["specialDisposalCorpInfoCountList"], { form });
return ( return (
<div style={{ padding: 20 }}> <Page isShowAllAction={false}>
<Search <Search
options={[ options={[
{ name: "corpName", label: "企业名称" }, { name: "corpName", label: "企业名称" },
@ -48,7 +49,7 @@ function CorpInfoList(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
); );
} }

View File

@ -2,8 +2,8 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, message, Modal, Space, Spin } from "antd"; import { Button, Form, message, Modal, Space, Spin } from "antd";
import dayjs from "dayjs"; import dayjs from "dayjs";
import { useState } from "react"; import { useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import ExportIcon from "zy-react-library/components/Icon/ExportIcon"; import ExportIcon from "zy-react-library/components/Icon/ExportIcon";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -51,9 +51,7 @@ function HiddenList(props) {
}; };
return ( return (
<div> <Page headerTitle="特殊处置隐患">
<HeaderBack title="特殊处置隐患" />
<div style={{ padding: 20 }}>
<Spin spinning={downloadBlobLoading}> <Spin spinning={downloadBlobLoading}>
<Search <Search
options={[ options={[
@ -102,6 +100,7 @@ function HiddenList(props) {
toolBarRender={() => ( toolBarRender={() => (
<Button <Button
type="primary" type="primary"
ghost
icon={<ExportIcon />} icon={<ExportIcon />}
onClick={() => { onClick={() => {
onExportExcel(); onExportExcel();
@ -157,8 +156,7 @@ function HiddenList(props) {
{...tableProps} {...tableProps}
/> />
</Spin> </Spin>
</div> </Page>
</div>
); );
} }

View File

@ -1,8 +1,8 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Form, message, Modal, Space } from "antd"; import { Button, Descriptions, Form, message, Modal, Space, Spin } from "antd";
import { useEffect, useRef, useState } from "react"; import { useEffect, useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder"; import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack"; 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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -16,7 +16,7 @@ import { getLabelName } from "zy-react-library/utils";
import { NS_HIDDEN_EVALUATION } from "~/enumerate/namespace"; import { NS_HIDDEN_EVALUATION } from "~/enumerate/namespace";
import ViewEvaluationModal from "../../components/ViewEvaluationModal"; import ViewEvaluationModal from "../../components/ViewEvaluationModal";
function List(props) { function HiddenList(props) {
const query = useGetUrlQuery(); const query = useGetUrlQuery();
const [viewEvaluationModalOpen, setViewEvaluationModalOpen] = useState(false); const [viewEvaluationModalOpen, setViewEvaluationModalOpen] = useState(false);
const [evaluationModalOpen, setEvaluationModalOpen] = useState(false); const [evaluationModalOpen, setEvaluationModalOpen] = useState(false);
@ -35,10 +35,9 @@ function List(props) {
leFinalDoneTime: formData.finalDoneTime?.[1], leFinalDoneTime: formData.finalDoneTime?.[1],
}), }),
}); });
return ( return (
<div> <Page headerTitle="分公司考评隐患">
<HeaderBack title="分公司考评隐患" />
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "likeHiddenDesc", label: "隐患描述" }, { name: "likeHiddenDesc", label: "隐患描述" },
@ -148,12 +147,11 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div>
{viewEvaluationModalOpen {viewEvaluationModalOpen
&& <ViewEvaluationModal onCancel={() => setViewEvaluationModalOpen(false)} hiddenId={currentHiddenId} url="hiddenEvaluationHiddenEvaluationView" />} && <ViewEvaluationModal onCancel={() => setViewEvaluationModalOpen(false)} hiddenId={currentHiddenId} url="hiddenEvaluationHiddenEvaluationView" />}
{evaluationModalOpen {evaluationModalOpen
&& <EvaluationModal onCancel={() => setEvaluationModalOpen(false)} hiddenId={currentHiddenId} getData={getData} />} && <EvaluationModal onCancel={() => setEvaluationModalOpen(false)} hiddenId={currentHiddenId} getData={getData} />}
</div> </Page>
); );
} }
@ -189,13 +187,14 @@ const EvaluationModalComponent = (props) => {
return ( return (
<Modal <Modal
title="考评" title="考评"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
loading={props.hiddenEvaluation.hiddenEvaluationLoading} confirmLoading={props.hiddenEvaluation.hiddenEvaluationLoading}
> >
<Spin spinning={props.hiddenEvaluation.hiddenEvaluationLoading}>
<Descriptions <Descriptions
column={2} column={2}
bordered bordered
@ -244,9 +243,10 @@ const EvaluationModalComponent = (props) => {
}, },
]} ]}
/> />
</Spin>
</Modal> </Modal>
); );
}; };
const EvaluationModal = Connect([NS_HIDDEN_EVALUATION], true)(EvaluationModalComponent); const EvaluationModal = Connect([NS_HIDDEN_EVALUATION], true)(EvaluationModalComponent);
export default Connect([NS_HIDDEN_EVALUATION], true)(List); export default Connect([NS_HIDDEN_EVALUATION], true)(HiddenList);

View File

@ -1,6 +1,7 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
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";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
@ -20,8 +21,7 @@ function List(props) {
}); });
return ( return (
<div> <Page isShowAllAction={false}>
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "likeCorpinfoName", label: "分公司名称" }, { name: "likeCorpinfoName", label: "分公司名称" },
@ -68,8 +68,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
</div>
); );
} }

View File

@ -1,10 +1,11 @@
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
function HiddenView() { function HiddenView() {
return ( return (
<div> <Page headerTitle="查看" contentPadding="0 20px 20px 20px">
<HiddenInfo /> <HiddenInfo />
</div> </Page>
); );
} }

View File

@ -18,11 +18,10 @@ const ViewEvaluationModal = (props) => {
return ( return (
<Modal <Modal
title="考评详情" title="考评详情"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
loading={props.hiddenEvaluation.hiddenEvaluationLoading}
footer={[ footer={[
<Button key="cancel" onClick={props.onCancel}> <Button key="cancel" onClick={props.onCancel}>
取消 取消

View File

@ -1,9 +1,10 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Col, Descriptions, Form, message, Modal, Row, Space } from "antd"; import { Button, Descriptions, Form, message, Modal, Space } from "antd";
import { useEffect, useState } from "react"; import { useEffect, 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";
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 PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj"; import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
@ -37,8 +38,7 @@ function List(props) {
}); });
return ( return (
<div> <Page isShowAllAction={false}>
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "likeCorpinfoName", label: "分公司名称" }, { name: "likeCorpinfoName", label: "分公司名称" },
@ -135,7 +135,6 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div>
{configModalOpen {configModalOpen
&& ( && (
<ConfigModal <ConfigModal
@ -166,7 +165,7 @@ function List(props) {
data={currentData} data={currentData}
/> />
)} )}
</div> </Page>
); );
} }
@ -213,9 +212,10 @@ const ConfigModalComponent = (props) => {
onCancel={props.onCancel} onCancel={props.onCancel}
maskClosable={false} maskClosable={false}
onOk={form.submit} onOk={form.submit}
loading={props.evaluationTeamConfig.evaluationTeamConfigLoading} confirmLoading={props.evaluationTeamConfig.evaluationTeamConfigLoading}
> >
<FormBuilder <FormBuilder
loading={props.evaluationTeamConfig.evaluationTeamConfigLoading}
values={{ configType: configTypeName }} values={{ configType: configTypeName }}
labelCol={{ span: 8 }} labelCol={{ span: 8 }}
showActionButtons={false} showActionButtons={false}
@ -224,22 +224,17 @@ const ConfigModalComponent = (props) => {
options={[ options={[
{ name: "configType", label: "隐患考评组类型", componentProps: { disabled: true }, span: 24 }, { name: "configType", label: "隐患考评组类型", componentProps: { disabled: true }, span: 24 },
{ {
key: "evaluateGroupUserConfigUpdateCmdList", name: "evaluateGroupUserConfigUpdateCmdList",
customizeRender: true,
span: 24, span: 24,
render: FORM_ITEM_RENDER_ENUM.FORM_LIST,
formListUniqueProps: {
showRemoveButton: false,
showAddButton: false,
options: field => ([
{
name: [field.name, "memberDeptId"],
label: "考评部门",
render: ( render: (
<>
<Form.List name="evaluateGroupUserConfigUpdateCmdList">
{fields => (
<>
{fields.map(field => (
<Row gutter={24} key={field.key}>
<Col span={12}>
<Form.Item
label="考评部门"
rules={[{ required: true, message: "请选择考评部门" }]}
name={[field.name, "memberDeptId"]}
>
<DepartmentSelectTree <DepartmentSelectTree
isNeedCorpInfoId={true} isNeedCorpInfoId={true}
params={{ eqCorpinfoId: corpinfoId }} params={{ eqCorpinfoId: corpinfoId }}
@ -251,37 +246,24 @@ const ConfigModalComponent = (props) => {
form.setFieldValue(["evaluateGroupUserConfigUpdateCmdList", field.name, "memberDeptName"], label); form.setFieldValue(["evaluateGroupUserConfigUpdateCmdList", field.name, "memberDeptName"], label);
}} }}
/> />
</Form.Item> ),
<Form.Item label="考评部门名称" noStyle name={[field.name, "memberDeptName"]}> },
<input type="hidden" /> { name: [field.name, "memberDeptName"], label: "考评部门名称", onlyForLabel: true },
</Form.Item> {
</Col> name: [field.name, "memberId"],
<Col span={12}> label: "考评人员",
<Form.Item render: (
label="考评人员"
rules={[{ required: true, message: "请选择考评部门" }]}
name={[field.name, "memberId"]}
>
<PersonnelSelect <PersonnelSelect
params={{ departmentId: evaluateGroupUserConfigUpdateCmdList?.[field.name]?.memberDeptId || "" }} params={{ departmentId: evaluateGroupUserConfigUpdateCmdList?.[field.name]?.memberDeptId || "" }}
onGetLabel={label => form.setFieldValue(["evaluateGroupUserConfigUpdateCmdList", field.name, "memberName"], label)} onGetLabel={label => form.setFieldValue(["evaluateGroupUserConfigUpdateCmdList", field.name, "memberName"], label)}
/> />
</Form.Item>
<Form.Item label="考评人员名称" noStyle name={[field.name, "memberName"]}>
<input type="hidden" />
</Form.Item>
<Form.Item label="用户类型" noStyle name={[field.name, "type"]}>
<input type="hidden" />
</Form.Item>
</Col>
</Row>
))}
</>
)}
</Form.List>
</>
), ),
}, },
{ name: [field.name, "memberName"], label: "考评人员名称", onlyForLabel: true },
{ name: [field.name, "type"], label: "用户类型", onlyForLabel: true },
]),
},
},
]} ]}
/> />
</Modal> </Modal>
@ -315,14 +297,15 @@ const AddModalComponent = (props) => {
return ( return (
<Modal <Modal
title="新增" title="新增"
width={1000} width={600}
open open
onCancel={props.onCancel} onCancel={props.onCancel}
maskClosable={false} maskClosable={false}
onOk={form.submit} onOk={form.submit}
loading={props.evaluationTeamConfig.evaluationTeamConfigLoading} confirmLoading={props.evaluationTeamConfig.evaluationTeamConfigLoading}
> >
<FormBuilder <FormBuilder
loading={props.evaluationTeamConfig.evaluationTeamConfigLoading}
labelCol={{ span: 8 }} labelCol={{ span: 8 }}
showActionButtons={false} showActionButtons={false}
form={form} form={form}
@ -379,11 +362,10 @@ const ViewModalComponent = (props) => {
return ( return (
<Modal <Modal
title="查看" title="查看"
width={1000} width={600}
open open
onCancel={props.onCancel} onCancel={props.onCancel}
maskClosable={false} maskClosable={false}
loading={props.evaluationTeamConfig.evaluationTeamConfigLoading}
> >
<Descriptions <Descriptions
column={1} column={1}
@ -391,7 +373,9 @@ const ViewModalComponent = (props) => {
styles={{ label: { width: 200 } }} styles={{ label: { width: 200 } }}
items={[ items={[
{ label: "隐患考评组类型", children: "安全类" }, { label: "隐患考评组类型", children: "安全类" },
{ label: "考评组成员", children: ( {
label: "考评组成员",
children: (
<div> <div>
{safetyList.map(item => ( {safetyList.map(item => (
item.memberDeptName && ( item.memberDeptName && (
@ -405,7 +389,8 @@ const ViewModalComponent = (props) => {
) )
))} ))}
</div> </div>
) }, ),
},
]} ]}
/> />
<Descriptions <Descriptions
@ -414,7 +399,9 @@ const ViewModalComponent = (props) => {
styles={{ label: { width: 200 } }} styles={{ label: { width: 200 } }}
items={[ items={[
{ label: "隐患考评组类型", children: "环保类" }, { label: "隐患考评组类型", children: "环保类" },
{ label: "考评组成员", children: ( {
label: "考评组成员",
children: (
<div> <div>
{environmentalList.map(item => ( {environmentalList.map(item => (
item.memberDeptName && ( item.memberDeptName && (
@ -428,7 +415,8 @@ const ViewModalComponent = (props) => {
) )
))} ))}
</div> </div>
) }, ),
},
]} ]}
/> />
</Modal> </Modal>
@ -454,11 +442,10 @@ const ChangeLogModalComponent = (props) => {
return ( return (
<Modal <Modal
title="查看" title="查看"
width={1200} width={1000}
open open
onCancel={props.onCancel} onCancel={props.onCancel}
maskClosable={false} maskClosable={false}
loading={props.evaluationTeamConfig.evaluationTeamConfigLoading}
footer={[ footer={[
<Button key="back" onClick={props.onCancel}>关闭</Button>, <Button key="back" onClick={props.onCancel}>关闭</Button>,
]} ]}

View File

@ -1,8 +1,8 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Form, message, Modal, Space } from "antd"; import { Button, Descriptions, Form, message, Modal, Space, Spin } from "antd";
import { useEffect, useRef, useState } from "react"; import { useEffect, useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder"; import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack"; 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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -16,7 +16,7 @@ import { getLabelName } from "zy-react-library/utils";
import { NS_HIDDEN_EVALUATION } from "~/enumerate/namespace"; import { NS_HIDDEN_EVALUATION } from "~/enumerate/namespace";
import ViewEvaluationModal from "../../components/ViewEvaluationModal"; import ViewEvaluationModal from "../../components/ViewEvaluationModal";
function List(props) { function HiddenList(props) {
const query = useGetUrlQuery(); const query = useGetUrlQuery();
const [viewEvaluationModalOpen, setViewEvaluationModalOpen] = useState(false); const [viewEvaluationModalOpen, setViewEvaluationModalOpen] = useState(false);
const [evaluationModalOpen, setEvaluationModalOpen] = useState(false); const [evaluationModalOpen, setEvaluationModalOpen] = useState(false);
@ -35,10 +35,9 @@ function List(props) {
leFinalDoneTime: formData.finalDoneTime?.[1], leFinalDoneTime: formData.finalDoneTime?.[1],
}), }),
}); });
return ( return (
<div> <Page headerTitle="分公司考评隐患">
<HeaderBack title="分公司考评隐患" />
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "likeHiddenDesc", label: "隐患描述" }, { name: "likeHiddenDesc", label: "隐患描述" },
@ -147,12 +146,11 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div>
{viewEvaluationModalOpen {viewEvaluationModalOpen
&& <ViewEvaluationModal onCancel={() => setViewEvaluationModalOpen(false)} hiddenId={currentHiddenId} url="hiddenEvaluationHiddenEvaluationView" />} && <ViewEvaluationModal onCancel={() => setViewEvaluationModalOpen(false)} hiddenId={currentHiddenId} url="hiddenEvaluationHiddenEvaluationView" />}
{evaluationModalOpen {evaluationModalOpen
&& <EvaluationModal onCancel={() => setEvaluationModalOpen(false)} hiddenId={currentHiddenId} getData={getData} />} && <EvaluationModal onCancel={() => setEvaluationModalOpen(false)} hiddenId={currentHiddenId} getData={getData} />}
</div> </Page>
); );
} }
@ -188,13 +186,14 @@ const EvaluationModalComponent = (props) => {
return ( return (
<Modal <Modal
title="考评" title="考评"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
loading={props.hiddenEvaluation.hiddenEvaluationLoading} confirmLoading={props.hiddenEvaluation.hiddenEvaluationLoading}
> >
<Spin spinning={props.hiddenEvaluation.hiddenEvaluationLoading}>
<Descriptions <Descriptions
column={2} column={2}
bordered bordered
@ -243,9 +242,10 @@ const EvaluationModalComponent = (props) => {
}, },
]} ]}
/> />
</Spin>
</Modal> </Modal>
); );
}; };
const EvaluationModal = Connect([NS_HIDDEN_EVALUATION], true)(EvaluationModalComponent); const EvaluationModal = Connect([NS_HIDDEN_EVALUATION], true)(EvaluationModalComponent);
export default Connect([NS_HIDDEN_EVALUATION], true)(List); export default Connect([NS_HIDDEN_EVALUATION], true)(HiddenList);

View File

@ -1,6 +1,7 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
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";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
@ -20,8 +21,7 @@ function List(props) {
}); });
return ( return (
<div> <Page isShowAllAction={false}>
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "likeCorpinfoName", label: "分公司名称" }, { name: "likeCorpinfoName", label: "分公司名称" },
@ -68,8 +68,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
</div>
); );
} }

View File

@ -1,10 +1,11 @@
import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj"; import HiddenInfo from "zy-react-library/components/HiddenInfo/gwj";
import Page from "zy-react-library/components/Page";
function HiddenView() { function HiddenView() {
return ( return (
<div> <Page headerTitle="查看" contentPadding="0 20px 20px 20px">
<HiddenInfo /> <HiddenInfo />
</div> </Page>
); );
} }

View File

@ -1,8 +1,8 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Descriptions, Form, message, Modal, Space } from "antd"; import { Button, Descriptions, Form, message, Modal, Space, Spin } from "antd";
import { useEffect, useRef, useState } from "react"; import { useEffect, useRef, useState } from "react";
import FormBuilder from "zy-react-library/components/FormBuilder"; import FormBuilder from "zy-react-library/components/FormBuilder";
import HeaderBack from "zy-react-library/components/HeaderBack"; 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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary"; import DictionarySelectTree from "zy-react-library/components/SelectTree/Dictionary";
@ -16,7 +16,7 @@ import { getLabelName } from "zy-react-library/utils";
import { NS_HIDDEN_EVALUATION } from "~/enumerate/namespace"; import { NS_HIDDEN_EVALUATION } from "~/enumerate/namespace";
import ViewEvaluationModal from "../../components/ViewEvaluationModal"; import ViewEvaluationModal from "../../components/ViewEvaluationModal";
function List(props) { function HiddenEvaluationList(props) {
const query = useGetUrlQuery(); const query = useGetUrlQuery();
const [viewEvaluationModalOpen, setViewEvaluationModalOpen] = useState(false); const [viewEvaluationModalOpen, setViewEvaluationModalOpen] = useState(false);
const [evaluationModalOpen, setEvaluationModalOpen] = useState(false); const [evaluationModalOpen, setEvaluationModalOpen] = useState(false);
@ -32,10 +32,9 @@ function List(props) {
leExchangeTime: formData.hiddenFindTime?.[1], leExchangeTime: formData.hiddenFindTime?.[1],
}), }),
}); });
return ( return (
<div> <Page headerTitle="分公司考评隐患">
<HeaderBack title="分公司考评隐患" />
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "eqHiddenSource", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM }, { name: "eqHiddenSource", label: "隐患来源", render: FORM_ITEM_RENDER_ENUM.SELECT, items: HIDDEN_SOURCE_ENUM },
@ -100,12 +99,11 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div>
{viewEvaluationModalOpen {viewEvaluationModalOpen
&& <ViewEvaluationModal onCancel={() => setViewEvaluationModalOpen(false)} hiddenId={currentHiddenId} />} && <ViewEvaluationModal onCancel={() => setViewEvaluationModalOpen(false)} hiddenId={currentHiddenId} />}
{evaluationModalOpen {evaluationModalOpen
&& <EvaluationModal onCancel={() => setEvaluationModalOpen(false)} hiddenId={currentHiddenId} getData={getData} />} && <EvaluationModal onCancel={() => setEvaluationModalOpen(false)} hiddenId={currentHiddenId} getData={getData} />}
</div> </Page>
); );
} }
@ -141,13 +139,14 @@ const EvaluationModalComponent = (props) => {
return ( return (
<Modal <Modal
title="考评" title="考评"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
onOk={form.submit} onOk={form.submit}
loading={props.hiddenEvaluation.hiddenEvaluationLoading} confirmLoading={props.hiddenEvaluation.hiddenEvaluationLoading}
> >
<Spin spinning={props.hiddenEvaluation.hiddenEvaluationLoading}>
<Descriptions <Descriptions
column={2} column={2}
bordered bordered
@ -196,9 +195,10 @@ const EvaluationModalComponent = (props) => {
}, },
]} ]}
/> />
</Spin>
</Modal> </Modal>
); );
}; };
const EvaluationModal = Connect([NS_HIDDEN_EVALUATION], true)(EvaluationModalComponent); const EvaluationModal = Connect([NS_HIDDEN_EVALUATION], true)(EvaluationModalComponent);
export default Connect([NS_HIDDEN_EVALUATION], true)(List); export default Connect([NS_HIDDEN_EVALUATION], true)(HiddenEvaluationList);

View File

@ -1,6 +1,7 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Form } from "antd"; import { Form } from "antd";
import { useMemo } from "react"; import { useMemo } from "react";
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";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
@ -102,8 +103,7 @@ function List(props) {
]; ];
return ( return (
<div> <Page isShowAllAction={false}>
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "likeCorpinfoName", label: "分公司名称" }, { name: "likeCorpinfoName", label: "分公司名称" },
@ -115,8 +115,7 @@ function List(props) {
columns={columns} columns={columns}
{...processedTableProps} {...processedTableProps}
/> />
</div> </Page>
</div>
); );
} }

View File

@ -1,173 +1,9 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import UserExchangeListPage from "../../PersonnelEvaluation/UserExchangeList";
import { Button, Form, message, Modal, Space, Spin } from "antd";
import { useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import EditIcon from "zy-react-library/components/Icon/EditIcon";
import ExportIcon from "zy-react-library/components/Icon/ExportIcon";
import Search from "zy-react-library/components/Search";
import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Table from "zy-react-library/components/Table";
import useDownloadBlob from "zy-react-library/hooks/useDownloadBlob";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable";
import useUrlQueryCriteria from "zy-react-library/hooks/useUrlQueryCriteria";
import { NS_HIDDEN_EVALUATION, NS_PERSONNEL_EVALUATION } from "~/enumerate/namespace";
function List(props) {
const query = useGetUrlQuery();
const { loading: downloadBlobLoading, downloadBlob } = useDownloadBlob();
const { getUrlCriteriaQuery } = useUrlQueryCriteria();
const [selectedRowKeys, setSelectedRowKeys] = useState([]);
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["personnelEvaluationUserExchangeList"], {
form,
params: {
eqCorpId: query.corpinfoId,
},
});
const onBatchExchange = async () => {
if (!selectedRowKeys.length) {
message.warning("请选择需要兑换的人员");
return;
}
Modal.confirm({
title: "兑换确认",
content: "确定要兑换吗?", // 确定要兑换所有人得分吗
onOk: async () => {
const success = await props["personnelEvaluationExchange"]({ userIds: selectedRowKeys });
if (success) {
message.success("兑换成功");
getData();
}
},
onCancel: () => {
message.warning("已取消兑换");
},
});
};
const OnRedeemAll = async () => {
Modal.confirm({
title: "兑换确认",
content: "确定要兑换所有人得分吗?", // 确定要兑换所有人得分吗
onOk: async () => {
const searchForm = getUrlCriteriaQuery("searchFormKeys", "searchFormValues");
const success = await props["viewUserEvaluateConditionList"]({ likeFindUserRealName: searchForm.likeFindUserRealName, eqFindUserDeptId: searchForm.eqFindUserDeptId, corpId: query.corpinfoId });
if (success) {
message.success("兑换成功");
getData();
}
},
onCancel: () => {
message.warning("已取消兑换");
},
});
};
const onExportExcel = async () => {
if (!selectedRowKeys.length) {
message.warning("请选择需要导出的人员");
return;
}
Modal.confirm({
title: "导出确认",
content: "确定要导出excel吗",
onOk: async () => {
await downloadBlob("/hidden/viewUserEvaluateConditionList/exportEvaluate", { params: { findUserIds: selectedRowKeys.join(",") } });
message.success("导出成功");
},
onCancel: () => {
message.warning("已取消导出");
},
});
};
function UserExchangeList(props) {
return ( return (
<div> <UserExchangeListPage {...props} />
<HeaderBack title="人员考评情况" />
<div style={{ padding: 20 }}>
<Spin spinning={downloadBlobLoading}>
<Search
options={[
{ name: "eqFindUserDeptId", label: "部门", render: (<DepartmentSelectTree isNeedCorpInfoId params={{ eqCorpinfoId: query.corpinfoId }} />) },
{ name: "likeFindUserRealName", label: "姓名" },
]}
form={form}
onFinish={getData}
/>
<Table
rowSelection={{
preserveSelectedRowKeys: true,
selectedRowKeys,
onChange: (selectedRowKeys) => {
setSelectedRowKeys(selectedRowKeys);
},
}}
rowKey="findUserId"
toolBarRender={() => (
<Space>
<Button
type="primary"
icon={<EditIcon />}
onClick={onBatchExchange}
>
批量兑换
</Button>
<Button
type="primary"
icon={<EditIcon />}
onClick={OnRedeemAll}
>
全选兑换
</Button>
<Button
type="primary"
icon={<ExportIcon />}
onClick={onExportExcel}
>
导出数据
</Button>
</Space>
)}
columns={[
{ title: "用户名", dataIndex: "findUserName" },
{ title: "姓名", dataIndex: "findUserRealName" },
{ title: "部门", dataIndex: "findUserDeptName" },
{ title: "岗位", dataIndex: "findUserPositionsName" },
{ title: "奖励总得分", dataIndex: "totalScore" },
{ title: "已兑换分数", dataIndex: "alreadyExchange" },
{ title: "未兑换奖励数", dataIndex: "notExchanged", render: (_, record) => record.totalScore - record.alreadyExchange },
{
title: "操作",
width: 200,
fixed: "right",
render: (_, record) => (
<Space>
<Button
type="link"
onClick={() => {
props.history.push(`./userExchangeRecordList?findUserId=${record.findUserId}`);
}}
>
兑换记录
</Button>
<Button
type="link"
onClick={() => {
props.history.push(`./HiddenEvaluationList?findUserId=${record.findUserId}`);
}}
>
考评详情
</Button>
</Space>
),
},
]}
{...tableProps}
/>
</Spin>
</div>
</div>
); );
} }
export default Connect([NS_PERSONNEL_EVALUATION, NS_HIDDEN_EVALUATION], true)(List); export default UserExchangeList;

View File

@ -1,68 +1,9 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import UserExchangeRecordListPage from "../../PersonnelEvaluation/UserExchangeRecordList";
import { Button, Form, Space } from "antd";
import HeaderBack from "zy-react-library/components/HeaderBack";
import Search from "zy-react-library/components/Search";
import Table from "zy-react-library/components/Table";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable";
import { NS_PERSONNEL_EVALUATION } from "~/enumerate/namespace";
function List(props) {
const query = useGetUrlQuery();
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["personnelEvaluationUserExchangeRecordList"], {
form,
params: {
eqBelongerId: query.findUserId,
},
transform: formData => ({
geExchangeTime: formData.dates?.[0],
leExchangeTime: formData.dates?.[1],
}),
});
function UserExchangeRecordList(props) {
return ( return (
<div> <UserExchangeRecordListPage {...props} />
<HeaderBack title="兑换记录" />
<div style={{ padding: 20 }}>
<Search
options={[
{ name: "dates", label: "兑换时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
]}
form={form}
onFinish={getData}
/>
<Table
columns={[
{ title: "兑换时间", dataIndex: "exchangeTime" },
{ title: "兑换操作人员", dataIndex: "exchangeUserName" },
{ title: "兑换隐患数", dataIndex: "exchangeTotal" },
{ title: "兑换积分", dataIndex: "exchangeScore" },
{ title: "剩余积分数", dataIndex: "surplusScoreTotal" },
{
title: "操作",
width: 100,
fixed: "right",
render: (_, record) => (
<Space>
<Button
type="link"
onClick={() => {
props.history.push(`./HiddenEvaluationList?findUserId=${record.belongerId}`);
}}
>
隐患详情
</Button>
</Space>
),
},
]}
{...tableProps}
/>
</div>
</div>
); );
} }
export default Connect([NS_PERSONNEL_EVALUATION], true)(List); export default UserExchangeRecordList;

View File

@ -1,6 +1,7 @@
import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Permission } from "@cqsjjb/jjb-common-decorator/permission";
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
@ -14,8 +15,7 @@ function List(props) {
}); });
return ( return (
<div> <Page isShowAllAction={false}>
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "eqDeptId", label: "考评组部门", render: (<DepartmentSelectTree searchType="all" />) }, { name: "eqDeptId", label: "考评组部门", render: (<DepartmentSelectTree searchType="all" />) },
@ -59,8 +59,7 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
</div>
); );
} }

View File

@ -1,9 +1,9 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, message, Modal, Space, Spin } from "antd"; import { Button, Form, message, Modal, Space, Spin } from "antd";
import { useState } from "react"; import { useState } from "react";
import HeaderBack from "zy-react-library/components/HeaderBack";
import EditIcon from "zy-react-library/components/Icon/EditIcon"; import EditIcon from "zy-react-library/components/Icon/EditIcon";
import ExportIcon from "zy-react-library/components/Icon/ExportIcon"; import ExportIcon from "zy-react-library/components/Icon/ExportIcon";
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 DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj";
import Table from "zy-react-library/components/Table"; import Table from "zy-react-library/components/Table";
@ -13,7 +13,7 @@ import useTable from "zy-react-library/hooks/useTable";
import useUrlQueryCriteria from "zy-react-library/hooks/useUrlQueryCriteria"; import useUrlQueryCriteria from "zy-react-library/hooks/useUrlQueryCriteria";
import { NS_HIDDEN_EVALUATION, NS_PERSONNEL_EVALUATION } from "~/enumerate/namespace"; import { NS_HIDDEN_EVALUATION, NS_PERSONNEL_EVALUATION } from "~/enumerate/namespace";
function List(props) { function UserExchangeList(props) {
const query = useGetUrlQuery(); const query = useGetUrlQuery();
const { loading: downloadBlobLoading, downloadBlob } = useDownloadBlob(); const { loading: downloadBlobLoading, downloadBlob } = useDownloadBlob();
const { getUrlCriteriaQuery } = useUrlQueryCriteria(); const { getUrlCriteriaQuery } = useUrlQueryCriteria();
@ -82,9 +82,7 @@ function List(props) {
}; };
return ( return (
<div> <Page headerTitle="人员考评情况">
<HeaderBack title="人员考评情况" />
<div style={{ padding: 20 }}>
<Spin spinning={downloadBlobLoading}> <Spin spinning={downloadBlobLoading}>
<Search <Search
options={[ options={[
@ -165,9 +163,8 @@ function List(props) {
{...tableProps} {...tableProps}
/> />
</Spin> </Spin>
</div> </Page>
</div>
); );
} }
export default Connect([NS_PERSONNEL_EVALUATION, NS_HIDDEN_EVALUATION], true)(List); export default Connect([NS_PERSONNEL_EVALUATION, NS_HIDDEN_EVALUATION], true)(UserExchangeList);

View File

@ -1,6 +1,6 @@
import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Connect } from "@cqsjjb/jjb-dva-runtime";
import { Button, Form, Space } from "antd"; import { Button, Form, Space } from "antd";
import HeaderBack from "zy-react-library/components/HeaderBack"; 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";
import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender";
@ -8,7 +8,7 @@ import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useTable from "zy-react-library/hooks/useTable"; import useTable from "zy-react-library/hooks/useTable";
import { NS_PERSONNEL_EVALUATION } from "~/enumerate/namespace"; import { NS_PERSONNEL_EVALUATION } from "~/enumerate/namespace";
function List(props) { function UserExchangeRecordList(props) {
const query = useGetUrlQuery(); const query = useGetUrlQuery();
const [form] = Form.useForm(); const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["personnelEvaluationUserExchangeRecordList"], { const { tableProps, getData } = useTable(props["personnelEvaluationUserExchangeRecordList"], {
@ -23,9 +23,7 @@ function List(props) {
}); });
return ( return (
<div> <Page headerTitle="兑换记录">
<HeaderBack title="兑换记录" />
<div style={{ padding: 20 }}>
<Search <Search
options={[ options={[
{ name: "dates", label: "兑换时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE }, { name: "dates", label: "兑换时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE },
@ -60,9 +58,8 @@ function List(props) {
]} ]}
{...tableProps} {...tableProps}
/> />
</div> </Page>
</div>
); );
} }
export default Connect([NS_PERSONNEL_EVALUATION], true)(List); export default Connect([NS_PERSONNEL_EVALUATION], true)(UserExchangeRecordList);

View File

@ -18,11 +18,10 @@ const ViewEvaluationModal = (props) => {
return ( return (
<Modal <Modal
title="考评详情" title="考评详情"
width={800} width={600}
open open
maskClosable={false} maskClosable={false}
onCancel={props.onCancel} onCancel={props.onCancel}
loading={props.hiddenEvaluation.hiddenEvaluationLoading}
footer={[ footer={[
<Button key="cancel" onClick={props.onCancel}> <Button key="cancel" onClick={props.onCancel}>
取消 取消