jdcProject_front/src/pages/demo/diceke/DicekeMiningrecord.vue

226 lines
8.5 KiB
Vue
Raw Normal View History

2025-05-02 17:02:48 +08:00
<script>
import {
2025-05-02 23:21:50 +08:00
adddicekeMiningrecord,
2025-05-02 17:02:48 +08:00
deletedicekeMiningrecord,
findAllMiningrecord,
2025-05-02 23:21:50 +08:00
finddicekeMiningrecordById, updatedicekeMiningrecord
2025-05-02 17:02:48 +08:00
} from "@@/apis/tables/diceke/DicekeMiningrecord.js"
2025-05-02 23:21:50 +08:00
import {findAllPlateArea} from "@@/apis/tables/diceke/plateArea.js";
import {findAllshovel} from "@@/apis/tables/diceke/shovel.js";
2025-05-02 17:02:48 +08:00
export default {
data() {
return {
dicekeMiningrecordQuery: null,
updatedicekeMiningrecordform: false,
2025-05-02 23:21:50 +08:00
dicekeMiningrecordform: null,
plateAreaQuerry: null,
shovelQuerry: null
2025-05-02 17:02:48 +08:00
}
},
created() {
// 页面渲染之前执行一般调用methods定义的方法
this.getList()
},
methods: {
getList() {
findAllMiningrecord().then((Response) => {
console.log(Response)
this.dicekeMiningrecordQuery = Response.data.dicekeMiningrecordVoList
console.log(this.dicekeMiningrecordQuery)
})
},
// 删除平盘
removeDataById(id) {
ElMessageBox.confirm(
"此操作将永久删除平盘记录,是否继续?",
"提示",
{
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}
)
.then(() => {
deletedicekeMiningrecord(id).then(() => {
// 删除成功
ElMessage({
type: "success",
message: "删除成功!"
})
// 重新加载列表
this.getList()
})
})
.catch(() => {
ElMessage({
type: "info",
message: "已取消删除"
})
})
},
2025-05-02 23:21:50 +08:00
handleAdd() {
this.isEdit = false;
this.dicekeMiningrecordform = {
shovelID: null,
plateID: null,
totalMiningTon: '',
metalTon: '',
miningGrade: '',
oxidationRate: '',
avgGrade: '',
dressingGrade: '',
avgOxidationRate: '',
beizhu: ''
}; // 清空表单内容
// 加载平盘和电产信息
Promise.all([findAllPlateArea(), findAllshovel()])
.then(([plateAreaResponse, shovelResponse]) => {
this.plateAreaQuerry = plateAreaResponse.data.plateArea;
this.shovelQuerry = shovelResponse.data.shovel;
this.updatedicekeMiningrecordform = true; // 数据加载完成后再打开弹窗
})
.catch(() => {
ElMessage.error("加载平盘和电产信息失败,请稍后重试");
});
this.updatedicekeMiningrecordform = true;
},
2025-05-02 17:02:48 +08:00
handleEdit(id) {
2025-05-02 23:21:50 +08:00
this.isEdit = true
2025-05-02 17:02:48 +08:00
finddicekeMiningrecordById(id).then((Response) => {
this.dicekeMiningrecordform = Response.data.dicekeMiningrecordServiceById
this.updatedicekeMiningrecordform = true
})
2025-05-02 23:21:50 +08:00
findAllPlateArea().then((Response)=>{
this.plateAreaQuerry = Response.data.plateArea
})
findAllshovel().then((Response)=>{
this.shovelQuerry = Response.data.shovel
})
},
updatePlateArea(){
if (this.isEdit){
updatedicekeMiningrecord(this.dicekeMiningrecordform).then(() => {
ElMessage({
type: "success",
message: "修改成功!"
})
this.updatedicekeMiningrecordform = false
this.getList()
}).catch(() => {
ElMessage.error("修改失败,请稍后重试")
})
}else{
adddicekeMiningrecord(this.dicekeMiningrecordform).then(() => {
ElMessage({
type: "success",
message: "新增成功!"
});
this.updatedicekeMiningrecordform = false;
this.getList(); // 刷新列表
}).catch(() => {
ElMessage.error("新增失败,请稍后重试");
});
}
2025-05-02 17:02:48 +08:00
}
}
}
</script>
<template>
<div class="app-container">
2025-05-02 23:21:50 +08:00
<div style="margin-bottom: 20px; display: flex; justify-content: space-between; align-items: center;">
<!-- 查询条件输入框 -->
<el-input v-model="searchQuery" placeholder="请输入铲号或平盘" style="width: 200px; margin-right: 10px;" />
<el-button type="primary" @click="searchData">查询</el-button>
<!-- 新增按钮 -->
<el-button
type="primary"
@click="handleAdd"
icon="el-icon-plus"
style="width: 100px; display: flex; justify-content: center; align-items: center;">
新增
</el-button>
</div>
2025-05-02 17:02:48 +08:00
<el-table :data="dicekeMiningrecordQuery" border style="width: 100%" :span-method="spanMethod">
<!-- 表格列定义 -->
<el-table-column prop="plateRange" label="平盘(#" />
<el-table-column prop="shovelCode" label="铲号(#" />
<el-table-column prop="totalMiningTon" label="采矿量t" />
<el-table-column prop="metalTon" label="金属量(#" />
<el-table-column prop="miningGrade" label="块段采矿品位(%" />
<el-table-column prop="oxidationRate" label="块段氧化率(%" />
<el-table-column prop="avgGrade" label="全月平均品位(%" />
<el-table-column prop="dressingGrade" label="选矿平均品位(%" />
<el-table-column prop="avgOxidationRate" label="全月平均氧化率(%" />
<el-table-column prop="beizhu" label="备注" />
<el-table-column fixed="right" label="操作" width="150" align="center">
<template #default="scope">
<div style="display: flex; justify-content: center; gap: 8px;">
<el-button type="primary" text bg size="small" plain @click="handleEdit(scope.row.recordID)">
修改
</el-button>
<el-button
type="danger"
text bg size="small"
@click="removeDataById(scope.row.recordID)"
>
删除
</el-button>
</div>
</template>
</el-table-column>
</el-table>
<el-dialog v-model="updatedicekeMiningrecordform" title="修改Mo品味信息" width="500">
<el-form :model="dicekeMiningrecordform">
2025-05-02 23:21:50 +08:00
<el-form-item label="电产" :label-width="formLabelWidth">
<el-select v-model="dicekeMiningrecordform.shovelID" placeholder="请选择电产">
<el-option v-for="shovel in shovelQuerry" :key="shovel.shovelID" :label="shovel.shovelCode" :value="shovel.shovelID" />
</el-select>
</el-form-item>
<el-form-item label="平盘" :label-width="formLabelWidth">
<el-select v-model="dicekeMiningrecordform.plateID" placeholder="请选择平盘">
<el-option v-for="plateArea in plateAreaQuerry" :key="plateArea.plateID" :label="plateArea.plateRange" :value="plateArea.plateID" />
</el-select>
</el-form-item>
2025-05-02 17:02:48 +08:00
<el-form-item label="采矿量t" :label-width="formLabelWidth">
<el-input v-model="dicekeMiningrecordform.totalMiningTon" autocomplete="off" />
</el-form-item>
<el-form-item label="金属量(#" :label-width="formLabelWidth">
<el-input v-model="dicekeMiningrecordform.metalTon" autocomplete="off" />
</el-form-item>
<el-form-item label="块段采矿品位(%" :label-width="formLabelWidth">
<el-input v-model="dicekeMiningrecordform.miningGrade" autocomplete="off" />
</el-form-item>
<el-form-item label="块段氧化率(%" :label-width="formLabelWidth">
<el-input v-model="dicekeMiningrecordform.oxidationRate" autocomplete="off" />
</el-form-item>
<el-form-item label="全月平均品位(%" :label-width="formLabelWidth">
<el-input v-model="dicekeMiningrecordform.avgGrade" autocomplete="off" />
</el-form-item>
<el-form-item label="选矿平均品位(%" :label-width="formLabelWidth">
<el-input v-model="dicekeMiningrecordform.dressingGrade" autocomplete="off" />
</el-form-item>
<el-form-item label="全月平均氧化率(%" :label-width="formLabelWidth">
<el-input v-model="dicekeMiningrecordform.avgOxidationRate" autocomplete="off" />
</el-form-item>
<el-form-item label="备注" :label-width="formLabelWidth">
<el-input v-model="dicekeMiningrecordform.beizhu" autocomplete="off" />
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="updatedicekeMiningrecordform = false">
取消
</el-button>
<el-button type="primary" @click="updatePlateArea">
提交
</el-button>
</div>
</template>
</el-dialog>
</div>
</template>