修改bug:12737、12653、12641、12640、12634、12630、12622、12621、12620、12613、12607、12604、12433、12418、12402

master
LiuJiaNan 2025-12-22 14:52:33 +08:00
parent 5b5aa3d2eb
commit 0fba48d93e
8 changed files with 213 additions and 197 deletions

View File

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

View File

@ -16,7 +16,3 @@ export const specialDisposalCorpInfoCountList = declareRequest(
"specialDisposalLoading",
"Post > @/hidden/hidden/extensionHiddenListByCorp",
);
export const specialDisposalByCorpInfoList = declareRequest(
"ignoreLoading",
"Post > @/hidden/hidden/extensionHiddenList",
);

View File

@ -61,172 +61,178 @@ function Confirm(props) {
/>
<Divider orientation="left">隐患确认</Divider>
<div style={{ paddingBottom: 20 }}>
<FormBuilder
form={form}
loading={props.confirm.confirmLoading}
showCancelButton={false}
submitButtonText="通过"
onFinish={onSubmit}
extraActionButtons={[
!isFromInspection && <Button key="reject" type="primary" danger onClick={() => setRejectModalOpen(true)}>打回</Button>,
]}
options={[
...(!isFromInspection
? [
{
name: "hiddenLevel",
label: "隐患级别",
span: 24,
render: (
<HiddenLevelSelectTree
isShowMajor={false}
isShowLarger={false}
isShowNeglect={data.rectificationType === 1}
onChange={() => {
form.setFieldValue("deptName", "");
form.setFieldValue("userName", "");
form.setFieldValue("deptName", "");
form.setFieldValue("userName", "");
form.setFieldValue("checkDeptName", "");
form.setFieldValue("checkUserName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("hiddenLevelName", label);
}}
/>
),
},
]
: []),
{ name: "hiddenLevelName", label: "隐患级别名称", onlyForLabel: true },
...(
hiddenLevel !== "hiddenLevel1001"
? [
...(
data.rectificationType === 2
? [
{
name: "deptId",
label: "整改负责人部门",
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("userId", "");
{
Object.keys(data).length > 0
? (
<FormBuilder
form={form}
loading={props.confirm.confirmLoading}
showCancelButton={false}
submitButtonText="通过"
onFinish={onSubmit}
extraActionButtons={[
!isFromInspection && <Button key="reject" type="primary" danger onClick={() => setRejectModalOpen(true)}>打回</Button>,
]}
options={[
...(!isFromInspection
? [
{
name: "hiddenLevel",
label: "隐患级别",
span: 24,
render: (
<HiddenLevelSelectTree
isShowMajor={false}
isShowLarger={false}
isShowNeglect={data.rectificationType === 2}
onChange={(event) => {
if (event === "hiddenLevel1001") {
form.setFieldValue("deptName", "");
form.setFieldValue("userName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("deptName", label);
}}
/>
),
},
{ name: "deptName", label: "整改负责人部门名称", onlyForLabel: true },
{
name: "userId",
label: "整改负责人",
render: (
<PersonnelSelect
params={{ departmentId: deptId }}
onGetLabel={label => form.setFieldValue("userName", label)}
/>
),
},
{ name: "userName", label: "整改负责人名称", onlyForLabel: true },
{
name: "rectificationDeadline",
label: "整改完成期限",
render: FORM_ITEM_RENDER_ENUM.DATE,
span: 24,
},
]
: [
{
name: "rectificationType",
label: "是否立即整改",
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: [{ bianma: 1, name: "是" }, { bianma: 2, name: "否" }],
span: 24,
componentProps: {
onChange: () => {
form.setFieldValue("checkDeptName", "");
form.setFieldValue("checkUserName", "");
},
},
},
{
name: "deptId",
label: "整改负责人部门",
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("userId", "");
form.setFieldValue("userName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("deptName", label);
}}
/>
),
},
{ name: "deptName", label: "整改负责人部门名称", onlyForLabel: true },
{
name: "userId",
label: "整改负责人",
render: (
<PersonnelSelect
params={{ departmentId: deptId }}
onGetLabel={label => form.setFieldValue("userName", label)}
/>
),
},
{ name: "userName", label: "整改负责人名称", onlyForLabel: true },
{
name: "rectificationDeadline",
label: "整改完成期限",
render: FORM_ITEM_RENDER_ENUM.DATE,
span: 24,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 2),
},
{
name: "checkDeptId",
label: "验收部门",
required: false,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 1),
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("checkUserId", "");
form.setFieldValue("checkDeptName", "");
form.setFieldValue("checkUserName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("checkDeptName", label);
}}
/>
),
},
{ name: "checkDeptName", label: "验收部门名称", onlyForLabel: true },
{
name: "checkUserId",
label: "验收人",
required: false,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 1),
render: (
<PersonnelSelect
params={{ departmentId: checkDeptId }}
onGetLabel={label => form.setFieldValue("checkUserName", label)}
/>
),
},
{ name: "checkUserName", label: "验收人名称", onlyForLabel: true },
]),
]
: []
),
]}
/>
}
}}
onGetLabel={(label) => {
form.setFieldValue("hiddenLevelName", label);
}}
/>
),
},
]
: []),
{ name: "hiddenLevelName", label: "隐患级别名称", onlyForLabel: true },
...(
hiddenLevel !== "hiddenLevel1001"
? [
...(
data.rectificationType === 2
? [
{
name: "deptId",
label: "整改负责人部门",
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("userId", "");
form.setFieldValue("userName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("deptName", label);
}}
/>
),
},
{ name: "deptName", label: "整改负责人部门名称", onlyForLabel: true },
{
name: "userId",
label: "整改负责人",
render: (
<PersonnelSelect
params={{ departmentId: deptId }}
onGetLabel={label => form.setFieldValue("userName", label)}
/>
),
},
{ name: "userName", label: "整改负责人名称", onlyForLabel: true },
{
name: "rectificationDeadline",
label: "整改完成期限",
render: FORM_ITEM_RENDER_ENUM.DATE,
span: 24,
},
]
: [
{
name: "rectificationType",
label: "是否立即整改",
render: FORM_ITEM_RENDER_ENUM.RADIO,
items: [{ bianma: 1, name: "是" }, { bianma: 2, name: "否" }],
span: 24,
componentProps: {
onChange: () => {
form.setFieldValue("checkDeptName", "");
form.setFieldValue("checkUserName", "");
},
},
},
{
name: "deptId",
label: "整改负责人部门",
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("userId", "");
form.setFieldValue("userName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("deptName", label);
}}
/>
),
},
{ name: "deptName", label: "整改负责人部门名称", onlyForLabel: true },
{
name: "userId",
label: "整改负责人",
render: (
<PersonnelSelect
params={{ departmentId: deptId }}
onGetLabel={label => form.setFieldValue("userName", label)}
/>
),
},
{ name: "userName", label: "整改负责人名称", onlyForLabel: true },
{
name: "rectificationDeadline",
label: "整改完成期限",
render: FORM_ITEM_RENDER_ENUM.DATE,
span: 24,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 2),
},
{
name: "checkDeptId",
label: "验收部门",
required: false,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 1),
render: (
<DepartmentSelectTree
onChange={() => {
form.setFieldValue("checkUserId", "");
form.setFieldValue("checkUserName", "");
}}
onGetLabel={(label) => {
form.setFieldValue("checkDeptName", label);
}}
/>
),
},
{ name: "checkDeptName", label: "验收部门名称", onlyForLabel: true },
{
name: "checkUserId",
label: "验收人",
required: false,
dependencies: ["rectificationType"],
hidden: formValues => !(formValues.rectificationType === 1),
render: (
<PersonnelSelect
params={{ departmentId: checkDeptId }}
onGetLabel={label => form.setFieldValue("checkUserName", label)}
/>
),
},
{ name: "checkUserName", label: "验收人名称", onlyForLabel: true },
]),
]
: []
),
]}
/>
)
: null
}
</div>
{rejectModalOpen && <RejectModal onCancel={() => setRejectModalOpen(false)} data={data} />}
</div>

