修改粉尘模块bug

dev
853931625@qq.com 2025-10-17 17:41:54 +08:00
parent 9c4f408256
commit 925d219e35
6 changed files with 128 additions and 91 deletions

View File

@ -50,12 +50,12 @@
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="处置图片" prop="DISPOSAL_FILE">
<el-form-item label="处置图片" prop="FFILE">
<layout-upload
v-model:file-list="form.DISPOSAL_FILE"
v-model:file-list="form.FFILE"
accept=".jpg,.jpeg,.png"
list-type="picture-card"
:limit="99"
:limit="1"
delete-to-server
/>
</el-form-item>
@ -99,9 +99,7 @@ const rules = {
DISPOSAL_RESULT: [
{ required: true, message: "请选择处置结果", trigger: "blur" },
],
DISPOSAL_FILE: [
{ required: true, message: "请上传处置图片", trigger: "change" },
],
FFILE: [{ required: true, message: "请上传处置图片", trigger: "change" }],
};
const formRef = ref(null);
@ -120,11 +118,11 @@ const fnSubmit = debounce(
formData.append(key, form.value[key]);
});
formData.delete("DISPOSAL_FILE");
formData.delete("FFILE");
for (let i = 0; i < form.value.DISPOSAL_FILE.length; i++) {
if (form.value.DISPOSAL_FILE[i].raw)
formData.append("DISPOSAL_FILE", form.value.DISPOSAL_FILE[i].raw);
for (let i = 0; i < form.value.FFILE.length; i++) {
if (form.value.FFILE[i].raw)
formData.append("FFILE", form.value.FFILE[i].raw);
}
await dustAlarmReDisposal(formData);

View File

@ -9,21 +9,27 @@
<el-row>
<el-col :span="6">
<el-form-item
label="设备类型"
prop="DEVICE_TYPE"
label="传感器名称"
prop="SENSOR_NAME"
label-width="100px"
>
<el-select
v-model="searchForm.DEVICE_TYPE"
placeholder="请选择设备类型"
>
<el-option
v-for="item in declarationGradeList"
:key="item.BIANMA"
:label="item.NAME"
:value="item.BIANMA"
/>
</el-select>
<el-input
v-model="searchForm.SENSOR_NAME"
placeholder="请输入传感器名称"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="报警时间" prop="dates" >
<el-date-picker
v-model="searchForm.dates"
type="daterange"
start-placeholder="开始时间"
end-placeholder="结束时间"
value-format="YYYY-MM-DD"
format="YYYY-MM-DD"
range-separator="至"
/>
</el-form-item>
</el-col>
@ -102,14 +108,21 @@ import {
} from "@/request/dust_clean_management";
import useListData from "@/assets/js/useListData.js";
import { layoutFnDustDeviceOrdinaryType } from "@/assets/js/data_dictionary";
import alarmDisposal from "./components/alarm_disposal.vue";
import { formatUTCDate } from "@/assets/js/utils.js";
const declarationGradeList = await layoutFnDustDeviceOrdinaryType();
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
useListData(dustAlarmRecordDisposalPagePage, {});
useListData(dustAlarmRecordDisposalPagePage, {
beforeGetData: (searchForm) =>
searchForm.dates?.[0]
? {
START_DATE: searchForm.dates?.[0] + " 00:00:00",
END_DATE: searchForm.dates?.[1] + " 23:59:59",
}
: {},
});
const alarmDisposalDialog = ref({
visible: false,

View File

@ -69,6 +69,15 @@
<el-descriptions-item label="处置时间">
{{ form.PROCESSING_TIME.split(".")[0] }}
</el-descriptions-item>
<el-descriptions-item label="处置图片">
<img
:src="VITE_FILE_URL + form.DISPOSAL_FILE"
alt=""
width="100"
height="100"
class="ml-10"
/>
</el-descriptions-item>
</el-descriptions>
<template #footer>
@ -79,8 +88,8 @@
<script setup>
import { useVModels } from "@vueuse/core";
import { dustAlarmRecordDetail } from "@/request/dust_clean_management";
// import { dustAlarmRecordDetail } from "@/request/dust_clean_management";
const VITE_FILE_URL = import.meta.env.VITE_FILE_URL;
const props = defineProps({
visible: {
type: Boolean,
@ -96,15 +105,15 @@ const props = defineProps({
const emits = defineEmits(["update:visible", "update:form", "get-data"]);
const { visible, form } = useVModels(props, emits);
const fnDustAlarmRecorData = async () => {
const formData = new FormData();
formData.append('ALARM_RECORD_ID', form.value.ALARM_RECORD_ID);
dustAlarmRecordDetail(formData).then((res) => {
console.log(res);
});
};
// const fnDustAlarmRecorData = async () => {
// const formData = new FormData();
// formData.append("ALARM_RECORD_ID", form.value.ALARM_RECORD_ID);
// dustAlarmRecordDetail(formData).then((res) => {
// console.log(res);
// });
// };
fnDustAlarmRecorData();
// fnDustAlarmRecorData();
const fnClose = () => {
visible.value = false;

View File

@ -9,21 +9,27 @@
<el-row>
<el-col :span="6">
<el-form-item
label="设备类型"
prop="DEVICE_TYPE"
label="传感器名称"
prop="SENSOR_NAME"
label-width="100px"
>
<el-select
v-model="searchForm.DEVICE_TYPE"
placeholder="请选择设备类型"
>
<el-option
v-for="item in declarationGradeList"
:key="item.BIANMA"
:label="item.NAME"
:value="item.BIANMA"
/>
</el-select>
<el-input
v-model="searchForm.SENSOR_NAME"
placeholder="请输入传感器名称"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="报警时间" prop="dates" >
<el-date-picker
v-model="searchForm.dates"
type="daterange"
start-placeholder="开始时间"
end-placeholder="结束时间"
value-format="YYYY-MM-DD"
format="YYYY-MM-DD"
range-separator="至"
/>
</el-form-item>
</el-col>
@ -79,7 +85,6 @@
}}
</template>
</el-table-column>
<el-table-column label="报警时间" prop="TRIGGERED_TIME" width="150" />
<el-table-column label="值班长" prop="SHIFT_LEADER_USER_NAME" />
<el-table-column label="发现人员" prop="DISCOVERER_USER_NAME" />
<el-table-column label="核实人员" prop="VERIFIED_USER_NAME" />
@ -89,11 +94,6 @@
{{ row.IS_DISPOSE === 0 ? "否" : row.IS_DISPOSE === 1 ? "是" : "" }}
</template>
</el-table-column>
<el-table-column
label="报警原因"
prop="TRIGGER_REASON"
show-overflow-tooltip
/>
<el-table-column
label="处置措施"
prop="DISPOSAL_MEASURES"
@ -133,12 +133,18 @@ import { ref } from "vue";
import { serialNumber } from "@/assets/js/utils";
import { dustAlarmRecordPage } from "@/request/dust_clean_management";
import useListData from "@/assets/js/useListData.js";
import { layoutFnDustDeviceOrdinaryType } from "@/assets/js/data_dictionary";
import alarmView from "./components/view.vue";
const declarationGradeList = await layoutFnDustDeviceOrdinaryType();
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
useListData(dustAlarmRecordPage, {});
useListData(dustAlarmRecordPage, {
beforeGetData: (searchForm) =>
searchForm.dates?.[0]
? {
START_DATE: searchForm.dates?.[0] + " 00:00:00",
END_DATE: searchForm.dates?.[1] + " 23:59:59",
}
: {},
});
const alarmViewDialog = ref({
visible: false,

View File

@ -9,21 +9,27 @@
<el-row>
<el-col :span="6">
<el-form-item
label="设备类型"
prop="DEVICE_TYPE"
label="传感器名称"
prop="SENSOR_NAME"
label-width="100px"
>
<el-select
v-model="searchForm.DEVICE_TYPE"
placeholder="请选择设备类型"
>
<el-option
v-for="item in declarationGradeList"
:key="item.BIANMA"
:label="item.NAME"
:value="item.BIANMA"
/>
</el-select>
<el-input
v-model="searchForm.SENSOR_NAME"
placeholder="请输入传感器名称"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="报警时间" prop="dates" >
<el-date-picker
v-model="searchForm.dates"
type="daterange"
start-placeholder="开始时间"
end-placeholder="结束时间"
value-format="YYYY-MM-DD"
format="YYYY-MM-DD"
range-separator="至"
/>
</el-form-item>
</el-col>
@ -103,14 +109,19 @@ import {
} from "@/request/dust_clean_management";
import useListData from "@/assets/js/useListData.js";
import { layoutFnDustDeviceOrdinaryType } from "@/assets/js/data_dictionary";
import alarmConfirm from "./components/alarm_confirm.vue";
import { formatUTCDate } from "@/assets/js/utils.js";
const declarationGradeList = await layoutFnDustDeviceOrdinaryType();
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
useListData(dustAlarmRecordConfirmationPage, {});
useListData(dustAlarmRecordConfirmationPage, {
beforeGetData: (searchForm) =>
searchForm.dates?.[0]
? {
START_DATE: searchForm.dates?.[0] + " 00:00:00",
END_DATE: searchForm.dates?.[1] + " 23:59:59",
}
: {},
});
const alarmConfirmDialog = ref({
visible: false,

View File

@ -13,7 +13,7 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="设备类型" prop="DEVICE_TYPE" >
<el-form-item label="设备类型" prop="DEVICE_TYPE">
<el-select v-model="form.DEVICE_TYPE" @change="fnDevice">
<el-option
v-for="item in dustDeviceOrdinaryList"
@ -129,21 +129,6 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="关联的传感器信号类型"
prop="ASSOCIATED_SENSOR_TYPE"
>
<el-select v-model="form.ASSOCIATED_SENSOR_TYPE">
<el-option
v-for="item in installationAreaStatus"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="关联条件" prop="ASSOCIATED_CONDITION">
<el-select v-model="form.ASSOCIATED_CONDITION">
@ -156,6 +141,21 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="12" v-if="form.ASSOCIATED_CONDITION === '1'">
<el-form-item
label="关联的传感器信号类型"
prop="ASSOCIATED_SENSOR_TYPE"
>
<el-select v-model="form.ASSOCIATED_SENSOR_TYPE">
<el-option
v-for="item in declarationGradeList"
:key="item.BIANMA"
:label="item.NAME"
:value="item.BIANMA"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="是否启用" prop="IS_ACTIVE">