From 470bcbd160e4c2c9360992ecf28af59adc10499d Mon Sep 17 00:00:00 2001 From: LiuJiaNan <15703339975@163.com> Date: Mon, 29 Dec 2025 13:35:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jjb.config.js | 3 +- package.json | 2 +- src/main.js | 1 + .../BusPromiseTemplate/Add/index.js | 92 ++- .../BusPromiseTemplate/List/index.js | 15 +- .../BusPromiseTemplate/View/index.js | 61 ++ .../Enterprise/Management/Add/index.js | 464 +++++++-------- .../Enterprise/Management/Detail/index.js | 137 ++--- .../Enterprise/Management/List/index.js | 5 +- .../Enterprise/Management/Release/index.js | 100 ++-- .../Supervise/BusPromiseTemplate/Add/index.js | 80 ++- .../BusPromiseTemplate/List/index.js | 21 +- .../BusPromiseTemplate/View/index.js | 65 +++ .../Supervise/Management/Add/index.js | 543 +++++++++--------- .../Supervise/Management/Detail/index.js | 156 +++-- .../Supervise/Management/List/index.js | 5 +- .../Supervise/Management/Release/index.js | 98 ++-- .../Supervise/busPromise/List/index.js | 5 +- .../Supervise/busPromise/ListView/index.js | 79 ++- .../Supervise/busPromise/View/index.js | 83 +-- .../Supervise/components/DetailModal/index.js | 134 ++--- 21 files changed, 1136 insertions(+), 1013 deletions(-) create mode 100644 src/pages/Container/Enterprise/BusPromiseTemplate/View/index.js create mode 100644 src/pages/Container/Supervise/BusPromiseTemplate/View/index.js diff --git a/jjb.config.js b/jjb.config.js index 83d7b34..80a917e 100644 --- a/jjb.config.js +++ b/jjb.config.js @@ -9,7 +9,8 @@ module.exports = { // 应用后端分支名称,部署上线需要 javaGitBranch: "", // 接口服务地址 - API_HOST: "http://192.168.20.100:30140", + // API_HOST: "http://192.168.20.100:30140", + API_HOST: "https://gbs-gateway.qhdsafety.com", }, production: { // 应用后端分支名称,部署上线需要 diff --git a/package.json b/package.json index 96132f8..879475f 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "react-to-print": "^3.2.0", - "zy-react-library": "^1.0.175" + "zy-react-library": "^1.1.10" }, "devDependencies": { "@antfu/eslint-config": "^5.4.1", diff --git a/src/main.js b/src/main.js index c1cdccb..7f79acf 100644 --- a/src/main.js +++ b/src/main.js @@ -6,6 +6,7 @@ import "dayjs/locale/zh-cn"; import "../blessed_by_buddha"; require("antd/dist/reset.css"); +require("zy-react-library/css/common.less"); dayjs.locale("zh-cn"); setJJBCommonAntdMessage(message); diff --git a/src/pages/Container/Enterprise/BusPromiseTemplate/Add/index.js b/src/pages/Container/Enterprise/BusPromiseTemplate/Add/index.js index 0f55947..ee9947c 100644 --- a/src/pages/Container/Enterprise/BusPromiseTemplate/Add/index.js +++ b/src/pages/Container/Enterprise/BusPromiseTemplate/Add/index.js @@ -3,7 +3,7 @@ import { Form, message } from "antd"; import { useEffect } from "react"; import Editor from "zy-react-library/components/Editor"; 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 DictionarySelect from "zy-react-library/components/Select/Dictionary"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; @@ -27,60 +27,58 @@ function Add(props) { ...values, id: query.id, promiseId: query.promiseId, - isRegulatory: 0, + isRegulatory: 1, }); if (success) { message.success("操作成功"); props.history.goBack(); } }; + return ( -
- -
- ({ ...item, bianma: +item.bianma })), - componentProps: { - disabled: true, - }, + + ({ ...item, bianma: +item.bianma })), + componentProps: { + disabled: true, }, - { - name: "level", - label: "安全承诺级别", - render: ( - form.setFieldValue("levelName", label)} - /> - ), - }, - { name: "levelName", label: "安全承诺级别名称", onlyForLabel: true }, - { - name: "promiseText", - label: "承诺内容", - span: 24, - render: (), - required: false, - formItemProps: { required: true }, - rules: [{ required: true, message: "请输入安全承诺内容", validateTrigger: "onBlur" }], - }, - ]} - /> -
-
+ }, + { + name: "level", + label: "安全承诺级别", + render: ( + form.setFieldValue("levelName", label)} + /> + ), + }, + { name: "levelName", label: "安全承诺级别名称", onlyForLabel: true }, + { + name: "promiseText", + label: "承诺内容", + span: 24, + render: (), + required: false, + formItemProps: { required: true }, + rules: [{ required: true, message: "请输入安全承诺内容", validateTrigger: "onBlur" }], + }, + ]} + /> + ); } diff --git a/src/pages/Container/Enterprise/BusPromiseTemplate/List/index.js b/src/pages/Container/Enterprise/BusPromiseTemplate/List/index.js index ea61c65..2c434ac 100644 --- a/src/pages/Container/Enterprise/BusPromiseTemplate/List/index.js +++ b/src/pages/Container/Enterprise/BusPromiseTemplate/List/index.js @@ -1,23 +1,19 @@ import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Form, message, Modal, Space } from "antd"; -import { useState } from "react"; 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 Table from "zy-react-library/components/Table"; import useTable from "zy-react-library/hooks/useTable"; import { getLabelName } from "zy-react-library/utils"; import { NS_COMMITMENT } from "~/enumerate/namespace"; -import DetailModal from "~/pages/Container/Supervise/Components/DetailModal"; function List(props) { const [form] = Form.useForm(); const { tableProps, getData } = useTable(props["busPromiseTemplateList"], { form, }); - const [busPromiseTemplateModalOpen, setBusPromiseTemplateModalOpen] = useState(false); - const [id, setId] = useState(""); - const [modalUrl, setModalUrl] = useState(""); const updateState = (id, state) => { const stateValue = state === 0 ? 1 : 0; Modal.confirm({ @@ -33,7 +29,7 @@ function List(props) { }); }; return ( -
+ { - setBusPromiseTemplateModalOpen(true); - setId(record.id); - setModalUrl("busPromiseTemplateView"); + props.history.push(`./view?id=${record.id}`); }} > 查看 @@ -100,8 +94,7 @@ function List(props) { ]} {...tableProps} /> - {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} -
+ ); } diff --git a/src/pages/Container/Enterprise/BusPromiseTemplate/View/index.js b/src/pages/Container/Enterprise/BusPromiseTemplate/View/index.js new file mode 100644 index 0000000..f855a3d --- /dev/null +++ b/src/pages/Container/Enterprise/BusPromiseTemplate/View/index.js @@ -0,0 +1,61 @@ +import { Button, Descriptions } from "antd"; +import { useRef, useState } from "react"; +import { useReactToPrint } from "react-to-print"; +import Page from "zy-react-library/components/Page"; +import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; +import DetailModal from "~/pages/Container/Enterprise/components/DetailModal"; + +function View() { + const query = useGetUrlQuery(); + + const [info, setInfo] = useState({}); + + const contentRef = useRef(null); + const handlePrint = useReactToPrint({ + contentRef, + pageStyle: `@page { + margin: 0mm; + } + @media print { + body { + margin: 10px; + padding: 10px; + } + } + `, + documentTitle: "", + }); + + return ( + + 打印模板 + + )} + > + +
+ { + setInfo(data); + }} + /> +
+
+ ); +} + +export default View; diff --git a/src/pages/Container/Enterprise/Management/Add/index.js b/src/pages/Container/Enterprise/Management/Add/index.js index cece5e3..1beec7d 100644 --- a/src/pages/Container/Enterprise/Management/Add/index.js +++ b/src/pages/Container/Enterprise/Management/Add/index.js @@ -5,7 +5,7 @@ import { cloneDeep } from "lodash-es"; import { useEffect, useState } from "react"; import Editor from "zy-react-library/components/Editor"; 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 DictionarySelect from "zy-react-library/components/Select/Dictionary"; import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj"; @@ -110,250 +110,247 @@ function Add(props) { }; return ( -
- -
- form.setFieldValue("levelName", label)} - /> - ), - }, - { name: "levelName", label: "安全承诺级别名称", onlyForLabel: true }, - { name: "promiseTermStart", label: "适用期限开始", render: FORM_ITEM_RENDER_ENUM.DATE }, - { - name: "promiseTermEnd", - label: "适用期限结束", - render: FORM_ITEM_RENDER_ENUM.DATE, - rules: [validatorEndTime(promiseTermStart), { - validator: (_, value) => { - if (value && promiseTermStart) { - const startYear = dayjs(promiseTermStart).year(); - const endYear = dayjs(value).year(); + + form.setFieldValue("levelName", label)} + /> + ), + }, + { name: "levelName", label: "安全承诺级别名称", onlyForLabel: true }, + { name: "promiseTermStart", label: "适用期限开始", render: FORM_ITEM_RENDER_ENUM.DATE }, + { + name: "promiseTermEnd", + label: "适用期限结束", + render: FORM_ITEM_RENDER_ENUM.DATE, + rules: [validatorEndTime(promiseTermStart), { + validator: (_, value) => { + if (value && promiseTermStart) { + const startYear = dayjs(promiseTermStart).year(); + const endYear = dayjs(value).year(); - if (startYear !== endYear) { - return Promise.reject("开始时间和结束时间不能跨年"); - } + if (startYear !== endYear) { + return Promise.reject("开始时间和结束时间不能跨年"); } - return Promise.resolve(); - }, - }], - }, - { key: "divider1", label: "承诺内容", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, - { - key: "commitmentContentButton", - customizeRender: true, - span: 24, - render: ( -
- -
- ), - }, - { name: "promiseTypeName", label: "安全承诺类型", onlyForLabel: true }, - { name: "promiseType", label: "安全承诺类型", onlyForLabel: true }, - { - name: "promiseText", - label: "安全承诺内容", - span: 24, - render: (), - required: false, - formItemProps: { required: true }, - rules: [{ required: true, message: "请输入安全承诺内容", validateTrigger: "onBlur" }], - }, - { key: "divider2", label: "承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, - { - name: "promisePersons", - span: 24, - render: FORM_ITEM_RENDER_ENUM.FORM_LIST, - formListUniqueProps: { - options: (field, index) => ( - [ - { - name: [field.name, "departmentId"], - span: 8, - labelCol: { span: 6 }, - label: `部门${index + 1}`, - render: ( - { - form.setFieldValue(["promisePersons", field.name, "postId"], ""); - form.setFieldValue(["promisePersons", field.name, "postName"], ""); - form.setFieldValue(["promisePersons", field.name, "userName"], ""); - form.setFieldValue(["promisePersons", field.name, "userId"], []); - - if (!departmentId) - return; - getPostList(departmentId, index); - }} - onGetLabel={(label) => { - form.setFieldValue(["promisePersons", field.name, "departmentName"], label); - }} - /> - ), - }, - { name: [field.name, "departmentName"], label: `部门${index + 1}名称`, onlyForLabel: true }, - { - name: [field.name, "postId"], - span: 8, - labelCol: { span: 6 }, - label: `岗位${index + 1}`, - render: FORM_ITEM_RENDER_ENUM.SELECT, - items: postList[index] || [], - itemsField: { labelKey: "postName", valueKey: "id" }, - componentProps: { - onChange: (event) => { - form.setFieldValue(["promisePersons", field.name, "postName"], getLabelName({ - list: postList[index], - status: event, - nameKey: "postName", - idKey: "id", - })); + } + return Promise.resolve(); + }, + }], + }, + { key: "divider1", label: "承诺内容", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, + { + key: "commitmentContentButton", + customizeRender: true, + span: 24, + render: ( +
+ +
+ ), + }, + { name: "promiseTypeName", label: "安全承诺类型", onlyForLabel: true }, + { name: "promiseType", label: "安全承诺类型", onlyForLabel: true }, + { + name: "promiseText", + label: "安全承诺内容", + span: 24, + render: (), + required: false, + formItemProps: { required: true }, + rules: [{ required: true, message: "请输入安全承诺内容", validateTrigger: "onBlur" }], + }, + { key: "divider2", label: "承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, + { + name: "promisePersons", + span: 24, + render: FORM_ITEM_RENDER_ENUM.FORM_LIST, + formListUniqueProps: { + options: (field, index) => ( + [ + { + name: [field.name, "departmentId"], + span: 8, + labelCol: { span: 6 }, + label: `部门${index + 1}`, + render: ( + { + form.setFieldValue(["promisePersons", field.name, "postId"], ""); + form.setFieldValue(["promisePersons", field.name, "postName"], ""); form.setFieldValue(["promisePersons", field.name, "userName"], ""); form.setFieldValue(["promisePersons", field.name, "userId"], []); - }, + + if (!departmentId) + return; + getPostList(departmentId, index); + }} + onGetLabel={(label) => { + form.setFieldValue(["promisePersons", field.name, "departmentName"], label); + }} + /> + ), + }, + { name: [field.name, "departmentName"], label: `部门${index + 1}名称`, onlyForLabel: true }, + { + name: [field.name, "postId"], + span: 8, + labelCol: { span: 6 }, + label: `岗位${index + 1}`, + render: FORM_ITEM_RENDER_ENUM.SELECT, + items: postList[index] || [], + itemsField: { labelKey: "postName", valueKey: "id" }, + componentProps: { + onChange: (event) => { + form.setFieldValue(["promisePersons", field.name, "postName"], getLabelName({ + list: postList[index], + status: event, + nameKey: "postName", + idKey: "id", + })); + form.setFieldValue(["promisePersons", field.name, "userName"], ""); + form.setFieldValue(["promisePersons", field.name, "userId"], []); }, }, - { name: [field.name, "postName"], label: `岗位${index + 1}名称`, onlyForLabel: true }, - { name: [field.name, "userName"], label: `人员${index + 1}名称`, onlyForLabel: true }, - { - name: [field.name, "userId"], - span: 8, - labelCol: { span: 6 }, - label: `人员${index + 1}`, - render: ( - { - form.setFieldValue(["promisePersons", field.name, "userName"], label); - }} - mode="multiple" - /> - ), - }, - ] - ), - }, - }, - { key: "divider3", label: "被承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, - { - name: "passiveDepartmentId", - label: "部门", - span: 8, - labelCol: { span: 6 }, - render: ( - { - form.setFieldValue("passivePostName", ""); - form.setFieldValue("passivePostId", []); - form.setFieldValue("passiveUserName", ""); - form.setFieldValue("passiveUserId", ""); - - if (!departmentId) - return; - getPostList1(departmentId); - }} - onGetLabel={(label) => { - form.setFieldValue("passiveDepartmentName", label); - }} - /> + }, + { name: [field.name, "postName"], label: `岗位${index + 1}名称`, onlyForLabel: true }, + { name: [field.name, "userName"], label: `人员${index + 1}名称`, onlyForLabel: true }, + { + name: [field.name, "userId"], + span: 8, + labelCol: { span: 6 }, + label: `人员${index + 1}`, + render: ( + { + form.setFieldValue(["promisePersons", field.name, "userName"], label); + }} + mode="multiple" + /> + ), + }, + ] ), }, - { name: "passiveDepartmentName", label: "部门名称", onlyForLabel: true }, - { - name: "passivePostId", - label: "岗位", - span: 8, - labelCol: { span: 6 }, - render: FORM_ITEM_RENDER_ENUM.SELECT, - items: postList1, - itemsField: { labelKey: "postName", valueKey: "id" }, - componentProps: { - onChange: (event) => { - form.setFieldValue("passivePostName", getLabelName({ - list: postList1, - status: event, - nameKey: "postName", - idKey: "id", - })); + }, + { key: "divider3", label: "被承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, + { + name: "passiveDepartmentId", + label: "部门", + span: 8, + labelCol: { span: 6 }, + render: ( + { + form.setFieldValue("passivePostName", ""); + form.setFieldValue("passivePostId", []); form.setFieldValue("passiveUserName", ""); form.setFieldValue("passiveUserId", ""); - }, + + if (!departmentId) + return; + getPostList1(departmentId); + }} + onGetLabel={(label) => { + form.setFieldValue("passiveDepartmentName", label); + }} + /> + ), + }, + { name: "passiveDepartmentName", label: "部门名称", onlyForLabel: true }, + { + name: "passivePostId", + label: "岗位", + span: 8, + labelCol: { span: 6 }, + render: FORM_ITEM_RENDER_ENUM.SELECT, + items: postList1, + itemsField: { labelKey: "postName", valueKey: "id" }, + componentProps: { + onChange: (event) => { + form.setFieldValue("passivePostName", getLabelName({ + list: postList1, + status: event, + nameKey: "postName", + idKey: "id", + })); + form.setFieldValue("passiveUserName", ""); + form.setFieldValue("passiveUserId", ""); }, }, - { name: "passivePostName", label: "岗位名称", onlyForLabel: true }, - { - name: "passiveUserId", - label: "人员", - span: 8, - labelCol: { span: 6 }, - render: ( - { - form.setFieldValue("passiveUserName", label); - }} - /> - ), - }, - { name: "passiveUserName", label: "人员名称", onlyForLabel: true }, - ]} + }, + { name: "passivePostName", label: "岗位名称", onlyForLabel: true }, + { + name: "passiveUserId", + label: "人员", + span: 8, + labelCol: { span: 6 }, + render: ( + { + form.setFieldValue("passiveUserName", label); + }} + /> + ), + }, + { name: "passiveUserName", label: "人员名称", onlyForLabel: true }, + ]} + /> + {choiceTemplateModalOpen && ( + setchoiceTemplateModalOpen(false)} + onConfirm={(values) => { + form.setFieldValue("promiseType", values.promiseType); + form.setFieldValue("promiseTypeName", getLabelName({ + list: PROMISE_TYPE_ENUM, + status: values.promiseType, + })); + form.setFieldValue("promiseText", values.promiseText); + form.setFieldValue("promisePersons", [{}]); + form.setFieldValue("passiveDepartmentName", ""); + form.setFieldValue("passiveDepartmentId", ""); + form.setFieldValue("passivePostName", ""); + form.setFieldValue("passivePostId", ""); + form.setFieldValue("passiveUserName", ""); + form.setFieldValue("passiveUserId", ""); + setPostList([]); + setPostList1([]); + }} /> - {choiceTemplateModalOpen && ( - setchoiceTemplateModalOpen(false)} - onConfirm={(values) => { - form.setFieldValue("promiseType", values.promiseType); - form.setFieldValue("promiseTypeName", getLabelName({ - list: PROMISE_TYPE_ENUM, - status: values.promiseType, - })); - form.setFieldValue("promiseText", values.promiseText); - form.setFieldValue("promisePersons", [{}]); - form.setFieldValue("passiveDepartmentName", ""); - form.setFieldValue("passiveDepartmentId", ""); - form.setFieldValue("passivePostName", ""); - form.setFieldValue("passivePostId", ""); - form.setFieldValue("passiveUserName", ""); - form.setFieldValue("passiveUserId", ""); - setPostList([]); - setPostList1([]); - }} - /> - )} -
-
+ )} + ); } @@ -365,6 +362,7 @@ const ChoiceTemplateModalComponent = (props) => { return ( { onFinish={getData} /> { getData(); }, []); - return ( -
- -
- 基本信息 - - 承诺内容 - ) }, - ]} - /> - {detail.promiseType === 1 ? "受状人" : "承诺人"} - { - const base = [ - { label: `部门${index + 1}`, children: item.departmentName || "-" }, - { label: `岗位${index + 1}`, children: item.postName || "-" }, - { label: `人员${index + 1}`, children: item.userName || "-" }, - ]; - return base; - }), - ]} - /> - {detail.promiseType === 1 ? "发状人" : "被承诺人"} - -
- -
- {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} -
-
+ return ( + { + setBusPromiseTemplateModalOpen(true); + setId(query.id); + setModalUrl("busPromiseView"); + }} + > + 模板 + + )} + > + 基本信息 + + 承诺内容 + ) }, + ]} + /> + {detail.promiseType === 1 ? "受状人" : "承诺人"} + + { + const base = [ + { label: `部门${index + 1}`, children: item.departmentName || "-" }, + { label: `岗位${index + 1}`, children: item.postName || "-" }, + { label: `人员${index + 1}`, children: item.userName || "-" }, + ]; + return base; + }), + ]} + /> + {detail.promiseType === 1 ? "发状人" : "被承诺人"} + + {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} + ); } diff --git a/src/pages/Container/Enterprise/Management/List/index.js b/src/pages/Container/Enterprise/Management/List/index.js index 0a19f00..908d35f 100644 --- a/src/pages/Container/Enterprise/Management/List/index.js +++ b/src/pages/Container/Enterprise/Management/List/index.js @@ -3,6 +3,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Form, message, Modal, Space, Tooltip } from "antd"; import dayjs from "dayjs"; 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 DictionarySelect from "zy-react-library/components/Select/Dictionary"; import DepartmentSelectTree from "zy-react-library/components/SelectTree/Department/Gwj"; @@ -39,7 +40,7 @@ function List(props) { } }; return ( -
+ -
+ ); } diff --git a/src/pages/Container/Enterprise/Management/Release/index.js b/src/pages/Container/Enterprise/Management/Release/index.js index 2da23af..04379d8 100644 --- a/src/pages/Container/Enterprise/Management/Release/index.js +++ b/src/pages/Container/Enterprise/Management/Release/index.js @@ -1,7 +1,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Form, Space } from "antd"; import { useState } from "react"; -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 useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useTable from "zy-react-library/hooks/useTable"; @@ -19,57 +19,55 @@ function List(props) { const [busPromiseTemplateModalOpen, setBusPromiseTemplateModalOpen] = useState(false); const [id, setId] = useState(""); const [modalUrl, setModalUrl] = useState(""); - return ( -
- -
-
( - - - - )} - columns={[ - { title: "部门", dataIndex: "departmentName" }, - { title: "岗位", dataIndex: "postName" }, - { title: "人员", dataIndex: "userName" }, - { title: "签署时间", dataIndex: "signTime" }, - { title: "签署状态", render: (_, record) => getLabelName({ list: [{ name: "未签署", bianma: "0" }, { name: "已签署", bianma: "1" }], status: record.isSign }) }, - { - title: "操作", - width: 200, - fixed: "right", - render: (_, record) => ( - - - - ), - }, - ]} - {...tableProps} - /> - {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} - - + return ( + +
( + + + + )} + columns={[ + { title: "部门", dataIndex: "departmentName" }, + { title: "岗位", dataIndex: "postName" }, + { title: "人员", dataIndex: "userName" }, + { title: "签署时间", dataIndex: "signTime" }, + { title: "签署状态", render: (_, record) => getLabelName({ list: [{ name: "未签署", bianma: "0" }, { name: "已签署", bianma: "1" }], status: record.isSign }) }, + { + title: "操作", + width: 200, + fixed: "right", + render: (_, record) => ( + + + + ), + }, + ]} + {...tableProps} + /> + {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} + ); } diff --git a/src/pages/Container/Supervise/BusPromiseTemplate/Add/index.js b/src/pages/Container/Supervise/BusPromiseTemplate/Add/index.js index 78fdce0..f6da192 100644 --- a/src/pages/Container/Supervise/BusPromiseTemplate/Add/index.js +++ b/src/pages/Container/Supervise/BusPromiseTemplate/Add/index.js @@ -3,7 +3,7 @@ import { Form, message } from "antd"; import { useEffect } from "react"; import Editor from "zy-react-library/components/Editor"; 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 DictionarySelect from "zy-react-library/components/Select/Dictionary"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; @@ -32,53 +32,51 @@ function Add(props) { ...values, id: query.id, promiseId: query.promiseId, - isRegulatory: 1, + isRegulatory: 0, }); if (success) { message.success("操作成功"); props.history.goBack(); } }; + return ( -
- -
- ({ ...item, bianma: +item.bianma })), - }, - { - name: "level", - label: "安全承诺级别", - render: ( - form.setFieldValue("levelName", label)} - /> - ), - }, - { name: "levelName", label: "安全承诺级别名称", onlyForLabel: true }, - { - name: "promiseText", - label: "承诺内容", - span: 24, - render: (), - required: false, - formItemProps: { required: true }, - rules: [{ required: true, message: "请输入安全承诺内容", validateTrigger: "onBlur" }], - }, - ]} - /> -
-
+ + ({ ...item, bianma: +item.bianma })), + }, + { + name: "level", + label: "安全承诺级别", + render: ( + form.setFieldValue("levelName", label)} + /> + ), + }, + { name: "levelName", label: "安全承诺级别名称", onlyForLabel: true }, + { + name: "promiseText", + label: "承诺内容", + span: 24, + render: (), + required: false, + formItemProps: { required: true }, + rules: [{ required: true, message: "请输入安全承诺内容", validateTrigger: "onBlur" }], + }, + ]} + /> + ); } diff --git a/src/pages/Container/Supervise/BusPromiseTemplate/List/index.js b/src/pages/Container/Supervise/BusPromiseTemplate/List/index.js index 1d419e6..8cd6ee6 100644 --- a/src/pages/Container/Supervise/BusPromiseTemplate/List/index.js +++ b/src/pages/Container/Supervise/BusPromiseTemplate/List/index.js @@ -1,8 +1,8 @@ import { Permission } from "@cqsjjb/jjb-common-decorator/permission"; import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Form, message, Modal, Space } from "antd"; -import { useState } from "react"; 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 Table from "zy-react-library/components/Table"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; @@ -10,16 +10,12 @@ import useTable from "zy-react-library/hooks/useTable"; import { getLabelName } from "zy-react-library/utils"; import { PROMISE_TYPE_ENUM } from "~/enumerate/constant"; import { NS_COMMITMENT } from "~/enumerate/namespace"; -import DetailModal from "~/pages/Container/Supervise/Components/DetailModal"; function List(props) { const [form] = Form.useForm(); const { tableProps, getData } = useTable(props["busPromiseTemplateList"], { form, }); - const [busPromiseTemplateModalOpen, setBusPromiseTemplateModalOpen] = useState(false); - const [id, setId] = useState(""); - const [modalUrl, setModalUrl] = useState(""); const onDelete = (id) => { Modal.confirm({ title: "删除确认", @@ -48,7 +44,7 @@ function List(props) { }); }; return ( -
+ { - setBusPromiseTemplateModalOpen(true); - setId(record.id); - setModalUrl("busPromiseTemplateView"); + props.history.push(`./view?id=${record.id}`); }} > 查看 - {(props.permission("jg-promise-template-disable") && record.isRegulatory === 1) && ( + {(props.permission("jg-promise-template-disable") && record.isRegulatory === 0) && ( )} - {(props.permission("jg-promise-template-edit") && record.isRegulatory === 1) && ( + {(props.permission("jg-promise-template-edit") && record.isRegulatory === 0) && ( )} - {(props.permission("jg-promise-template-deletes") && record.isRegulatory === 1) && } + {(props.permission("jg-promise-template-deletes") && record.isRegulatory === 0) && } ), }, ]} {...tableProps} /> - {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} -
+ ); } diff --git a/src/pages/Container/Supervise/BusPromiseTemplate/View/index.js b/src/pages/Container/Supervise/BusPromiseTemplate/View/index.js new file mode 100644 index 0000000..69c41aa --- /dev/null +++ b/src/pages/Container/Supervise/BusPromiseTemplate/View/index.js @@ -0,0 +1,65 @@ +import { Button, Descriptions } from "antd"; +import { useRef, useState } from "react"; +import { useReactToPrint } from "react-to-print"; +import Page from "zy-react-library/components/Page"; +import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; +import { getLabelName } from "zy-react-library/utils"; +import { PROMISE_TYPE_ENUM } from "~/enumerate/constant"; +import DetailModal from "~/pages/Container/Supervise/components/DetailModal"; + +function View() { + const query = useGetUrlQuery(); + + const [info, setInfo] = useState({}); + + const contentRef = useRef(null); + const handlePrint = useReactToPrint({ + contentRef, + pageStyle: `@page { + margin: 0mm; + } + @media print { + body { + margin: 10px; + padding: 10px; + } + } + `, + documentTitle: "", + }); + + return ( + + 打印模板 + + )} + > + +
+ { + setInfo(data); + }} + /> +
+
+ ); +} + +export default View; diff --git a/src/pages/Container/Supervise/Management/Add/index.js b/src/pages/Container/Supervise/Management/Add/index.js index 853bfb2..55a743d 100644 --- a/src/pages/Container/Supervise/Management/Add/index.js +++ b/src/pages/Container/Supervise/Management/Add/index.js @@ -5,7 +5,7 @@ import { cloneDeep } from "lodash-es"; import { useEffect, useState } from "react"; import Editor from "zy-react-library/components/Editor"; 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 DictionarySelect from "zy-react-library/components/Select/Dictionary"; import PersonnelSelect from "zy-react-library/components/Select/Personnel/Gwj"; @@ -55,8 +55,8 @@ function Add(props) { const { data } = await props["busPromiseView"]({ id: query.id }); const promisePeopleBack = data.promisePeopleBack.map(item => ({ ...item, - userName: item.userName.split(","), - userId: item.userId.split(","), + userName: data.promiseType === 1 ? item.userName : item.userName.split(","), + userId: data.promiseType === 1 ? item.userId : item.userId.split(","), })); const values = { ...data, @@ -81,15 +81,21 @@ function Add(props) { }, []); const onSubmit = async (values) => { - await isExistenceDuplicateSelection({ data: values.promisePersons, key: "userId", message: `${promiseType === 1 ? "受状人" : "承诺人"}不能重复` }); + if (promiseType === 1) { + await isExistenceDuplicateSelection({ data: values.promisePersons, key: "userId", message: "受状人不能重复" }); + } + else { + await isExistenceDuplicateSelection({ data: values.promisePersons, key: "postId", message: "承诺人岗位不能重复" }); + } const peoples = values.promisePeoples.map(item => ({ ...item, isPromisePeople: 1, })); + const peopleNumInvolved = values.promisePersons.reduce((acc, item) => acc + item.userName.length, 0); const persons = values.promisePersons.map(item => ({ ...item, - userName: item.userName, - userId: item.userId, + userName: Array.isArray(item.userName) ? item.userName.join(",") : item.userName, + userId: Array.isArray(item.userId) ? item.userId.join(",") : item.userId, isPromisePeople: 0, })); const promiseAll = [...peoples, ...persons]; @@ -98,7 +104,7 @@ function Add(props) { id: query.id, promiseId: query.promiseId, promisePeoples: promiseAll, - peopleNumInvolved: values.promisePersons.length, + peopleNumInvolved, }); if (success) { message.success("操作成功"); @@ -107,283 +113,281 @@ function Add(props) { }; return ( -
- -
- ({ ...item, bianma: +item.bianma })), - componentProps: { - onChange: () => { - form.setFieldValue("promisePersons", [{}]); - form.setFieldValue("levelName", ""); - }, + + ({ ...item, bianma: +item.bianma })), + componentProps: { + onChange: () => { + form.setFieldValue("promisePersons", [{}]); + form.setFieldValue("levelName", ""); }, }, - { - name: "level", - label: "承诺书级别", - dependencies: ["releasePlatform"], - hidden: formValues => !(formValues.releasePlatform === 1), - render: ( - form.setFieldValue("levelName", label)} - /> - ), - }, - { name: "levelName", label: "承诺书级别名称", onlyForLabel: true }, - { name: "promiseTermStart", label: "适用期限开始", render: FORM_ITEM_RENDER_ENUM.DATE }, - { - name: "promiseTermEnd", - label: "适用期限结束", - render: FORM_ITEM_RENDER_ENUM.DATE, - rules: [validatorEndTime(promiseTermStart), { - validator: (_, value) => { - if (value && promiseTermStart) { - const startYear = dayjs(promiseTermStart).year(); - const endYear = dayjs(value).year(); + }, + { + name: "level", + label: "承诺书级别", + dependencies: ["releasePlatform"], + hidden: formValues => !(formValues.releasePlatform === 1), + render: ( + form.setFieldValue("levelName", label)} + /> + ), + }, + { name: "levelName", label: "承诺书级别名称", onlyForLabel: true }, + { name: "promiseTermStart", label: "适用期限开始", render: FORM_ITEM_RENDER_ENUM.DATE }, + { + name: "promiseTermEnd", + label: "适用期限结束", + render: FORM_ITEM_RENDER_ENUM.DATE, + rules: [validatorEndTime(promiseTermStart), { + validator: (_, value) => { + if (value && promiseTermStart) { + const startYear = dayjs(promiseTermStart).year(); + const endYear = dayjs(value).year(); - if (startYear !== endYear) { - return Promise.reject("开始时间和结束时间不能跨年"); - } + if (startYear !== endYear) { + return Promise.reject("开始时间和结束时间不能跨年"); } - return Promise.resolve(); + } + return Promise.resolve(); + }, + }], + }, + { key: "divider1", label: "承诺内容", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, + { + key: "commitmentContentButton", + customizeRender: true, + span: 24, + render: ( +
+ +
+ ), + }, + ...(isAlreadyChoiceTemplate + ? [ + { name: "promiseTypeName", label: "安全承诺类型", span: 24, componentProps: { disabled: true } }, + { name: "promiseType", label: "安全承诺类型", onlyForLabel: true }, + { + name: "promiseText", + label: "安全承诺内容", + span: 24, + render: (), + required: false, + formItemProps: { required: true }, + rules: [{ required: true, message: "请输入安全承诺内容", validateTrigger: "onBlur" }], }, - }], - }, - { key: "divider1", label: "承诺内容", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, - { - key: "commitmentContentButton", - customizeRender: true, - span: 24, - render: ( -
- -
- ), - }, - ...(isAlreadyChoiceTemplate - ? [ - { name: "promiseTypeName", label: "安全承诺类型", span: 24, componentProps: { disabled: true } }, - { name: "promiseType", label: "安全承诺类型", onlyForLabel: true }, - { - name: "promiseText", - label: "安全承诺内容", - span: 24, - render: (), - required: false, - formItemProps: { required: true }, - rules: [{ required: true, message: "请输入安全承诺内容", validateTrigger: "onBlur" }], - }, - { key: "divider2", label: promiseType === 1 ? "受状人" : "承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, - { - name: "promisePersons", - span: 24, - render: FORM_ITEM_RENDER_ENUM.FORM_LIST, - formListUniqueProps: { - showAddButton: !(promiseType === 1), - showRemoveButton: !(promiseType === 1), - options: (field, index) => ( - [ - ...(!releasePlatform || releasePlatform === 1 - ? [ - { - name: [field.name, "corpId"], - label: `签订单位${index + 1}`, - render: FORM_ITEM_RENDER_ENUM.SELECT, - items: corpInfoList, - itemsField: { labelKey: "corpName", valueKey: "id" }, - componentProps: { - onChange: (event) => { - form.setFieldValue(["promisePersons", field.name, "corpName"], getLabelName({ - list: corpInfoList, - status: event, - nameKey: "corpName", - idKey: "id", - })); - form.setFieldValue(["promisePersons", field.name, "departmentId"], ""); - form.setFieldValue(["promisePersons", field.name, "departmentName"], ""); - form.setFieldValue(["promisePersons", field.name, "postId"], ""); - form.setFieldValue(["promisePersons", field.name, "postName"], ""); - form.setFieldValue(["promisePersons", field.name, "userName"], ""); - form.setFieldValue(["promisePersons", field.name, "userId"], ""); - }, + { key: "divider2", label: promiseType === 1 ? "受状人" : "承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, + { + name: "promisePersons", + span: 24, + render: FORM_ITEM_RENDER_ENUM.FORM_LIST, + formListUniqueProps: { + showAddButton: !(promiseType === 1), + showRemoveButton: !(promiseType === 1), + options: (field, index) => ( + [ + ...(!releasePlatform || releasePlatform === 1 + ? [ + { + name: [field.name, "corpId"], + label: `签订单位${index + 1}`, + render: FORM_ITEM_RENDER_ENUM.SELECT, + items: corpInfoList, + itemsField: { labelKey: "corpName", valueKey: "id" }, + componentProps: { + onChange: (event) => { + form.setFieldValue(["promisePersons", field.name, "corpName"], getLabelName({ + list: corpInfoList, + status: event, + nameKey: "corpName", + idKey: "id", + })); + form.setFieldValue(["promisePersons", field.name, "departmentId"], ""); + form.setFieldValue(["promisePersons", field.name, "departmentName"], ""); + form.setFieldValue(["promisePersons", field.name, "postId"], ""); + form.setFieldValue(["promisePersons", field.name, "postName"], ""); + form.setFieldValue(["promisePersons", field.name, "userName"], promiseType === 1 ? "" : []); + form.setFieldValue(["promisePersons", field.name, "userId"], promiseType === 1 ? "" : []); }, }, - { name: [field.name, "corpName"], label: `签订单位${index + 1}名称`, onlyForLabel: true }, - ] - : []), - { - name: [field.name, "departmentId"], - label: `部门${index + 1}`, - span: releasePlatform === 2 ? 8 : 12, - labelCol: { span: releasePlatform === 2 ? 6 : 4 }, - render: ( - { - form.setFieldValue(["promisePersons", field.name, "postId"], ""); - form.setFieldValue(["promisePersons", field.name, "postName"], ""); - form.setFieldValue(["promisePersons", field.name, "userName"], ""); - form.setFieldValue(["promisePersons", field.name, "userId"], ""); - if (!departmentId) - return; - getPostList(departmentId, promisePersons?.[field.name]?.corpId, index); - }} - onGetLabel={(label) => { - form.setFieldValue(["promisePersons", field.name, "departmentName"], label); - }} - /> - ), - }, - { name: [field.name, "departmentName"], label: `部门${index + 1}名称`, onlyForLabel: true }, - { - name: [field.name, "postId"], - label: `岗位${index + 1}`, - span: releasePlatform === 2 ? 8 : 12, - labelCol: { span: releasePlatform === 2 ? 6 : 4 }, - render: FORM_ITEM_RENDER_ENUM.SELECT, - items: postList[index] || [], - itemsField: { labelKey: "postName", valueKey: "id" }, - componentProps: { - onChange: (event) => { - form.setFieldValue(["promisePersons", field.name, "postName"], getLabelName({ - list: postList[index], - status: event, - nameKey: "postName", - idKey: "id", - })); - form.setFieldValue(["promisePersons", field.name, "userName"], ""); - form.setFieldValue(["promisePersons", field.name, "userId"], ""); }, + { name: [field.name, "corpName"], label: `签订单位${index + 1}名称`, onlyForLabel: true }, + ] + : []), + { + name: [field.name, "departmentId"], + label: `部门${index + 1}`, + span: releasePlatform === 2 ? 8 : 12, + labelCol: { span: releasePlatform === 2 ? 6 : 4 }, + render: ( + { + form.setFieldValue(["promisePersons", field.name, "postId"], ""); + form.setFieldValue(["promisePersons", field.name, "postName"], ""); + form.setFieldValue(["promisePersons", field.name, "userName"], promiseType === 1 ? "" : []); + form.setFieldValue(["promisePersons", field.name, "userId"], promiseType === 1 ? "" : []); + if (!departmentId) + return; + getPostList(departmentId, promisePersons?.[field.name]?.corpId, index); + }} + onGetLabel={(label) => { + form.setFieldValue(["promisePersons", field.name, "departmentName"], label); + }} + /> + ), + }, + { name: [field.name, "departmentName"], label: `部门${index + 1}名称`, onlyForLabel: true }, + { + name: [field.name, "postId"], + label: `岗位${index + 1}`, + span: releasePlatform === 2 ? 8 : 12, + labelCol: { span: releasePlatform === 2 ? 6 : 4 }, + render: FORM_ITEM_RENDER_ENUM.SELECT, + items: postList[index] || [], + itemsField: { labelKey: "postName", valueKey: "id" }, + componentProps: { + onChange: (event) => { + form.setFieldValue(["promisePersons", field.name, "postName"], getLabelName({ + list: postList[index], + status: event, + nameKey: "postName", + idKey: "id", + })); + form.setFieldValue(["promisePersons", field.name, "userName"], promiseType === 1 ? "" : []); + form.setFieldValue(["promisePersons", field.name, "userId"], promiseType === 1 ? "" : []); }, }, - { name: [field.name, "postName"], label: `岗位${index + 1}名称`, onlyForLabel: true }, - { name: [field.name, "userName"], label: `人员${index + 1}名称`, onlyForLabel: true }, - { - name: [field.name, "userId"], - label: `人员${index + 1}`, - span: releasePlatform === 2 ? 8 : 12, - labelCol: { span: releasePlatform === 2 ? 6 : 4 }, - render: ( - { - form.setFieldValue(["promisePersons", field.name, "userName"], label); - }} - /> - ), - }, - ] - ), - }, + }, + { name: [field.name, "postName"], label: `岗位${index + 1}名称`, onlyForLabel: true }, + { name: [field.name, "userName"], label: `人员${index + 1}名称`, onlyForLabel: true }, + { + name: [field.name, "userId"], + label: `人员${index + 1}`, + span: releasePlatform === 2 ? 8 : 12, + labelCol: { span: releasePlatform === 2 ? 6 : 4 }, + render: ( + { + form.setFieldValue(["promisePersons", field.name, "userName"], label); + }} + mode={promiseType === 1 ? "" : "multiple"} + /> + ), + }, + ] + ), }, - { key: "divider3", label: promiseType === 1 ? "发状人" : "被承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, - { - name: "promisePeoples", - span: 24, - render: FORM_ITEM_RENDER_ENUM.FORM_LIST, - formListUniqueProps: { - showAddButton: false, - showRemoveButton: false, - options: field => ( - [ - { - name: [field.name, "departmentId"], - label: "部门", - span: 8, - labelCol: { span: 6 }, - render: ( - { - form.setFieldValue(["promisePeoples", field.name, "postId"], ""); - form.setFieldValue(["promisePeoples", field.name, "postName"], ""); - form.setFieldValue(["promisePeoples", field.name, "userName"], ""); - form.setFieldValue(["promisePeoples", field.name, "userId"], ""); - if (!departmentId) - return; - getPostList1(departmentId, promisePeoples?.[field.name]?.corpId); - }} - onGetLabel={(label) => { - form.setFieldValue(["promisePeoples", field.name, "departmentName"], label); - }} - /> - ), - }, - { name: [field.name, "departmentName"], label: "部门名称", onlyForLabel: true }, - { - name: [field.name, "postId"], - label: "岗位", - span: 8, - labelCol: { span: 6 }, - render: FORM_ITEM_RENDER_ENUM.SELECT, - items: postList1, - itemsField: { labelKey: "postName", valueKey: "id" }, - componentProps: { - onChange: (event) => { - form.setFieldValue(["promisePeoples", field.name, "postName"], getLabelName({ list: postList1, status: event, nameKey: "postName", idKey: "id" })); + }, + { key: "divider3", label: promiseType === 1 ? "发状人" : "被承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, + { + name: "promisePeoples", + span: 24, + render: FORM_ITEM_RENDER_ENUM.FORM_LIST, + formListUniqueProps: { + showAddButton: false, + showRemoveButton: false, + options: field => ( + [ + { + name: [field.name, "departmentId"], + label: "部门", + span: 8, + labelCol: { span: 6 }, + render: ( + { + form.setFieldValue(["promisePeoples", field.name, "postId"], ""); + form.setFieldValue(["promisePeoples", field.name, "postName"], ""); form.setFieldValue(["promisePeoples", field.name, "userName"], ""); form.setFieldValue(["promisePeoples", field.name, "userId"], ""); - }, + if (!departmentId) + return; + getPostList1(departmentId, promisePeoples?.[field.name]?.corpId); + }} + onGetLabel={(label) => { + form.setFieldValue(["promisePeoples", field.name, "departmentName"], label); + }} + /> + ), + }, + { name: [field.name, "departmentName"], label: "部门名称", onlyForLabel: true }, + { + name: [field.name, "postId"], + label: "岗位", + span: 8, + labelCol: { span: 6 }, + render: FORM_ITEM_RENDER_ENUM.SELECT, + items: postList1, + itemsField: { labelKey: "postName", valueKey: "id" }, + componentProps: { + onChange: (event) => { + form.setFieldValue(["promisePeoples", field.name, "postName"], getLabelName({ list: postList1, status: event, nameKey: "postName", idKey: "id" })); + form.setFieldValue(["promisePeoples", field.name, "userName"], ""); + form.setFieldValue(["promisePeoples", field.name, "userId"], ""); }, }, - { name: [field.name, "postName"], label: "岗位名称", onlyForLabel: true }, - { - name: [field.name, "userId"], - label: "人员", - span: 8, - labelCol: { span: 6 }, - render: ( - { - form.setFieldValue(["promisePeoples", field.name, "userName"], label); - }} - /> - ), - }, - { name: [field.name, "userName"], label: "人员名称", onlyForLabel: true }, - ] - ), - }, + }, + { name: [field.name, "postName"], label: "岗位名称", onlyForLabel: true }, + { + name: [field.name, "userId"], + label: "人员", + span: 8, + labelCol: { span: 6 }, + render: ( + { + form.setFieldValue(["promisePeoples", field.name, "userName"], label); + }} + /> + ), + }, + { name: [field.name, "userName"], label: "人员名称", onlyForLabel: true }, + ] + ), }, - ] - : [ - { key: "tip", customizeRender: true, span: 24, render: (
请先选择安全承诺模板
) }, - ]), - ]} - /> -
+ }, + ] + : [ + { key: "tip", customizeRender: true, span: 24, render: (
请先选择安全承诺模板
) }, + ]), + ]} + /> {choiceTemplateModalOpen && ( setChoiceTemplateModalOpen(false)} @@ -401,7 +405,7 @@ function Add(props) { }} /> )} -
+ ); } @@ -414,6 +418,7 @@ const ChoiceTemplateModalComponent = (props) => { return ( - - -
- 基本信息 - - 承诺内容 - ) }, - ]} - /> - {detail.promiseType === 1 ? "受状人" : "承诺人"} - { - const base = [ - { label: `部门${index + 1}`, children: item.departmentName || "-" }, - { label: `岗位${index + 1}`, children: item.postName || "-" }, - { label: `人员${index + 1}`, children: item.userName || "-" }, - ]; + { + setBusPromiseTemplateModalOpen(true); + setId(query.id); + setModalUrl("busPromiseView"); + }} + > + 模板 + + )} + > + 基本信息 + + 承诺内容 + ) }, + ]} + /> + {detail.promiseType === 1 ? "受状人" : "承诺人"} + { + const base = [ + { label: `部门${index + 1}`, children: item.departmentName || "-" }, + { label: `岗位${index + 1}`, children: item.postName || "-" }, + { label: `人员${index + 1}`, children: item.userName || "-" }, + ]; - // 只有 releasePlatform=1(分公司) 才显示签订单位 - if (detail.releasePlatform === 1) { - base.unshift({ - label: `签订单位${index + 1}`, - children: item.corpName || "-", - }); - } + // 只有 releasePlatform=1(分公司) 才显示签订单位 + if (detail.releasePlatform === 1) { + base.unshift({ + label: `签订单位${index + 1}`, + children: item.corpName || "-", + }); + } - return base; - }), - ]} - /> - {detail.promiseType === 1 ? "发状人" : "被承诺人"} - -
- -
- {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} -
-
- + return base; + }), + ]} + /> + {detail.promiseType === 1 ? "发状人" : "被承诺人"} + + {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} + ); } diff --git a/src/pages/Container/Supervise/Management/List/index.js b/src/pages/Container/Supervise/Management/List/index.js index dfbb413..e274fe4 100644 --- a/src/pages/Container/Supervise/Management/List/index.js +++ b/src/pages/Container/Supervise/Management/List/index.js @@ -5,6 +5,7 @@ import { Button, Form, message, Modal, Space, Tabs, Tooltip } from "antd"; import dayjs from "dayjs"; import { useEffect, useState } from "react"; 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 DictionarySelect from "zy-react-library/components/Select/Dictionary"; import Table from "zy-react-library/components/Table"; @@ -56,7 +57,7 @@ function List(props) { }; return ( -
+ -
+ ); } diff --git a/src/pages/Container/Supervise/Management/Release/index.js b/src/pages/Container/Supervise/Management/Release/index.js index 2da23af..652fc72 100644 --- a/src/pages/Container/Supervise/Management/Release/index.js +++ b/src/pages/Container/Supervise/Management/Release/index.js @@ -1,7 +1,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Form, Space } from "antd"; import { useState } from "react"; -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 useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useTable from "zy-react-library/hooks/useTable"; @@ -20,55 +20,53 @@ function List(props) { const [id, setId] = useState(""); const [modalUrl, setModalUrl] = useState(""); return ( -
- -
-
( - - - - )} - columns={[ - { title: "部门", dataIndex: "departmentName" }, - { title: "岗位", dataIndex: "postName" }, - { title: "人员", dataIndex: "userName" }, - { title: "签署时间", dataIndex: "signTime" }, - { title: "签署状态", render: (_, record) => getLabelName({ list: [{ name: "未签署", bianma: "0" }, { name: "已签署", bianma: "1" }], status: record.isSign }) }, - { - title: "操作", - width: 200, - fixed: "right", - render: (_, record) => ( - - - - ), - }, - ]} - {...tableProps} - /> - {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} - - + +
( + + + + )} + columns={[ + { title: "部门", dataIndex: "departmentName" }, + { title: "岗位", dataIndex: "postName" }, + { title: "人员", dataIndex: "userName" }, + { title: "签署时间", dataIndex: "signTime" }, + { title: "签署状态", render: (_, record) => getLabelName({ list: [{ name: "未签署", bianma: "0" }, { name: "已签署", bianma: "1" }], status: record.isSign }) }, + { + title: "操作", + width: 200, + fixed: "right", + render: (_, record) => ( + + + + ), + }, + ]} + {...tableProps} + /> + {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} + ); } diff --git a/src/pages/Container/Supervise/busPromise/List/index.js b/src/pages/Container/Supervise/busPromise/List/index.js index b925d2e..6878230 100644 --- a/src/pages/Container/Supervise/busPromise/List/index.js +++ b/src/pages/Container/Supervise/busPromise/List/index.js @@ -1,5 +1,6 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Form, Space } from "antd"; +import Page from "zy-react-library/components/Page"; import Search from "zy-react-library/components/Search"; import Table from "zy-react-library/components/Table"; import { FORM_ITEM_RENDER_ENUM } from "zy-react-library/enum/formItemRender"; @@ -13,7 +14,7 @@ function List(props) { }); return ( -
+ -
+ ); } diff --git a/src/pages/Container/Supervise/busPromise/ListView/index.js b/src/pages/Container/Supervise/busPromise/ListView/index.js index 9cf92df..10536f3 100644 --- a/src/pages/Container/Supervise/busPromise/ListView/index.js +++ b/src/pages/Container/Supervise/busPromise/ListView/index.js @@ -1,10 +1,10 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; 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 Table from "zy-react-library/components/Table"; import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useTable from "zy-react-library/hooks/useTable"; +import Table from "zy-react-library/components/Table"; import { NS_COMMITMENT } from "~/enumerate/namespace"; function List(props) { @@ -18,45 +18,42 @@ function List(props) { }); return ( -
- -
- -
record.promiseTermStart ? `${record.promiseTermStart}至${record.promiseTermEnd}` : "" }, - { title: "安全承诺级别", dataIndex: "levelName" }, - { title: "涉及人数", dataIndex: "peopleNumInvolved" }, - { title: "完成提交人数", dataIndex: "signedCount" }, - { - title: "操作", - width: 150, - fixed: "right", - render: (_, record) => ( - - - - ), - }, - ]} - {...tableProps} - /> - - + + +
record.promiseTermStart ? `${record.promiseTermStart}至${record.promiseTermEnd}` : "" }, + { title: "安全承诺级别", dataIndex: "levelName" }, + { title: "涉及人数", dataIndex: "peopleNumInvolved" }, + { title: "完成提交人数", dataIndex: "signedCount" }, + { + title: "操作", + width: 150, + fixed: "right", + render: (_, record) => ( + + + + ), + }, + ]} + {...tableProps} + /> + ); } diff --git a/src/pages/Container/Supervise/busPromise/View/index.js b/src/pages/Container/Supervise/busPromise/View/index.js index 2347687..9609f74 100644 --- a/src/pages/Container/Supervise/busPromise/View/index.js +++ b/src/pages/Container/Supervise/busPromise/View/index.js @@ -1,7 +1,7 @@ import { Connect } from "@cqsjjb/jjb-dva-runtime"; import { Button, Space } from "antd"; import { useState } from "react"; -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 useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery"; import useTable from "zy-react-library/hooks/useTable"; @@ -16,45 +16,56 @@ function List(props) { const query = useGetUrlQuery(); const { tableProps } = useTable(props["busPromisePeopleList"], { params: { - corpId: query.id, + promiseId: query.promiseId, }, }); return ( -
- -
-
getLabelName({ list: [{ name: "未签署", bianma: "0" }, { name: "已签署", bianma: "1" }], status: record.isSign }) }, - { - title: "操作", - width: 150, - fixed: "right", - render: (_, record) => ( - - - - ), - }, - ]} - {...tableProps} - /> - {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} - - - + +
( + + + + )} + columns={[ + { title: "所属部门", dataIndex: "departmentName" }, + { title: "姓名", dataIndex: "userName" }, + { title: "签署状态", dataIndex: "isSign", render: (_, record) => getLabelName({ list: [{ name: "未签署", bianma: "0" }, { name: "已签署", bianma: "1" }], status: record.isSign }) }, + { + title: "操作", + width: 150, + fixed: "right", + render: (_, record) => ( + + + + ), + }, + ]} + {...tableProps} + /> + {busPromiseTemplateModalOpen && setBusPromiseTemplateModalOpen(false)} id={id} modalUrl={modalUrl} />} + ); } diff --git a/src/pages/Container/Supervise/components/DetailModal/index.js b/src/pages/Container/Supervise/components/DetailModal/index.js index d3a18f5..37a224c 100644 --- a/src/pages/Container/Supervise/components/DetailModal/index.js +++ b/src/pages/Container/Supervise/components/DetailModal/index.js @@ -14,6 +14,7 @@ const DetailModal = (props) => { if (props.id) { const { data } = await props[props.modalUrl]({ id: props.id }); setForm(data); + props.onGetData?.(data); } }; useEffect(() => { @@ -34,85 +35,86 @@ const DetailModal = (props) => { `, documentTitle: "", }); - return ( - <> - -
-
-

{form.promiseType === 0 ? "安全生产承诺书" : "安全生产责任状"}

+ + const renderContent = () => { + return ( +
+
+

{form.promiseType === 0 ? "安全生产承诺书" : "安全生产责任状"}

+
+
河 北 港 口 集 团 有 限 公 司
-
河 北 港 口 集 团 有 限 公 司
-
- ( - {form.createTime ? dayjs(form.createTime).format("YYYY年") : ""} - ) -
+ ( + {form.createTime ? dayjs(form.createTime).format("YYYY年") : ""} + )
+
-
-

{form.promiseType === 0 ? "安全生产承诺书" : "安全生产责任状"}

+
+

{form.promiseType === 0 ? "安全生产承诺书" : "安全生产责任状"}

- {form.promiseType === 0 && ( -
- {`${form.promisePeople ? `${form.promisePeople + form.promisePeoplePost}:` : ""}` || ""} + {form.promiseType === 0 && ( +
+ {`${(form.promisePeople && form.promisePeoplePost) ? `${form.promisePeople + form.promisePeoplePost}:` : ""}` || ""} +
+ )} +
+ +
+ { + form.promiseType === 0 + ? ( +
若违反上述承诺和未履行安全生产职责,或发生责任事故的,接受政府或公司事故调查组做出的处罚决定。
+ ) + : ( +
若未履行安全生产职责,或发生生产安全事故的,接受公司或政府事故调查组做出的处罚。
+ ) + } +
+ +
+ {form.promiseType === 1 && ( +
+
+ 发状人: + {form.promisePeople} +
)} -
-
- { - form.promiseType === 0 - ? ( -
若违反上述承诺和未履行安全生产职责,或发生责任事故的,接受政府或公司事故调查组做出的处罚决定。
- ) - : ( -
若未履行安全生产职责,或发生生产安全事故的,接受公司或政府事故调查组做出的处罚。
- ) - } -
- -
- {form.promiseType === 1 && ( -
- {!form.filepath - ? ( -
- 发状人: - {form.userName} -
- ) - : ( -
- - 发状人: - - -
- )} -
- )} - -
-
-
-
{form.promiseType === 0 ? "承诺人(本人签字)" : "受状人"}
- : - {(form.filepath && !form.signList) && } - {form.signList && } -
+
+
+
+
{form.promiseType === 0 ? "承诺人(本人签字)" : "受状人"}
+ : + {(form.filepath && !form.signList) && } + {form.signList && }
+
+ ); + }; + + if (props.inline) { + return renderContent(); + } + + return ( + <> + + {renderContent()} );