View File

@ -19,7 +19,7 @@ import useGetFile from "zy-react-library/hooks/useGetFile";
import useGetUrlQuery from "zy-react-library/hooks/useGetUrlQuery";
import useGetUserInfo from "zy-react-library/hooks/useGetUserInfo";
import useUploadFile from "zy-react-library/hooks/useUploadFile";
import { createGuid, getLabelName } from "zy-react-library/utils";
import { createGuid, getFileUrl, getLabelName } from "zy-react-library/utils";
import ai_recognize from "~/assets/images/ai_recognize.png";
import { IS_RELATED_ENUM } from "~/enumerate/constant";
import { NS_CONFIRM_USER, NS_LEDGER, NS_PART } from "~/enumerate/namespace";
@ -43,6 +43,7 @@ function Add(props) {
const [uploadedImages, setUploadedImages] = useState([]);
const [modalTitle, setModalTitle] = useState("选择图片进行AI识别");
const [isShowAiButton, setIsShowAiButton] = useState(true);
const [userInfo, setUserInfo] = useState({});
const [hiddenPartType, setHiddenPartType] = useState("select");
const [confirmUserList, setConfirmUserList] = useState([]);
@ -51,8 +52,6 @@ function Add(props) {
const deleteHiddenVideoFiles = useRef([]);
const deleteAfterRectificationImageFiles = useRef([]);
const hiddenUserId = useRef("");
const { getUserInfo } = useGetUserInfo();
const { loading: deleteFileLoading, deleteFile } = useDeleteFile();
const { loading: uploadFileLoading, uploadFile } = useUploadFile();
@ -63,9 +62,9 @@ function Add(props) {
const { data } = await props["hiddenView"]({ id: query.id });
const hiddenImageFiles = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM["3"], eqForeignKey: query.hiddenId });
const hiddenVideoFiles = await getFile({ eqType: UPLOAD_FILE_TYPE_ENUM["102"], eqForeignKey: query.hiddenId });
// const hiddenConfirmUserCO = data?.hiddenConfirmUserCO?.[0] || {};
const hiddenRectifyUserCO = data?.hiddenRectifyUserCO?.[0] || {};
const hiddenAcceptUserCO = data?.hiddenAcceptUserCO?.[0] || {};
const hiddenConfirmUserCO = data?.hiddenConfirmUserCO?.[0] || {};
// const hiddenAcceptUserCO = data?.hiddenAcceptUserCO?.[0] || {};
let afterRectificationImageFiles = [];
if (hiddenRectifyUserCO.hiddenUserId) {
afterRectificationImageFiles = await getFile({
@ -78,22 +77,37 @@ function Add(props) {
hiddenImageFiles,
hiddenVideoFiles,
afterRectificationImageFiles,
confirmUserId: hiddenConfirmUserCO.userId,
rectificationDeptId: hiddenRectifyUserCO.deptId,
rectificationDeptName: hiddenRectifyUserCO.deptName,
rectificationUserId: hiddenRectifyUserCO.userId,
rectificationUserName: hiddenRectifyUserCO.userName,
confirmUserId: "",
confirmUserName: "",
confirmDeptName: "",
confirmDeptId: "",
rectificationDeptId: "",
rectificationDeptName: "",
rectificationUserId: "",
rectificationUserName: "",
checkDeptId: "",
checkDeptName: "",
checkUserId: "",
checkUserName: "",
// confirmUserId: hiddenConfirmUserCO.userId,
// confirmUserName: hiddenConfirmUserCO.userName,
// confirmDeptId: hiddenConfirmUserCO.deptId,
// confirmDeptName: hiddenConfirmUserCO.deptName,
// rectificationDeptId: hiddenRectifyUserCO.deptId,
// rectificationDeptName: hiddenRectifyUserCO.deptName,
// rectificationUserId: hiddenRectifyUserCO.userId,
// rectificationUserName: hiddenRectifyUserCO.userName,
// checkDeptId: hiddenAcceptUserCO.deptId,
// checkDeptName: hiddenAcceptUserCO.deptName,
// checkUserId: hiddenAcceptUserCO.userId,
// checkUserName: hiddenAcceptUserCO.userName,
rectificationDescr: hiddenRectifyUserCO.descr,
checkDeptId: hiddenAcceptUserCO.deptId,
checkDeptName: hiddenAcceptUserCO.deptName,
checkUserId: hiddenAcceptUserCO.userId,
checkUserName: hiddenAcceptUserCO.userName,
isRelated: data.isRelated.toString(),
});
hiddenUserId.current = hiddenRectifyUserCO.hiddenUserId;
}
else {
const userInfo = await getUserInfo();
setUserInfo(userInfo);
form.setFieldsValue({
hiddenFindDept: userInfo.departmentId,
creatorId: userInfo.id,
@ -124,15 +138,15 @@ function Add(props) {
};
const getAIHiddenImageRecognize = async (imageToProcess) => {
// const { filePath } = await uploadFile({ files: [imageToProcess], params: { type: UPLOAD_FILE_TYPE_ENUM["3"] } });
const { data } = await props["hiddenAiRecognize"]({ hiddenUrl: "https://pic.rmb.bdstatic.com/bjh/news/0a68c2681805fcaea506d922f024420c.png" });
// const { data } = await props["hiddenAiRecognize"]({ hiddenUrl: getFileUrl() + filePath });
const { filePath } = await uploadFile({ files: [imageToProcess], params: { type: UPLOAD_FILE_TYPE_ENUM["3"] } });
// const { data } = await props["hiddenAiRecognize"]({ hiddenUrl: "https://pic.rmb.bdstatic.com/bjh/news/0a68c2681805fcaea506d922f024420c.png" });
const { data } = await props["hiddenAiRecognize"]({ hiddenUrl: getFileUrl() + filePath });
if (data?.aiHiddens) {
processedImageUids.current.push(imageToProcess.uid);
setAiHiddens(data?.aiHiddens.map(item => ({ ...JSON.parse(item), id: createGuid() })));
setAiHiddenModalOpen(true);
clearHiddenRecognizeState();
// await deleteFile({ files: [{ filePath }] });
await deleteFile({ files: [{ filePath }] });
}
};
@ -211,7 +225,7 @@ function Add(props) {
const { id: afterRectificationImageId } = await uploadFile({
single: false,
files: values.afterRectificationImageFiles,
params: { type: UPLOAD_FILE_TYPE_ENUM["4"], foreignKey: hiddenUserId.current },
params: { type: UPLOAD_FILE_TYPE_ENUM["4"], foreignKey: "" },
});
let hiddenPart = values.hiddenPart;
if (hiddenPartType === "input") {
@ -255,6 +269,10 @@ function Add(props) {
form.setFieldValue("hiddenDesc", selectHiddens[currentProcessHiddenIndex + 1].hiddenDescr);
form.setFieldValue("legalBasis", selectHiddens[currentProcessHiddenIndex + 1].legalBasis);
form.setFieldValue("rectificationDescr", selectHiddens[currentProcessHiddenIndex + 1].rectificationSuggestions);
form.setFieldValue("hiddenFindDept", userInfo.departmentId);
form.setFieldValue("creatorId", userInfo.id);
form.setFieldValue("hiddenFindDeptName", userInfo.departmentName);
form.setFieldValue("creatorName", userInfo.name);
}
else {
props.history.goBack();

View File

@ -229,7 +229,6 @@ const AddModalComponent = (props) => {
{
name: "responsibleDeptId",
label: "负责部门",
span: 12,
required: false,
render: (
<DepartmentSelectTree
@ -247,7 +246,6 @@ const AddModalComponent = (props) => {
{
name: "responsibleUserId",
label: "负责人",
span: 12,
required: false,
render: (
<PersonnelSelect

View File

@ -23,7 +23,7 @@ function List(props) {
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
params: { eqType: 2 },
params: { eqType: 2, entry: 2 },
});
return (

View File

@ -23,7 +23,7 @@ function List(props) {
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
params: { eqType: 1 },
params: { eqType: 1, entry: 2 },
});
return (

View File

@ -24,15 +24,13 @@ function HiddenList(props) {
const { loading: downloadBlobLoading, downloadBlob } = useDownloadBlob();
const [selectedRowKeys, setSelectedRowKeys] = useState([]);
const [form] = Form.useForm();
const { tableProps, getData } = useTable(props["specialDisposalByCorpInfoList"], {
const { tableProps, getData } = useTable(props["specialDisposalList"], {
form,
transform: formData => ({
hiddenFindTime: formData.hiddenFindTime?.[0],
hiddenFindTimeLe: formData.hiddenFindTime?.[1],
}),
params: {
corpId: query.corpId,
},
params: { corpId: query.corpId, entry: 1 },
});
const onExportExcel = async () => {