2024-2-28 设备模块故障信息格式修改+故障报修图片展示优化

master
A0010407 1 year ago
parent e5b8733b22
commit 6548a2d8bc

@ -1,20 +1,18 @@
<template> <template>
<el-tabs type="border-card"> <el-tabs type="border-card">
<el-tab-pane label="故障类型" > <el-tab-pane label="故障类型">
<ItemFaultType></ItemFaultType> <ItemFaultType></ItemFaultType>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="故障描述" > <el-tab-pane label="故障描述">
<ItemFaultDescription></ItemFaultDescription> <ItemFaultDescription></ItemFaultDescription>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="故障原因" > <el-tab-pane label="故障原因">
<ItemFaultReason></ItemFaultReason> <ItemFaultReason></ItemFaultReason>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="维修措施" > <el-tab-pane label="维修措施">
<ItemFaultMeasures></ItemFaultMeasures> <ItemFaultMeasures></ItemFaultMeasures>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</template> </template>
<script> <script>
@ -24,89 +22,92 @@ import ItemFaultDescription from "./itemFaultDescription.vue";
import ItemFaultMeasures from "./itemFaultMeasures.vue"; import ItemFaultMeasures from "./itemFaultMeasures.vue";
export default { export default {
name: "FaultInformation", name: "FaultInformation",
components: { ItemFaultType , ItemFaultReason , ItemFaultDescription , ItemFaultMeasures }, components: {
data() { ItemFaultType,
return { ItemFaultReason,
ItemFaultDescription,
ItemFaultMeasures,
},
data() {
return {
// //
pickerOptions: { pickerOptions: {
shortcuts: [{ shortcuts: [
text: '最近一周', {
onClick(picker) { text: "最近一周",
const end = new Date(); onClick(picker) {
const start = new Date(); const end = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); const start = new Date();
picker.$emit('pick', [start, end]); start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
} picker.$emit("pick", [start, end]);
}, { },
text: '最近一个月', },
onClick(picker) { {
const end = new Date(); text: "最近一个月",
const start = new Date(); onClick(picker) {
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); const end = new Date();
picker.$emit('pick', [start, end]); const start = new Date();
} start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
}, { picker.$emit("pick", [start, end]);
text: '最近三个月', },
onClick(picker) { },
const end = new Date(); {
const start = new Date(); text: "最近三个月",
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); onClick(picker) {
picker.$emit('pick', [start, end]); const end = new Date();
} const start = new Date();
}] start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
}, },
// //
loading: true, loading: true,
// //
ids: [], ids: [],
// //
single: true, single: true,
// //
multiple: true, multiple: true,
// //
showSearch: true, showSearch: true,
// //
total: 0, total: 0,
// //
faultTypeList: [], faultTypeList: [],
// //
title: "", title: "",
// //
open: false, open: false,
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
faultCode: null, faultCode: null,
faultType: null, faultType: null,
faultSubclass: null, faultSubclass: null,
faultRemark: null, faultRemark: null,
factoryCode: null, factoryCode: null,
attr1: null, attr1: null,
attr2: null, attr2: null,
attr3: null, attr3: null,
delFlag: null, delFlag: null,
createBy: null, createBy: null,
createTime: null, createTime: null,
updateBy: null, updateBy: null,
updateTime: null, updateTime: null,
createTimeArray: [], createTimeArray: [],
updateTimeArray: [], updateTimeArray: [],
}, },
// //
form: {}, form: {},
// //
rules: { rules: {},
} };
}; },
}, created() {},
created() { methods: {},
},
methods: {
}
}; };
</script> </script>

