diff --git a/src/views/BI/components/historical_trajectory_options.vue b/src/views/BI/components/historical_trajectory_options.vue index 7560d54..d7a23c6 100644 --- a/src/views/BI/components/historical_trajectory_options.vue +++ b/src/views/BI/components/historical_trajectory_options.vue @@ -14,7 +14,7 @@ diff --git a/src/views/blind_plate_plugging/job_data/index.vue b/src/views/blind_plate_plugging/job_data/index.vue index 7949a8a..c6d80a3 100644 --- a/src/views/blind_plate_plugging/job_data/index.vue +++ b/src/views/blind_plate_plugging/job_data/index.vue @@ -218,8 +218,8 @@ - + - + - + - + - + { - if (value) { - const resData = await getBlindBoardVerifyConfigurationUser({ - APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, - }); - if (resData?.pd?.APPLY_DEPARTMENT_ID) - callback(new Error("该申请部门已存在")); - else callback(); - } else { - callback(); - } +const fnHasLevel = async () => { + const resData = await getBlindBoardVerifyConfigurationUser({ + APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, + }); + if (resData?.pd?.APPLY_DEPARTMENT_ID) + return ElMessage.error("该申请单位已存在"); }; const rules = { APPLY_DEPARTMENT_ID: [ { required: true, message: "请选择申请部门", trigger: "change" }, - { validator: fnHasLevel, trigger: "blur" }, + // { validator: fnHasLevel, trigger: "blur" }, ], LEADER_DEPARTMENT_ID: [ { @@ -222,24 +217,24 @@ const data = reactive({ const fnLeaderDepartmentChange = () => { data.leaderUserList = []; - form.value.LEADER_USER_ID = ""; + form.value.LEADER_USER_ID = []; }; const fnAuditDepartmentChange = () => { data.auditUserList = []; - form.value.AUDIT_USER_ID = ""; + form.value.AUDIT_USER_ID = []; }; const fnApproveDepartmentChange = () => { data.approveUserList = []; - form.value.APPROVE_USER_ID = ""; + form.value.APPROVE_USER_ID = []; }; const fnWorkshopDepartmentChange = () => { data.workshopUserList = []; - form.value.WORKSHOP_USER_ID = ""; + form.value.WORKSHOP_USER_ID = []; }; const fnProjectDepartmentChange = () => { data.projectUserList = []; - form.value.PROJECT_MANAGER_USER_ID = ""; + form.value.PROJECT_MANAGER_USER_ID = []; }; const fnClose = () => { @@ -252,11 +247,39 @@ const fnSubmit = debounce( 1000, async () => { const form = props.form; + await useFormValidate(formRef); + const WORKSHOP_USER_ID = form.WORKSHOP_USER_ID + ? form.WORKSHOP_USER_ID.join(",") + : ""; + const LEADER_USER_ID = form.LEADER_USER_ID + ? form.LEADER_USER_ID.join(",") + : ""; + const AUDIT_USER_ID = form.AUDIT_USER_ID + ? form.AUDIT_USER_ID.join(",") + : ""; + const APPROVE_USER_ID = form.APPROVE_USER_ID + ? form.APPROVE_USER_ID.join(",") + : ""; + const PROJECT_MANAGER_USER_ID = form.PROJECT_MANAGER_USER_ID + ? form.PROJECT_MANAGER_USER_ID.join(",") + : ""; + const params = { + ...form, + WORKSHOP_USER_ID, + LEADER_USER_ID, + AUDIT_USER_ID, + APPROVE_USER_ID, + PROJECT_MANAGER_USER_ID, + }; if (props.type === "add") { - await useFormValidate(formRef); - await setBlindBoardConfigurationUserAdd(form); + const isCon = await fnHasLevel(); + if (!isCon) { + await setBlindBoardConfigurationUserAdd(params); + } else { + return false; + } } else { - await setBlindBoardConfigurationUserEdit(form); + await setBlindBoardConfigurationUserEdit(params); } ElMessage.success("提交成功"); fnClose(); @@ -305,6 +328,7 @@ watchEffect(() => { if (form.value.PROJECT_MANAGER_DEPARTMENT_ID) fnGetProjectUser(form.value.PROJECT_MANAGER_DEPARTMENT_ID); }); +watchEffect(() => {}); diff --git a/src/views/blind_plate_plugging/user_configuration/index.vue b/src/views/blind_plate_plugging/user_configuration/index.vue index 5ab53f4..8dfc769 100644 --- a/src/views/blind_plate_plugging/user_configuration/index.vue +++ b/src/views/blind_plate_plugging/user_configuration/index.vue @@ -169,16 +169,16 @@ const data = reactive({ CONFIGURATION_ID: "", APPLY_DEPARTMENT_ID: "", WORK_LEVEL: "", + WORKSHOP_DEPARTMENT_ID: "", + WORKSHOP_USER_ID: [], LEADER_DEPARTMENT_ID: "", - LEADER_USER_ID: "", + LEADER_USER_ID: [], AUDIT_DEPARTMENT_ID: "", - AUDIT_USER_ID: "", + AUDIT_USER_ID: [], APPROVE_DEPARTMENT_ID: "", - APPROVE_USER_ID: "", - MONITOR_DEPARTMENT_ID: "", - MONITOR_USER_ID: "", + APPROVE_USER_ID: [], PROJECT_MANAGER_DEPARTMENT_ID: "", - PROJECT_MANAGER_USER_ID: "", + PROJECT_MANAGER_USER_ID: [], }, }, }); @@ -228,6 +228,13 @@ const fnGoEdit = async (id) => { const resData = await getBlindBoardConfigurationUserView({ CONFIGURATION_ID: id, }); + resData.pd.LEADER_USER_ID = resData.pd.LEADER_USER_ID.toString().split(","); + resData.pd.AUDIT_USER_ID = resData.pd.AUDIT_USER_ID.toString().split(","); + resData.pd.APPROVE_USER_ID = resData.pd.APPROVE_USER_ID.toString().split(","); + resData.pd.WORKSHOP_USER_ID = + resData.pd.WORKSHOP_USER_ID.toString().split(","); + resData.pd.PROJECT_MANAGER_USER_ID = + resData.pd.PROJECT_MANAGER_USER_ID.toString().split(","); data.editDialog.form = resData.pd; }; diff --git a/src/views/confined_space/job_data/index.vue b/src/views/confined_space/job_data/index.vue index 24988d7..ff08ae3 100644 --- a/src/views/confined_space/job_data/index.vue +++ b/src/views/confined_space/job_data/index.vue @@ -224,8 +224,8 @@ - + - + - + - + - + - + { - if (value) { - const resData = await getConfinedspaceVerifyConfigurationUser({ - WORK_LEVEL: value, - APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, - }); - if (resData?.pd?.APPLY_DEPARTMENT_ID) - callback(new Error("该申请部门已存在")); - else callback(); - } else { - callback(); - } +const fnHasLevel = async () => { + const resData = await getConfinedspaceVerifyConfigurationUser({ + APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, + }); + if (resData?.pd?.APPLY_DEPARTMENT_ID) + return ElMessage.error("该申请单位已存在"); }; const rules = { APPLY_DEPARTMENT_ID: [ { required: true, message: "请选择申请部门", trigger: "change" }, - { validator: fnHasLevel, trigger: "blur" }, + // { validator: fnHasLevel, trigger: "blur" }, ], LEADER_DEPARTMENT_ID: [ { @@ -213,10 +207,10 @@ const rules = { { required: true, message: "请选择安全处负责人", trigger: "change" }, ], SAFETY_DEPARTMENT_ID: [ - { required: true, message: "请选择安全部", trigger: "change" }, + { required: true, message: "请选择生产部", trigger: "change" }, ], SAFETY_USER_ID: [ - { required: true, message: "请选择安全部负责人", trigger: "change" }, + { required: true, message: "请选择生产部负责人", trigger: "change" }, ], WORKSHOP_DEPARTMENT_ID: [ { required: true, message: "请选择工段部门", trigger: "change" }, @@ -246,28 +240,28 @@ const data = reactive({ const fnLeaderDepartmentChange = () => { data.leaderUserList = []; - form.value.LEADER_USER_ID = ""; + form.value.LEADER_USER_ID = []; }; const fnAuditDepartmentChange = () => { data.auditUserList = []; - form.value.AUDIT_USER_ID = ""; + form.value.AUDIT_USER_ID = []; }; const fnApproveDepartmentChange = () => { data.approveUserList = []; - form.value.APPROVE_USER_ID = ""; + form.value.APPROVE_USER_ID = []; }; const fnSafetyDepartmentChange = () => { data.safetyUserList = []; - form.value.SAFETY_USER_ID = ""; + form.value.SAFETY_USER_ID = []; }; const fnWorkshopDepartmentChange = () => { data.workshopUserList = []; - form.value.WORKSHOP_USER_ID = ""; + form.value.WORKSHOP_USER_ID = []; }; const fnProjectDepartmentChange = () => { data.projectUserList = []; - form.value.PROJECT_MANAGER_USER_ID = ""; + form.value.PROJECT_MANAGER_USER_ID = []; }; const fnClose = () => { @@ -280,11 +274,43 @@ const fnSubmit = debounce( 1000, async () => { const form = props.form; + await useFormValidate(formRef); + const LEADER_USER_ID = form.LEADER_USER_ID + ? form.LEADER_USER_ID.join(",") + : ""; + const AUDIT_USER_ID = form.AUDIT_USER_ID + ? form.AUDIT_USER_ID.join(",") + : ""; + const APPROVE_USER_ID = form.APPROVE_USER_ID + ? form.APPROVE_USER_ID.join(",") + : ""; + const WORKSHOP_USER_ID = form.WORKSHOP_USER_ID + ? form.WORKSHOP_USER_ID.join(",") + : ""; + const SAFETY_USER_ID = form.SAFETY_USER_ID + ? form.SAFETY_USER_ID.join(",") + : ""; + const PROJECT_MANAGER_USER_ID = form.PROJECT_MANAGER_USER_ID + ? form.PROJECT_MANAGER_USER_ID.join(",") + : ""; + const params = { + ...form, + LEADER_USER_ID, + AUDIT_USER_ID, + APPROVE_USER_ID, + WORKSHOP_USER_ID, + SAFETY_USER_ID, + PROJECT_MANAGER_USER_ID, + }; if (props.type === "add") { - await useFormValidate(formRef); - await setConfinedspaceConfigurationUserAdd(form); + const isCon = await fnHasLevel(); + if (!isCon) { + await setConfinedspaceConfigurationUserAdd(params); + } else { + return false; + } } else { - await setConfinedspaceConfigurationUserEdit(form); + await setConfinedspaceConfigurationUserEdit(params); } ElMessage.success("提交成功"); fnClose(); @@ -339,6 +365,7 @@ watchEffect(() => { if (form.value.SAFETY_DEPARTMENT_ID) fnGetSafetyUser(form.value.SAFETY_DEPARTMENT_ID); }); +watchEffect(() => {}); diff --git a/src/views/confined_space/user_configuration/index.vue b/src/views/confined_space/user_configuration/index.vue index 033b187..686adfb 100644 --- a/src/views/confined_space/user_configuration/index.vue +++ b/src/views/confined_space/user_configuration/index.vue @@ -179,15 +179,17 @@ const data = reactive({ APPLY_DEPARTMENT_ID: "", WORK_LEVEL: "", LEADER_DEPARTMENT_ID: "", - LEADER_USER_ID: "", + LEADER_USER_ID: [], AUDIT_DEPARTMENT_ID: "", - AUDIT_USER_ID: "", + AUDIT_USER_ID: [], APPROVE_DEPARTMENT_ID: "", - APPROVE_USER_ID: "", - MONITOR_DEPARTMENT_ID: "", - MONITOR_USER_ID: "", + APPROVE_USER_ID: [], + WORKSHOP_DEPARTMENT_ID: "", + WORKSHOP_USER_ID: [], + SAFETY_DEPARTMENT_ID: "", + SAFETY_USER_ID: [], PROJECT_MANAGER_DEPARTMENT_ID: "", - PROJECT_MANAGER_USER_ID: "", + PROJECT_MANAGER_USER_ID: [], }, }, }); @@ -237,6 +239,14 @@ const fnGoEdit = async (id) => { const resData = await getConfinedspaceConfigurationUserView({ CONFIGURATION_ID: id, }); + resData.pd.LEADER_USER_ID = resData.pd.LEADER_USER_ID.toString().split(","); + resData.pd.AUDIT_USER_ID = resData.pd.AUDIT_USER_ID.toString().split(","); + resData.pd.APPROVE_USER_ID = resData.pd.APPROVE_USER_ID.toString().split(","); + resData.pd.WORKSHOP_USER_ID = + resData.pd.WORKSHOP_USER_ID.toString().split(","); + resData.pd.SAFETY_USER_ID = resData.pd.SAFETY_USER_ID.toString().split(","); + resData.pd.PROJECT_MANAGER_USER_ID = + resData.pd.PROJECT_MANAGER_USER_ID.toString().split(","); data.editDialog.form = resData.pd; }; diff --git a/src/views/enterprise_management/department/components/add.vue b/src/views/enterprise_management/department/components/add.vue index ffb7450..04ea4dc 100644 --- a/src/views/enterprise_management/department/components/add.vue +++ b/src/views/enterprise_management/department/components/add.vue @@ -91,7 +91,7 @@ import { ref } from "vue"; import { debounce } from "throttle-debounce"; import useFormValidate from "@/assets/js/useFormValidate.js"; import { layoutFnGetInventoryLevel } from "@/assets/js/data_dictionary.js"; -import LayoutDepartment from "@/components/department/index.vue"; +import LayoutDepartment from "./department.vue"; import { useUserStore } from "@/pinia/user.js"; import { setDepartmentAdd, diff --git a/src/views/enterprise_management/department/components/department.vue b/src/views/enterprise_management/department/components/department.vue new file mode 100644 index 0000000..e244491 --- /dev/null +++ b/src/views/enterprise_management/department/components/department.vue @@ -0,0 +1,95 @@ + + + + + diff --git a/src/views/gas_alarm/components/waring.vue b/src/views/gas_alarm/components/waring.vue new file mode 100644 index 0000000..cc57621 --- /dev/null +++ b/src/views/gas_alarm/components/waring.vue @@ -0,0 +1,200 @@ + + + + + diff --git a/src/views/gas_alarm/index.vue b/src/views/gas_alarm/index.vue index c30186b..e8c38ef 100644 --- a/src/views/gas_alarm/index.vue +++ b/src/views/gas_alarm/index.vue @@ -1,33 +1,81 @@ diff --git a/src/views/groundbreaking/user_configuration/index.vue b/src/views/groundbreaking/user_configuration/index.vue index a0081eb..1489336 100644 --- a/src/views/groundbreaking/user_configuration/index.vue +++ b/src/views/groundbreaking/user_configuration/index.vue @@ -48,16 +48,6 @@ - - + + diff --git a/src/views/high/job_data/index.vue b/src/views/high/job_data/index.vue index 9107aa9..1db346b 100644 --- a/src/views/high/job_data/index.vue +++ b/src/views/high/job_data/index.vue @@ -109,7 +109,7 @@ /> 作业申请单位 - {{ data.info.APPLY_DEPARTMENT_NAME }}-{{data.info.APPLY_WORKSHOP_DEPARTMENT_NAME}} + + {{ data.info.APPLY_DEPARTMENT_NAME }}-{{ + data.info.APPLY_WORKSHOP_DEPARTMENT_NAME + }} + 申请人 {{ data.info.APPLY_USER_NAME }} @@ -287,7 +291,7 @@ -
安全部意见:{{ data.signs.SAFETY?.[0].DESCR }}
+
生产部意见:{{ data.signs.SAFETY?.[0].DESCR }}
- + - + - - + + - + - + - + { +const fnHasLevel = async (value) => { if (value) { const resData = await getHighVerifyConfigurationUser({ WORK_LEVEL: value, APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, }); if (resData?.pd?.APPLY_DEPARTMENT_ID) - callback(new Error("该申请单位和高处作业等级已存在")); - else callback(); - } else { - callback(); + return ElMessage.error("该申请单位和高处作业等级已存在"); + // callback(new Error("该申请单位和高处作业等级已存在")); } }; @@ -218,8 +226,8 @@ const rules = { { required: true, message: "请选择申请部门", trigger: "change" }, ], WORK_LEVEL: [ - { required: true, message: "请选择动火等级", trigger: "blur" }, - { validator: fnHasLevel, trigger: "blur" }, + { required: true, message: "请选择高处作业等级", trigger: "blur" }, + // { validator: fnHasLevel, trigger: "blur" }, ], LEADER_DEPARTMENT_ID: [ { @@ -248,10 +256,10 @@ const rules = { { required: true, message: "请选择安全处负责人", trigger: "change" }, ], SAFETY_DEPARTMENT_ID: [ - { required: true, message: "请选择安全部", trigger: "change" }, + { required: true, message: "请选择生产部", trigger: "change" }, ], SAFETY_USER_ID: [ - { required: true, message: "请选择安全部负责人", trigger: "change" }, + { required: true, message: "请选择生产部负责人", trigger: "change" }, ], WORKSHOP_DEPARTMENT_ID: [ { required: true, message: "请选择工段部门", trigger: "change" }, @@ -292,23 +300,23 @@ const data = reactive({ const fnLeaderDepartmentChange = () => { data.leaderUserList = []; - form.value.LEADER_USER_ID = ""; + form.value.LEADER_USER_ID = []; }; const fnAuditDepartmentChange = () => { data.auditUserList = []; - form.value.AUDIT_USER_ID = ""; + form.value.AUDIT_USER_ID = []; }; const fnApproveDepartmentChange = () => { data.approveUserList = []; - form.value.APPROVE_USER_ID = ""; + form.value.APPROVE_USER_ID = []; }; const fnSafetyDepartmentChange = () => { data.safetyUserList = []; - form.value.SAFETY_USER_ID = ""; + form.value.SAFETY_USER_ID = []; }; const fnWorkshopDepartmentChange = () => { data.workshopUserList = []; - form.value.WORKSHOP_USER_ID = ""; + form.value.WORKSHOP_USER_ID = []; }; const fnClose = () => { @@ -321,11 +329,32 @@ const fnSubmit = debounce( 1000, async () => { const form = props.form; + // if (props.type === "add") { + // await fnHasLevel(form.WORK_LEVEL); + // } + await useFormValidate(formRef); + const LEADER_USER_ID = form.LEADER_USER_ID.join(","); + const AUDIT_USER_ID = form.AUDIT_USER_ID.join(","); + const APPROVE_USER_ID = form.APPROVE_USER_ID.join(","); + const SAFETY_USER_ID = form.SAFETY_USER_ID.join(","); + const WORKSHOP_USER_ID = form.WORKSHOP_USER_ID.join(","); + const params = { + ...form, + LEADER_USER_ID, + AUDIT_USER_ID, + APPROVE_USER_ID, + SAFETY_USER_ID, + WORKSHOP_USER_ID, + }; if (props.type === "add") { - await useFormValidate(formRef); - await setHighConfigurationUserAdd(form); + const isCon = await fnHasLevel(form.WORK_LEVEL); + if (!isCon) { + await setHighConfigurationUserAdd(params); + } else { + return false; + } } else { - await setHighConfigurationUserEdit(form); + await setHighConfigurationUserEdit(params); } ElMessage.success("提交成功"); fnClose(); @@ -374,6 +403,25 @@ watchEffect(() => { if (form.value.WORKSHOP_DEPARTMENT_ID) fnGetWorkshopUser(form.value.WORKSHOP_DEPARTMENT_ID); }); + +const fnWorkLevelChange = () => { + data.leaderUserList = []; + form.value.LEADER_DEPARTMENT_ID = ""; + form.value.LEADER_USER_ID = []; + data.auditUserList = []; + form.value.AUDIT_DEPARTMENT_ID = ""; + form.value.AUDIT_USER_ID = []; + data.approveUserList = []; + form.value.APPROVE_DEPARTMENT_ID = ""; + form.value.APPROVE_USER_ID = []; + data.safetyUserList = []; + form.value.SAFETY_DEPARTMENT_ID = ""; + form.value.SAFETY_USER_ID = []; + data.workshopUserList = []; + form.value.WORKSHOP_DEPARTMENT_ID = ""; + form.value.WORKSHOP_USER_ID = []; +}; +watchEffect(() => {}); diff --git a/src/views/high/user_configuration/index.vue b/src/views/high/user_configuration/index.vue index 2c3107d..e041829 100644 --- a/src/views/high/user_configuration/index.vue +++ b/src/views/high/user_configuration/index.vue @@ -99,12 +99,12 @@ /> @@ -178,15 +178,15 @@ const data = reactive({ APPLY_DEPARTMENT_ID: "", WORK_LEVEL: "", LEADER_DEPARTMENT_ID: "", - LEADER_USER_ID: "", + LEADER_USER_ID: [], AUDIT_DEPARTMENT_ID: "", - AUDIT_USER_ID: "", + AUDIT_USER_ID: [], APPROVE_DEPARTMENT_ID: "", - APPROVE_USER_ID: "", + APPROVE_USER_ID: [], SAFETY_DEPARTMENT_ID: "", - SAFETY_USER_ID: "", + SAFETY_USER_ID: [], WORKSHOP_DEPARTMENT_ID: "", - WORKSHOP_USER_ID: "", + WORKSHOP_USER_ID: [], }, }, }); @@ -236,6 +236,12 @@ const fnGoEdit = async (id) => { const resData = await getHighConfigurationUserView({ CONFIGURATION_ID: id, }); + resData.pd.WORKSHOP_USER_ID = + resData.pd.WORKSHOP_USER_ID.toString().split(","); + resData.pd.LEADER_USER_ID = resData.pd.LEADER_USER_ID.toString().split(","); + resData.pd.AUDIT_USER_ID = resData.pd.AUDIT_USER_ID.toString().split(","); + resData.pd.APPROVE_USER_ID = resData.pd.APPROVE_USER_ID.toString().split(","); + resData.pd.SAFETY_USER_ID = resData.pd.SAFETY_USER_ID.toString().split(","); data.editDialog.form = resData.pd; }; diff --git a/src/views/hoisting/invalid/index.vue b/src/views/hoisting/invalid/index.vue index 2de024a..db9a015 100644 --- a/src/views/hoisting/invalid/index.vue +++ b/src/views/hoisting/invalid/index.vue @@ -60,7 +60,7 @@ /> @@ -123,7 +123,7 @@
diff --git a/src/views/hoisting/job_data/index.vue b/src/views/hoisting/job_data/index.vue index 784f12e..aa4cc3f 100644 --- a/src/views/hoisting/job_data/index.vue +++ b/src/views/hoisting/job_data/index.vue @@ -112,7 +112,7 @@ /> @@ -207,8 +207,8 @@ 作业申请单位 - {{ data.info.APPLY_DEPARTMENT_NAME }}-{{data.info.APPLY_WORKSHOP_DEPARTMENT_NAME}} + + {{ data.info.APPLY_DEPARTMENT_NAME }}-{{ + data.info.APPLY_WORKSHOP_DEPARTMENT_NAME + }} + 作业单位 {{ data.info.LEADER_DEPARTMENT_NAME }} 作业申请时间 @@ -315,7 +319,7 @@ -
安全部意见:{{ data.signs.SAFETY?.[0].DESCR }}
+
生产部意见:{{ data.signs.SAFETY?.[0].DESCR }}
- + - - + + - - + + - - + + - + - + { +const fnHasLevel = async (value) => { if (value) { const resData = await getHoistingVerifyConfigurationUser({ WORK_LEVEL: value, APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, }); if (resData?.pd?.APPLY_DEPARTMENT_ID) - callback(new Error("该申请单位和作业等级已存在")); - else callback(); - } else { - callback(); + return ElMessage.error("该申请单位和吊装作业等级已存在"); } }; @@ -197,7 +209,7 @@ const rules = { ], WORK_LEVEL: [ { required: true, message: "请选择作业等级", trigger: "blur" }, - { validator: fnHasLevel, trigger: "blur" }, + // { validator: fnHasLevel, trigger: "blur" }, ], LEADER_DEPARTMENT_ID: [ { @@ -226,10 +238,10 @@ const rules = { { required: true, message: "请选择安全处负责人", trigger: "change" }, ], SAFETY_DEPARTMENT_ID: [ - { required: true, message: "请选择安全部", trigger: "change" }, + { required: true, message: "请选择生产部", trigger: "change" }, ], SAFETY_USER_ID: [ - { required: true, message: "请选择安全部负责人", trigger: "change" }, + { required: true, message: "请选择生产部负责人", trigger: "change" }, ], WORKSHOP_DEPARTMENT_ID: [ { required: true, message: "请选择工段部门", trigger: "change" }, @@ -266,23 +278,41 @@ const data = reactive({ const fnLeaderDepartmentChange = () => { data.leaderUserList = []; - form.value.LEADER_USER_ID = ""; + form.value.LEADER_USER_ID = []; }; const fnAuditDepartmentChange = () => { data.auditUserList = []; - form.value.AUDIT_USER_ID = ""; + form.value.AUDIT_USER_ID = []; }; const fnApproveDepartmentChange = () => { data.approveUserList = []; - form.value.APPROVE_USER_ID = ""; + form.value.APPROVE_USER_ID = []; }; const fnSafetyDepartmentChange = () => { data.safetyUserList = []; - form.value.SAFETY_USER_ID = ""; + form.value.SAFETY_USER_ID = []; }; const fnWorkshopDepartmentChange = () => { data.workshopUserList = []; - form.value.WORKSHOP_USER_ID = ""; + form.value.WORKSHOP_USER_ID = []; +}; + +const fnWorkLevelChange = () => { + data.leaderUserList = []; + form.value.LEADER_DEPARTMENT_ID = ""; + form.value.LEADER_USER_ID = []; + data.auditUserList = []; + form.value.AUDIT_DEPARTMENT_ID = ""; + form.value.AUDIT_USER_ID = []; + data.approveUserList = []; + form.value.APPROVE_DEPARTMENT_ID = ""; + form.value.APPROVE_USER_ID = []; + data.safetyUserList = []; + form.value.SAFETY_DEPARTMENT_ID = ""; + form.value.SAFETY_USER_ID = []; + data.workshopUserList = []; + form.value.WORKSHOP_DEPARTMENT_ID = ""; + form.value.WORKSHOP_USER_ID = []; }; const fnClose = () => { @@ -295,11 +325,29 @@ const fnSubmit = debounce( 1000, async () => { const form = props.form; + await useFormValidate(formRef); + const LEADER_USER_ID = form.LEADER_USER_ID.join(","); + const AUDIT_USER_ID = form.AUDIT_USER_ID.join(","); + const APPROVE_USER_ID = form.APPROVE_USER_ID.join(","); + const SAFETY_USER_ID = form.SAFETY_USER_ID.join(","); + const WORKSHOP_USER_ID = form.WORKSHOP_USER_ID.join(","); + const params = { + ...form, + LEADER_USER_ID, + AUDIT_USER_ID, + APPROVE_USER_ID, + SAFETY_USER_ID, + WORKSHOP_USER_ID, + }; if (props.type === "add") { - await useFormValidate(formRef); - await setHoistingConfigurationUserAdd(form); + const isCon = await fnHasLevel(form.WORK_LEVEL); + if (!isCon) { + await setHoistingConfigurationUserAdd(params); + } else { + return false; + } } else { - await setHoistingConfigurationUserEdit(form); + await setHoistingConfigurationUserEdit(params); } ElMessage.success("提交成功"); fnClose(); diff --git a/src/views/hoisting/user_configuration/index.vue b/src/views/hoisting/user_configuration/index.vue index 2da275a..d3bdda2 100644 --- a/src/views/hoisting/user_configuration/index.vue +++ b/src/views/hoisting/user_configuration/index.vue @@ -98,12 +98,12 @@ /> @@ -162,7 +162,7 @@ import { getHoistingConfigurationUserView, setHoistingConfigurationUserDelete, setHoistingConfigurationUserDeleteAll, - setHoistingConfigurationUserList + setHoistingConfigurationUserList, } from "@/request/eight_work.js"; const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } = @@ -177,15 +177,15 @@ const data = reactive({ APPLY_DEPARTMENT_ID: "", WORK_LEVEL: "", LEADER_DEPARTMENT_ID: "", - LEADER_USER_ID: "", + LEADER_USER_ID: [], AUDIT_DEPARTMENT_ID: "", - AUDIT_USER_ID: "", + AUDIT_USER_ID: [], APPROVE_DEPARTMENT_ID: "", - APPROVE_USER_ID: "", + APPROVE_USER_ID: [], SAFETY_DEPARTMENT_ID: "", - SAFETY_USER_ID: "", + SAFETY_USER_ID: [], WORKSHOP_DEPARTMENT_ID: "", - WORKSHOP_USER_ID: "", + WORKSHOP_USER_ID: [], }, }, }); @@ -235,6 +235,12 @@ const fnGoEdit = async (id) => { const resData = await getHoistingConfigurationUserView({ CONFIGURATION_ID: id, }); + resData.pd.WORKSHOP_USER_ID = + resData.pd.WORKSHOP_USER_ID.toString().split(","); + resData.pd.LEADER_USER_ID = resData.pd.LEADER_USER_ID.toString().split(","); + resData.pd.AUDIT_USER_ID = resData.pd.AUDIT_USER_ID.toString().split(","); + resData.pd.APPROVE_USER_ID = resData.pd.APPROVE_USER_ID.toString().split(","); + resData.pd.SAFETY_USER_ID = resData.pd.SAFETY_USER_ID.toString().split(","); data.editDialog.form = resData.pd; }; diff --git a/src/views/hot_work/job_data/index.vue b/src/views/hot_work/job_data/index.vue index 25effeb..6adff17 100644 --- a/src/views/hot_work/job_data/index.vue +++ b/src/views/hot_work/job_data/index.vue @@ -217,8 +217,8 @@ { +const fnHasLevel = async (value) => { if (value) { const resData = await getHotVerifyConfigurationUser({ WORK_LEVEL: value, APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, }); - if (resData?.pd?.APPLY_DEPARTMENT_ID) - callback(new Error("该申请单位和动火等级已存在")); - else callback(); - } else { - callback(); + if (resData?.pd?.APPLY_DEPARTMENT_ID) { + ElMessage.error("该申请单位和动火等级已存在"); + return true; + } else { + return false; + } } }; @@ -224,7 +226,7 @@ const rules = { ], WORK_LEVEL: [ { required: true, message: "请选择动火等级", trigger: "blur" }, - { validator: fnHasLevel, trigger: "blur" }, + // { validator: fnHasLevel, trigger: "blur" }, ], LEADER_DEPARTMENT_ID: [ { @@ -291,10 +293,29 @@ const data = reactive({ projectUserList: [], }); +const fnWorkLevelChange = () => { + data.leaderUserList = []; + form.value.LEADER_DEPARTMENT_ID = ""; + form.value.LEADER_USER_ID = []; + data.auditUserList = []; + form.value.AUDIT_DEPARTMENT_ID = ""; + form.value.AUDIT_USER_ID = []; + data.approveUserList = []; + form.value.APPROVE_DEPARTMENT_ID = ""; + form.value.APPROVE_USER_ID = []; + data.monitorUserList = []; + form.value.MONITOR_DEPARTMENT_ID = ""; + form.value.MONITOR_USER_ID = []; + data.projectUserList = []; + form.value.PROJECT_MANAGER_DEPARTMENT_ID = ""; + form.value.PROJECT_MANAGER_USER_ID = []; +}; + const fnLeaderDepartmentChange = () => { data.leaderUserList = []; form.value.LEADER_USER_ID = []; }; + const fnAuditDepartmentChange = () => { data.auditUserList = []; form.value.AUDIT_USER_ID = []; @@ -322,17 +343,44 @@ const fnSubmit = debounce( 1000, async () => { const form = props.form; - form.LEADER_USER_ID = form.LEADER_USER_ID.join(","); - form.AUDIT_USER_ID = form.AUDIT_USER_ID.join(","); - form.APPROVE_USER_ID = form.APPROVE_USER_ID.join(","); - form.MONITOR_USER_ID = form.MONITOR_USER_ID.join(","); - form.PROJECT_MANAGER_USER_ID = form.PROJECT_MANAGER_USER_ID.join(","); + await useFormValidate(formRef); + // if (props.type === "add") { + // fnHasLevel(form.WORK_LEVEL); + // } + const LEADER_USER_ID = form.LEADER_USER_ID + ? form.LEADER_USER_ID.join(",") + : ""; + const AUDIT_USER_ID = form.AUDIT_USER_ID + ? form.AUDIT_USER_ID.join(",") + : ""; + const APPROVE_USER_ID = form.APPROVE_USER_ID + ? form.APPROVE_USER_ID.join(",") + : ""; + const MONITOR_USER_ID = form.MONITOR_USER_ID + ? form.MONITOR_USER_ID.join(",") + : ""; + const PROJECT_MANAGER_USER_ID = form.PROJECT_MANAGER_USER_ID + ? form.PROJECT_MANAGER_USER_ID.join(",") + : ""; + const params = { + ...form, + LEADER_USER_ID, + AUDIT_USER_ID, + APPROVE_USER_ID, + MONITOR_USER_ID, + PROJECT_MANAGER_USER_ID, + }; if (props.type === "add") { - await useFormValidate(formRef); - await setHotConfigurationUserAdd(form); + const isCon = await fnHasLevel(form.WORK_LEVEL); + if (!isCon) { + await setHotConfigurationUserAdd(params); + } else { + return false; + } } else { - await setHotConfigurationUserEdit(form); + await setHotConfigurationUserEdit(params); } + ElMessage.success("提交成功"); fnClose(); emits("get-data"); @@ -380,6 +428,8 @@ watchEffect(() => { if (form.value.PROJECT_MANAGER_DEPARTMENT_ID) fnGetProjectUser(form.value.PROJECT_MANAGER_DEPARTMENT_ID); }); + +watchEffect(() => {}); diff --git a/src/views/hot_work/user_configuration/index.vue b/src/views/hot_work/user_configuration/index.vue index f781b02..eb42dd6 100644 --- a/src/views/hot_work/user_configuration/index.vue +++ b/src/views/hot_work/user_configuration/index.vue @@ -171,15 +171,15 @@ const data = reactive({ APPLY_DEPARTMENT_ID: "", WORK_LEVEL: "", LEADER_DEPARTMENT_ID: "", - LEADER_USER_ID: "", + LEADER_USER_ID: [], AUDIT_DEPARTMENT_ID: "", - AUDIT_USER_ID: "", + AUDIT_USER_ID: [], APPROVE_DEPARTMENT_ID: "", - APPROVE_USER_ID: "", + APPROVE_USER_ID: [], MONITOR_DEPARTMENT_ID: "", - MONITOR_USER_ID: "", + MONITOR_USER_ID: [], PROJECT_MANAGER_DEPARTMENT_ID: "", - PROJECT_MANAGER_USER_ID: "", + PROJECT_MANAGER_USER_ID: [], }, }, }); diff --git a/src/views/off_department_management/login_record/index.vue b/src/views/off_department_management/login_record/index.vue index a9c7eb4..5e0ef60 100644 --- a/src/views/off_department_management/login_record/index.vue +++ b/src/views/off_department_management/login_record/index.vue @@ -34,24 +34,28 @@ - 搜索 - - 重置 - + 搜索 + 重置 - + - @@ -62,10 +66,10 @@ import LayoutDepartment from "@/components/department/index.vue"; import { serialNumber } from "@/assets/js/utils.js"; import useListData from "@/assets/js/useListData.js"; -import { - getFhlogStatsList, - getDetectionSituationListTime, -} from "@/request/statistical_analysis.js"; +import { getFhlogStatsList } from "@/request/statistical_analysis.js"; +import { sumBy } from "lodash-es"; +import dayjs from "dayjs"; +import { onMounted } from "vue"; const handleExtraData = (dataList) => { dataList.forEach((item) => { @@ -81,6 +85,11 @@ const { list, searchForm, pagination, fnGetData } = useListData( usePagination: false, } ); + +onMounted(() => { + reset(); +}); + const fnGetDataTransfer = () => { fnGetData({ START_TIME: searchForm.value.dates?.[0], @@ -88,13 +97,48 @@ const fnGetDataTransfer = () => { DEPTIDS: searchForm.value.DEPTIDS?.join(","), }); }; -const fnInit = async () => { - const resData = await getDetectionSituationListTime(); - searchForm.value.dates = [resData.pd.MINTIME, resData.pd.MAXTIME]; + +const reset = () => { + searchForm.value.dates = [ + dayjs().startOf("year").format("YYYY-MM-DD"), + dayjs().format("YYYY-MM-DD"), + ]; + searchForm.value.DEPTIDS = []; fnGetDataTransfer(); }; +const fnGetSummaries = ({ columns, data }) => { + const sums = []; + columns.forEach((column, index) => { + if (index === 0) { + sums[index] = "合计"; + return; + } -fnInit(); + const property = column.property; + if (property === "NAME") { + sums[index] = "--"; // 不显示合计 + } else { + // 特殊处理“排查率” + const totalReal = sumBy(data, (item) => { + const val = item.LOGIN_COUNTS; + return isNaN(val) ? 0 : Number(val); + }); + const totalNeed = sumBy(data, (item) => { + const val = item.WORKER_COUNTS; + return isNaN(val) ? 0 : Number(val); + }); + + if (totalNeed > 0) { + const rate = (totalReal / totalNeed) * 100; + sums[index] = `${rate.toFixed(2)}%`; + } else { + sums[index] = "0.00%"; + } + } + }); + + return sums; +}; diff --git a/src/views/open_circuit/job_data/index.vue b/src/views/open_circuit/job_data/index.vue index 02c2828..1e10491 100644 --- a/src/views/open_circuit/job_data/index.vue +++ b/src/views/open_circuit/job_data/index.vue @@ -209,8 +209,8 @@ - + - + { - if (value) { - const resData = await getCutRoadVerifyConfigurationUser({ - APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, - }); - if (resData?.pd?.APPLY_DEPARTMENT_ID) - callback(new Error("该申请部门已存在")); - else callback(); - } else { - callback(); - } +const fnHasLevel = async () => { + const resData = await getCutRoadVerifyConfigurationUser({ + APPLY_DEPARTMENT_ID: form.value.APPLY_DEPARTMENT_ID, + }); + if (resData?.pd?.APPLY_DEPARTMENT_ID) + return ElMessage.error("该申请单位已存在"); }; const rules = { APPLY_DEPARTMENT_ID: [ { required: true, message: "请选择申请部门", trigger: "change" }, - { validator: fnHasLevel, trigger: "blur" }, + // { validator: fnHasLevel, trigger: "blur" }, ], AUDIT_DEPARTMENT_ID: [ @@ -160,12 +155,12 @@ const data = reactive({ const fnAuditDepartmentChange = () => { data.auditUserList = []; - form.value.AUDIT_USER_ID = ""; + form.value.AUDIT_USER_ID = []; }; const fnSafetyDepartmentChange = () => { data.safetyUserList = []; - form.value.LEADER_USER_ID = ""; + form.value.LEADER_USER_ID = []; }; const fnClose = () => { @@ -178,11 +173,28 @@ const fnSubmit = debounce( 1000, async () => { const form = props.form; + + await useFormValidate(formRef); + const AUDIT_USER_ID = form.AUDIT_USER_ID + ? form.AUDIT_USER_ID.join(",") + : ""; + const LEADER_USER_ID = form.LEADER_USER_ID + ? form.LEADER_USER_ID.join(",") + : ""; + const params = { + ...form, + AUDIT_USER_ID, + LEADER_USER_ID, + }; if (props.type === "add") { - await useFormValidate(formRef); - await setCutRoadConfigurationUserAdd(form); + const isCon = await fnHasLevel(); + if (!isCon) { + await setCutRoadConfigurationUserAdd(params); + } else { + return false; + } } else { - await setCutRoadConfigurationUserEdit(form); + await setCutRoadConfigurationUserEdit(params); } ElMessage.success("提交成功"); fnClose(); @@ -213,6 +225,7 @@ watchEffect(() => { if (form.value.LEADER_DEPARTMENT_ID) fnGetSafetyUser(form.value.LEADER_DEPARTMENT_ID); }); +watchEffect(() => {}); diff --git a/src/views/open_circuit/user_configuration/index.vue b/src/views/open_circuit/user_configuration/index.vue index 608827a..95b36e8 100644 --- a/src/views/open_circuit/user_configuration/index.vue +++ b/src/views/open_circuit/user_configuration/index.vue @@ -123,7 +123,7 @@ import { getCutRoadConfigurationUserView, setCutRoadConfigurationUserDelete, setCutRoadConfigurationUserDeleteAll, - setCutRoadConfigurationUserList + setCutRoadConfigurationUserList, } from "@/request/eight_work.js"; const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } = @@ -137,15 +137,13 @@ const data = reactive({ CONFIGURATION_ID: "", APPLY_DEPARTMENT_ID: "", AUDIT_DEPARTMENT_ID: "", - AUDIT_USER_ID: "", + AUDIT_USER_ID: [], LEADER_DEPARTMENT_ID: "", - LEADER_USER_ID: "", + LEADER_USER_ID: [], }, }, }); - - const handleDelete = async (CONFIGURATION_ID) => { await ElMessageBox.confirm("确定要删除吗?", { type: "warning", @@ -192,6 +190,8 @@ const fnGoEdit = async (id) => { const resData = await getCutRoadConfigurationUserView({ CONFIGURATION_ID: id, }); + resData.pd.AUDIT_USER_ID = resData.pd.AUDIT_USER_ID.toString().split(","); + resData.pd.LEADER_USER_ID = resData.pd.LEADER_USER_ID.toString().split(","); data.editDialog.form = resData.pd; }; diff --git a/src/views/special_operations/personnel_management/add.vue b/src/views/special_operations/personnel_management/add.vue index 50f39b4..9c9d2bb 100644 --- a/src/views/special_operations/personnel_management/add.vue +++ b/src/views/special_operations/personnel_management/add.vue @@ -66,7 +66,7 @@ value-format="YYYY-MM-DD" format="YYYY-MM-DD" type="date" - @change="judgeExamineTime()" + @change="judgeExamineTime" /> @@ -96,7 +96,7 @@ value-format="YYYY-MM-DD" format="YYYY-MM-DD" type="date" - @change="judgeExamineTime()" + @change="judgeExamineTime" /> @@ -172,6 +172,11 @@ const fnDisabledDate = (time) => { }; const personnelManagementJobTypeList = await layoutFnGetPersonnelManagementJobType(); + +// 保存原始的复审时间值 +const originalReviewTime1 = ref(""); +const originalReviewTime2 = ref(""); + // 特种作业证书编号 去除唯一校验 // const fnHasCertificate = async (rule, value, callback) => { // if (value) { @@ -276,6 +281,9 @@ const fnGetData = async () => { }); await fnGetAllUserList(resData.pd.DEPARTMENT_ID); form.value = resData.pd; + // 保存原始值 + originalReviewTime1.value = resData.pd.REVIEWTIME1 || ""; + originalReviewTime2.value = resData.pd.REVIEWTIME2 || ""; await fnGetUserDetail(); }; fnGetData(); @@ -289,6 +297,17 @@ const fnSubmit = debounce( form.value.PTYPE === "公司员工" ? CORPINFO_ID : form.value.UNITS_ID, VALID_ETIME: form.value.VALID_ETIME, }; + + // 检查复审时间是否有变化,如果有变化则添加额外参数 + if (SPECIALOPERATIONS_ID) { + if (form.value.REVIEWTIME1 !== originalReviewTime1.value) { + params.REVIEWTIME1_CHANGED = "1"; + } + if (form.value.REVIEWTIME2 !== originalReviewTime2.value) { + params.REVIEWTIME2_CHANGED = "1"; + } + } + !SPECIALOPERATIONS_ID ? await setPersonnelManagementAdd(params) : await setPersonnelManagementEdit(params); diff --git a/src/views/special_operations/personnel_management/forensicStatistics.vue b/src/views/special_operations/personnel_management/forensicStatistics.vue index 2b69cb2..fc4a10f 100644 --- a/src/views/special_operations/personnel_management/forensicStatistics.vue +++ b/src/views/special_operations/personnel_management/forensicStatistics.vue @@ -1,6 +1,27 @@