计量器具台账

This commit is contained in:
shijing 2023-09-05 17:05:54 +08:00
parent a932162058
commit db8e04276e
9 changed files with 659 additions and 89 deletions

View File

@ -660,6 +660,16 @@ const routes = [
},
"component": "em/equipment"
},
{
"name": "equipmentc",
"path": "/em/equipmentc",
"meta": {
"title": "计量设备",
"icon": "el-icon-cellphone",
"perms": ["equipment"]
},
"component": "em/equipmentc"
},
]
},
//事件

View File

@ -56,10 +56,11 @@
<template v-else-if="layout=='menu'">
<header class="adminui-header">
<div class="adminui-header-left">
<div class="logo-bar">
<!-- <img class="logo" src="img/bbmg.jpg">
<span>{{ $CONFIG.APP_NAME }}</span> -->
<div class="logo-bar" style="width: 202px;background: #ffffff;margin-right: 10px;border-radius: 5px;">
<img class="logo" :src="baseLogo">
<!-- <img class="logo" src="/img/bbmg.jpg"> -->
</div>
<div class="logo-bar">
<span>{{ baseName }}</span>
</div>
</div>

View File

@ -25,10 +25,10 @@ a,button,input,textarea{-webkit-tap-highlight-color:rgba(0,0,0,0);box-sizing: bo
/* 头部 */
.adminui-header {height: 58px;background: #222b45;color: #fff;display: flex;justify-content:space-between;}
.adminui-header-left {display: flex;align-items: center;padding-left:20px;}
.adminui-header-left {display: flex;align-items: center;padding-left:4px;}
.adminui-header-right {display: flex;align-items: center;}
.adminui-header .logo-bar {font-size: 20px;font-weight: bold;display: flex;align-items: center;}
.adminui-header .logo-bar .logo {margin-right: 10px;height: 45px;}
.adminui-header .logo-bar .logo {margin-right: 10px;height: 52px;background: #ffffff;display: inline-block;padding: 4px 10px;border-radius: 5px;margin:auto}
.adminui-header .nav {display: flex;height: 100%;margin-left: 40px;}
.adminui-header .nav li {padding:0 10px;margin: 0 10px 0 0;font-size: 14px;color: rgba(255, 255, 255, 0.6);list-style: none;height: 100%;display: flex;align-items: center;cursor: pointer;}
.adminui-header .nav li i {margin-right: 5px;}

View File

@ -299,9 +299,9 @@ export default {
this.ws.onopen = ()=> {
// debugger;
// console.log("socket");
// setTimeout(()=>{
// that.ws.send(JSON.stringify({'type': 'chat', 'msg': 'admin', 'to': 'admin'}))
// },5000)
setTimeout(()=>{
that.ws.send(JSON.stringify({'type': 'event'}))
},500)
}
//
@ -312,12 +312,10 @@ export default {
}if(data.type=='ticket'){
}if(data.type=='chat'){
}if(data.type=='remaind'){
}
};
// error
this.ws.onerror = function(error) {
console.log('ws断开,尝试重连')
@ -328,7 +326,7 @@ export default {
}
}
} ,
},
getMessage(msg) {
debugger;
console.log(msg);
@ -742,6 +740,7 @@ export default {
var mesh = scene.getMeshByName(key);
if (mesh) {
//
var rect1 = new BABYLON_GUI.Rectangle(value + '_rect');
rect1.width = "60px";
rect1.height = "30px";
@ -759,7 +758,7 @@ export default {
rect1.linkWithMesh(mesh);
rect1.linkOffsetY = -30;
// console.log(rect1)
console.log(rect1)
rect1.onPointerDownObservable.add(() => {
var mesh = rect1.linkedMesh;
if (camera.target != mesh.position) {
@ -780,6 +779,7 @@ export default {
});
//
// StackPanel
const data_view = new BABYLON_GUI.StackPanel(value + '_data_view');
data_view.width = '100px'; // StackPanel
data_view.bottom = rect1.bottom + 50 + 'px';
@ -787,28 +787,25 @@ export default {
data_view.cornerRadius = 4;
//
const textLines = ["电耗: 123", "产量: 123"];
for (let i = 0; i < textLines.length; i++) {
let textLine = textLines[i];
// new BABYLON_GUI.GUITextarea(id, options, guimanager, append)
const textA = new BABYLON_GUI.TextBlock();
textA.height = "20px"
textA.color = "white"
textA.text = textLine;
// text.fontSize = textLines[i].fontSize;
data_view.addControl(textA);
}
// StackPanelGUI
advancedTexture.addControl(data_view);
data_view.linkWithMesh(mesh);
data_view.linkOffsetY = -80;
}
}
engine.hideLoadingUI()
}, function (evt) {
},
function (evt) {
var loadedPercent = 0;
if (evt.lengthComputable) {
loadedPercent = parseInt(evt.loaded * 100 / evt.total);

View File

@ -113,7 +113,7 @@ export default {
apiObj: this.$API.em.equipment.list,
query: {
page:1,
page_size:40,
page_size:20,
type:10
},
selection: [],
@ -130,21 +130,21 @@ export default {
add() {
this.dialog.save = true;
this.$nextTick(() => {
this.$refs.saveDialog.open("add");
this.$refs.saveDialog.open("add",10);
});
},
//
table_edit(row) {
this.dialog.save = true;
this.$nextTick(() => {
this.$refs.saveDialog.open("edit").setData(row);
this.$refs.saveDialog.open("edit",10).setData(row);
});
},
//
table_show(row) {
this.dialog.save = true;
this.$nextTick(() => {
this.$refs.saveDialog.open("show").setData(row);
this.$refs.saveDialog.open("show",10).setData(row);
});
},
//

View File

@ -14,8 +14,26 @@
:rules="rules"
:disabled="mode == 'show'"
label-width="100px"
v-if="form.type==10"
>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="所属部门">
<el-select
v-model="form.belong_dept"
placeholder="所属部门"
clearable
style="width: 100%"
>
<el-option
v-for="item in group"
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="设备名称" prop="name">
<el-input v-model="form.name" placeholder="设备名称"/>
@ -26,13 +44,16 @@
<el-input v-model="form.number" placeholder="设备编号"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="型号规格">
<el-input v-model="form.model" placeholder="规格型号规格"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="生产厂">
<el-input v-model="form.factory" placeholder="生产厂"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="状态">
<el-select style="width: 100%" v-model="form.state" placeholder="请选择">
@ -46,9 +67,6 @@
</el-form-item>
</el-col>
</el-row>
<el-form-item label="生产厂">
<el-input v-model="form.factory" placeholder="生产厂"/>
</el-form-item>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="生产日期">
@ -79,7 +97,22 @@
<el-input-number v-model="form.power_kw" :precision="2" :min="0" controls-position="right" placeholder="用电功率"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="责任人" prop="leader_name">
<span style="display:flex">
<el-input readonly v-model="form.keeper_name"></el-input>
<ehsUserSelect :multiple="false" @submit="getReceptionist"/>
</span>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="存放位置">
<el-input v-model="form.place" placeholder="存放位置"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="技术参数">
<el-input
type="textarea"
@ -88,12 +121,30 @@
placeholder="技术参数"
/>
</el-form-item>
<el-form-item label="存放位置">
<el-input v-model="form.place" placeholder="存放位置"/>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="描述">
<el-input
type="textarea"
:rows="4"
v-model="form.description"
placeholder="描述"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-form
ref="dialogForm"
:model="form"
:rules="rules"
:disabled="mode == 'show'"
label-width="120px"
v-if="form.type==20"
>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="所属部门">
<el-form-item label="所属部门" prop="belong_dept">
<el-select
v-model="form.belong_dept"
placeholder="所属部门"
@ -110,29 +161,93 @@
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="班组班长" prop="leader_name">
<span style="display:flex">
<el-input readonly v-model="form.keeper_name"></el-input>
<ehsUserSelect :multiple="false" @submit="getReceptionist"/>
</span>
<el-form-item label="计量编号" prop="number">
<el-input v-model="form.number" placeholder="设备编号"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="设备名称" prop="name">
<el-input v-model="form.name" placeholder="设备名称"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="规格型号">
<el-input v-model="form.model" placeholder="规格型号"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="仪表类型">
<el-input v-model="form.model" placeholder="仪表类型"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="量范">
<el-input v-model="form.number" placeholder="量范"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="出厂编号">
<el-input v-model="form.number" placeholder="出厂编号"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="启用日期">
<el-date-picker
v-model="form.buy_date"
type="date"
placeholder="启用日期"
value-format="YYYY-MM-DD"
style="width:100%"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="测量介质">
<el-input v-model="form.number" placeholder="测量介质"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="接液材质">
<el-input v-model="form.number" placeholder="接液材质"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="管理等级">
<el-input v-model="form.number" placeholder="管理等级"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="生产厂家">
<el-input v-model="form.factory" placeholder="生产厂家"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="安装位置">
<el-input v-model="form.place" placeholder="安装位置"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="检定周期(月)">
<el-input-number v-model="form.cycle"
:precision="1" :min="0" controls-position="right"
style="width: 100%;"
placeholder="检定周期(月)"/>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="描述">
<el-form-item label="备注">
<el-input
type="textarea"
:rows="4"
v-model="form.description"
placeholder="描述"
placeholder="备注"
/>
</el-form-item>
</el-form>
</el-main>
<el-footer>
<el-button type="primary" :loading="isSaveing" @click="submit"
>保存</el-button
>
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button>
<el-button @click="visible = false">取消</el-button>
</el-footer>
</el-container>
@ -140,24 +255,7 @@
</template>
<script>
const defaultForm = {
state:10,
count:10,
cycle:10,
belong_dept:'',
keeper_name:'',
belong_dept_name:'',
name:'',
number:'',
model:'',
factory:'',
production_date:'',
buy_date:'',
parameter:'',
place:'',
description:'',
keeper:'',
};
export default {
emits: ["success", "closed"],
data() {
@ -177,7 +275,7 @@ export default {
name: [{required: true, message: "请输入", trigger: "blur"}],
number: [{required: true, message: "请输入", trigger: "blur"}],
keeper_name: [{required: true, message: "请输入", trigger: "blur"}],
belong_dept: [{required: true, message: "请选择", trigger: "blur"}]
belong_dept: [{required: true, message: "请选择所属部门", trigger: "blur"}]
},
options: [{
value: 10,
@ -218,9 +316,10 @@ export default {
},
//
open(mode = "add") {
open(mode = "add",type) {
this.mode = mode;
this.visible = true;
this.form.type=type;
return this;
},
//

288
src/views/em/equipmentc.vue Normal file
View File

@ -0,0 +1,288 @@
<template>
<el-container>
<el-header>
<div class="left-panel">
<el-input
v-model="query.search"
placeholder="名称"
clearable
style="margin-right: 5px;"
></el-input>
<el-button
type="primary"
icon="el-icon-search"
@click="handleQuery"
></el-button>
</div>
<div class="right-panel">
<el-button type="primary" icon="el-icon-plus" @click="add" v-auth="'equipment.create'"></el-button>
</div>
</el-header>
<el-main class="nopadding">
<scTable
ref="table"
:apiObj="apiObj"
row-key="id"
stripe
:params="query"
>
<el-table-column type="index" width="50"/>
<el-table-column label="设备名称" prop="name" show-overflow-tooltip>
</el-table-column>
<el-table-column label="计量编号" prop="number">
</el-table-column>
<el-table-column label="型号规格" prop="model">
</el-table-column>
<el-table-column label="仪表类型" prop="model">
</el-table-column>
<el-table-column label="量范" prop="model">
</el-table-column>
<el-table-column label="出厂编号" prop="model">
</el-table-column>
<el-table-column label="启用日期" prop="model">
</el-table-column>
<el-table-column label="测量介质" prop="model">
</el-table-column>
<el-table-column label="生产厂家" prop="factory" show-overflow-tooltip>
</el-table-column>
<el-table-column label="检定周期(月)" prop="cycle">
</el-table-column>
<el-table-column label="检定日期" prop="check_date">
</el-table-column>
<el-table-column label="到期日期" prop="next_check_date">
</el-table-column>
<el-table-column label="管理等级" prop="factory" show-overflow-tooltip>
</el-table-column>
<el-table-column label="安装位置" prop="place" show-overflow-tooltip>
</el-table-column>
<el-table-column label="备注" show-overflow-tooltip>
<template #default="scope">{{ scope.row.description }}</template>
</el-table-column>
<el-table-column label="操作" fixed="right" align="left">
<template #default="scope">
<el-link
type="primary"
v-if="scope.row.cycle!==null"
@click="table_edit(scope.row)"
v-auth="'equipment.update'"
>
检验
</el-link>
<el-link
type="primary"
@click="table_edit(scope.row)"
v-auth="'equipment.update'"
>
编辑
</el-link>
<el-divider direction="vertical"></el-divider>
<el-link
type="danger"
@click="table_del(scope.row)"
v-auth="'equipment.delete'"
>
删除
</el-link>
</template>
</el-table-column>
</scTable>
<el-dialog title="计量器具检验" v-model="visible">
<el-form
ref="dialogForm"
:rules="rules"
label-width="100px"
:model="form"
>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="检定时间" prop="happen_time">
<el-date-picker
v-model="form.happen_time"
type="datetime"
placeholder="检定时间"
value-format="YYYY-MM-DD HH:mm:ss"
style="width:100%"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="鉴定单位" prop="title">
<el-input v-model="form.title" placeholder="鉴定单位" />
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="检定结果" prop="cate">
<el-select style="width: 100%" v-model="form.cate" placeholder="检定结果">
<el-option
v-for="item in options"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-footer>
<el-button type="primary" :loading="isSaveing" @click="submit">保存</el-button>
<el-button @click="visible = false">取消</el-button>
</el-footer>
</el-dialog>
<el-drawer
title="检验记录"
v-model="visibleRecord"
:size="1000"
destroy-on-close
@closed="visibleRecord=false"
>
<el-container v-loading="loading">
<el-main style="padding: 0 20px 20px 20px">
<scTable
ref="table"
:apiObj="apiObj2"
row-key="id"
stripe
:params="query2"
>
<el-table-column type="index" width="50"/>
<el-table-column label="设备名称" prop="name" show-overflow-tooltip>
</el-table-column>
<el-table-column label="检定日期" prop="number">
</el-table-column>
<el-table-column label="检定结果" prop="model">
</el-table-column>
<el-table-column label="检定周期(月)" prop="factory" show-overflow-tooltip>
</el-table-column>
<el-table-column label="鉴定单位" prop="production_date">
</el-table-column>
</scTable>
</el-main>
</el-container>
</el-drawer>
</el-main>
</el-container>
<save-dialog
v-if="dialog.save"
ref="saveDialog"
@success="handleSaveSuccess"
@closed="dialog.save = false"
></save-dialog>
</template>
<script>
import saveDialog from "./equipment_form.vue";
export default {
name: "rparty",
components: {
saveDialog,
},
data() {
return {
dialog: {
save: false,
permission: false,
},
apiObj: this.$API.em.equipment.list,
query: {
page:1,
page_size:20,
type:20
},
apiObj2: this.$API.em.equipment.list,
query2: {
page:1,
page_size:20,
type:20
},
visible:true,
isSaveing:false,
visibleRecord:true,
selection: [],
state_: {
10: '完好',
20: '限用',
30: '在修',
40: '禁用',
},
options:[
{id:10,name: '完好'},
{id:20,name: '限用'},
{id:30,name: '在修'},
{id:40,name: '禁用'},
],
form:{},
rules: {
time: [{ required: true, message: "请选择检验时间" }],
},
};
},
methods: {
//
add() {
this.dialog.save = true;
this.$nextTick(() => {
this.$refs.saveDialog.open("add",20);
});
},
//
table_edit(row) {
this.dialog.save = true;
this.$nextTick(() => {
this.$refs.saveDialog.open("edit",20).setData(row);
});
},
//
table_show(row) {
this.dialog.save = true;
this.$nextTick(() => {
this.$refs.saveDialog.open("show",20).setData(row);
});
},
//
async table_del(row) {
this.$API.em.equipment.delete
.req(row.id)
.then((res) => {
this.$message.success("删除成功");
return res;
})
.catch((err) => {
return err;
});
},
//
submit() {
this.$refs.dialogForm.validate(async (valid) => {
if (valid) {
this.isSaveing = true;
this.$API.em.equipment.create.req(this.form).then(res=>{
this.visible = false;
this.isSaveing = false;
this.$message.success("操作成功");
this.$refs.table.refresh();
}).catch(()=>{
this.visible = false;
this.isSaveing = false;
})
}
});
},
//
handleSaveSuccess(data, mode) {
if (mode == "add") {
this.$refs.table.refresh();
} else if (mode == "edit") {
this.$refs.table.refresh();
}
},
handleQuery() {
this.$refs.table.queryData(this.query)
},
resetQuery() {
this.query = {};
},
},
};
</script>

View File

@ -183,6 +183,12 @@
highlightCurrentRow
>
<el-table-column type="index" width="50"/>
<el-table-column label="异常类别" prop="duration">
<template #default="scope">
<span v-if="scope.row.duration>0">停机</span>
<span v-else>其他</span>
</template>
</el-table-column>
<el-table-column label="发生时间" prop="happen_time"></el-table-column>
<el-table-column label="原因类别" prop="cate"></el-table-column>
<el-table-column label="异常名称" prop="title"></el-table-column>
@ -205,6 +211,22 @@
:model="expForm"
>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="异常类别">
<el-select style="width: 100%"
v-model="sflogexpType"
placeholder="异常类别"
:disabled="1"
>
<el-option
v-for="item in typeOptions"
:key="item.value"
:label="item.name"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="异常名称" prop="title">
<el-input v-model="expForm.title" placeholder="异常名称" />
@ -218,6 +240,7 @@
placeholder="发生时间"
value-format="YYYY-MM-DD HH:mm:ss"
style="width:100%"
:disabled="expTitle!=='新增异常'&&expForm.duration>0"
>
</el-date-picker>
</el-form-item>
@ -234,18 +257,31 @@
</el-select>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="12" :sm="24" v-if="sflogexpType==0">
<el-form-item label="停机时长">
<el-input-number
v-model="expForm.duration"
:precision="2" :min="0"
controls-position="right"
placeholder="停机时长"
:disabled="expTitle!=='新增异常'&&expForm.duration>0"
style="width: 100%;"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="处置措施">
<el-form-item label="异常原因" prop="reason">
<el-input
type="textarea"
:rows="2"
v-model="expForm.reason"
placeholder="异常原因"
/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="处置措施" prop="measure">
<el-input
type="textarea"
:rows="2"
@ -254,16 +290,6 @@
/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="停机原因">
<el-input
type="textarea"
:rows="2"
v-model="expForm.reason"
placeholder="停机原因"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-footer>
@ -299,9 +325,7 @@ import otherDialog from "./other_form.vue";
activeName:'fourth',
expTitle:'新增异常',
sflogItem:{},
form:{
},
form:{},
thirdForm:{
num:''
},
@ -311,18 +335,24 @@ import otherDialog from "./other_form.vue";
title:'',
reason:'',
measure:'',
duration:'',
duration:0,
sflog:'',
},
query:{
page:0,
},
rules: {
happen_time: [{ required: true, message: "请选择发生时间" }],
title: [{ required: true, message: "请填写异常名称" }],
cate: [{ required: true, message: "请选择原因类别" }],
reason: [{ required: true, message: "请填写异常原因" }],
measure: [{ required: true, message: "请填写处置措施" }],
},
sflogexpType:'1',
typeOptions:[
{value:'0',name:'停机'},
{value:'1',name:'其他'}
],
options:['工艺','电器','机械','其他'],
checkList:[],
teamOptions:[],
@ -425,7 +455,7 @@ import otherDialog from "./other_form.vue";
this.expForm.title='';
this.expForm.reason='';
this.expForm.measure='';
this.expForm.duration='';
this.expForm.duration=0;
this.expForm.sflog=this.form.id;
this.expTitle='新增异常';
this.visible = true;
@ -435,6 +465,7 @@ import otherDialog from "./other_form.vue";
Object.assign(this.expForm, row);
this.expTitle='编辑异常';
this.expForm.handler = this.$TOOL.data.get("USER_INFO").id;
if(this.expForm.duration>0){this.sflogexpType='0';}else{this.sflogexpType='1';}
this.visible = true;
},
//

144
src/views/home/event.vue Normal file
View File

@ -0,0 +1,144 @@
<template>
<el-container>
<el-header>
<div class="left-panel">
<el-input
v-model="query.search"
placeholder="名称"
clearable
style="margin-right: 5px;"
></el-input>
<el-button
type="primary"
icon="el-icon-search"
@click="handleQuery"
></el-button>
</div>
</el-header>
<el-main class="nopadding">
<scTable
ref="table"
:apiObj="apiObj"
row-key="id"
stripe
:params="query"
>
<el-table-column type="index" width="50"/>
<el-table-column label="所属部门" prop="name" show-overflow-tooltip>
</el-table-column>
<el-table-column label="所属工段" prop="number">
</el-table-column>
<el-table-column label="所在班组" prop="model">
</el-table-column>
<el-table-column label="所在班次" prop="factory" show-overflow-tooltip>
</el-table-column>
<el-table-column label="发生时间" prop="production_date">
</el-table-column>
<el-table-column label="发生类型" prop="buy_date">
</el-table-column>
<el-table-column label="状态">
<template #default="scope">
<el-tag v-if="scope.row.state===10" type="success">
{{ state_[scope.row.state] }}
</el-tag>
<el-tag v-else-if="scope.row.state===20" type="warning">
{{ state_[scope.row.state] }}
</el-tag>
<el-tag v-else-if="scope.row.state===30">
{{ state_[scope.row.state] }}
</el-tag>
<el-tag v-else type="danger">
{{ state_[scope.row.state] }}
</el-tag>
</template>
</el-table-column>
<el-table-column label="是否处理" show-overflow-tooltip>
<template #default="scope">{{ scope.row.parameter }}</template>
</el-table-column>
<el-table-column label="处理人">
<template #default="scope">{{ scope.row.keeper_name }}</template>
</el-table-column>
<el-table-column label="备注" show-overflow-tooltip>
<template #default="scope">{{ scope.row.description }}</template>
</el-table-column>
<el-table-column label="操作" fixed="right" align="left">
<template #default="scope">
<el-link
type="primary"
@click="table_handle(scope.row)"
v-auth="'equipment.update'"
>
处理
</el-link>
<el-divider direction="vertical"></el-divider>
<el-link
type="danger"
@click="table_del(scope.row)"
v-auth="'equipment.delete'"
>
删除
</el-link>
</template>
</el-table-column>
</scTable>
</el-main>
</el-container>
</template>
<script>
export default {
name: "rparty",
data() {
return {
apiObj: this.$API.em.equipment.list,
query: {
page:1,
page_size:20,
type:10
},
visible:false,
selection: [],
state_: {
10: '完好',
20: '限用',
30: '在修',
40: '禁用',
},
};
},
methods: {
//
table_handle(row) {
this.visible = true;
},
//
table_show(row) {
this.visible = true;
},
//
async table_del(row) {
this.$API.em.equipment.delete
.req(row.id)
.then((res) => {
this.$message.success("删除成功");
return res;
})
.catch((err) => {
return err;
});
},
//
handleSaveSuccess(data, mode) {
this.$refs.table.refresh();
},
handleQuery() {
this.$refs.table.queryData(this.query)
},
resetQuery() {
this.query = {};
},
},
};
</script>