@ -1,16 +1,27 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="98px"> <el-form
<el-form-item label-width="100px" label="故障描述编码" prop="faultCode"> :model="queryParams"
<el-input ref="queryForm"
v-model="queryParams.faultCode" size="small"
placeholder="请输入故障描述编码" :inline="true"
clearable v-show="showSearch"
@keyup.enter.native="handleQuery" label-width="98px"
/> >
</el-form-item> <el-form-item label-width="100px" label="故障描述编码" prop="faultCode">
<el-input
v-model="queryParams.faultCode"
placeholder="请输入故障描述编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="故障描述类型" prop="faultType"> <el-form-item label="故障描述类型" prop="faultType">
<el-select v-model="queryParams.faultType" placeholder="请选择故障描述类型" clearable> <el-select
v-model="queryParams.faultType"
placeholder="请选择故障描述类型"
clearable
>
<el-option <el-option
v-for="dict in dict.type.device_fault_type" v-for="dict in dict.type.device_fault_type"
:key="dict.value" :key="dict.value"
@ -19,14 +30,14 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="故障描述" prop="faultSubclass"> <el-form-item label="故障描述" prop="faultSubclass">
<el-input <el-input
v-model="queryParams.faultSubclass" v-model="queryParams.faultSubclass"
placeholder="请输入故障描述" placeholder="请输入故障描述"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="创建人" prop="createBy"> <el-form-item label="创建人" prop="createBy">
<el-input <el-input
class="my-select-input" class="my-select-input"
@ -46,7 +57,8 @@
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:picker-options="pickerOptions"> :picker-options="pickerOptions"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="更新人" prop="updateBy"> <el-form-item label="更新人" prop="updateBy">
@ -68,121 +80,211 @@
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:picker-options="pickerOptions"> :picker-options="pickerOptions"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button> <el-button
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button> type="primary"
</el-form-item> icon="el-icon-search"
</el-form> size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
plain plain
icon="el-icon-plus" icon="el-icon-plus"
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['device:faultDescription:add']" v-hasPermi="['device:faultDescription:add']"
>新增</el-button> >新增</el-button
</el-col> >
<el-col :span="1.5"> </el-col>
<el-button <el-col :span="1.5">
type="success" <el-button
plain type="success"
icon="el-icon-edit" plain
size="mini" icon="el-icon-edit"
:disabled="single" size="mini"
@click="handleUpdate" :disabled="single"
v-hasPermi="['device:faultDescription:edit']" @click="handleUpdate"
>修改</el-button> v-hasPermi="['device:faultDescription:edit']"
</el-col> >修改</el-button
<el-col :span="1.5"> >
<el-button </el-col>
type="danger" <el-col :span="1.5">
plain <el-button
icon="el-icon-delete" type="danger"
size="mini" plain
:disabled="multiple" icon="el-icon-delete"
@click="handleDelete" size="mini"
v-hasPermi="['device:faultDescriptionn:remove']" :disabled="multiple"
>删除</el-button> @click="handleDelete"
</el-col> v-hasPermi="['device:faultDescriptionn:remove']"
<el-col :span="1.5"> >删除</el-button
<el-button >
type="warning" </el-col>
plain <el-col :span="1.5">
icon="el-icon-download" <el-button
size="mini" type="warning"
@click="handleExport" plain
v-hasPermi="['device:faultDescription:export']" icon="el-icon-download"
>导出</el-button> size="mini"
</el-col> @click="handleExport"
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> v-hasPermi="['device:faultDescription:export']"
</el-row> >导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="faultList" @selection-change="handleSelectionChange"> <el-table
<el-table-column type="selection" width="55" align="center" /> v-loading="loading"
<el-table-column width="60" align="center" label="序号" type="index"></el-table-column> :data="faultList"
<el-table-column v-if="false" label="主键" align="center" prop="faultId" /> @selection-change="handleSelectionChange"
<el-table-column width="150" label="故障描述编码" align="center" prop="faultCode" /> >
<el-table-column width="150" label="故障描述类型" align="center" prop="faultType" > <el-table-column type="selection" width="55" align="center" />
<el-table-column
width="60"
align="center"
label="序号"
type="index"
></el-table-column>
<el-table-column
v-if="false"
label="主键"
align="center"
prop="faultId"
/>
<el-table-column
width="150"
label="故障描述编码"
align="center"
prop="faultCode"
/>
<el-table-column
width="150"
label="故障描述类型"
align="center"
prop="faultType"
>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.device_fault_type" :value="scope.row.faultType"/> <dict-tag
:options="dict.type.device_fault_type"
:value="scope.row.faultType"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column width="150" label="故障描述" align="center" prop="faultSubclass" /> <el-table-column
<el-table-column width="180" label="备注" align="center" prop="faultRemark" /> width="150"
<el-table-column width="100" label="创建人" align="center" prop="createBy" /> label="故障描述"
<el-table-column width="180" label="创建时间" align="center" prop="createTime"> align="center"
<template slot-scope="scope"> prop="faultSubclass"
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span> />
</template> <el-table-column
</el-table-column> width="180"
<el-table-column width="100" label="更新人" align="center" prop="updateBy" /> label="备注"
<el-table-column width="180" label="更新时间" align="center" prop="updateTime"> align="center"
<template slot-scope="scope"> prop="faultRemark"
<span>{{ parseTime(scope.row.updateTime, '{y}-{m}-{d}') }}</span> />
</template> <el-table-column
</el-table-column> width="100"
<el-table-column width="180" label="操作" align="center" class-name="small-padding fixed-width" fixed="right"> label="创建人"
<template slot-scope="scope"> align="center"
<el-button prop="createBy"
size="mini" />
type="text" <el-table-column
icon="el-icon-edit" width="180"
@click="handleUpdate(scope.row)" label="创建时间"
v-hasPermi="['device:faultDescription:edit']" align="center"
>修改</el-button> prop="createTime"
<el-button >
size="mini" <template slot-scope="scope">
type="text" <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
icon="el-icon-delete" </template>
@click="handleDelete(scope.row)" </el-table-column>
v-hasPermi="['device:faultDescription:remove']" <el-table-column
>删除</el-button> width="100"
</template> label="更新人"
</el-table-column> align="center"
</el-table> prop="updateBy"
/>
<el-table-column
width="180"
label="更新时间"
align="center"
prop="updateTime"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.updateTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column
width="180"
label="操作"
align="center"
class-name="small-padding fixed-width"
fixed="right"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['device:faultDescription:edit']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['device:faultDescription:remove']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<pagination <pagination
v-show="total>0" v-show="total > 0"
:total="total" :total="total"
:page.sync="queryParams.pageNum" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改故障描述维护对话框 --> <!-- 添加或修改故障描述维护对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item v-if="false" label="故障描述编码" prop="faultCode"> <el-form-item v-if="false" label="故障描述编码" prop="faultCode">
<el-input v-model="form.faultCode" placeholder="请输入故障描述编码" style="width: 300px"/> <el-input
</el-form-item> v-model="form.faultCode"
placeholder="请输入故障描述编码"
style="width: 300px"
/>
</el-form-item>
<el-form-item label="故障描述" prop="faultType"> <el-form-item label="故障描述" prop="faultType">
<el-select v-model="form.faultType" placeholder="请选择故障描述" clearable style="width: 300px"> <el-select
v-model="form.faultType"
placeholder="请选择故障描述"
clearable
style="width: 300px"
>
<el-option <el-option
v-for="dict in dict.type.device_fault_type" v-for="dict in dict.type.device_fault_type"
:key="dict.value" :key="dict.value"
@ -191,234 +293,251 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="故障子类" prop="faultSubclass"> <el-form-item label="故障子类" prop="faultSubclass">
<el-input v-model="form.faultSubclass" placeholder="请输入故障子类" style="width: 300px"/> <el-input
</el-form-item> v-model="form.faultSubclass"
<el-form-item label="备注" prop="faultRemark"> placeholder="请输入故障子类"
<el-input v-model="form.faultRemark" placeholder="请输入备注" style="width: 300px"/> style="width: 300px"
</el-form-item> />
<el-form-item v-if="false" label="工厂编码" prop="factoryCode"> </el-form-item>
<el-input v-model="form.factoryCode" placeholder="请输入工厂编码" /> <el-form-item label="备注" prop="faultRemark">
</el-form-item> <el-input
<el-form-item v-if="false" label="备用字段1" prop="attr1"> v-model="form.faultRemark"
<el-input v-model="form.attr1" placeholder="请输入备用字段1" /> placeholder="请输入备注"
</el-form-item> style="width: 300px"
<el-form-item v-if="false" label="备用字段2" prop="attr2"> />
<el-input v-model="form.attr2" placeholder="请输入备用字段2" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="工厂编码" prop="factoryCode">
<el-form-item v-if="false" label="备用字段3" prop="attr3"> <el-input v-model="form.factoryCode" placeholder="请输入工厂编码" />
<el-input v-model="form.attr3" placeholder="请输入备用字段3" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="备用字段1" prop="attr1">
<el-form-item v-if="false" label="删除标志" prop="delFlag"> <el-input v-model="form.attr1" placeholder="请输入备用字段1" />
<el-input v-model="form.delFlag" placeholder="请输入删除标志" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="备用字段2" prop="attr2">
</el-form> <el-input v-model="form.attr2" placeholder="请输入备用字段2" />
<div slot="footer" class="dialog-footer"> </el-form-item>
<el-button type="primary" @click="submitForm"> </el-button> <el-form-item v-if="false" label="备用字段3" prop="attr3">
<el-button @click="cancel"> </el-button> <el-input v-model="form.attr3" placeholder="请输入备用字段3" />
</div> </el-form-item>
</el-dialog> <el-form-item v-if="false" label="删除标志" prop="delFlag">
</div> <el-input v-model="form.delFlag" placeholder="请输入删除标志" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template> </template>
<script> <script>
import { listFaultDescription, getFaultDescription, delFaultDescription, addFaultDescription, updateFaultDescription } from "@/api/device/faultDescription"; import {
listFaultDescription,
getFaultDescription,
delFaultDescription,
addFaultDescription,
updateFaultDescription,
} from "@/api/device/faultDescription";
export default { export default {
name: "FaultType", name: "FaultType",
dicts: ['device_fault_description'], dicts: ["device_fault_description"],
data() { data() {
return { return {
// //
faultCategory : null, faultCategory: null,
// //
pickerOptions: { pickerOptions: {
shortcuts: [{ shortcuts: [
text: '最近一周', {
onClick(picker) { text: "最近一周",
const end = new Date(); onClick(picker) {
const start = new Date(); const end = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); const start = new Date();
picker.$emit('pick', [start, end]); start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
} picker.$emit("pick", [start, end]);
}, { },
text: '最近一个月', },
onClick(picker) { {
const end = new Date(); text: "最近一个月",
const start = new Date(); onClick(picker) {
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); const end = new Date();
picker.$emit('pick', [start, end]); const start = new Date();
} start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
}, { picker.$emit("pick", [start, end]);
text: '最近三个月', },
onClick(picker) { },
const end = new Date(); {
const start = new Date(); text: "最近三个月",
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); onClick(picker) {
picker.$emit('pick', [start, end]); const end = new Date();
} const start = new Date();
}] start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
}, },
// //
loading: true, loading: true,
// //
ids: [], ids: [],
// //
single: true, single: true,
// //
multiple: true, multiple: true,
// //
showSearch: true, showSearch: true,
// //
total: 0, total: 0,
// //
faultList: [], faultList: [],
// //
title: "", title: "",
// //
open: false, open: false,
// //
queryParams: { queryParams: {
// //
faultCategory: null, faultCategory: null,
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
faultCode: null, faultCode: null,
faultType: null, faultType: null,
faultSubclass: null, faultSubclass: null,
faultRemark: null, faultRemark: null,
factoryCode: null, factoryCode: null,
attr1: null, attr1: null,
attr2: null, attr2: null,
attr3: null, attr3: null,
delFlag: null, delFlag: null,
createBy: null, createBy: null,
createTime: null, createTime: null,
updateBy: null, updateBy: null,
updateTime: null, updateTime: null,
createTimeArray: [], createTimeArray: [],
updateTimeArray: [], updateTimeArray: [],
}, },
// //
form: {}, form: {},
// //
rules: { rules: {},
} };
}; },
}, created() {
created() { this.getList();
this.getList(); },
}, methods: {
methods: { /** 查询故障描述维护列表 */
/** 查询故障描述维护列表 */ getList() {
getList() { this.loading = true;
this.loading = true; this.queryParams.faultCategory = "des";
this.queryParams.faultCategory = "des"; listFaultDescription(this.queryParams).then((response) => {
listFaultDescription(this.queryParams).then(response => { this.faultList = response.rows;
this.faultList = response.rows; this.total = response.total;
this.total = response.total; this.loading = false;
this.loading = false; });
}); },
}, //
// cancel() {
cancel() { this.open = false;
this.open = false; this.reset();
this.reset(); },
}, //
// reset() {
reset() { this.form = {
this.form = { faultId: null,
faultId: null, faultCode: null,
faultCode: null, faultType: null,
faultType: null, faultSubclass: null,
faultSubclass: null, faultRemark: null,
faultRemark: null, factoryCode: null,
factoryCode: null, attr1: null,
attr1: null, attr2: null,
attr2: null, attr3: null,
attr3: null, delFlag: null,
delFlag: null, createBy: null,
createBy: null, createTime: null,
createTime: null, updateBy: null,
updateBy: null, updateTime: null,
updateTime: null };
}; this.resetForm("form");
this.resetForm("form"); },
}, /** 搜索按钮操作 */
/** 搜索按钮操作 */ handleQuery() {
handleQuery() { this.queryParams.pageNum = 1;
this.queryParams.pageNum = 1; this.getList();
this.getList(); },
}, /** 重置按钮操作 */
/** 重置按钮操作 */ resetQuery() {
resetQuery() { this.resetForm("queryForm");
this.resetForm("queryForm");
// //
this.queryParams.createTimeArray = []; this.queryParams.createTimeArray = [];
this.queryParams.updateTimeArray = []; this.queryParams.updateTimeArray = [];
this.handleQuery(); this.handleQuery();
}, },
// //
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.faultId) this.ids = selection.map((item) => item.faultId);
this.single = selection.length!==1 this.single = selection.length !== 1;
this.multiple = !selection.length this.multiple = !selection.length;
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
this.reset(); this.reset();
this.open = true; this.open = true;
this.title = "添加故障描述维护"; this.title = "添加故障描述维护";
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row) {
this.reset(); this.reset();
const faultId = row.faultId || this.ids const faultId = row.faultId || this.ids;
getFaultDescription(faultId).then(response => { getFaultDescription(faultId).then((response) => {
this.form = response.data; this.form = response.data;
this.open = true; this.open = true;
this.title = "修改故障描述维护"; this.title = "修改故障描述维护";
}); });
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.$refs["form"].validate(valid => { this.$refs["form"].validate((valid) => {
if (valid) { if (valid) {
if (this.form.faultId != null) { if (this.form.faultId != null) {
updateFaultDescription(this.form).then(response => { updateFaultDescription(this.form).then((response) => {
if (response.code != 500) { if (response.code != 500) {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.open = false; this.open = false;
this.getList(); this.getList();
} }
}); });
} else { } else {
addFaultDescription(this.form).then(response => { addFaultDescription(this.form).then((response) => {
if (response.code != 500) { if (response.code != 500) {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.open = false; this.open = false;
this.getList(); this.getList();
} }
}); });
} }
} }
}); });
}, },
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const faultIds = row.faultId || this.ids; const faultIds = row.faultId || this.ids;
var faultCodes = ''; var faultCodes = "";
// //
for (let i = 0; i < this.faultList.length; i++) { for (let i = 0; i < this.faultList.length; i++) {
for (let j = 0; j < faultIds.length; j++) { for (let j = 0; j < faultIds.length; j++) {
if (faultIds[j] == this.faultList[i].faultId) { if (faultIds[j] == this.faultList[i].faultId) {
faultCodes = faultCodes + this.faultList[i].faultCode + ','; faultCodes = faultCodes + this.faultList[i].faultCode + ",";
} }
} }
} }
if (faultCodes == '') { if (faultCodes == "") {
for (let i = 0; i < this.faultList.length; i++) { for (let i = 0; i < this.faultList.length; i++) {
if (faultIds == this.faultList[i].faultId) { if (faultIds == this.faultList[i].faultId) {
faultCodes = this.faultList[i].faultCode; faultCodes = this.faultList[i].faultCode;
@ -426,19 +545,27 @@ export default {
} }
} }
this.$modal.confirm('是否确认删除故障描述维护编号为"' + faultCodes + '"的数据项?').then(function() { this.$modal
return delFaultDescription(faultIds); .confirm('是否确认删除故障描述维护编号为"' + faultCodes + '"的数据项?')
}).then(() => { .then(function () {
this.getList(); return delFaultDescription(faultIds);
this.$modal.msgSuccess("删除成功"); })
}).catch(() => {}); .then(() => {
}, this.getList();
/** 导出按钮操作 */ this.$modal.msgSuccess("删除成功");
handleExport() { })
this.download('device/faultDescription/export', { .catch(() => {});
...this.queryParams },
}, `faultType_${new Date().getTime()}.xlsx`) /** 导出按钮操作 */
} handleExport() {
} this.download(
"device/faultDescription/export",
{
...this.queryParams,
},
`faultType_${new Date().getTime()}.xlsx`
);
},
},
}; };
</script> </script>

