From 5ea3a687ec8f95e31b0b086f2f311e0bceb6d8d1 Mon Sep 17 00:00:00 2001 From: LiuJiaNan <15703339975@163.com> Date: Wed, 17 Dec 2025 15:41:32 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- .../BusPromiseTemplate/Add/index.js | 24 ++++++++++++-- .../BusPromiseTemplate/List/index.js | 10 +++--- .../Enterprise/Management/Add/index.js | 33 ++++++++++++++++--- .../Enterprise/Management/Detail/index.js | 12 +++---- .../Enterprise/Management/List/index.js | 6 ++-- .../Supervise/BusPromiseTemplate/Add/index.js | 29 ++++++++++++++-- .../BusPromiseTemplate/List/index.js | 8 ++--- .../Supervise/Management/Add/index.js | 19 ++++++++--- .../Supervise/Management/List/index.js | 4 +-- .../Supervise/busPromise/List/index.js | 2 +- .../Supervise/components/DetailModal/index.js | 33 ++++++++++--------- .../components/DetailModal/index.less | 25 +++++--------- 13 files changed, 138 insertions(+), 69 deletions(-) diff --git a/package.json b/package.json index 32fa068..8da98ba 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "react-to-print": "^3.2.0", - "zy-react-library": "^1.0.163" + "zy-react-library": "^1.0.167" }, "devDependencies": { "@antfu/eslint-config": "^5.4.1", diff --git a/src/pages/Container/Enterprise/BusPromiseTemplate/Add/index.js b/src/pages/Container/Enterprise/BusPromiseTemplate/Add/index.js index aa4c8b1..c361bde 100644 --- a/src/pages/Container/Enterprise/BusPromiseTemplate/Add/index.js +++ b/src/pages/Container/Enterprise/BusPromiseTemplate/Add/index.js @@ -45,20 +45,38 @@ function Add(props) { promiseType: "0", }} onFinish={onSubmit} + loading={props.commitment.commitmentLoading} options={[ { name: "promiseName", label: "安全承诺模板名称", span: 24 }, { name: "promiseType", label: "安全承诺类型", render: FORM_ITEM_RENDER_ENUM.SELECT, - items: PROMISE_TYPE_ENUM, + items: PROMISE_TYPE_ENUM.map(item => ({ ...item, bianma: +item.bianma })), componentProps: { disabled: true, }, }, - { name: "level", label: "安全承诺级别", render: ( form.setFieldValue("levelName", label)} />) }, + { + name: "level", + label: "安全承诺级别", + render: ( + form.setFieldValue("levelName", label)} + /> + ), + }, { name: "levelName", label: "安全承诺级别名称", onlyForLabel: true }, - { name: "promiseText", label: "承诺内容", span: 24, render: }, + { + name: "promiseText", + label: "承诺内容", + span: 24, + render: (), + required: false, + formItemProps: { required: true }, + rules: [{ required: true, message: "请输入安全承诺内容" }], + }, ]} /> diff --git a/src/pages/Container/Enterprise/BusPromiseTemplate/List/index.js b/src/pages/Container/Enterprise/BusPromiseTemplate/List/index.js index 949d07c..ea61c65 100644 --- a/src/pages/Container/Enterprise/BusPromiseTemplate/List/index.js +++ b/src/pages/Container/Enterprise/BusPromiseTemplate/List/index.js @@ -6,6 +6,7 @@ import AddIcon from "zy-react-library/components/Icon/AddIcon"; 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"; @@ -17,15 +18,15 @@ function List(props) { const [busPromiseTemplateModalOpen, setBusPromiseTemplateModalOpen] = useState(false); const [id, setId] = useState(""); const [modalUrl, setModalUrl] = useState(""); - const updatate = (id, state) => { + const updateState = (id, state) => { const stateValue = state === 0 ? 1 : 0; Modal.confirm({ title: "提示", - content: `确定要${state === 0 ? "禁用" : "启用"}当前承诺书吗?`, + content: `确定要${state === 0 ? "禁用" : "启用"}当前安全承诺吗?`, onOk: async () => { const { success } = await props["busPromiseTemplateUpdate"]({ id, state: stateValue }); if (success) { - message.success("更新成功"); + message.success(`${state === 0 ? "禁用" : "启用"}成功`); getData(); } }, @@ -61,6 +62,7 @@ function List(props) { { title: "安全承诺模板名称", dataIndex: "promiseName" }, { title: "安全承诺级别", dataIndex: "levelName" }, { title: "添加时间", dataIndex: "createTime" }, + { title: "状态", render: (_, record) => getLabelName({ list: [{ name: "启用", bianma: "0" }, { name: "禁用", bianma: "1" }], status: record.state }) }, { title: "操作", width: 200, @@ -78,7 +80,7 @@ function List(props) { 查看 {props.permission("qy-promise-template-disable") && ( - )} diff --git a/src/pages/Container/Enterprise/Management/Add/index.js b/src/pages/Container/Enterprise/Management/Add/index.js index 7e344e4..ddcf4ff 100644 --- a/src/pages/Container/Enterprise/Management/Add/index.js +++ b/src/pages/Container/Enterprise/Management/Add/index.js @@ -67,6 +67,7 @@ function Add(props) { for (let i = 0; i < values.promisePersons.length; i++) { await getPostList(values.promisePersons[i].departmentId, i); } + await getPostList1(values.passiveDepartmentId); } }; useEffect(() => { @@ -74,7 +75,7 @@ function Add(props) { }, []); const onSubmit = async (values) => { - const persons = promisePersons.map(item => ({ + const persons = values.promisePersons.map(item => ({ ...item, userName: item.userName.join(","), userId: item.userId.join(","), @@ -115,6 +116,7 @@ function Add(props) { promisePersons: [{}], // 承诺人 }} onFinish={onSubmit} + loading={props.commitment.commitmentLoading} options={[ { name: "promiseName", label: "安全承诺名称" }, { @@ -167,7 +169,15 @@ function Add(props) { }, { name: "promiseTypeName", label: "安全承诺类型", onlyForLabel: true }, { name: "promiseType", label: "安全承诺类型", onlyForLabel: true }, - { name: "promiseText", label: "安全承诺内容", span: 24, render: () }, + { + name: "promiseText", + label: "安全承诺内容", + span: 24, + render: (), + required: false, + formItemProps: { required: true }, + rules: [{ required: true, message: "请输入安全承诺内容" }], + }, { key: "divider2", label: "承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, { name: "promisePersons", @@ -210,7 +220,12 @@ function Add(props) { 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, "postName"], getLabelName({ + list: postList[index], + status: event, + nameKey: "postName", + idKey: "id", + })); form.setFieldValue(["promisePersons", field.name, "userName"], ""); form.setFieldValue(["promisePersons", field.name, "userId"], []); }, @@ -276,7 +291,12 @@ function Add(props) { itemsField: { labelKey: "postName", valueKey: "id" }, componentProps: { onChange: (event) => { - form.setFieldValue("passivePostName", getLabelName({ list: postList1, status: event, nameKey: "postName", idKey: "id" })); + form.setFieldValue("passivePostName", getLabelName({ + list: postList1, + status: event, + nameKey: "postName", + idKey: "id", + })); form.setFieldValue("passiveUserName", ""); form.setFieldValue("passiveUserId", ""); }, @@ -309,7 +329,10 @@ function Add(props) { onCancel={() => setchoiceTemplateModalOpen(false)} onConfirm={(values) => { form.setFieldValue("promiseType", values.promiseType); - form.setFieldValue("promiseTypeName", getLabelName({ list: PROMISE_TYPE_ENUM, status: values.promiseType })); + form.setFieldValue("promiseTypeName", getLabelName({ + list: PROMISE_TYPE_ENUM, + status: values.promiseType, + })); form.setFieldValue("promiseText", values.promiseText); form.setFieldValue("promisePersons", [{}]); form.setFieldValue("passiveDepartmentName", ""); diff --git a/src/pages/Container/Enterprise/Management/Detail/index.js b/src/pages/Container/Enterprise/Management/Detail/index.js index 5a1b340..dfc4018 100644 --- a/src/pages/Container/Enterprise/Management/Detail/index.js +++ b/src/pages/Container/Enterprise/Management/Detail/index.js @@ -29,7 +29,7 @@ function Detail(props) { ) }, ]} /> {detail.promiseType === 1 ? "受状人" : "承诺人"} @@ -51,11 +51,11 @@ function Detail(props) { { const base = [ - { label: `部门${index + 1}`, children: item.departmentName || "-", span: (detail.releasePlatform !== 1 ? 2 : 1) }, + { label: `部门${index + 1}`, children: item.departmentName || "-" }, { label: `岗位${index + 1}`, children: item.postName || "-" }, { label: `人员${index + 1}`, children: item.userName || "-" }, ]; @@ -67,7 +67,7 @@ function Detail(props) { { const { success } = await props["busPromiseUpdate"]({ id, state: stateValue }); if (success) { - message.success("更新成功"); + message.success("下发成功"); getData(); } }, @@ -45,7 +45,7 @@ function List(props) { { name: "promiseName", label: "安全承诺名称" }, { name: "level", label: "安全承诺级别", render: ( form.setFieldValue("levelName", label)} />) }, { name: "dates", label: "下发时间", render: FORM_ITEM_RENDER_ENUM.DATE_RANGE }, - { name: "departments", label: "涉及部门", render: () }, + { name: "departmentId", label: "涉及部门", render: () }, { name: "signState", label: "签署状态", diff --git a/src/pages/Container/Supervise/BusPromiseTemplate/Add/index.js b/src/pages/Container/Supervise/BusPromiseTemplate/Add/index.js index 56e863f..f446f03 100644 --- a/src/pages/Container/Supervise/BusPromiseTemplate/Add/index.js +++ b/src/pages/Container/Supervise/BusPromiseTemplate/Add/index.js @@ -46,12 +46,35 @@ function Add(props) { form.setFieldValue("levelName", label)} />) }, + { + name: "promiseType", + label: "安全承诺类型", + render: FORM_ITEM_RENDER_ENUM.SELECT, + items: PROMISE_TYPE_ENUM.map(item => ({ ...item, bianma: +item.bianma })), + }, + { + name: "level", + label: "安全承诺级别", + render: ( + form.setFieldValue("levelName", label)} + /> + ), + }, { name: "levelName", label: "安全承诺级别名称", onlyForLabel: true }, - { name: "promiseText", label: "承诺内容", span: 24, render: () }, + { + name: "promiseText", + label: "承诺内容", + span: 24, + render: (), + required: false, + formItemProps: { required: true }, + rules: [{ required: true, message: "请输入安全承诺内容" }], + }, ]} /> diff --git a/src/pages/Container/Supervise/BusPromiseTemplate/List/index.js b/src/pages/Container/Supervise/BusPromiseTemplate/List/index.js index 16c8d52..cb31528 100644 --- a/src/pages/Container/Supervise/BusPromiseTemplate/List/index.js +++ b/src/pages/Container/Supervise/BusPromiseTemplate/List/index.js @@ -33,15 +33,15 @@ function List(props) { }, }); }; - const updatate = (id, state) => { + const updateState = (id, state) => { const stateValue = state === 0 ? 1 : 0; Modal.confirm({ title: "提示", - content: `确定要${state === 0 ? "禁用" : "启用"}当前承诺书吗?`, + content: `确定要${state === 0 ? "禁用" : "启用"}当前安全承诺吗?`, onOk: async () => { const { success } = await props["busPromiseTemplateUpdate"]({ id, state: stateValue }); if (success) { - message.success("更新成功"); + message.success(`${state === 0 ? "禁用" : "启用"}成功`); getData(); } }, @@ -98,7 +98,7 @@ function List(props) { 查看 {props.permission("jg-promise-template-disable") && ( - )} diff --git a/src/pages/Container/Supervise/Management/Add/index.js b/src/pages/Container/Supervise/Management/Add/index.js index 4250fe8..d359530 100644 --- a/src/pages/Container/Supervise/Management/Add/index.js +++ b/src/pages/Container/Supervise/Management/Add/index.js @@ -76,16 +76,15 @@ function Add(props) { }, []); const onSubmit = async (values) => { - const peoples = promisePeoples.map(item => ({ + const peoples = values.promisePeoples.map(item => ({ ...item, isPromisePeople: 1, })); - const persons = promisePersons.map(item => ({ + const persons = values.promisePersons.map(item => ({ ...item, userName: item.userName.join(","), userId: item.userId.join(","), isPromisePeople: 0, - peopleNumInvolved: values.promisePersons.length, })); const promiseAll = [...peoples, ...persons]; @@ -94,6 +93,7 @@ function Add(props) { id: query.id, promiseId: query.promiseId, promisePeoples: promiseAll, + peopleNumInvolved: values.promisePersons.length, }); if (success) { message.success("操作成功"); @@ -112,6 +112,7 @@ function Add(props) { promisePersons: [{}], // 承诺人 }} onFinish={onSubmit} + loading={props.commitment.commitmentLoading} options={[ { name: "promiseName", label: "承诺书名称", span: 24 }, { @@ -179,7 +180,15 @@ function Add(props) { }, { name: "promiseTypeName", label: "安全承诺类型", span: 24, componentProps: { disabled: true } }, { name: "promiseType", label: "安全承诺类型", onlyForLabel: true }, - { name: "promiseText", label: "安全承诺内容", span: 24, render: () }, + { + name: "promiseText", + label: "安全承诺内容", + span: 24, + render: (), + required: false, + formItemProps: { required: true }, + rules: [{ required: true, message: "请输入安全承诺内容" }], + }, { key: "divider2", label: promiseType === 1 ? "受状人" : "承诺人", render: FORM_ITEM_RENDER_ENUM.DIVIDER }, { name: "promisePersons", @@ -226,7 +235,7 @@ function Add(props) { render: ( { form.setFieldValue(["promisePersons", field.name, "postId"], ""); form.setFieldValue(["promisePersons", field.name, "postName"], ""); diff --git a/src/pages/Container/Supervise/Management/List/index.js b/src/pages/Container/Supervise/Management/List/index.js index 1b38d6b..f9208e7 100644 --- a/src/pages/Container/Supervise/Management/List/index.js +++ b/src/pages/Container/Supervise/Management/List/index.js @@ -41,11 +41,11 @@ function List(props) { if (state === 1) { Modal.confirm({ title: "提示", - content: "确定要下发当前承诺书吗?", + content: "确定要下发当前安全承诺吗?", onOk: async () => { const { success } = await props["busPromiseUpdate"]({ id, state: stateValue }); if (success) { - message.success("更新成功"); + message.success("下发成功"); getData(); } }, diff --git a/src/pages/Container/Supervise/busPromise/List/index.js b/src/pages/Container/Supervise/busPromise/List/index.js index 10343db..c02414c 100644 --- a/src/pages/Container/Supervise/busPromise/List/index.js +++ b/src/pages/Container/Supervise/busPromise/List/index.js @@ -19,7 +19,7 @@ function List(props) { form={form} options={[ { name: "corpName", label: "分公司名称" }, - { name: "promiseType", label: "年份", render: FORM_ITEM_RENDER_ENUM.DATE_YEAR }, + { name: "year", label: "年份", render: FORM_ITEM_RENDER_ENUM.DATE_YEAR }, ]} onFinish={getData} /> diff --git a/src/pages/Container/Supervise/components/DetailModal/index.js b/src/pages/Container/Supervise/components/DetailModal/index.js index e2b15ce..55122b3 100644 --- a/src/pages/Container/Supervise/components/DetailModal/index.js +++ b/src/pages/Container/Supervise/components/DetailModal/index.js @@ -61,20 +61,22 @@ const DetailModal = (props) => { {form.promiseType === 0 && (
- {`${form.userName ? `${form.userName}:` : ""}` || ""} + {`${form.userName ? `${form.userName + form.postName}:` : ""}` || ""}
)} -
+
- {form.promiseType === 0 - ? ( -
若违反上述承诺和未履行安全生产职责,或发生责任事故的,接受政府或公司事故调查组做出的处罚决定。
- ) - : ( -
若未履行安全生产职责,或发生生产安全事故的,接受公司或政府事故调查组做出的处罚。
- )} + { + form.promiseType === 0 + ? ( +
若违反上述承诺和未履行安全生产职责,或发生责任事故的,接受政府或公司事故调查组做出的处罚决定。
+ ) + : ( +
若未履行安全生产职责,或发生生产安全事故的,接受公司或政府事故调查组做出的处罚。
+ ) + }
@@ -100,13 +102,11 @@ const DetailModal = (props) => {
-
- - {form.promiseType === 0 ? "承诺人(本人签字)" : "受状人"} - : - {(form.filepath && !form.signList) && sign} - {form.signList && } - +
+
{form.promiseType === 0 ? "承诺人(本人签字)" : "受状人"}
+ : + {(form.filepath && !form.signList) && sign} + {form.signList && }
@@ -116,4 +116,5 @@ const DetailModal = (props) => { ); }; + export default Connect([NS_COMMITMENT], true)(DetailModal); diff --git a/src/pages/Container/Supervise/components/DetailModal/index.less b/src/pages/Container/Supervise/components/DetailModal/index.less index 1062295..9f006a4 100644 --- a/src/pages/Container/Supervise/components/DetailModal/index.less +++ b/src/pages/Container/Supervise/components/DetailModal/index.less @@ -1,12 +1,13 @@ .dialogContent { padding: 50px; - font-size: 16px; + line-height: normal; .cover { height: 841pt; text-align: center; position: relative; display: none; + font-size: 16px; h1 { padding-top: 300px; @@ -24,6 +25,13 @@ .cover { display: block; } + + .promise-content { + word-wrap: break-word; + word-break: break-word; + white-space: pre-wrap; + overflow-wrap: break-word; + } } .title { @@ -32,20 +40,11 @@ .text { text-indent: 35px; - line-height: 26px; - letter-spacing: 2px; - text-align: justify; - } - - .collateral { - text-indent: 35px; - line-height: 26px; letter-spacing: 2px; text-align: justify; } .footer { - text-indent: 35px; margin-top: 30px; display: flex; justify-content: space-between; @@ -56,12 +55,6 @@ .promiser { display: flex; align-items: flex-end; - - img { - margin-left: 30px; - width: 200px; - height: 100px; - } } .time {