feat: 添加mpoint相应功能页面

This commit is contained in:
caoqianming 2024-04-10 10:40:32 +08:00
parent c16c5fcd17
commit cafe762fd4
3 changed files with 90 additions and 23 deletions

View File

@ -93,6 +93,14 @@ export default {
data);
}
},
kingSync:{
name: "同步亚控测点",
req: async function(data){
return await http.post(
`${config.API_URL}/enm/mpoint/king_sync/`,
data);
}
}
},
enstat: {
name: "测点原始记录",

View File

@ -1,12 +1,30 @@
<template>
<el-container>
<el-header>
<div class="left-panel">
<el-button type="primary" icon="el-icon-plus" @click="table_add" v-auth="'mpoint.create'">新增</el-button>
<el-button type="warning" @click="king_sync" v-auth="'mpoint.create'">同步亚控测点</el-button>
<el-button type="primary" @click="batchUpdate" v-auth="'mpoint.update'">批量修改</el-button>
</div>
<div class="right-panel">
<el-select v-model="query.enabled" placeholder="是否启用" @change="handleQuery" clearable>
<el-option v-for="e in boolEnum.values" :key="e.key" :value="e.key"
:label="e.text"></el-option>
</el-select>
<el-select v-model="query.is_auto" placeholder="是否自采" @change="handleQuery" clearable>
<el-option v-for="e in boolEnum.values" :key="e.key" :value="e.key"
:label="e.text"></el-option>
</el-select>
<el-select v-model="query.val_type" placeholder="值类型" @change="handleQuery" clearable>
<el-option v-for="e in valTypeEnum.values" :key="e.key" :value="e.key"
:label="e.text"></el-option>
</el-select>
<el-input
v-model="query.search"
placeholder="名称"
placeholder="名称/代号"
style="width:200px"
clearable
style="margin-right: 5px;"
></el-input>
<el-button
type="primary"
@ -14,18 +32,34 @@
@click="handleQuery"
></el-button>
</div>
<div class="right-panel">
<el-button type="primary" icon="el-icon-plus" @click="table_add" v-auth="'mpoint.create'"></el-button>
</div>
</el-header>
<el-main class="nopadding">
<scTable ref="table" :apiObj="apiObj" row-key="id" @selection-change="selectionChange" hidePagination>
<el-table-column label="#" type="index" width="50"></el-table-column>
<el-table-column label="名称" prop="name" min-width="100"></el-table-column>
<el-table-column label="计量物料" prop="material_name" min-width="150"></el-table-column>
<el-table-column label="所属部门" prop="belong_dept_name" min-width="150"></el-table-column>
<el-table-column label="所属工段" prop="mgroup_name" min-width="150"></el-table-column>
<el-table-column label="创建时间" prop="create_time" min-width="150"></el-table-column>
<scTable ref="table" :apiObj="apiObj" row-key="id" remoteSort @selection-change="selectionChange">
<el-table-column type="selection" width="50" />
<el-table-column label="名称" prop="name" width="360" show-overflow-tooltip sortable></el-table-column>
<el-table-column label="代号" prop="code" width="130" show-overflow-tooltip></el-table-column>
<el-table-column label="是否启用" width="80">
<template #default="scope">
<el-icon v-if="scope.row.enabled" color="green"
><CircleCheckFilled
/></el-icon>
<el-icon v-else color="red"><CircleCloseFilled /></el-icon>
</template>
</el-table-column>
<el-table-column label="自动采集" width="80">
<template #default="scope">
<el-icon v-if="scope.row.is_auto" color="green"
><CircleCheckFilled
/></el-icon>
<el-icon v-else color="red"><CircleCloseFilled /></el-icon>
</template>
</el-table-column>
<el-table-column label="采集间隔(s)" prop="interval" width="100"></el-table-column>
<el-table-column label="值类型" prop="val_type"></el-table-column>
<el-table-column label="单位" prop="unit"></el-table-column>
<el-table-column label="计量物料" prop="material_name"></el-table-column>
<el-table-column label="所属工段" prop="mgroup_name"></el-table-column>
<el-table-column label="创建时间" prop="create_time" sortable></el-table-column>
<el-table-column label="操作" fixed="right" align="center" width="140">
<template #default="scope">
<el-button link size="small" @click="table_edit(scope.row)" v-auth="'mpoint.update'" type="primary">编辑</el-button>
@ -57,6 +91,7 @@
</template>
<script>
import saveDialog from "./mpoint_form.vue";
import { valTypeEnum, boolEnum } from "@/utils/enum.js";
export default {
name: "rparty",
components: {
@ -64,6 +99,8 @@ export default {
},
data() {
return {
valTypeEnum,
boolEnum,
logShow:false,
dialog: {
save: false,
@ -71,7 +108,7 @@ export default {
},
apiObj: this.$API.enm.mpoint.list,
query: {},
selection: [],
selection: []
};
},
methods: {
@ -103,7 +140,7 @@ export default {
//
table_del(row) {
var id = row.id;
this.$API.mtm.team.delete.req(id).then(res=>{
this.$API.enm.mpoint.delete.req(id).then(res=>{
if(res.err_msg){
this.$message.error(res.err_msg)
}else{
@ -112,7 +149,14 @@ export default {
}
})
},
king_sync() {
const loading = this.$loading({text: '正在同步亚控测点...'});
this.$API.enm.mpoint.kingSync.req().then(res=>{
this.$refs.table.refresh();
}).finally(()=>{
loading.close()
})
},
//
handleSaveSuccess(data, mode) {
this.$refs.table.refresh();
@ -123,6 +167,9 @@ export default {
resetQuery() {
this.query = {};
},
selectionChange(rows){
console.log('m', rows)
}
},
};
</script>

View File

@ -82,21 +82,31 @@
</el-select>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="工段数据">
<el-switch v-model="form.is_all"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="24" :sm="24">
<el-form-item label="计算公式">
<el-input v-model="form.formula" clearable></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="8" :sm="24">
<el-form-item label="是否启用">
<el-switch v-model="form.enabled"/>
</el-form-item>
</el-col>
<el-col :md="8" :sm="24">
<el-form-item label="自动采集">
<el-switch v-model="form.is_auto"/>
</el-form-item>
</el-col>
<el-col :md="8" :sm="24">
<el-form-item label="采集间隔(s)" label-width="90">
<el-input-number v-model="form.interval"></el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="工段数据">
<el-switch v-model="form.is_all"/>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="所属工段" prop="mgroup">
<el-select
@ -186,6 +196,8 @@ export default {
belong_dept:null,
mgroup:null,
mgroups_allocate:[],
interval: 10,
func_on_change: ''
},
rules: {
name: [{required: true, message: '请输入测点名称'}],
@ -230,7 +242,7 @@ export default {
},
//
getMaterial(){
this.$API.mtm.material.list.req({page:0}).then(res=>{
this.$API.mtm.material.list.req({page:0, type__in:"0, 30"}).then(res=>{
this.materials = res;
})
},