@ -1,16 +1,27 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="98px"> <el-form
<el-form-item label-width="100px" label="故障措施编码" prop="faultCode"> :model="queryParams"
<el-input ref="queryForm"
v-model="queryParams.faultCode" size="small"
placeholder="请输入故障措施编码" :inline="true"
clearable v-show="showSearch"
@keyup.enter.native="handleQuery" label-width="98px"
/> >
</el-form-item> <el-form-item label-width="100px" label="故障措施编码" prop="faultCode">
<el-input
v-model="queryParams.faultCode"
placeholder="请输入故障措施编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="故障措施类型" prop="faultType"> <el-form-item label="故障措施类型" prop="faultType">
<el-select v-model="queryParams.faultType" placeholder="请选择故障措施类型" clearable> <el-select
v-model="queryParams.faultType"
placeholder="请选择故障措施类型"
clearable
>
<el-option <el-option
v-for="dict in dict.type.device_fault_measures" v-for="dict in dict.type.device_fault_measures"
:key="dict.value" :key="dict.value"
@ -19,14 +30,14 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="故障措施" prop="faultSubclass"> <el-form-item label="故障措施" prop="faultSubclass">
<el-input <el-input
v-model="queryParams.faultSubclass" v-model="queryParams.faultSubclass"
placeholder="请输入故障措施" placeholder="请输入故障措施"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="更新人" prop="updateBy"> <el-form-item label="更新人" prop="updateBy">
<el-input <el-input
class="my-select-input" class="my-select-input"
@ -46,7 +57,8 @@
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:picker-options="pickerOptions"> :picker-options="pickerOptions"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="更新时间" prop="updateTime"> <el-form-item label="更新时间" prop="updateTime">
@ -59,121 +71,211 @@
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:picker-options="pickerOptions"> :picker-options="pickerOptions"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button> <el-button
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button> type="primary"
</el-form-item> icon="el-icon-search"
</el-form> size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
plain plain
icon="el-icon-plus" icon="el-icon-plus"
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['device:faultMeasures:add']" v-hasPermi="['device:faultMeasures:add']"
>新增</el-button> >新增</el-button
</el-col> >
<el-col :span="1.5"> </el-col>
<el-button <el-col :span="1.5">
type="success" <el-button
plain type="success"
icon="el-icon-edit" plain
size="mini" icon="el-icon-edit"
:disabled="single" size="mini"
@click="handleUpdate" :disabled="single"
v-hasPermi="['device:faultMeasures:edit']" @click="handleUpdate"
>修改</el-button> v-hasPermi="['device:faultMeasures:edit']"
</el-col> >修改</el-button
<el-col :span="1.5"> >
<el-button </el-col>
type="danger" <el-col :span="1.5">
plain <el-button
icon="el-icon-delete" type="danger"
size="mini" plain
:disabled="multiple" icon="el-icon-delete"
@click="handleDelete" size="mini"
v-hasPermi="['device:faultMeasures:remove']" :disabled="multiple"
>删除</el-button> @click="handleDelete"
</el-col> v-hasPermi="['device:faultMeasures:remove']"
<el-col :span="1.5"> >删除</el-button
<el-button >
type="warning" </el-col>
plain <el-col :span="1.5">
icon="el-icon-download" <el-button
size="mini" type="warning"
@click="handleExport" plain
v-hasPermi="['device:faultMeasures:export']" icon="el-icon-download"
>导出</el-button> size="mini"
</el-col> @click="handleExport"
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> v-hasPermi="['device:faultMeasures:export']"
</el-row> >导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="faultList" @selection-change="handleSelectionChange"> <el-table
<el-table-column type="selection" width="55" align="center" /> v-loading="loading"
<el-table-column width="60" align="center" label="序号" type="index"></el-table-column> :data="faultList"
<el-table-column v-if="false" label="主键" align="center" prop="faultId" /> @selection-change="handleSelectionChange"
<el-table-column width="150" label="故障措施编码" align="center" prop="faultCode" /> >
<el-table-column width="150" label="故障措施类型" align="center" prop="faultType" > <el-table-column type="selection" width="55" align="center" />
<el-table-column
width="60"
align="center"
label="序号"
type="index"
></el-table-column>
<el-table-column
v-if="false"
label="主键"
align="center"
prop="faultId"
/>
<el-table-column
width="150"
label="故障措施编码"
align="center"
prop="faultCode"
/>
<el-table-column
width="150"
label="故障措施类型"
align="center"
prop="faultType"
>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.device_fault_measures" :value="scope.row.faultType"/> <dict-tag
:options="dict.type.device_fault_measures"
:value="scope.row.faultType"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column width="150" label="故障措施" align="center" prop="faultSubclass" /> <el-table-column
<el-table-column width="180" label="备注" align="center" prop="faultRemark" /> width="150"
<el-table-column width="100" label="创建人" align="center" prop="createBy" /> label="故障措施"
<el-table-column width="180" label="创建时间" align="center" prop="createTime"> align="center"
<template slot-scope="scope"> prop="faultSubclass"
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span> />
</template> <el-table-column
</el-table-column> width="180"
<el-table-column width="100" label="更新人" align="center" prop="updateBy" /> label="备注"
<el-table-column width="180" label="更新时间" align="center" prop="updateTime"> align="center"
<template slot-scope="scope"> prop="faultRemark"
<span>{{ parseTime(scope.row.updateTime, '{y}-{m}-{d}') }}</span> />
</template> <el-table-column
</el-table-column> width="100"
<el-table-column width="180" label="操作" align="center" class-name="small-padding fixed-width" fixed="right"> label="创建人"
<template slot-scope="scope"> align="center"
<el-button prop="createBy"
size="mini" />
type="text" <el-table-column
icon="el-icon-edit" width="180"
@click="handleUpdate(scope.row)" label="创建时间"
v-hasPermi="['device:faultMeasures:edit']" align="center"
>修改</el-button> prop="createTime"
<el-button >
size="mini" <template slot-scope="scope">
type="text" <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
icon="el-icon-delete" </template>
@click="handleDelete(scope.row)" </el-table-column>
v-hasPermi="['device:faultMeasures:remove']" <el-table-column
>删除</el-button> width="100"
</template> label="更新人"
</el-table-column> align="center"
</el-table> prop="updateBy"
/>
<el-table-column
width="180"
label="更新时间"
align="center"
prop="updateTime"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.updateTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column
width="180"
label="操作"
align="center"
class-name="small-padding fixed-width"
fixed="right"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['device:faultMeasures:edit']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['device:faultMeasures:remove']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<pagination <pagination
v-show="total>0" v-show="total > 0"
:total="total" :total="total"
:page.sync="queryParams.pageNum" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改故障措施维护对话框 --> <!-- 添加或修改故障措施维护对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item v-if="false" label="故障措施编码" prop="faultCode"> <el-form-item v-if="false" label="故障措施编码" prop="faultCode">
<el-input v-model="form.faultCode" placeholder="请输入故障措施编码" style="width: 300px"/> <el-input
</el-form-item> v-model="form.faultCode"
placeholder="请输入故障措施编码"
style="width: 300px"
/>
</el-form-item>
<el-form-item label="故障措施" prop="faultType"> <el-form-item label="故障措施" prop="faultType">
<el-select v-model="form.faultType" placeholder="请选择故障措施" clearable style="width: 300px"> <el-select
v-model="form.faultType"
placeholder="请选择故障措施"
clearable
style="width: 300px"
>
<el-option <el-option
v-for="dict in dict.type.device_fault_measures" v-for="dict in dict.type.device_fault_measures"
:key="dict.value" :key="dict.value"
@ -182,229 +284,246 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="故障子类" prop="faultSubclass"> <el-form-item label="故障子类" prop="faultSubclass">
<el-input v-model="form.faultSubclass" placeholder="请输入故障子类" style="width: 300px"/> <el-input
</el-form-item> v-model="form.faultSubclass"
<el-form-item label="备注" prop="faultRemark"> placeholder="请输入故障子类"
<el-input v-model="form.faultRemark" placeholder="请输入备注" style="width: 300px"/> style="width: 300px"
</el-form-item> />
<el-form-item v-if="false" label="工厂编码" prop="factoryCode"> </el-form-item>
<el-input v-model="form.factoryCode" placeholder="请输入工厂编码" /> <el-form-item label="备注" prop="faultRemark">
</el-form-item> <el-input
<el-form-item v-if="false" label="备用字段1" prop="attr1"> v-model="form.faultRemark"
<el-input v-model="form.attr1" placeholder="请输入备用字段1" /> placeholder="请输入备注"
</el-form-item> style="width: 300px"
<el-form-item v-if="false" label="备用字段2" prop="attr2"> />
<el-input v-model="form.attr2" placeholder="请输入备用字段2" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="工厂编码" prop="factoryCode">
<el-form-item v-if="false" label="备用字段3" prop="attr3"> <el-input v-model="form.factoryCode" placeholder="请输入工厂编码" />
<el-input v-model="form.attr3" placeholder="请输入备用字段3" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="备用字段1" prop="attr1">
<el-form-item v-if="false" label="删除标志" prop="delFlag"> <el-input v-model="form.attr1" placeholder="请输入备用字段1" />
<el-input v-model="form.delFlag" placeholder="请输入删除标志" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="备用字段2" prop="attr2">
</el-form> <el-input v-model="form.attr2" placeholder="请输入备用字段2" />
<div slot="footer" class="dialog-footer"> </el-form-item>
<el-button type="primary" @click="submitForm"> </el-button> <el-form-item v-if="false" label="备用字段3" prop="attr3">
<el-button @click="cancel"> </el-button> <el-input v-model="form.attr3" placeholder="请输入备用字段3" />
</div> </el-form-item>
</el-dialog> <el-form-item v-if="false" label="删除标志" prop="delFlag">
</div> <el-input v-model="form.delFlag" placeholder="请输入删除标志" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template> </template>
<script> <script>
import { listFaultMeasures, getFaultMeasures, delFaultMeasures, addFaultMeasures, updateFaultMeasures } from "@/api/device/faultMeasures"; import {
listFaultMeasures,
getFaultMeasures,
delFaultMeasures,
addFaultMeasures,
updateFaultMeasures,
} from "@/api/device/faultMeasures";
export default { export default {
name: "FaultType", name: "FaultType",
dicts: ['device_fault_measures'], dicts: ["device_fault_measures"],
data() { data() {
return { return {
// //
pickerOptions: { pickerOptions: {
shortcuts: [{ shortcuts: [
text: '最近一周', {
onClick(picker) { text: "最近一周",
const end = new Date(); onClick(picker) {
const start = new Date(); const end = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); const start = new Date();
picker.$emit('pick', [start, end]); start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
} picker.$emit("pick", [start, end]);
}, { },
text: '最近一个月', },
onClick(picker) { {
const end = new Date(); text: "最近一个月",
const start = new Date(); onClick(picker) {
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); const end = new Date();
picker.$emit('pick', [start, end]); const start = new Date();
} start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
}, { picker.$emit("pick", [start, end]);
text: '最近三个月', },
onClick(picker) { },
const end = new Date(); {
const start = new Date(); text: "最近三个月",
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); onClick(picker) {
picker.$emit('pick', [start, end]); const end = new Date();
} const start = new Date();
}] start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
}, },
// //
loading: true, loading: true,
// //
ids: [], ids: [],
// //
single: true, single: true,
// //
multiple: true, multiple: true,
// //
showSearch: true, showSearch: true,
// //
total: 0, total: 0,
// //
faultList: [], faultList: [],
// //
title: "", title: "",
// //
open: false, open: false,
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
faultCode: null, faultCode: null,
faultType: null, faultType: null,
faultSubclass: null, faultSubclass: null,
faultRemark: null, faultRemark: null,
factoryCode: null, factoryCode: null,
attr1: null, attr1: null,
attr2: null, attr2: null,
attr3: null, attr3: null,
delFlag: null, delFlag: null,
createBy: null, createBy: null,
createTime: null, createTime: null,
updateBy: null, updateBy: null,
updateTime: null, updateTime: null,
createTimeArray: [], createTimeArray: [],
updateTimeArray: [], updateTimeArray: [],
}, },
// //
form: {}, form: {},
// //
rules: { rules: {},
} };
}; },
}, created() {
created() { this.getList();
this.getList(); },
}, methods: {
methods: { /** 查询故障措施维护列表 */
/** 查询故障措施维护列表 */ getList() {
getList() { this.loading = true;
this.loading = true; listFaultMeasures(this.queryParams).then((response) => {
listFaultMeasures(this.queryParams).then(response => { this.faultList = response.rows;
this.faultList = response.rows; this.total = response.total;
this.total = response.total; this.loading = false;
this.loading = false; });
}); },
}, //
// cancel() {
cancel() { this.open = false;
this.open = false; this.reset();
this.reset(); },
}, //
// reset() {
reset() { this.form = {
this.form = { faultId: null,
faultId: null, faultCode: null,
faultCode: null, faultType: null,
faultType: null, faultSubclass: null,
faultSubclass: null, faultRemark: null,
faultRemark: null, factoryCode: null,
factoryCode: null, attr1: null,
attr1: null, attr2: null,
attr2: null, attr3: null,
attr3: null, delFlag: null,
delFlag: null, createBy: null,
createBy: null, createTime: null,
createTime: null, updateBy: null,
updateBy: null, updateTime: null,
updateTime: null };
}; this.resetForm("form");
this.resetForm("form"); },
}, /** 搜索按钮操作 */
/** 搜索按钮操作 */ handleQuery() {
handleQuery() { this.queryParams.pageNum = 1;
this.queryParams.pageNum = 1; this.getList();
this.getList(); },
}, /** 重置按钮操作 */
/** 重置按钮操作 */ resetQuery() {
resetQuery() { this.resetForm("queryForm");
this.resetForm("queryForm");
// //
this.queryParams.createTimeArray = []; this.queryParams.createTimeArray = [];
this.queryParams.updateTimeArray = []; this.queryParams.updateTimeArray = [];
this.handleQuery(); this.handleQuery();
}, },
// //
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.faultId) this.ids = selection.map((item) => item.faultId);
this.single = selection.length!==1 this.single = selection.length !== 1;
this.multiple = !selection.length this.multiple = !selection.length;
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
this.reset(); this.reset();
this.open = true; this.open = true;
this.title = "添加故障措施维护"; this.title = "添加故障措施维护";
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row) {
this.reset(); this.reset();
const faultId = row.faultId || this.ids const faultId = row.faultId || this.ids;
getFaultMeasures(faultId).then(response => { getFaultMeasures(faultId).then((response) => {
this.form = response.data; this.form = response.data;
this.open = true; this.open = true;
this.title = "修改故障措施维护"; this.title = "修改故障措施维护";
}); });
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.$refs["form"].validate(valid => { this.$refs["form"].validate((valid) => {
if (valid) { if (valid) {
if (this.form.faultId != null) { if (this.form.faultId != null) {
updateFaultMeasures(this.form).then(response => { updateFaultMeasures(this.form).then((response) => {
if (response.code != 500) { if (response.code != 500) {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.open = false; this.open = false;
this.getList(); this.getList();
} }
}); });
} else { } else {
addFaultMeasures(this.form).then(response => { addFaultMeasures(this.form).then((response) => {
if (response.code != 500) { if (response.code != 500) {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.open = false; this.open = false;
this.getList(); this.getList();
} }
}); });
} }
} }
}); });
}, },
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const faultIds = row.faultId || this.ids; const faultIds = row.faultId || this.ids;
var faultCodes = ''; var faultCodes = "";
// //
for (let i = 0; i < this.faultList.length; i++) { for (let i = 0; i < this.faultList.length; i++) {
for (let j = 0; j < faultIds.length; j++) { for (let j = 0; j < faultIds.length; j++) {
if (faultIds[j] == this.faultList[i].faultId) { if (faultIds[j] == this.faultList[i].faultId) {
faultCodes = faultCodes + this.faultList[i].faultCode + ','; faultCodes = faultCodes + this.faultList[i].faultCode + ",";
} }
} }
} }
if (faultCodes == '') { if (faultCodes == "") {
for (let i = 0; i < this.faultList.length; i++) { for (let i = 0; i < this.faultList.length; i++) {
if (faultIds == this.faultList[i].faultId) { if (faultIds == this.faultList[i].faultId) {
faultCodes = this.faultList[i].faultCode; faultCodes = this.faultList[i].faultCode;
@ -412,19 +531,27 @@ export default {
} }
} }
this.$modal.confirm('是否确认删除故障措施维护编号为"' + faultCodes + '"的数据项?').then(function() { this.$modal
return delFaultMeasures(faultIds); .confirm('是否确认删除故障措施维护编号为"' + faultCodes + '"的数据项?')
}).then(() => { .then(function () {
this.getList(); return delFaultMeasures(faultIds);
this.$modal.msgSuccess("删除成功"); })
}).catch(() => {}); .then(() => {
}, this.getList();
/** 导出按钮操作 */ this.$modal.msgSuccess("删除成功");
handleExport() { })
this.download('device/faultMeasures/export', { .catch(() => {});
...this.queryParams },
}, `faultType_${new Date().getTime()}.xlsx`) /** 导出按钮操作 */
} handleExport() {
} this.download(
"device/faultMeasures/export",
{
...this.queryParams,
},
`faultType_${new Date().getTime()}.xlsx`
);
},
},
}; };
</script> </script>

