feat(mes): 将物料大类从字典改为数据库表中获取

- 在 BaseMaterialInfo 实体类中将 materialCategories 字段改为 materialCategoryId
- 在 BaseMaterialInfoBo 和 BaseMaterialInfoVo 中做相应修改
- 更新 BaseMaterialInfoServiceImpl 中的查询逻辑,关联物料大类信息
- 修改前端页面,使用新的物料大类选项从数据库获取
- 更新相关类型定义,将物料大类改为数据库表字段
master
zch 4 months ago
parent 6db8164116
commit 82f8a1ff5b

@ -35,9 +35,9 @@ export interface BaseMaterialInfoVO {
materialTypeId: string | number;
/**
* (1 2 3)
* ()
*/
materialCategories: string;
materialCategoryId: string;
/**
*
@ -287,6 +287,11 @@ export interface BaseMaterialInfoVO {
*/
materialTypeName: string;//连表查询映射字段
/**
*
*/
materialCategoryName: string;
}
export interface BaseMaterialInfoForm extends BaseEntity {
@ -321,10 +326,9 @@ export interface BaseMaterialInfoForm extends BaseEntity {
materialTypeId?: string | number;
/**
* (1 2 3)
* ()
*/
materialCategories?: string;
materialCategoryId: string;
/**
*
*/
@ -538,6 +542,11 @@ export interface BaseMaterialInfoForm extends BaseEntity {
maxParkingHours?: number;
maxParkingMinutes?: number;
/**
*
*/
materialCategoryName: string;
}
export interface BaseMaterialInfoQuery extends PageQuery {
@ -573,9 +582,9 @@ export interface BaseMaterialInfoQuery extends PageQuery {
materialTypeId?: string | number;
/**
* (1 2 3)
* ()
*/
materialCategories?: string;
materialCategoryId: string;
/**
*
@ -781,6 +790,11 @@ export interface BaseMaterialInfoQuery extends PageQuery {
*
*/
params?: any;
/**
*
*/
materialCategoryName: string;
}

@ -52,9 +52,12 @@
<el-form-item label="物料类型ID" prop="materialTypeId">
<el-input v-model="queryParams.materialTypeId" placeholder="请输入物料类型ID" clearable @keyup.enter="handleQuery" />
</el-form-item>-->
<el-form-item label="物料大类" prop="materialCategories">
<el-select v-model="queryParams.materialCategories" placeholder="请选择物料大类" clearable >
<el-option v-for="dict in mes_material_categories" :key="dict.value" :label="dict.label" :value="dict.value"/>
<el-form-item label="物料大类" prop="materialCategoryId">
<el-select v-model="queryParams.materialCategoryId" placeholder="请选择物料大类" clearable >
<el-option v-for="dict in materialCategoryOptions"
:key="dict.materialCategoryId"
:label="dict.materialCategoryName"
:value="dict.materialCategoryId"/>
</el-select>
</el-form-item>
<!-- <el-form-item label="物料小类" prop="materialSubclass">
@ -252,11 +255,7 @@
<el-table-column label="物料名称" align="center" prop="materialName" v-if="columns[3].visible"/>
<!-- <el-table-column label="物料类型ID" align="center" prop="materialTypeId" v-if="columns[4].visible"/>-->
<el-table-column label="物料类型" align="center" prop="matrialTypeName" v-if="columns[4].visible"/>
<el-table-column label="物料大类" align="center" prop="materialCategories" v-if="columns[5].visible">
<template #default="scope">
<dict-tag :options="mes_material_categories" :value="scope.row.materialCategories"/>
</template>
</el-table-column>
<el-table-column label="物料大类" align="center" prop="materialCategoryName" v-if="columns[5].visible"/>
<el-table-column label="物料小类" align="center" prop="materialSubclass" v-if="columns[6].visible"/>
<el-table-column label="批次标识" align="center" prop="batchFlag" v-if="columns[7].visible">
<template #default="scope">
@ -264,7 +263,7 @@
</template>
</el-table-column>
<el-table-column label="小批次数量" align="center" prop="batchAmount" v-if="columns[8].visible"/>
<el-table-column label="计量单位ID" align="center" prop="materialUnitId" v-if="columns[9].visible"/>
<el-table-column label="计量单位" align="center" prop="materialUnitId" v-if="columns[9].visible"/>
<el-table-column label="计量单位名称" align="center" prop="materialUnit" v-if="columns[10].visible"/>
<el-table-column label="物料组" align="center" prop="materialMatkl" v-if="columns[11].visible"/>
<el-table-column label="物料规格" align="center" prop="materialSpec" v-if="columns[12].visible"/>
@ -428,13 +427,13 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item label="物料大类" prop="materialCategories">
<el-select v-model="form.materialCategories" placeholder="请选择物料大类">
<el-form-item label="物料大类" prop="materialCategoryId">
<el-select v-model="form.materialCategoryId" placeholder="请选择物料大类">
<el-option
v-for="dict in mes_material_categories"
:key="dict.value"
:label="dict.label"
:value="dict.value"
v-for="item in materialCategoryOptions"
:key="item.materialCategoryId"
:label="item.materialCategoryName"
:value="item.materialCategoryId"
></el-option>
</el-select>
</el-form-item>
@ -748,6 +747,7 @@ import {getBaseMeasurementUnitInfoList} from "@/api/mes/baseMeasurementUnitInfo"
import {BaseMeasurementUnitInfoVO} from "@/api/mes/baseMeasurementUnitInfo/types";
import { getBaseMaterialTypeList } from "@/api/mes/baseMaterialType";
import {getSysMasterDataDetailList} from "@/api/system/masterDataDetail";
import {getBaseMaterialCategoryList} from "@/api/mes/baseMaterialCategory";
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { apply_flag, inner_tube_flag,
@ -845,7 +845,10 @@ const initFormData: BaseMaterialInfoForm = {
oldMaterialCode: undefined,
materialName: undefined,
materialTypeId: undefined,
materialCategories: undefined,
materialCategoryId: undefined,// id
materialCategoryName: undefined,//
materialSubclass: undefined,
batchFlag: undefined,
batchAmount: undefined,
@ -906,7 +909,10 @@ const data = reactive<PageData<BaseMaterialInfoForm, BaseMaterialInfoQuery>>({
oldMaterialCode: undefined,
materialName: undefined,
materialTypeId: undefined,
materialCategories: undefined,
materialCategoryId: undefined,
materialCategoryName: undefined,
materialSubclass: undefined,
batchFlag: undefined,
batchAmount: undefined,
@ -1030,6 +1036,7 @@ const handleAdd = () => {
getspeedLevelList();
getloadList();
getMeasureUnit();
getMaterialType();
dialog.visible = true;
@ -1047,6 +1054,7 @@ const handleUpdate = async (row?: BaseMaterialInfoVO) => {
getspeedLevelList();
getloadList();
getMeasureUnit();
getMaterialType();
const _materialId = row?.materialId || ids.value[0]
@ -1226,19 +1234,21 @@ const getplyratingList = async () => {
const res = await getSysMasterDataDetailList({masterDataId: 4});
plyratingList.value = res.data;
};
//
let patternList = ref([]);
const getpatternList = async () => {
const res = await getSysMasterDataDetailList({masterDataId: 5});
patternList.value = res.data;
};
//
//
let speedLevelList = ref([]);
const getspeedLevelList = async () => {
const res = await getSysMasterDataDetailList({masterDataId: 7});
speedLevelList.value = res.data;
};
//
let loadList = ref([]);
const getloadList = async () => {
@ -1246,9 +1256,15 @@ const getloadList = async () => {
loadList.value = res.data;
};
//
let materialCategoryOptions = ref([]);
const getBaseMaterialCategorySelect = async () => {
const res = await getBaseMaterialCategoryList(null);
materialCategoryOptions.value = res.data;
}
onMounted(() => {
getBaseMaterialCategorySelect();
getInfoOptions();
getList();
});

Loading…
Cancel
Save