From ec3c0e8012bb8ffcfed43bf4dc552e1e6214c771 Mon Sep 17 00:00:00 2001
From: shj <1790240199@qq.com>
Date: Tue, 02 Aug 2022 15:06:07 +0800
Subject: [PATCH] 对接
---
src/components/equipmentDailog/DailogS.vue | 406 +++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 290 insertions(+), 116 deletions(-)
diff --git a/src/components/equipmentDailog/DailogS.vue b/src/components/equipmentDailog/DailogS.vue
index d33f516..5e33533 100644
--- a/src/components/equipmentDailog/DailogS.vue
+++ b/src/components/equipmentDailog/DailogS.vue
@@ -1,11 +1,11 @@
<template>
- <el-dialog :fullscreen="full" v-model="dialogVisible" title="新建仪器仪表" width="60%">
- <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
- <el-form :model="form" label-width="130px">
+ <el-dialog :fullscreen="full" v-model="dialogVisible" draggable :title="titles" width="60%">
+ <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
+ <el-form :model="form" label-width="130px" :disabled="disabled">
<el-row>
<el-col :span="11">
- <el-form-item label="类型/类别外键">
- <el-input v-model="form.name" placeholder="请选择">
+ <el-form-item label="类型/类别外键" size="default">
+ <el-input v-model="form.equipmentTypeId" placeholder="请选择">
<template #append>
<el-button :icon="Search" @click="opencategory"></el-button>
</template>
@@ -13,36 +13,36 @@
</el-form-item>
</el-col>
<el-col :span="11" :offset="2">
- <el-form-item label="装置/部位名称">
+ <el-form-item label="装置/部位名称" size="default">
<el-input v-model="form.name" placeholder="请选择" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="11">
- <el-form-item label="所属部门">
- <el-select v-model="form.region" placeholder="请选择" style="width: 100%">
+ <el-form-item label="所属部门" size="default">
+ <el-select v-model="form.departmentId" placeholder="请选择" style="width: 100%">
<el-option label="Zone one" value="shanghai" />
<el-option label="Zone two" value="beijing" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="11" :offset="2">
- <el-form-item label="具体位置">
- <el-input v-model="form.name" placeholder="请填写具体位置" />
+ <el-form-item label="具体位置" size="default">
+ <el-input v-model="form.position" placeholder="请填写具体位置" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="11">
- <el-form-item label="负责人姓名">
- <el-input v-model="form.name" placeholder="请填写负责人姓名" />
+ <el-form-item label="负责人姓名" size="default">
+ <el-input v-model="form.leadingPersonName" placeholder="请填写负责人姓名" />
</el-form-item>
</el-col>
<el-col :span="11" :offset="2">
- <el-form-item label="联系人">
- <el-input v-model="form.name" placeholder="请选择">
+ <el-form-item label="联系人" size="default">
+ <el-input v-model="form.connectPersonId" placeholder="请选择">
<template #append>
<el-button :icon="Search" @click="openUser"></el-button>
</template>
@@ -52,8 +52,8 @@
</el-row>
<el-row>
<el-col :span="11">
- <el-form-item label="录入人">
- <el-input v-model="form.name" placeholder="请选择">
+ <el-form-item label="录入人" size="default">
+ <el-input v-model="form.inputPersonId" placeholder="请选择">
<template #append>
<el-button :icon="Search" @click="openUser"></el-button>
</template>
@@ -61,8 +61,8 @@
</el-form-item>
</el-col>
<el-col :span="11" :offset="2">
- <el-form-item label="责任人">
- <el-input v-model="form.name" placeholder="请选择">
+ <el-form-item label="责任人" size="default">
+ <el-input v-model="form.responsibilityPersonId" placeholder="请选择">
<template #append>
<el-button :icon="Search" @click="openUser"></el-button>
</template>
@@ -72,23 +72,23 @@
</el-row>
<el-row>
<el-col :span="11">
- <el-form-item label="装置部位分类">
- <el-select v-model="form.region" placeholder="请选择" style="width: 100%">
+ <el-form-item label="装置部位分类" size="default">
+ <el-select v-model="form.partType" placeholder="请选择" style="width: 100%">
<el-option label="Zone one" value="shanghai" />
<el-option label="Zone two" value="beijing" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="11" :offset="2">
- <el-form-item label="检查周期">
- <el-input v-model="form.name" placeholder="请选择检查周期" />
+ <el-form-item label="检查周期" size="default">
+ <el-input v-model="form.checkCycle" placeholder="请选择检查周期" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="11">
- <el-form-item label="相关应急预案">
- <el-input v-model="form.name" placeholder="请选择">
+ <el-form-item label="相关应急预案" size="default">
+ <el-input v-model="form.emergencePlanId" placeholder="请选择">
<template #append>
<el-button :icon="Search" @click="openPlan"></el-button>
</template>
@@ -96,22 +96,22 @@
</el-form-item>
</el-col>
<el-col :span="11" :offset="2">
- <el-form-item label="主要危险有害因素">
- <el-input v-model="form.name" placeholder="请选择" />
+ <el-form-item label="主要危险有害因素" size="default">
+ <el-input v-model="form.dangerousElement" placeholder="请选择" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="11">
- <el-form-item label="易导致风险">
- <el-input v-model="form.name" placeholder="请选择易导致风险" />
+ <el-form-item label="易导致风险" size="default">
+ <el-input v-model="form.toDangerous" placeholder="请选择易导致风险" />
</el-form-item>
</el-col>
<el-col :span="11" :offset="2">
- <el-form-item label="应急处置措施">
- <el-input v-model="form.name" placeholder="请选择应急处置措施" />
+ <el-form-item label="应急处置措施" size="default">
+ <el-input v-model="form.treatment" placeholder="请选择应急处置措施" />
</el-form-item>
</el-col>
</el-row>
@@ -120,6 +120,7 @@
<el-col :span="24">
<el-form-item label="现场图片">
<el-upload
+ v-model="form.scenePic"
class="avatar-uploader"
action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
:show-file-list="false"
@@ -134,76 +135,77 @@
</el-row>
<el-row>
<el-col :span="11">
- <el-form-item label="备注信息"> <el-input v-model="form.name" placeholder="请选择应急处置措施" /> </el-form-item>
+ <el-form-item label="备注信息" size="default"> <el-input v-model="form.name" placeholder="请选择应急处置措施" /> </el-form-item>
</el-col>
</el-row>
</el-form>
<el-tabs v-model="activeName" class="demo-tabs">
<el-tab-pane label="设备保养" name="first">
- <el-button type="primary" @click="openMaintenance">新增</el-button>
- <el-table :data="tableData" style="width: 100%">
- <el-table-column align="center" prop="date" label="保养情况" />
- <el-table-column align="center" prop="name" label="保养负责人" />
- <el-table-column align="center" prop="address" label="保养日期" />
- <el-table-column align="center" prop="address" label="保养负责人单位" />
- <el-table-column align="center" prop="address" label="操作">
- <template #default>
- <el-button link type="primary" size="small">查看</el-button>
+ <el-button type="primary" size="default" @click="openMaintenance('新增', '')">新增</el-button>
+ <el-table :data="form.takecareDetailList" style="width: 100%">
+ <el-table-column align="center" prop="takecareMemo" label="保养情况" />
+ <el-table-column align="center" prop="leadingPersonId" label="保养负责人" />
+ <el-table-column align="center" prop="takecareDate" label="保养日期" />
+ <el-table-column align="center" prop="leadingPersonDepartmentId" label="保养负责人单位" />
+ <el-table-column align="center" label="操作">
+ <template #default="scope">
+ <el-button link type="primary" @click="openMaintenance('查看', scope.row)" size="small">查看</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="设备检测" name="second">
- <el-button type="primary" @click="openDetect">新增</el-button>
- <el-table :data="tableData" style="width: 100%">
- <el-table-column align="center" prop="date" label="检测人" />
- <el-table-column align="center" prop="name" label="检测日期" />
- <el-table-column align="center" prop="address" label="检测人单位" />
- <el-table-column align="center" prop="address" label="检测内容" />
- <el-table-column align="center" prop="address" label="检测结果" />
- <el-table-column align="center" prop="address" label="检测状态" />
- <el-table-column align="center" prop="address" label="操作">
+ <el-button type="primary" size="default" @click="openDetect">新增</el-button>
+ <el-table :data="form.testDetailList" style="width: 100%">
+ <el-table-column align="center" prop="testPersonId" label="检测人" />
+ <el-table-column align="center" prop="testDate" label="检测日期" />
+ <el-table-column align="center" prop="testPersonDepartmentId" label="检测人单位" />
+ <el-table-column align="center" prop="testMemo" label="检测内容" />
+ <el-table-column align="center" prop="testResult" label="检测结果" />
+ <el-table-column align="center" prop="testStatus" label="检测状态" />
+ <el-table-column align="center" label="操作">
<template #default>
- <el-button link type="primary" size="small">查看</el-button>
+ <el-button link type="primary" @click="openDetect('查看', scope.row)" size="small">查看</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="设备维修" name="third">
- <el-button type="primary" @click="openRepair">新增</el-button>
- <el-table :data="tableData" style="width: 100%">
- <el-table-column align="center" prop="date" label="设施异常项" />
- <el-table-column align="center" prop="name" label="维修状态" />
- <el-table-column align="center" prop="address" label="维修情况" />
- <el-table-column align="center" prop="address" label="维修负责人" />
- <el-table-column align="center" prop="address" label="维修负责人单位" />
- <el-table-column align="center" prop="address" label="维修开始日期" />
- <el-table-column align="center" prop="address" label="维修结束日期" />
- <el-table-column align="center" prop="address" label="操作">
- <template #default>
- <el-button link type="primary" size="small">查看</el-button>
+ <el-button type="primary" size="default" @click="openRepair">新增</el-button>
+ <el-table :data="form.repaireDetailList" style="width: 100%">
+ <el-table-column align="center" prop="exceptionInfo" label="设施异常项" />
+ <el-table-column align="center" prop="repairStatus" label="维修状态" />
+ <el-table-column align="center" prop="repairMemo" label="维修情况" />
+ <el-table-column align="center" prop="repairPersonId" label="维修负责人" />
+ <el-table-column align="center" prop="repairPersonDepartmentId" label="维修负责人单位" />
+ <el-table-column align="center" prop="repairStartDate" label="维修开始日期" />
+ <el-table-column align="center" prop="repairEndDate" label="维修结束日期" />
+ <el-table-column align="center" label="操作">
+ <template #default="scope">
+ <el-button link type="primary" @click="openRepair('查看', scope.row)" size="small">查看</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
- <el-tab-pane label="检查标准设置" name="fourth">
- <el-button type="primary" @click="openStandard">新增</el-button>
- <el-table :data="tableData" style="width: 100%">
- <el-table-column align="center" type="index" label="序号" width="75" />
- <el-table-column align="center" prop="name" label="检查内容" />
- <el-table-column align="center" prop="address" label="检查指标" />
- <el-table-column align="center" prop="address" label="单位" />
- <el-table-column align="center" prop="address" label="巡检部位" />
- <el-table-column align="center" prop="address" label="频次" />
- <el-table-column align="center" prop="address" label="操作">
- <template #default>
- <el-button link type="primary" size="small">查看</el-button>
+ <el-tab-pane label="检查标准设置" name="fourth"
+ >checkContent
+ <el-button type="primary" size="default" @click="openStandard">新增</el-button>
+ <el-table :data="form.checkStandardeDetailList" style="width: 100%">
+ <el-table-column align="center" type="indexNum" label="序号" width="75" />
+ <el-table-column align="center" prop="checkContent" label="检查内容" />
+ <el-table-column align="center" prop="checkTarget" label="检查指标" />
+ <el-table-column align="center" prop="unit" label="单位" />
+ <el-table-column align="center" prop="checkPart" label="巡检部位" />
+ <el-table-column align="center" prop="rate" label="频次" />
+ <el-table-column align="center" label="操作">
+ <template #default="scope">
+ <el-button link type="primary" @click="openStandard('查看', scope.row)" size="small">查看</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="巡检记录" name="five">
- <el-table :data="tableData" style="width: 100%">
+ <el-table :data="name" style="width: 100%">
<el-table-column align="center" type="selection" width="75" />
<el-table-column align="center" sortable prop="name" label="任务编号" />
<el-table-column align="center" sortable prop="address" label="任务名称" />
@@ -234,22 +236,22 @@
</el-tabs>
<template #footer>
<span class="dialog-footer">
- <el-button @click="dialogVisible = false">关闭</el-button>
- <el-button type="primary" @click="dialogVisible = false">确定</el-button>
+ <el-button @click="resetForm">关闭</el-button>
+ <el-button type="primary" @click="submitForm">确定</el-button>
</span>
</template>
</el-dialog>
<categoryDailog ref="categoryShow"></categoryDailog>
<planDailog ref="planShow"></planDailog>
<DailogSearchUser ref="UserShow"></DailogSearchUser>
- <maintenanceDailog ref="maintenanceShow"></maintenanceDailog>
- <detectDailog ref="detectShow"></detectDailog>
- <repairDailog ref="repairShow"></repairDailog>
- <standardDailog ref="standardShow"></standardDailog>
+ <maintenanceDailog ref="maintenanceShow" @onMain="main"></maintenanceDailog>
+ <detectDailog ref="detectShow" @onDelect="delect"></detectDailog>
+ <repairDailog ref="repairShow" @onRepair="Repair"></repairDailog>
+ <standardDailog ref="standardShow" @onStand="Stand"></standardDailog>
</template>
<script lang="ts">
-import { defineComponent, ref, reactive } from 'vue';
-import { Search,Plus,FullScreen } from '@element-plus/icons-vue';
+import { defineComponent, ref } from 'vue';
+import { Search, Plus, FullScreen } from '@element-plus/icons-vue';
import categoryDailog from './categoryDailog.vue';
import planDailog from './planDailog.vue';
import maintenanceDailog from './maintenanceDailog.vue';
@@ -259,26 +261,178 @@
import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
import { ElMessage, ElMessageBox } from 'element-plus';
import type { UploadProps, UploadUserFile } from 'element-plus';
+import { facilityManagementApi } from '/@/api/facilityManagement';
export default defineComponent({
components: { categoryDailog, planDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },
- setup() {
+ setup(props, { emit }) {
const dialogVisible = ref(false);
- const form = reactive({
- name: '',
- region: '',
- date1: '',
- date2: '',
- delivery: false,
- type: [],
- resource: '',
- desc: '',
+ const form = ref({
+ equipmentTypeId: '3',
+
+ treatment: '发生的',
+
+ inputPersonId: 0,
+
+ departmentId: 0,
+
+ delRepaireDetailList: [],
+
+ delTestDetailList: [],
+
+ takecareDetailList: [
+ {
+ leadingPersonDepartmentId: '',
+
+ takecareDate: '',
+
+ equipmentId: '',
+
+ leadingPersonId: '',
+
+ takecareMemo: '',
+ },
+ ],
+ checkDetailList: [],
+
+ responsibilityPersonId: 0,
+
+ delTakecareStardardeDetailList: [],
+
+ connectPersonId: 0,
+
+ scenePic: '',
+
+ partType: 0,
+
+ toDangerous: '份12',
+
+ dangerousElement: '',
+
+ takecareStardardeDetailList: [
+ {
+ filePath: '123',
+ },
+ ],
+ testDetailList: [
+ {
+ testMemo: '',
+
+ testPersonDepartmentId: 0,
+
+ testStatus: '',
+
+ testPersonId: 0,
+
+ testResult: 0,
+
+ testDate: 1658284314185 ,
+ },
+ ],
+ checkCycle: '',
+ repaireDetailList: [
+ {
+ repairStatus: 0,
+ repairPersonDepartmentId: 0,
+ repairMemo: '',
+ infoTpe: 0,
+ repairPersonId: 0,
+ repairEndDate: 1658284314184,
+ repairStartDate: 1658284314184,
+ exceptionInfo: '',
+ },
+ ],
+ delCheckStandardeDetailList: [],
+
+ leadingPersonName: '312',
+
+ name: '3123',
+
+ delTakecareDetailList: [],
+
+ position: '312',
+
+ emergencePlanId: 0,
+
+ checkStandardeDetailList: [
+ {
+ indexNum: '1',
+
+ checkTarget: '3',
+
+ checkPart: '5',
+
+ checkContent: '2',
+
+ unit: '4',
+
+ rate: '6',
+ },
+ ],
+ delCheckStandardeDetails: '1,2',
+
+ delTakecareStardardeDetails: '1,2',
+
+ delTakecareDetails: '1,2',
+
+ delRepaireDetails: '1,2',
+
+ delTestDetails: '1,2',
});
- const Dailogtype = ref(false);
- const openDailog = (type: boolean) => {
+ const titles = ref();
+ const disabled = ref(false);
+ const Dailogtype = ref(false);
+ const openDailog = (title: string, type: boolean, id: number, num: any) => {
dialogVisible.value = true;
Dailogtype.value = type;
+ if (num == 0) {
+ titles.value = `${title}仪表信息`;
+ } else if (num == 1) {
+ titles.value = `${title}设备设施`;
+ } else if (num == 2) {
+ titles.value = `${title}设备设施`;
+ }
+
+ disabled.value = title == '查看' ? true : false;
+ if (title == '查看' || title == '修改')
+ facilityManagementApi()
+ .getkeypointEquipmentInfoDetail(id)
+ .then((res) => {
+ if (res.data.code == 200) {
+ form.value = res.data.data;
+ } else {
+ ElMessage.error(res.data.msg);
+ }
+ });
};
+ // 提交
+ const submitForm = () => {
+ dialogVisible.value = false;
+ facilityManagementApi()
+ .getkeypointEquipmentInfoAddOrUpdate(form.value)
+ .then((res) => {
+ if (res.data.code == 200) {
+ ElMessage({
+ message: res.data.msg,
+ type: 'success',
+ });
+ emit('navAddorUpdata');
+ } else {
+ ElMessage.error(res.data.msg);
+ }
+ });
+ // form.value = null;
+ };
+ // 取消
+ const resetForm = () => {
+ dialogVisible.value = false;
+ };
const activeName = ref('first');
+
+ const categoryShow = ref();
+ const opencategory = () => {
+ categoryShow.value.openDailog();
+ };
+
const tableData = [
{
date: '2016-05-03',
@@ -301,10 +455,7 @@
address: 'No. 189, Grove St, Los Angeles',
},
];
- const categoryShow = ref();
- const opencategory = () => {
- categoryShow.value.openDailog();
- };
+
const planShow = ref();
const openPlan = () => {
planShow.value.openDailog();
@@ -314,20 +465,20 @@
UserShow.value.openDailog();
};
const maintenanceShow = ref();
- const openMaintenance = () => {
- maintenanceShow.value.openDailog();
+ const openMaintenance = (title: string, data: any) => {
+ maintenanceShow.value.openDailog(title, data);
};
const detectShow = ref();
- const openDetect = () => {
- detectShow.value.openDailog();
+ const openDetect = (title: string, data: any) => {
+ detectShow.value.openDailog(title, data);
};
const repairShow = ref();
- const openRepair = () => {
- repairShow.value.openDailog();
+ const openRepair = (title: string, data: any) => {
+ repairShow.value.openDailog(title, data);
};
const standardShow = ref();
- const openStandard = () => {
- standardShow.value.openDailog();
+ const openStandard = (title: string, data: any) => {
+ standardShow.value.openDailog(title, data);
};
// 上传
const fileList = ref<UploadUserFile[]>([
@@ -359,6 +510,20 @@
() => false
);
};
+ // 回传
+ const main = (val: any) => {
+ form.value.takecareDetailList.push(val);
+ };
+ const delect = (val: any) => {
+ form.value.testDetailList.push(val);
+ };
+ const Repair= (val:any)=>{
+ form.value.repaireDetailList.push(val);
+ }
+ const Stand=(val:any)=>{
+ form.value.checkStandardeDetailList.push(val);
+ }
+
//图片提交
const imageUrl = ref('');
@@ -376,21 +541,27 @@
}
return true;
};
- //全屏
+
+ //全屏
const full = ref(false);
const toggleFullscreen = () => {
if (full.value == false) {
full.value = true;
- }else{
- full.value = false;
- }
+ } else {
+ full.value = false;
+ }
};
return {
+ submitForm,
dialogVisible,
Dailogtype,
form,
openDailog,
Search,
+ main,
+ delect,
+ Repair,
+ Stand,
activeName,
tableData,
categoryShow,
@@ -411,22 +582,25 @@
handleRemove,
handlePreview,
handleExceed,
+ disabled,
+ titles,
beforeRemove,
imageUrl,
handleAvatarSuccess,
beforeAvatarUpload,
Plus,
- full,
+ full,
toggleFullscreen,
FullScreen,
+ resetForm,
};
},
});
</script>
<style scoped>
- .el-row{
- padding: 0 0 20px 0;
- }
+.el-row {
+ padding: 0 0 20px 0;
+}
.avatar-uploader .avatar {
width: 178px;
height: 178px;
@@ -434,7 +608,7 @@
}
</style>
<style>
- .avatar-uploader .el-upload {
+.avatar-uploader .el-upload {
border: 1px dashed var(--el-border-color);
border-radius: 6px;
cursor: pointer;
--
Gitblit v1.9.2