@ -1,17 +1,29 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="98px"> <el-form
<el-form-item label="故障原因编码" prop="faultCode"> :model="queryParams"
<el-input ref="queryForm"
style="width: 150px" size="small"
v-model="queryParams.faultCode" :inline="true"
placeholder="请输入编码" v-show="showSearch"
clearable label-width="98px"
@keyup.enter.native="handleQuery" >
/> <el-form-item label="故障原因编码" prop="faultCode">
</el-form-item> <el-input
style="width: 150px"
v-model="queryParams.faultCode"
placeholder="请输入编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="故障原因类型" prop="faultType"> <el-form-item label="故障原因类型" prop="faultType">
<el-select v-model="queryParams.faultType" placeholder="请选择原因类型" clearable style="width: 150px"> <el-select
v-model="queryParams.faultType"
placeholder="请选择原因类型"
clearable
style="width: 150px"
>
<el-option <el-option
v-for="dict in dict.type.device_fault_reason" v-for="dict in dict.type.device_fault_reason"
:key="dict.value" :key="dict.value"
@ -20,16 +32,16 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="故障原因" prop="faultSubclass" > <el-form-item label="故障原因" prop="faultSubclass">
<el-input <el-input
v-model="queryParams.faultSubclass" v-model="queryParams.faultSubclass"
placeholder="请输入故障原因" placeholder="请输入故障原因"
clearable clearable
style="width: 150px" style="width: 150px"
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="创建人" prop="createBy" > <el-form-item label="创建人" prop="createBy">
<el-input <el-input
class="my-select-input" class="my-select-input"
v-model="queryParams.createBy" v-model="queryParams.createBy"
@ -59,7 +71,8 @@
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:picker-options="pickerOptions"> :picker-options="pickerOptions"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="更新时间" prop="updateTime"> <el-form-item label="更新时间" prop="updateTime">
@ -72,122 +85,217 @@
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:picker-options="pickerOptions"> :picker-options="pickerOptions"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button> <el-button
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button> type="primary"
</el-form-item> icon="el-icon-search"
</el-form> size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
plain plain
icon="el-icon-plus" icon="el-icon-plus"
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['device:faultReason:add']" v-hasPermi="['device:faultReason:add']"
>新增</el-button> >新增</el-button
</el-col> >
<el-col :span="1.5"> </el-col>
<el-button <el-col :span="1.5">
type="success" <el-button
plain type="success"
icon="el-icon-edit" plain
size="mini" icon="el-icon-edit"
:disabled="single" size="mini"
@click="handleUpdate" :disabled="single"
v-hasPermi="['device:faultReason:edit']" @click="handleUpdate"
>修改</el-button> v-hasPermi="['device:faultReason:edit']"
</el-col> >修改</el-button
<el-col :span="1.5"> >
<el-button </el-col>
type="danger" <el-col :span="1.5">
plain <el-button
icon="el-icon-delete" type="danger"
size="mini" plain
:disabled="multiple" icon="el-icon-delete"
@click="handleDelete" size="mini"
v-hasPermi="['device:faultReason:remove']" :disabled="multiple"
>删除</el-button> @click="handleDelete"
</el-col> v-hasPermi="['device:faultReason:remove']"
<el-col :span="1.5"> >删除</el-button
<el-button >
type="warning" </el-col>
plain <el-col :span="1.5">
icon="el-icon-download" <el-button
size="mini" type="warning"
@click="handleExport" plain
v-hasPermi="['device:faultReason:export']" icon="el-icon-download"
>导出</el-button> size="mini"
</el-col> @click="handleExport"
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> v-hasPermi="['device:faultReason:export']"
</el-row> >导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="faultList" @selection-change="handleSelectionChange"> <el-table
<el-table-column type="selection" width="55" align="center" /> v-loading="loading"
<el-table-column width="60" align="center" label="序号" type="index"></el-table-column> :data="faultList"
<el-table-column v-if="false" label="主键" align="center" prop="faultId" /> @selection-change="handleSelectionChange"
<el-table-column width="150" label="故障原因编码" align="center" prop="faultCode" /> >
<el-table-column width="150" label="故障原因类型" align="center" prop="faultType" > <el-table-column type="selection" width="55" align="center" />
<el-table-column
width="60"
align="center"
label="序号"
type="index"
></el-table-column>
<el-table-column
v-if="false"
label="主键"
align="center"
prop="faultId"
/>
<el-table-column
width="150"
label="故障原因编码"
align="center"
prop="faultCode"
/>
<el-table-column
width="150"
label="故障原因类型"
align="center"
prop="faultType"
>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.device_fault_reason" :value="scope.row.faultType"/> <dict-tag
:options="dict.type.device_fault_reason"
:value="scope.row.faultType"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column width="200" label="故障原因" align="center" prop="faultSubclass" /> <el-table-column
<el-table-column width="180" label="备注" align="center" prop="faultRemark" /> width="200"
<el-table-column v-if="false" label="删除标志" align="center" prop="delFlag" /> label="故障原因"
<el-table-column width="100" label="创建人" align="center" prop="createBy" /> align="center"
<el-table-column width="180" label="创建时间" align="center" prop="createTime"> prop="faultSubclass"
<template slot-scope="scope"> />
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span> <el-table-column
</template> width="180"
</el-table-column> label="备注"
<el-table-column width="100" label="更新人" align="center" prop="updateBy" /> align="center"
<el-table-column width="180" label="更新时间" align="center" prop="updateTime"> prop="faultRemark"
<template slot-scope="scope"> />
<span>{{ parseTime(scope.row.updateTime, '{y}-{m}-{d}') }}</span> <el-table-column
</template> v-if="false"
</el-table-column> label="删除标志"
<el-table-column width="180" label="操作" align="center" class-name="small-padding fixed-width" fixed="right"> align="center"
<template slot-scope="scope"> prop="delFlag"
<el-button />
size="mini" <el-table-column
type="text" width="100"
icon="el-icon-edit" label="创建人"
@click="handleUpdate(scope.row)" align="center"
v-hasPermi="['device:faultReason:edit']" prop="createBy"
>修改</el-button> />
<el-button <el-table-column
size="mini" width="180"
type="text" label="创建时间"
icon="el-icon-delete" align="center"
@click="handleDelete(scope.row)" prop="createTime"
v-hasPermi="['device:faultReason:remove']" >
>删除</el-button> <template slot-scope="scope">
</template> <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
</el-table-column> </template>
</el-table> </el-table-column>
<el-table-column
width="100"
label="更新人"
align="center"
prop="updateBy"
/>
<el-table-column
width="180"
label="更新时间"
align="center"
prop="updateTime"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.updateTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column
width="180"
label="操作"
align="center"
class-name="small-padding fixed-width"
fixed="right"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['device:faultReason:edit']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['device:faultReason:remove']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<pagination <pagination
v-show="total>0" v-show="total > 0"
:total="total" :total="total"
:page.sync="queryParams.pageNum" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改故障原因维护对话框 --> <!-- 添加或修改故障原因维护对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item v-if="false" label="故障原因编码" prop="faultCode"> <el-form-item v-if="false" label="故障原因编码" prop="faultCode">
<el-input v-model="form.faultCode" placeholder="请输入故障原因编码" style="width: 300px"/> <el-input
</el-form-item> v-model="form.faultCode"
placeholder="请输入故障原因编码"
style="width: 300px"
/>
</el-form-item>
<el-form-item label="故障原因" prop="faultType"> <el-form-item label="故障原因" prop="faultType">
<el-select v-model="form.faultType" placeholder="请选择故障原因" clearable style="width: 300px"> <el-select
v-model="form.faultType"
placeholder="请选择故障原因"
clearable
style="width: 300px"
>
<el-option <el-option
v-for="dict in dict.type.device_fault_reason" v-for="dict in dict.type.device_fault_reason"
:key="dict.value" :key="dict.value"
@ -196,229 +304,246 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="故障子类" prop="faultSubclass"> <el-form-item label="故障子类" prop="faultSubclass">
<el-input v-model="form.faultSubclass" placeholder="请输入故障子类" style="width: 300px"/> <el-input
</el-form-item> v-model="form.faultSubclass"
<el-form-item label="备注" prop="faultRemark"> placeholder="请输入故障子类"
<el-input v-model="form.faultRemark" placeholder="请输入备注" style="width: 300px"/> style="width: 300px"
</el-form-item> />
<el-form-item v-if="false" label="工厂编码" prop="factoryCode"> </el-form-item>
<el-input v-model="form.factoryCode" placeholder="请输入工厂编码" /> <el-form-item label="备注" prop="faultRemark">
</el-form-item> <el-input
<el-form-item v-if="false" label="备用字段1" prop="attr1"> v-model="form.faultRemark"
<el-input v-model="form.attr1" placeholder="请输入备用字段1" /> placeholder="请输入备注"
</el-form-item> style="width: 300px"
<el-form-item v-if="false" label="备用字段2" prop="attr2"> />
<el-input v-model="form.attr2" placeholder="请输入备用字段2" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="工厂编码" prop="factoryCode">
<el-form-item v-if="false" label="备用字段3" prop="attr3"> <el-input v-model="form.factoryCode" placeholder="请输入工厂编码" />
<el-input v-model="form.attr3" placeholder="请输入备用字段3" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="备用字段1" prop="attr1">
<el-form-item v-if="false" label="删除标志" prop="delFlag"> <el-input v-model="form.attr1" placeholder="请输入备用字段1" />
<el-input v-model="form.delFlag" placeholder="请输入删除标志" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="备用字段2" prop="attr2">
</el-form> <el-input v-model="form.attr2" placeholder="请输入备用字段2" />
<div slot="footer" class="dialog-footer"> </el-form-item>
<el-button type="primary" @click="submitForm"> </el-button> <el-form-item v-if="false" label="备用字段3" prop="attr3">
<el-button @click="cancel"> </el-button> <el-input v-model="form.attr3" placeholder="请输入备用字段3" />
</div> </el-form-item>
</el-dialog> <el-form-item v-if="false" label="删除标志" prop="delFlag">
</div> <el-input v-model="form.delFlag" placeholder="请输入删除标志" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template> </template>
<script> <script>
import { listFaultReason, getFaultReason, delFaultReason, addFaultReason, updateFaultReason } from "@/api/device/faultReason"; import {
listFaultReason,
getFaultReason,
delFaultReason,
addFaultReason,
updateFaultReason,
} from "@/api/device/faultReason";
export default { export default {
name: "FaultType", name: "FaultType",
dicts: ['device_fault_reason'], dicts: ["device_fault_reason"],
data() { data() {
return { return {
// //
pickerOptions: { pickerOptions: {
shortcuts: [{ shortcuts: [
text: '最近一周', {
onClick(picker) { text: "最近一周",
const end = new Date(); onClick(picker) {
const start = new Date(); const end = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); const start = new Date();
picker.$emit('pick', [start, end]); start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
} picker.$emit("pick", [start, end]);
}, { },
text: '最近一个月', },
onClick(picker) { {
const end = new Date(); text: "最近一个月",
const start = new Date(); onClick(picker) {
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); const end = new Date();
picker.$emit('pick', [start, end]); const start = new Date();
} start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
}, { picker.$emit("pick", [start, end]);
text: '最近三个月', },
onClick(picker) { },
const end = new Date(); {
const start = new Date(); text: "最近三个月",
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); onClick(picker) {
picker.$emit('pick', [start, end]); const end = new Date();
} const start = new Date();
}] start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
}, },
// //
loading: true, loading: true,
// //
ids: [], ids: [],
// //
single: true, single: true,
// //
multiple: true, multiple: true,
// //
showSearch: true, showSearch: true,
// //
total: 0, total: 0,
// //
faultList: [], faultList: [],
// //
title: "", title: "",
// //
open: false, open: false,
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
faultCode: null, faultCode: null,
faultType: null, faultType: null,
faultSubclass: null, faultSubclass: null,
faultRemark: null, faultRemark: null,
factoryCode: null, factoryCode: null,
attr1: null, attr1: null,
attr2: null, attr2: null,
attr3: null, attr3: null,
delFlag: null, delFlag: null,
createBy: null, createBy: null,
createTime: null, createTime: null,
updateBy: null, updateBy: null,
updateTime: null, updateTime: null,
createTimeArray: [], createTimeArray: [],
updateTimeArray: [], updateTimeArray: [],
}, },
// //
form: {}, form: {},
// //
rules: { rules: {},
} };
}; },
}, created() {
created() { this.getList();
this.getList(); },
}, methods: {
methods: { /** 查询故障原因维护列表 */
/** 查询故障原因维护列表 */ getList() {
getList() { this.loading = true;
this.loading = true; listFaultReason(this.queryParams).then((response) => {
listFaultReason(this.queryParams).then(response => { this.faultList = response.rows;
this.faultList = response.rows; this.total = response.total;
this.total = response.total; this.loading = false;
this.loading = false; });
}); },
}, //
// cancel() {
cancel() { this.open = false;
this.open = false; this.reset();
this.reset(); },
}, //
// reset() {
reset() { this.form = {
this.form = { faultId: null,
faultId: null, faultCode: null,
faultCode: null, faultType: null,
faultType: null, faultSubclass: null,
faultSubclass: null, faultRemark: null,
faultRemark: null, factoryCode: null,
factoryCode: null, attr1: null,
attr1: null, attr2: null,
attr2: null, attr3: null,
attr3: null, delFlag: null,
delFlag: null, createBy: null,
createBy: null, createTime: null,
createTime: null, updateBy: null,
updateBy: null, updateTime: null,
updateTime: null };
}; this.resetForm("form");
this.resetForm("form"); },
}, /** 搜索按钮操作 */
/** 搜索按钮操作 */ handleQuery() {
handleQuery() { this.queryParams.pageNum = 1;
this.queryParams.pageNum = 1; this.getList();
this.getList(); },
}, /** 重置按钮操作 */
/** 重置按钮操作 */ resetQuery() {
resetQuery() { this.resetForm("queryForm");
this.resetForm("queryForm");
// //
this.queryParams.createTimeArray = []; this.queryParams.createTimeArray = [];
this.queryParams.updateTimeArray = []; this.queryParams.updateTimeArray = [];
this.handleQuery(); this.handleQuery();
}, },
// //
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.faultId) this.ids = selection.map((item) => item.faultId);
this.single = selection.length!==1 this.single = selection.length !== 1;
this.multiple = !selection.length this.multiple = !selection.length;
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
this.reset(); this.reset();
this.open = true; this.open = true;
this.title = "添加故障原因维护"; this.title = "添加故障原因维护";
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row) {
this.reset(); this.reset();
const faultId = row.faultId || this.ids const faultId = row.faultId || this.ids;
getFaultReason(faultId).then(response => { getFaultReason(faultId).then((response) => {
this.form = response.data; this.form = response.data;
this.open = true; this.open = true;
this.title = "修改故障原因维护"; this.title = "修改故障原因维护";
}); });
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.$refs["form"].validate(valid => { this.$refs["form"].validate((valid) => {
if (valid) { if (valid) {
if (this.form.faultId != null) { if (this.form.faultId != null) {
updateFaultReason(this.form).then(response => { updateFaultReason(this.form).then((response) => {
if (response.code != 500) { if (response.code != 500) {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.open = false; this.open = false;
this.getList(); this.getList();
} }
}); });
} else { } else {
addFaultReason(this.form).then(response => { addFaultReason(this.form).then((response) => {
if (response.code != 500) { if (response.code != 500) {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.open = false; this.open = false;
this.getList(); this.getList();
} }
}); });
} }
} }
}); });
}, },
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const faultIds = row.faultId || this.ids; const faultIds = row.faultId || this.ids;
var faultCodes = ''; var faultCodes = "";
// //
for (let i = 0; i < this.faultList.length; i++) { for (let i = 0; i < this.faultList.length; i++) {
for (let j = 0; j < faultIds.length; j++) { for (let j = 0; j < faultIds.length; j++) {
if (faultIds[j] == this.faultList[i].faultId) { if (faultIds[j] == this.faultList[i].faultId) {
faultCodes = faultCodes + this.faultList[i].faultCode + ','; faultCodes = faultCodes + this.faultList[i].faultCode + ",";
} }
} }
} }
if (faultCodes == '') { if (faultCodes == "") {
for (let i = 0; i < this.faultList.length; i++) { for (let i = 0; i < this.faultList.length; i++) {
if (faultIds == this.faultList[i].faultId) { if (faultIds == this.faultList[i].faultId) {
faultCodes = this.faultList[i].faultCode; faultCodes = this.faultList[i].faultCode;
@ -426,19 +551,27 @@ export default {
} }
} }
this.$modal.confirm('是否确认删除故障原因维护编号为"' + faultCodes + '"的数据项?').then(function() { this.$modal
return delFaultReason(faultIds); .confirm('是否确认删除故障原因维护编号为"' + faultCodes + '"的数据项?')
}).then(() => { .then(function () {
this.getList(); return delFaultReason(faultIds);
this.$modal.msgSuccess("删除成功"); })
}).catch(() => {}); .then(() => {
}, this.getList();
/** 导出按钮操作 */ this.$modal.msgSuccess("删除成功");
handleExport() { })
this.download('device/faultReason/export', { .catch(() => {});
...this.queryParams },
}, `faultType_${new Date().getTime()}.xlsx`) /** 导出按钮操作 */
} handleExport() {
} this.download(
"device/faultReason/export",
{
...this.queryParams,
},
`faultType_${new Date().getTime()}.xlsx`
);
},
},
}; };
</script> </script>

