食材管理添加食材分类

This commit is contained in:
weiwei committed 2025-05-28 12:56:56 +08:00
1 parent c2ee643ce4
commit aa6cb653d9
4 files changed
+57 -30

No files matched your search

+32 -24
View File
@@ -1,41 +1,49 @@
import request from "/@/utils/request"
export function fetchList(query?: Object) {
return request({
url: '/canteen/canteenErpCategory/page',
method: 'get',
params: query
})
return request({
url: "/canteen/canteenErpCategory/page",
method: "get",
params: query,
})
}
export function addObj(obj?: Object) {
return request({
url: '/canteen/canteenErpCategory',
method: 'post',
data: obj
})
return request({
url: "/canteen/canteenErpCategory",
method: "post",
data: obj,
})
}
export function getObj(id?: string) {
return request({
url: '/canteen/canteenErpCategory/' + id,
method: 'get'
})
return request({
url: "/canteen/canteenErpCategory/" + id,
method: "get",
})
}
export function delObjs(ids?: Object) {
return request({
url: '/canteen/canteenErpCategory',
method: 'delete',
data: ids
})
return request({
url: "/canteen/canteenErpCategory",
method: "delete",
data: ids,
})
}
export function putObj(obj?: Object) {
return request({
url: '/canteen/canteenErpCategory',
method: 'put',
data: obj
})
return request({
url: "/canteen/canteenErpCategory",
method: "put",
data: obj,
})
}
// 食材分类下拉列表
export function getSimpleAll(obj?: Object) {
return request({
url: "/canteen/canteenErpCategory/simpleAll",
method: "get",
data: obj,
})
}
+21 -3
View File
@@ -7,7 +7,13 @@
<el-input v-model="form.name" placeholder="请输入食材名称" />
</el-form-item>
</el-col>
<el-col :span="12" class="mb20">
<el-form-item label="食材分类" prop="categoryId">
<el-select v-model="form.categoryId" placeholder="请选择食材分类">
<el-option v-for="item in canteenErpCategoryOptions" :key="item?.id" :label="item?.name" :value="item?.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12" class="mb20">
<el-form-item label="食材单位" prop="unit">
<el-input v-model="form.unit" placeholder="请输入食材单位" />
@@ -46,11 +52,11 @@
</template>
<script setup lang="ts" name="CanteenErpMaterialDialog">
import { useDict } from "/@/hooks/dict"
import { useMessage } from "/@/hooks/message"
import { getObj, addObj, putObj } from "/@/api/canteen/canteenErpMaterial"
import { rule } from "/@/utils/validate"
import { getSimpleAll } from "/@/api/canteen/canteenErpCategory"
import { displayPrice, storePrice } from "/@/utils/formatMoney"
const emit = defineEmits(["refresh"])
// 定义变量内容
@@ -63,18 +69,21 @@ const loading = ref(false)
const form = reactive({
id: "",
name: "",
categoryId: "",
unit: "",
purchasePrice: "",
baseStock: "",
inventoryLowerLimit: "",
inventoryUpperLimit: "",
})
const canteenErpCategoryOptions = ref<any>([])
// 定义校验规则
const dataRules = ref({
name: [{ required: true, message: "食材名称不能为空", trigger: "blur" }],
unit: [{ required: true, message: "食材单位不能为空", trigger: "blur" }],
purchasePrice: [{ required: true, message: "食材进价不能为空", trigger: "blur" }],
categoryId: [{ required: true, message: "食材分类不能为空", trigger: "blur" }],
})
// 打开弹窗
@@ -130,6 +139,15 @@ const getcanteenErpMaterialData = (id: string) => {
})
}
onMounted(async () => {
const res = await getSimpleAll()
if (res.code == 0) {
canteenErpCategoryOptions.value = res.data
} else {
canteenErpCategoryOptions.value = []
}
})
// 暴露变量
defineExpose({
openDialog,
@@ -43,8 +43,9 @@
>
<el-table-column type="selection" width="40" align="center" />
<el-table-column type="index" label="#" width="40" />
<el-table-column prop="name" label="商品名称" show-overflow-tooltip />
<el-table-column prop="unit" label="商品单位" show-overflow-tooltip />
<el-table-column prop="name" label="食材名称" show-overflow-tooltip />
<el-table-column prop="categoryName" label="食材分类" show-overflow-tooltip />
<el-table-column prop="unit" label="食材单位" show-overflow-tooltip />
<el-table-column prop="purchasePrice" label="进价" show-overflow-tooltip>
<template #default="{ row }">{{ displayPrice(row.purchasePrice, "") }}</template>
</el-table-column>
+1 -1
View File
@@ -69,7 +69,7 @@
<el-table-column prop="createTime" label="创建时间" />
<el-table-column label="操作" width="200">
<template #default="{ row }">
<el-button v-if="row.processStatus == 1 && row.isCheckUser" icon="VideoPlay" text type="primary" @click="deal(row)">
<el-button v-if="row.processStatus == '1' && row.isCheckUser" icon="VideoPlay" text type="primary" @click="deal(row)">
开始处理
</el-button>
<el-button