1.新增商品库存库存盘点

2.操作出入库新增耗材操作
This commit is contained in:
gyq
2024-07-04 10:05:17 +08:00
parent 06101c6ed2
commit 7a3fd61550
7 changed files with 410 additions and 37 deletions

View File

@@ -0,0 +1,134 @@
<!-- 耗材列表 -->
<template>
<el-dialog title="选择耗材" :visible.sync="dialogVisible" @open="resetHandle()">
<el-form :model="searchForm" inline>
<el-form-item>
<el-input v-model="searchForm.conTypeName" placeholder="耗材类型名称"></el-input>
</el-form-item>
<el-form-item>
<el-input v-model="searchForm.conCode" placeholder="耗材代码"></el-input>
</el-form-item>
<el-form-item>
<el-input v-model="searchForm.conName" placeholder="耗材名称"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="getTableData">查询</el-button>
<el-button @click="resetHandle">重置</el-button>
</el-form-item>
</el-form>
<div class="head-container">
<el-table ref="table" :data="tableData.list" v-loading="tableData.loading">
<el-table-column label="耗材名称" prop="conName"></el-table-column>
<el-table-column label="价格" prop="price"></el-table-column>
<el-table-column label="耗材代码" prop="conCode"></el-table-column>
<el-table-column label="耗材类型名称" prop="conTypeName"></el-table-column>
<el-table-column label="单位" prop="conUnit"></el-table-column>
<el-table-column label="最近入库量" prop="lasterInStock"></el-table-column>
<el-table-column label="库存数量" prop="stockNumber"></el-table-column>
<el-table-column label="操作" fixed="right">
<template v-slot="scope">
<el-button type="primary" size="mini" @click="confirmHandle(scope.row)">选择</el-button>
</template>
</el-table-column>
</el-table>
</div>
<el-pagination :total="tableData.total" :current-page="tableData.page + 1" :page-size="tableData.size"
@current-change="paginationChange" @size-change="sizeChange"
layout="total, sizes, prev, pager, next, jumper"></el-pagination>
</el-dialog>
</template>
<script>
import { tbConsInfoGet } from "@/api/invoicing";
export default {
data() {
return {
dialogVisible: false,
searchForm: {
conTypeId: '',
conTypeName: '',
conCode: '',
conName: ''
},
resetSearchForm: '',
tableData: {
page: 0,
size: 10,
total: 0,
loading: false,
list: []
},
goods: []
}
},
mounted() {
this.resetSearchForm = { ...this.searchForm }
},
methods: {
// 确定选商品
confirmHandle(row) {
this.$emit('success', row)
this.close()
},
// 重置查询
resetHandle() {
this.searchForm = { ...this.resetSearchForm }
this.tableData.page = 0
this.tableData.size = 10
this.tableData.list = []
this.getTableData()
},
// 分页大小改变
sizeChange(e) {
this.tableData.size = e
this.getTableData()
},
// 分页回调
paginationChange(e) {
this.tableData.page = e - 1
this.getTableData()
},
// 耗材列表
async getTableData() {
this.tableData.loading = true
try {
const res = await tbConsInfoGet({
page: this.tableData.page,
size: this.tableData.size,
...this.searchForm
})
this.tableData.list = res.content
this.tableData.total = res.totalElements
if (this.goods.length) {
this.$nextTick(() => {
this.selection()
})
}
setTimeout(() => {
this.tableData.loading = false
}, 500);
} catch (error) {
console.log(error)
}
},
show(goods) {
this.dialogVisible = true
},
close() {
this.dialogVisible = false
}
}
}
</script>
<style scoped lang="scss">
.shop_info {
display: flex;
align-items: center;
span {
margin-left: 10px;
}
}
</style>