feat: 物料导入功能

This commit is contained in:
caoqianming 2024-03-04 10:47:36 +08:00
parent 03168c01d5
commit 962dae3fde
2 changed files with 32 additions and 1 deletions

View File

@ -135,6 +135,14 @@ export default {
data);
}
},
daoru: {
name: "导入",
req: async function(data){
return await http.post(
`${config.API_URL}/mtm/material/daoru/`,
data);
}
},
},
// 测点集
mgroup: {

View File

@ -3,6 +3,8 @@
<el-header>
<div class="left-panel">
<el-button type="primary" icon="el-icon-plus" @click="add" v-auth="'material.create'">新增</el-button>
<scFileImport :templateUrl="materialTemplate" accept=".xlsx" :apiObj="$API.common.upload" @success="upSuccess">
</scFileImport>
</div>
</el-header>
<el-main class="nopadding">
@ -30,12 +32,13 @@
<span><el-tag>{{ typeOptions[scope.row.type] }}</el-tag>
<el-tag type="warning" v-if="scope.row.is_assemb" effect="plain"></el-tag>
<el-tag type="warning" v-if="scope.row.process_name" effect="plain">{{ scope.row.process_name
}}</el-tag>
}}</el-tag>
<el-tag type="warning" v-if="scope.row.is_hidden" effect="plain"></el-tag></span>
</template>
</el-table-column>
<el-table-column label="关联物料" prop="brothers">
<template #default="scope">
<el-icon v-if="scope.row.brothers.length > 0" color="green">
<CircleCheckFilled />
@ -49,6 +52,7 @@
<el-table-column label="安全库存" prop="count_safe" width="80">
</el-table-column>
<el-table-column label="操作" fixed="right" align="center" width="140">
<template #default="scope">
<el-button link type="primary" @click="table_edit(scope.row)" v-auth="'material.update'">
编辑
@ -70,15 +74,23 @@
<save-dialog v-if="dialog.save" ref="saveDialog" @success="handleSaveSuccess"
@closed="dialog.save = false"></save-dialog>
</template>
<script>
import saveDialog from "./materials_form.vue";
import scFileImport from '@/components/scFileImport'
import scFileExport from '@/components/scFileExport'
import { ElLoading } from 'element-plus'
export default {
name: "rparty",
components: {
saveDialog,
scFileImport,
scFileExport,
ElLoading
},
data() {
return {
materialTemplate: '/media/template/material.xlsx',
dialog: {
save: false,
},
@ -181,6 +193,17 @@ export default {
resetQuery() {
this.query = {};
},
upSuccess(res, close) {
close();
const loading = ElLoading.service({ fullscreen: true, text: "解析中...请稍等" });
this.$API.mtm.material.daoru.req({ path: res.path }).then(res => {
loading.close();
this.$message.success("导入成功");
this.$refs.table.queryData(this.query)
}).catch(err => {
loading.close();
})
},
hiddenChange(val) {
if (val) {
this.query.is_hidden = ''