@ -1,17 +1,29 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> <el-form
<el-form-item label-width="100px" label="故障类型编码" prop="faultCode"> :model="queryParams"
<el-input ref="queryForm"
v-model="queryParams.faultCode" size="small"
placeholder="请输入故障类型编码" :inline="true"
style="width: 180px" v-show="showSearch"
clearable label-width="68px"
@keyup.enter.native="handleQuery" >
/> <el-form-item label-width="100px" label="故障类型编码" prop="faultCode">
</el-form-item> <el-input
v-model="queryParams.faultCode"
placeholder="请输入故障类型编码"
style="width: 180px"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="故障类型" prop="faultType"> <el-form-item label="故障类型" prop="faultType">
<el-select v-model="queryParams.faultType" placeholder="请选择故障类型" clearable style="width: 180px"> <el-select
v-model="queryParams.faultType"
placeholder="请选择故障类型"
clearable
style="width: 180px"
>
<el-option <el-option
v-for="dict in dict.type.device_fault_type" v-for="dict in dict.type.device_fault_type"
:key="dict.value" :key="dict.value"
@ -20,63 +32,63 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="故障子类" prop="faultSubclass"> <el-form-item label="故障子类" prop="faultSubclass">
<el-input <el-input
v-model="queryParams.faultSubclass" v-model="queryParams.faultSubclass"
placeholder="请输入故障子类" placeholder="请输入故障子类"
clearable clearable
style="width: 180px" style="width: 180px"
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item v-if="false" label="备注" prop="faultRemark"> <el-form-item v-if="false" label="备注" prop="faultRemark">
<el-input <el-input
v-model="queryParams.faultRemark" v-model="queryParams.faultRemark"
placeholder="请输入备注" placeholder="请输入备注"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item v-if="false" label="工厂编码" prop="factoryCode"> <el-form-item v-if="false" label="工厂编码" prop="factoryCode">
<el-input <el-input
v-model="queryParams.factoryCode" v-model="queryParams.factoryCode"
placeholder="请输入工厂编码" placeholder="请输入工厂编码"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item v-if="false" label="备用字段1" prop="attr1"> <el-form-item v-if="false" label="备用字段1" prop="attr1">
<el-input <el-input
v-model="queryParams.attr1" v-model="queryParams.attr1"
placeholder="请输入备用字段1" placeholder="请输入备用字段1"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item v-if="false" label="备用字段2" prop="attr2"> <el-form-item v-if="false" label="备用字段2" prop="attr2">
<el-input <el-input
v-model="queryParams.attr2" v-model="queryParams.attr2"
placeholder="请输入备用字段2" placeholder="请输入备用字段2"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item v-if="false" label="备用字段3" prop="attr3"> <el-form-item v-if="false" label="备用字段3" prop="attr3">
<el-input <el-input
v-model="queryParams.attr3" v-model="queryParams.attr3"
placeholder="请输入备用字段3" placeholder="请输入备用字段3"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item v-if="false" label="删除标志" prop="delFlag"> <el-form-item v-if="false" label="删除标志" prop="delFlag">
<el-input <el-input
v-model="queryParams.delFlag" v-model="queryParams.delFlag"
placeholder="请输入删除标志" placeholder="请输入删除标志"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="创建人" prop="createBy"> <el-form-item label="创建人" prop="createBy">
<el-input <el-input
class="my-select-input" class="my-select-input"
@ -107,7 +119,8 @@
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:picker-options="pickerOptions"> :picker-options="pickerOptions"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="更新时间" prop="updateTime"> <el-form-item label="更新时间" prop="updateTime">
@ -120,126 +133,242 @@
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:picker-options="pickerOptions"> :picker-options="pickerOptions"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button> <el-button
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button> type="primary"
</el-form-item> icon="el-icon-search"
</el-form> size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
plain plain
icon="el-icon-plus" icon="el-icon-plus"
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['device:faultType:add']" v-hasPermi="['device:faultType:add']"
>新增</el-button> >新增</el-button
</el-col> >
<el-col :span="1.5"> </el-col>
<el-button <el-col :span="1.5">
type="success" <el-button
plain type="success"
icon="el-icon-edit" plain
size="mini" icon="el-icon-edit"
:disabled="single" size="mini"
@click="handleUpdate" :disabled="single"
v-hasPermi="['device:faultType:edit']" @click="handleUpdate"
>修改</el-button> v-hasPermi="['device:faultType:edit']"
</el-col> >修改</el-button
<el-col :span="1.5"> >
<el-button </el-col>
type="danger" <el-col :span="1.5">
plain <el-button
icon="el-icon-delete" type="danger"
size="mini" plain
:disabled="multiple" icon="el-icon-delete"
@click="handleDelete" size="mini"
v-hasPermi="['device:faultType:remove']" :disabled="multiple"
>删除</el-button> @click="handleDelete"
</el-col> v-hasPermi="['device:faultType:remove']"
<el-col :span="1.5"> >删除</el-button
<el-button >
type="warning" </el-col>
plain <el-col :span="1.5">
icon="el-icon-download" <el-button
size="mini" type="warning"
@click="handleExport" plain
v-hasPermi="['device:faultType:export']" icon="el-icon-download"
>导出</el-button> size="mini"
</el-col> @click="handleExport"
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> v-hasPermi="['device:faultType:export']"
</el-row> >导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="faultList" @selection-change="handleSelectionChange"> <el-table
<el-table-column type="selection" width="55" align="center" /> v-loading="loading"
<el-table-column width="60" align="center" label="序号" type="index"></el-table-column> :data="faultList"
<el-table-column v-if="false" label="主键" align="center" prop="faultId" /> @selection-change="handleSelectionChange"
<el-table-column width="150" label="故障类型编码" align="center" prop="faultCode" /> >
<el-table-column width="150" label="故障类型" align="center" prop="faultType" > <el-table-column type="selection" width="55" align="center" />
<el-table-column
width="60"
align="center"
label="序号"
type="index"
></el-table-column>
<el-table-column
v-if="false"
label="主键"
align="center"
prop="faultId"
/>
<el-table-column
width="150"
label="故障类型编码"
align="center"
prop="faultCode"
/>
<el-table-column
width="150"
label="故障类型"
align="center"
prop="faultType"
>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.device_fault_type" :value="scope.row.faultType"/> <dict-tag
:options="dict.type.device_fault_type"
:value="scope.row.faultType"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column width="150" label="故障子类" align="center" prop="faultSubclass" /> <el-table-column
<el-table-column width="180" label="备注" align="center" prop="faultRemark" /> width="150"
<el-table-column v-if="false" label="工厂编码" align="center" prop="factoryCode" /> label="故障子类"
<el-table-column v-if="false" label="备用字段1" align="center" prop="attr1" /> align="center"
<el-table-column v-if="false" label="备用字段2" align="center" prop="attr2" /> prop="faultSubclass"
<el-table-column v-if="false" label="备用字段3" align="center" prop="attr3" /> />
<el-table-column v-if="false" label="删除标志" align="center" prop="delFlag" /> <el-table-column
<el-table-column width="100" label="创建人" align="center" prop="createBy" /> width="180"
<el-table-column width="180" label="创建时间" align="center" prop="createTime"> label="备注"
<template slot-scope="scope"> align="center"
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span> prop="faultRemark"
</template> />
</el-table-column> <el-table-column
<el-table-column width="100" label="更新人" align="center" prop="updateBy" /> v-if="false"
<el-table-column width="180" label="更新时间" align="center" prop="updateTime"> label="工厂编码"
<template slot-scope="scope"> align="center"
<span>{{ parseTime(scope.row.updateTime, '{y}-{m}-{d}') }}</span> prop="factoryCode"
</template> />
</el-table-column> <el-table-column
<el-table-column width="180" label="操作" align="center" class-name="small-padding fixed-width" fixed="right"> v-if="false"
<template slot-scope="scope"> label="备用字段1"
<el-button align="center"
size="mini" prop="attr1"
type="text" />
icon="el-icon-edit" <el-table-column
@click="handleUpdate(scope.row)" v-if="false"
v-hasPermi="['device:faultType:edit']" label="备用字段2"
>修改</el-button> align="center"
<el-button prop="attr2"
size="mini" />
type="text" <el-table-column
icon="el-icon-delete" v-if="false"
@click="handleDelete(scope.row)" label="备用字段3"
v-hasPermi="['device:faultType:remove']" align="center"
>删除</el-button> prop="attr3"
</template> />
</el-table-column> <el-table-column
</el-table> v-if="false"
label="删除标志"
align="center"
prop="delFlag"
/>
<el-table-column
width="100"
label="创建人"
align="center"
prop="createBy"
/>
<el-table-column
width="180"
label="创建时间"
align="center"
prop="createTime"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column
width="100"
label="更新人"
align="center"
prop="updateBy"
/>
<el-table-column
width="180"
label="更新时间"
align="center"
prop="updateTime"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.updateTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column
width="180"
label="操作"
align="center"
class-name="small-padding fixed-width"
fixed="right"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['device:faultType:edit']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['device:faultType:remove']"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<pagination <pagination
v-show="total>0" v-show="total > 0"
:total="total" :total="total"
:page.sync="queryParams.pageNum" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改故障类型维护对话框 --> <!-- 添加或修改故障类型维护对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item v-if="false" label="故障类型编码" prop="faultCode" style="width: 300px"> <el-form-item
<el-input v-model="form.faultCode" placeholder="请输入故障类型编码" /> v-if="false"
</el-form-item> label="故障类型编码"
prop="faultCode"
style="width: 300px"
>
<el-input v-model="form.faultCode" placeholder="请输入故障类型编码" />
</el-form-item>
<el-form-item label="故障类型" prop="faultType"> <el-form-item label="故障类型" prop="faultType">
<el-select v-model="form.faultType" placeholder="请选择故障类型" clearable style="width: 300px"> <el-select
v-model="form.faultType"
placeholder="请选择故障类型"
clearable
style="width: 300px"
>
<el-option <el-option
v-for="dict in dict.type.device_fault_type" v-for="dict in dict.type.device_fault_type"
:key="dict.value" :key="dict.value"
@ -248,229 +377,246 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="故障子类" prop="faultSubclass"> <el-form-item label="故障子类" prop="faultSubclass">
<el-input v-model="form.faultSubclass" placeholder="请输入故障子类" style="width: 300px"/> <el-input
</el-form-item> v-model="form.faultSubclass"
<el-form-item label="备注" prop="faultRemark"> placeholder="请输入故障子类"
<el-input v-model="form.faultRemark" placeholder="请输入备注" style="width: 300px"/> style="width: 300px"
</el-form-item> />
<el-form-item v-if="false" label="工厂编码" prop="factoryCode"> </el-form-item>
<el-input v-model="form.factoryCode" placeholder="请输入工厂编码" /> <el-form-item label="备注" prop="faultRemark">
</el-form-item> <el-input
<el-form-item v-if="false" label="备用字段1" prop="attr1"> v-model="form.faultRemark"
<el-input v-model="form.attr1" placeholder="请输入备用字段1" /> placeholder="请输入备注"
</el-form-item> style="width: 300px"
<el-form-item v-if="false" label="备用字段2" prop="attr2"> />
<el-input v-model="form.attr2" placeholder="请输入备用字段2" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="工厂编码" prop="factoryCode">
<el-form-item v-if="false" label="备用字段3" prop="attr3"> <el-input v-model="form.factoryCode" placeholder="请输入工厂编码" />
<el-input v-model="form.attr3" placeholder="请输入备用字段3" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="备用字段1" prop="attr1">
<el-form-item v-if="false" label="删除标志" prop="delFlag"> <el-input v-model="form.attr1" placeholder="请输入备用字段1" />
<el-input v-model="form.delFlag" placeholder="请输入删除标志" /> </el-form-item>
</el-form-item> <el-form-item v-if="false" label="备用字段2" prop="attr2">
</el-form> <el-input v-model="form.attr2" placeholder="请输入备用字段2" />
<div slot="footer" class="dialog-footer"> </el-form-item>
<el-button type="primary" @click="submitForm"> </el-button> <el-form-item v-if="false" label="备用字段3" prop="attr3">
<el-button @click="cancel"> </el-button> <el-input v-model="form.attr3" placeholder="请输入备用字段3" />
</div> </el-form-item>
</el-dialog> <el-form-item v-if="false" label="删除标志" prop="delFlag">
</div> <el-input v-model="form.delFlag" placeholder="请输入删除标志" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template> </template>
<script> <script>
import { listFaultType, getFaultType, delFaultType, addFaultType, updateFaultType } from "@/api/device/faultType"; import {
listFaultType,
getFaultType,
delFaultType,
addFaultType,
updateFaultType,
} from "@/api/device/faultType";
export default { export default {
name: "FaultType", name: "FaultType",
dicts: ['device_fault_type'], dicts: ["device_fault_type"],
data() { data() {
return { return {
// //
pickerOptions: { pickerOptions: {
shortcuts: [{ shortcuts: [
text: '最近一周', {
onClick(picker) { text: "最近一周",
const end = new Date(); onClick(picker) {
const start = new Date(); const end = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); const start = new Date();
picker.$emit('pick', [start, end]); start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
} picker.$emit("pick", [start, end]);
}, { },
text: '最近一个月', },
onClick(picker) { {
const end = new Date(); text: "最近一个月",
const start = new Date(); onClick(picker) {
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); const end = new Date();
picker.$emit('pick', [start, end]); const start = new Date();
} start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
}, { picker.$emit("pick", [start, end]);
text: '最近三个月', },
onClick(picker) { },
const end = new Date(); {
const start = new Date(); text: "最近三个月",
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); onClick(picker) {
picker.$emit('pick', [start, end]); const end = new Date();
} const start = new Date();
}] start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
}, },
// //
loading: true, loading: true,
// //
ids: [], ids: [],
// //
single: true, single: true,
// //
multiple: true, multiple: true,
// //
showSearch: true, showSearch: true,
// //
total: 0, total: 0,
// //
faultList: [], faultList: [],
// //
title: "", title: "",
// //
open: false, open: false,
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
faultCode: null, faultCode: null,
faultType: null, faultType: null,
faultSubclass: null, faultSubclass: null,
faultRemark: null, faultRemark: null,
factoryCode: null, factoryCode: null,
attr1: null, attr1: null,
attr2: null, attr2: null,
attr3: null, attr3: null,
delFlag: null, delFlag: null,
createBy: null, createBy: null,
createTime: null, createTime: null,
updateBy: null, updateBy: null,
updateTime: null, updateTime: null,
createTimeArray: [], createTimeArray: [],
updateTimeArray: [], updateTimeArray: [],
}, },
// //
form: {}, form: {},
// //
rules: { rules: {},
} };
}; },
}, created() {
created() { this.getList();
this.getList(); },
}, methods: {
methods: { /** 查询故障类型维护列表 */
/** 查询故障类型维护列表 */ getList() {
getList() { this.loading = true;
this.loading = true; listFaultType(this.queryParams).then((response) => {
listFaultType(this.queryParams).then(response => { this.faultList = response.rows;
this.faultList = response.rows; this.total = response.total;
this.total = response.total; this.loading = false;
this.loading = false; });
}); },
}, //
// cancel() {
cancel() { this.open = false;
this.open = false; this.reset();
this.reset(); },
}, //
// reset() {
reset() { this.form = {
this.form = { faultId: null,
faultId: null, faultCode: null,
faultCode: null, faultType: null,
faultType: null, faultSubclass: null,
faultSubclass: null, faultRemark: null,
faultRemark: null, factoryCode: null,
factoryCode: null, attr1: null,
attr1: null, attr2: null,
attr2: null, attr3: null,
attr3: null, delFlag: null,
delFlag: null, createBy: null,
createBy: null, createTime: null,
createTime: null, updateBy: null,
updateBy: null, updateTime: null,
updateTime: null };
}; this.resetForm("form");
this.resetForm("form"); },
}, /** 搜索按钮操作 */
/** 搜索按钮操作 */ handleQuery() {
handleQuery() { this.queryParams.pageNum = 1;
this.queryParams.pageNum = 1; this.getList();
this.getList(); },
}, /** 重置按钮操作 */
/** 重置按钮操作 */ resetQuery() {
resetQuery() { this.resetForm("queryForm");
this.resetForm("queryForm");
// //
this.queryParams.createTimeArray = []; this.queryParams.createTimeArray = [];
this.queryParams.updateTimeArray = []; this.queryParams.updateTimeArray = [];
this.handleQuery(); this.handleQuery();
}, },
// //
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.faultId) this.ids = selection.map((item) => item.faultId);
this.single = selection.length!==1 this.single = selection.length !== 1;
this.multiple = !selection.length this.multiple = !selection.length;
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
this.reset(); this.reset();
this.open = true; this.open = true;
this.title = "添加故障类型维护"; this.title = "添加故障类型维护";
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row) {
this.reset(); this.reset();
const faultId = row.faultId || this.ids const faultId = row.faultId || this.ids;
getFaultType(faultId).then(response => { getFaultType(faultId).then((response) => {
this.form = response.data; this.form = response.data;
this.open = true; this.open = true;
this.title = "修改故障类型维护"; this.title = "修改故障类型维护";
}); });
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.$refs["form"].validate(valid => { this.$refs["form"].validate((valid) => {
if (valid) { if (valid) {
if (this.form.faultId != null) { if (this.form.faultId != null) {
updateFaultType(this.form).then(response => { updateFaultType(this.form).then((response) => {
if (response.code != 500) { if (response.code != 500) {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.open = false; this.open = false;
this.getList(); this.getList();
} }
}); });
} else { } else {
addFaultType(this.form).then(response => { addFaultType(this.form).then((response) => {
if (response.code != 500) { if (response.code != 500) {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.open = false; this.open = false;
this.getList(); this.getList();
} }
}); });
} }
} }
}); });
}, },
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const faultIds = row.faultId || this.ids; const faultIds = row.faultId || this.ids;
var faultCodes = ''; var faultCodes = "";
// //
for (let i = 0; i < this.faultList.length; i++) { for (let i = 0; i < this.faultList.length; i++) {
for (let j = 0; j < faultIds.length; j++) { for (let j = 0; j < faultIds.length; j++) {
if (faultIds[j] == this.faultList[i].faultId) { if (faultIds[j] == this.faultList[i].faultId) {
faultCodes = faultCodes + this.faultList[i].faultCode + ','; faultCodes = faultCodes + this.faultList[i].faultCode + ",";
} }
} }
} }
if (faultCodes == '') { if (faultCodes == "") {
for (let i = 0; i < this.faultList.length; i++) { for (let i = 0; i < this.faultList.length; i++) {
if (faultIds == this.faultList[i].faultId) { if (faultIds == this.faultList[i].faultId) {
faultCodes = this.faultList[i].faultCode; faultCodes = this.faultList[i].faultCode;
@ -478,19 +624,27 @@ export default {
} }
} }
this.$modal.confirm('是否确认删除故障类型维护编号为"' + faultCodes + '"的数据项?').then(function() { this.$modal
return delFaultType(faultIds); .confirm('是否确认删除故障类型维护编号为"' + faultCodes + '"的数据项?')
}).then(() => { .then(function () {
this.getList(); return delFaultType(faultIds);
this.$modal.msgSuccess("删除成功"); })
}).catch(() => {}); .then(() => {
}, this.getList();
/** 导出按钮操作 */ this.$modal.msgSuccess("删除成功");
handleExport() { })
this.download('device/faultType/export', { .catch(() => {});
...this.queryParams },
}, `faultType_${new Date().getTime()}.xlsx`) /** 导出按钮操作 */
} handleExport() {
} this.download(
"device/faultType/export",
{
...this.queryParams,
},
`faultType_${new Date().getTime()}.xlsx`
);
},
},
}; };
</script> </script>

