仓储半成品页面添加物料,仓库,库位下拉框

master
maxw@mesnac.com 5 days ago
parent 1c64b04b43
commit 9f3d99445c

@ -11,10 +11,17 @@
<el-input v-model="queryParams.shelfNo" placeholder="请输入工装架子号" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="库位id" prop="storePlaceId">
<el-input v-model="queryParams.storePlaceId" placeholder="请输入库位id" clearable @keyup.enter="handleQuery" />
<el-select v-model="queryParams.storePlaceId" placeholder="请选择所属仓库">
<el-option
v-for="item in baseStoreList"
:key="item.objId"
:label="item.storePlaceCode"
:value="item.objId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="品级编号" prop="gradeCode">
<el-select v-model="form.gradeCode" placeholder="请选择品级编号">
<el-select v-model="queryParams.gradeCode" placeholder="请选择品级编号">
<el-option
v-for="dict in wms_grade_code"
:key="dict.value"
@ -24,7 +31,7 @@
</el-select>
</el-form-item>
<el-form-item label="产品类别" prop="productCategory">
<el-select v-model="form.gradeCode" placeholder="请选择产品类别">
<el-select v-model="queryParams.gradeCode" placeholder="请选择产品类别">
<el-option
v-for="dict in wms_product_category"
:key="dict.value"
@ -34,7 +41,14 @@
</el-select>
</el-form-item>
<el-form-item label="物料" prop="materialId">
<el-input v-model="queryParams.materialId" placeholder="请输入物料" clearable @keyup.enter="handleQuery" />
<el-select v-model="queryParams.materialId" placeholder="请选择物料">
<el-option
v-for="item in materialList"
:key="item.materialId"
:label="item.materialCode"
:value="item.materialId"
/>
</el-select>
</el-form-item>
<el-form-item label="入库类型" prop="instockType">
<el-select v-model="queryParams.instockType" placeholder="请选择入库类型,0:半制品产出,2:入半制品线边库3:入成型线边库" clearable >
@ -74,7 +88,7 @@
<!-- <el-table-column label="主键id" align="center" prop="objId" v-if="columns[0].visible"/> -->
<el-table-column label="流水卡号" align="center" prop="cardNo" v-if="columns[6].visible"/>
<el-table-column label="工装架子号" align="center" prop="shelfNo" v-if="columns[7].visible"/>
<el-table-column label="库位id" align="center" prop="storePlaceId" v-if="columns[8].visible"/>
<el-table-column label="库位" align="center" prop="storePlaceCode" v-if="columns[8].visible"/>
<el-table-column label="品级编号" align="center" prop="gradeCode" v-if="columns[9].visible">
<template #default="scope">
<dict-tag :options="wms_grade_code" :value="scope.row.gradeCode"/>
@ -85,7 +99,7 @@
<dict-tag :options="wms_product_category" :value="scope.row.productCategory"/>
</template>
</el-table-column>
<el-table-column label="物料" align="center" prop="materialId" v-if="columns[11].visible"/>
<el-table-column label="物料" align="center" prop="materialCode" v-if="columns[11].visible"/>
<el-table-column label="物料规格" align="center" prop="materialSpec" v-if="columns[12].visible"/>
<el-table-column label="入库数量" align="center" prop="instockNum"/>
<el-table-column label="入库类型" align="center" prop="instockType" v-if="columns[13].visible">
@ -158,7 +172,8 @@
<script setup name="HppInStockDetail" lang="ts">
import { listHppInStockDetail, getHppInStockDetail, delHppInStockDetail, addHppInStockDetail, updateHppInStockDetail } from '@/api/wms/hppInStockDetail';
import { HppInStockDetailVO, HppInStockDetailQuery, HppInStockDetailForm } from '@/api/wms/hppInStockDetail/types';
import { getWmsHppStorePlaceList } from '@/api/wms/hppStorePlace';
import { getMaterialListVo } from '@/api/wms/instockDetail';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { wms_grade_code, wms_product_category, wms_halfproduct_instock_type } = toRefs<any>(proxy?.useDict('wms_grade_code','wms_product_category','wms_halfproduct_instock_type'));
const hppInStockDetailList = ref<HppInStockDetailVO[]>([]);
@ -256,7 +271,17 @@ const data = reactive<PageData<HppInStockDetailForm, HppInStockDetailQuery>>({
});
const { queryParams, form, rules } = toRefs(data);
let baseStoreList = ref([]);
const materialList = ref([]);
const getStorePlaceList = async () => {
let res = await getWmsHppStorePlaceList(null);
baseStoreList.value = res.data;
};
const getMaterialList = async () => {
const res = await getMaterialListVo(null);
console.log(res.data);
materialList.value = res.data;
}
/** 查询半制品入库列表 */
const getList = async () => {
loading.value = true;
@ -348,6 +373,8 @@ const handleExport = () => {
}
onMounted(() => {
getMaterialList();
getStorePlaceList();
getList();
});
</script>

@ -7,11 +7,18 @@
<el-form-item label="流水卡号" prop="cardNo">
<el-input v-model="queryParams.cardNo" placeholder="请输入流水卡号" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="工装架子" prop="shelfNo">
<el-form-item label="工装架子" prop="shelfNo">
<el-input v-model="queryParams.shelfNo" placeholder="请输入工装架子号" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="库位" prop="storePlaceId">
<el-input v-model="queryParams.storePlaceId" placeholder="请输入库位" clearable @keyup.enter="handleQuery" />
<el-select v-model="queryParams.storePlaceId" placeholder="请选择所属仓库">
<el-option
v-for="item in baseStoreList"
:key="item.objId"
:label="item.storePlaceCode"
:value="item.objId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="品级编号" prop="gradeCode">
<el-select v-model="form.gradeCode" placeholder="请选择品级编号">
@ -29,7 +36,14 @@
</el-select>
</el-form-item>
<el-form-item label="目的库位" prop="targetStorePlaceId">
<el-input v-model="queryParams.targetStorePlaceId" placeholder="请输入目的库位" clearable @keyup.enter="handleQuery" />
<el-select v-model="queryParams.targetStorePlaceId" placeholder="请选择所属库位">
<el-option
v-for="item in baseStoreList"
:key="item.objId"
:label="item.storePlaceCode"
:value="item.objId"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery"></el-button>
@ -64,7 +78,7 @@
<!-- <el-table-column label="主键id" align="center" prop="objId" v-if="columns[0].visible"/> -->
<el-table-column label="流水卡号" align="center" prop="cardNo" v-if="columns[6].visible"/>
<el-table-column label="工装架子号" align="center" prop="shelfNo" v-if="columns[7].visible"/>
<el-table-column label="库位id" align="center" prop="storePlaceId" v-if="columns[8].visible"/>
<el-table-column label="库位id" align="center" prop="storePlaceCode" v-if="columns[8].visible"/>
<el-table-column label="品级编号" align="center" prop="gradeCode" v-if="columns[9].visible">
<template #default="scope">
<dict-tag :options="wms_grade_code" :value="scope.row.gradeCode"/>
@ -75,7 +89,7 @@
<dict-tag :options="wms_outstock_type" :value="scope.row.outType"/>
</template>
</el-table-column>
<el-table-column label="目的库位" align="center" prop="targetStorePlaceId" v-if="columns[11].visible"/>
<el-table-column label="目的库位" align="center" prop="targertStorePlaceCode" v-if="columns[11].visible"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template #default="scope">
<el-tooltip content="修改" placement="top">
@ -132,7 +146,7 @@
<script setup name="HppOutStockDetail" lang="ts">
import { listHppOutStockDetail, getHppOutStockDetail, delHppOutStockDetail, addHppOutStockDetail, updateHppOutStockDetail } from '@/api/wms/hppOutStockDetail';
import { HppOutStockDetailVO, HppOutStockDetailQuery, HppOutStockDetailForm } from '@/api/wms/hppOutStockDetail/types';
import { getWmsHppStorePlaceList } from '@/api/wms/hppStorePlace';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { wms_grade_code, wms_product_category, wms_outstock_type } = toRefs<any>(proxy?.useDict('wms_grade_code','wms_product_category','wms_outstock_type'));
const hppOutStockDetailList = ref<HppOutStockDetailVO[]>([]);
@ -143,7 +157,7 @@ const ids = ref<Array<string | number>>([]);
const single = ref(true);
const multiple = ref(true);
const total = ref(0);
let baseStoreList = ref([]);
const queryFormRef = ref<ElFormInstance>();
const hppOutStockDetailFormRef = ref<ElFormInstance>();
@ -227,6 +241,10 @@ const getList = async () => {
total.value = res.total;
loading.value = false;
}
const getStorePlaceList = async () => {
let res = await getWmsHppStorePlaceList(null);
baseStoreList.value = res.data;
};
/** 取消按钮 */
const cancel = () => {
@ -310,6 +328,7 @@ const handleExport = () => {
}
onMounted(() => {
getStorePlaceList();
getList();
});
</script>

@ -15,11 +15,25 @@
<el-option v-for="dict in ${dictType}" :key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item> -->
<el-form-item label="物料Id" prop="materialId">
<el-input v-model="queryParams.materialId" placeholder="请输入物料Id" clearable @keyup.enter="handleQuery" />
<el-form-item label="物料" prop="materialId">
<el-select v-model="form.materialId" placeholder="请选择物料">
<el-option
v-for="item in materialList"
:key="item.materialId"
:label="item.materialCode"
:value="item.materialId"
/>
</el-select>
</el-form-item>
<el-form-item label="库位id" prop="storePlaceId">
<el-input v-model="queryParams.storePlaceId" placeholder="请输入库位id" clearable @keyup.enter="handleQuery" />
<el-form-item label="库位" prop="storePlaceId">
<el-select v-model="queryParams.storePlaceId" placeholder="请选择所属仓库">
<el-option
v-for="item in baseStoreList"
:key="item.objId"
:label="item.storePlaceCode"
:value="item.objId"
></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery"></el-button>
@ -59,8 +73,8 @@
<dict-tag :options="wms_halfproduct_instock_type" :value="scope.row.instockType"/>
</template>
</el-table-column>
<el-table-column label="物料Id" align="center" prop="materialId" v-if="columns[9].visible"/>
<el-table-column label="库位id" align="center" prop="storePlaceId" v-if="columns[10].visible"/>
<el-table-column label="物料" align="center" prop="materialCode" v-if="columns[9].visible"/>
<el-table-column label="库位" align="center" prop="storePlaceCode" v-if="columns[10].visible"/>
<el-table-column label="密炼来料数量" align="center" prop="sourceNum" v-if="columns[11].visible"/>
<el-table-column label="库存数量" align="center" prop="storageNum" v-if="columns[12].visible"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@ -125,7 +139,8 @@
<script setup name="HppStorageDetail" lang="ts">
import { listHppStorageDetail, getHppStorageDetail, delHppStorageDetail, addHppStorageDetail, updateHppStorageDetail } from '@/api/wms/hppStorageDetail';
import { HppStorageDetailVO, HppStorageDetailQuery, HppStorageDetailForm } from '@/api/wms/hppStorageDetail/types';
import { getWmsHppStorePlaceList } from '@/api/wms/hppStorePlace';
import { getMaterialListVo } from '@/api/wms/instockDetail';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { wms_halfproduct_instock_type } = toRefs<any>(proxy?.useDict('wms_halfproduct_instock_type'));
const hppStorageDetailList = ref<HppStorageDetailVO[]>([]);
@ -136,7 +151,7 @@ const ids = ref<Array<string | number>>([]);
const single = ref(true);
const multiple = ref(true);
const total = ref(0);
const materialList = ref([]);
const queryFormRef = ref<ElFormInstance>();
const hppStorageDetailFormRef = ref<ElFormInstance>();
@ -217,7 +232,16 @@ const data = reactive<PageData<HppStorageDetailForm, HppStorageDetailQuery>>({
});
const { queryParams, form, rules } = toRefs(data);
let baseStoreList = ref([]);
const getMaterialList = async () => {
const res = await getMaterialListVo(null);
console.log(res.data);
materialList.value = res.data;
}
const getStorePlaceList = async () => {
let res = await getWmsHppStorePlaceList(null);
baseStoreList.value = res.data;
};
/** 查询半成品库存列表 */
const getList = async () => {
loading.value = true;
@ -309,6 +333,8 @@ const handleExport = () => {
}
onMounted(() => {
getMaterialList();
getStorePlaceList();
getList();
});
</script>

@ -93,7 +93,14 @@
<el-input v-model="form.storePlaceCode" placeholder="请输入库位代码" />
</el-form-item>
<el-form-item label="仓库id" prop="storeId">
<el-input v-model="form.storeId" placeholder="请输入仓库id" />
<el-select v-model="form.objId" placeholder="请选择所属仓库">
<el-option
v-for="item in StoreList"
:key="item.objId"
:label="item.storeCode"
:value="item.objId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="特殊库位" prop="specitialType">
<el-select v-model="form.specitialType" placeholder="请选择特殊库位">
@ -129,6 +136,7 @@
<script setup name="HppStorePlace" lang="ts">
import { listHppStorePlace, getHppStorePlace, delHppStorePlace, addHppStorePlace, updateHppStorePlace } from '@/api/wms/hppStorePlace';
import { HppStorePlaceVO, HppStorePlaceQuery, HppStorePlaceForm } from '@/api/wms/hppStorePlace/types';
import { getWmsHppStoreList } from '@/api/wms/hppStore';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { wms_specitial_location, wms_position_type, wms_halfproduct_used } = toRefs<any>(proxy?.useDict('wms_specitial_location','wms_position_type','wms_halfproduct_used'));
@ -215,7 +223,7 @@ const data = reactive<PageData<HppStorePlaceForm, HppStorePlaceQuery>>({
});
const { queryParams, form, rules } = toRefs(data);
let StoreList = ref([]);
/** 查询半成品库位列表 */
const getList = async () => {
loading.value = true;
@ -224,7 +232,10 @@ const getList = async () => {
total.value = res.total;
loading.value = false;
}
const getStoreList = async () => {
let res = await getWmsHppStoreList(null);
StoreList.value = res.data;
};
/** 取消按钮 */
const cancel = () => {
reset();
@ -307,6 +318,7 @@ const handleExport = () => {
}
onMounted(() => {
getStoreList();
getList();
});
</script>

@ -79,7 +79,7 @@
</el-card>
<!-- 添加或修改半成品工装对话框 -->
<el-dialog :title="dialog.title" v-model="dialog.visible" width="500px" append-to-body>
<el-form ref="hsmToolingFormRef" :model="form" :rules="rules" label-width="80px">
<el-form ref="hsmToolingFormRef" :model="form" :rules="rules" label-width="120px">
<el-form-item label="工装条码" prop="toolingBarcode">
<el-input v-model="form.toolingBarcode" placeholder="请输入工装条码" />
</el-form-item>

@ -127,6 +127,16 @@
<el-form-item label="回退数量" prop="returnQty">
<el-input v-model="form.returnQty" placeholder="请输入回退数量" v-if="returnFlag"/>
</el-form-item>
<el-form-item label="实际退库库位" prop="returnLocationCode">
<el-select v-model="form.returnLocationCode" placeholder="请选择所属仓库">
<el-option
v-for="item in baseStoreList"
:key="item.locationId"
:label="item.locationCode"
:value="item.locationCode"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="物料大类" prop="materialCategories">
<el-select v-model="form.materialCategories" placeholder="" :disabled="returnFlag">
<el-option
@ -168,7 +178,7 @@
import { listOutstockRecord, getOutstockRecord, delOutstockRecord, addOutstockRecord, updateOutstockRecord } from '@/api/wms/outstockRecord';
import { OutstockRecordVO, OutstockRecordQuery, OutstockRecordForm } from '@/api/wms/outstockRecord/types';
import { DocumentAdd } from '@element-plus/icons-vue';
import {getWmsBaseLocationVoList} from "@/api/wms/baseLocation";
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { sys_common_status, wms_return_flag, material_mategories, } = toRefs<any>(proxy?.useDict('sys_common_status','material_mategories','wms_return_flag'));
@ -239,7 +249,12 @@ const data = reactive<PageData<OutstockRecordForm, OutstockRecordQuery>>({
});
const { queryParams, form, rules } = toRefs(data);
let baseStoreList = ref([]);
/** 查询车间下拉树结构 */
const getBaseWarehouseListsss = async () => {
let res = await getWmsBaseLocationVoList(null);
baseStoreList.value = res.data;
};
/** 查询出库记录列表 */
const getList = async () => {
loading.value = true;
@ -299,6 +314,7 @@ const handleUpdate = async (row?: OutstockRecordVO) => {
}
/** 退库按钮操作 */
const handleReturn = async (row?: OutstockRecordVO) => {
getBaseWarehouseListsss();
returnFlag.value = true;
reset();
const _outstockRecordId = row?.outstockRecordId || ids.value[0]

@ -102,7 +102,7 @@
</el-table-column>
<el-table-column label="批次条码" align="center" prop="batchCode" v-if="columns[8].visible"/>
<el-table-column label="计划数量" align="center" prop="planAmount" v-if="columns[9].visible"/>
<el-table-column label="仓库" align="center" prop="warehouseCode" v-if="columns[10].visible"/>
<!-- <el-table-column label="仓库" align="center" prop="warehouseCode" v-if="columns[10].visible"/> -->
<el-table-column label="计划退库库位" align="center" prop="planLocationCode" v-if="columns[11].visible"/>
<el-table-column label="退库工单状态" align="center" prop="orderStatus" v-if="columns[12].visible">
<template #default="scope">

Loading…
Cancel
Save