@ -64,13 +64,13 @@
placeholder="请选择组线" placeholder="请选择组线"
style="width: 160px" style="width: 160px"
> >
<el-option <el-option
v-for="item in options" v-for="item in options"
:key="item.equipmentCode" :key="item.equipmentCode"
:label="item.equipmentName" :label="item.equipmentName"
:value="item.equipmentCode" :value="item.equipmentCode"
> >
</el-option> </el-option>
</el-select> </el-select>
</template> </template>
</el-form-item> </el-form-item>
@ -155,7 +155,7 @@ import {
getGroupLineList, getGroupLineList,
} from "@/api/device/faultReport"; } from "@/api/device/faultReport";
import {getEquList} from "@/api/device/plan"; import { getEquList } from "@/api/device/plan";
import { treeselect } from "@/api/wms/equipment"; import { treeselect } from "@/api/wms/equipment";
import { Message } from "element-ui"; import { Message } from "element-ui";
@ -215,7 +215,7 @@ export default {
itemId: null, itemId: null,
itemCode: null, itemCode: null,
itemType: null, itemType: null,
groupLine :null, groupLine: null,
}; };
this.resetForm("form"); this.resetForm("form");
}, },
@ -257,7 +257,6 @@ export default {
}); });
}, },
/** 查询分类下拉树结构 */ /** 查询分类下拉树结构 */
getEquipmentType() { getEquipmentType() {
getEquipmentTypeList().then((response) => { getEquipmentTypeList().then((response) => {
@ -291,7 +290,7 @@ export default {
this.queryParams.equipmentTypeCode = null; this.queryParams.equipmentTypeCode = null;
this.resetForm("queryForm"); this.resetForm("queryForm");
this.queryParams.pageNum = 1; this.queryParams.pageNum = 1;
this.getList() this.getList();
}, },
// //

@ -207,6 +207,7 @@
align="center" align="center"
prop="orderDesc" prop="orderDesc"
width="200" width="200"
:show-overflow-tooltip="true"
/> />
<el-table-column <el-table-column
label="故障时间" label="故障时间"
@ -218,7 +219,10 @@
<span>{{ parseTime(scope.row.orderBreakdownTime) }}</span> <span>{{ parseTime(scope.row.orderBreakdownTime) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="报修来源" align="center" prop="orderSource" /> <el-table-column
label="报修来源"
align="center"
prop="orderSource" />
<el-table-column <el-table-column
label="报修时间" label="报修时间"
align="center" align="center"
@ -240,6 +244,7 @@
align="center" align="center"
prop="orderRepairmanName" prop="orderRepairmanName"
width="150" width="150"
:show-overflow-tooltip="true"
/> />
<el-table-column <el-table-column
label="联系方式" label="联系方式"
@ -247,14 +252,22 @@
prop="orderConnection" prop="orderConnection"
width="120" width="120"
/> />
<el-table-column label="处理状态" align="center" prop="orderStatus" /> <el-table-column
label="处理状态"
align="center"
prop="orderStatus" />
<el-table-column <el-table-column
label="报修去向" label="报修去向"
align="center" align="center"
prop="repairDestination" prop="repairDestination"
width="120" width="120"
/> />
<el-table-column label="创建人" align="center" prop="createBy" /> <el-table-column
label="创建人"
align="center"
prop="createBy"
:show-overflow-tooltip="true"
/>
<el-table-column <el-table-column
label="创建时间" label="创建时间"
align="center" align="center"
@ -362,7 +375,12 @@
</el-descriptions> </el-descriptions>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="检查项信息" v-if="checkList != null"> <el-tab-pane label="检查项信息" v-if="checkList != null">
<el-table :data="checkList" border style="width: 100%" :span-method="objectSpanMethod"> <el-table
:data="checkList"
border
style="width: 100%"
:span-method="objectSpanMethod"
>
<el-table-column prop="itemTypeName" label="检查类型" width="100"> <el-table-column prop="itemTypeName" label="检查类型" width="100">
</el-table-column> </el-table-column>
<el-table-column prop="itemName" label="检查项名称" width="160"> <el-table-column prop="itemName" label="检查项名称" width="160">
@ -705,7 +723,12 @@
</el-descriptions> </el-descriptions>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="检查项信息" v-if="checkList != null"> <el-tab-pane label="检查项信息" v-if="checkList != null">
<el-table :data="checkList" border style="width: 100%" :span-method="objectSpanMethod"> <el-table
:data="checkList"
border
style="width: 100%"
:span-method="objectSpanMethod"
>
<el-table-column prop="itemTypeName" label="检查类型" width="100"> <el-table-column prop="itemTypeName" label="检查类型" width="100">
</el-table-column> </el-table-column>
<el-table-column prop="itemName" label="检查项名称" width="160"> <el-table-column prop="itemName" label="检查项名称" width="160">
@ -967,23 +990,23 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="故障描述" prop="orderDesc"> <el-form-item label="故障描述" prop="orderDesc">
<el-select <el-select
v-model="form.orderDesc" v-model="form.orderDesc"
@change="$forceUpdate()" @change="$forceUpdate()"
@blur="selectBlur" @blur="selectBlur"
clearable clearable
filterable filterable
style="width: 200px" style="width: 200px"
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
> >
<el-option <el-option
v-for="item in orderDescOption" v-for="item in orderDescOption"
:key="item.faultCode" :key="item.faultCode"
:label="item.faultSubclass" :label="item.faultSubclass"
:value="item.faultSubclass" :value="item.faultSubclass"
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
@ -1045,16 +1068,23 @@
:contentStyle="CS" :contentStyle="CS"
:label-style="LSP" :label-style="LSP"
> >
<el-image <div class="view_picture_body">
v-for="(item, index) in urlLists" <el-image
:key="index" v-for="(item, index) in urlLists"
:src="item" :key="index"
></el-image :src="item"
></el-descriptions-item> ></el-image>
</div>
</el-descriptions-item>
</el-descriptions> </el-descriptions>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="检查项信息" v-if="checkList != null"> <el-tab-pane label="检查项信息" v-if="checkList != null">
<el-table :data="checkList" border style="width: 100%" :span-method="objectSpanMethod"> <el-table
:data="checkList"
border
style="width: 100%"
:span-method="objectSpanMethod"
>
<el-table-column prop="itemTypeName" label="检查类型" width="100"> <el-table-column prop="itemTypeName" label="检查类型" width="100">
</el-table-column> </el-table-column>
<el-table-column prop="itemName" label="检查项名称" width="160"> <el-table-column prop="itemName" label="检查项名称" width="160">
@ -1160,7 +1190,7 @@ export default {
pageSize: 1000, pageSize: 1000,
}, },
// //
orderDescOption : [], orderDescOption: [],
teamOption: [], teamOption: [],
// //
fileList: [], fileList: [],
@ -1330,8 +1360,6 @@ export default {
second second
); );
} }
console.log(time);
console.log(nowDate(time));
this.form.workPlanTime = nowDate(time); this.form.workPlanTime = nowDate(time);
}, },
/** 查询维修措施列表 */ /** 查询维修措施列表 */
@ -1531,7 +1559,6 @@ export default {
}); });
this.checkList = standards; this.checkList = standards;
console.log(this.checkList);
} }
this.openView = true; this.openView = true;
@ -1543,7 +1570,6 @@ export default {
this.reset(); this.reset();
const orderId = row.orderId || this.ids; const orderId = row.orderId || this.ids;
getMaintenanceTeamList(this.queryParams).then((response) => { getMaintenanceTeamList(this.queryParams).then((response) => {
console.log(response.rows);
this.teamOption = response.rows; this.teamOption = response.rows;
}); });
getFaultReport(orderId).then((response) => { getFaultReport(orderId).then((response) => {
@ -1609,7 +1635,6 @@ export default {
}); });
this.checkList = standards; this.checkList = standards;
console.log(this.checkList);
} }
if ( if (
@ -1655,7 +1680,6 @@ export default {
if (Array.isArray(this.form.fileList)) { if (Array.isArray(this.form.fileList)) {
this.form.fileList = this.listToString(this.form.fileList); this.form.fileList = this.listToString(this.form.fileList);
} }
this.$refs["form"].validate((valid) => { this.$refs["form"].validate((valid) => {
if (valid) { if (valid) {
if (this.form.orderId != null) { if (this.form.orderId != null) {
@ -1757,7 +1781,6 @@ export default {
} }
} }
}, },
}, },
}; };
</script> </script>
@ -1767,4 +1790,9 @@ export default {
height: 400px; height: 400px;
overflow-y: auto; overflow-y: auto;
} }
.view_picture_body {
height: 300px;
overflow-y: auto;
}
</style> </style>

Loading…
Cancel
Save