仓管模块修改

dev-scheduling
jinna 3 months ago
parent fa43af3bae
commit 102b73d6e4
  1. 2
      src/api/storeManagement/binTransfer.js
  2. 20
      src/api/storeManagement/otherReceiving.js
  3. 11
      src/api/storeManagement/warehouseMaintenance.js
  4. 67
      src/views/basicData/js/warehouseMain.js
  5. 3
      src/views/basicData/warehouseMaintenance.vue
  6. 14
      src/views/inboundOutboundManagement/binTransfer/index.vue
  7. 39
      src/views/inboundOutboundManagement/components/addEditDialog.vue
  8. 1681
      src/views/inboundOutboundManagement/otherReceiving.vue
  9. 21
      src/views/warehouseManagement/materialPreserve.vue

@ -4,7 +4,7 @@ import request from '@/axios';
// 库位调整列表 // 库位调整列表
export const getTransferList = params =>{ export const getTransferList = params =>{
return request({ return request({
url:'/api/blade-wms/stAllotRecord/page', url:'/api/blade-wms/stAllotRecord/list',
method:'get', method:'get',
params params
}) })

@ -0,0 +1,20 @@
// 其他入库
import request from '@/axios';
// 其它入库列表
export const getOtherInList = params =>{
return request({
url:'/api/blade-wms/stOtherReceiptRecord/page',
method:'get',
params
})
}
// 物料下拉
export const getGoodsOutList = params =>{
return request({
url:'/api/blade-wms/combox/config/goodsOut',
method:'get',
params
})
}

@ -13,7 +13,7 @@ export const getWareList = params =>{
// 库房新增 // 库房新增
export const addWare = (data) =>{ export const addWare = (data) =>{
return request({ return request({
url:'/api/blade-wms/stStorehouse/save', url:'/api/blade-wms/stStorehouse/submit',
method:'post', method:'post',
data data
}) })
@ -72,3 +72,12 @@ export const editLocation = (data) =>{
data data
}) })
} }
// 根据角色别名查询用户
export const getUserByRoleAlias = (params) => {
return request({
url: '/api/blade-system/user/list-all-by-role-alias',
method: 'get',
params,
});
};

@ -116,20 +116,26 @@ export default {
overflow: true, overflow: true,
search: true, search: true,
type: 'select', type: 'select',
dicData: [ dicUrl:'/api/blade-system/user/list-all-by-role-alias?roleAlias=保管员',
{ // props:{
label: '保管员一', // label: 'realName',
value: 1 // value: 'userName',
}, // },
{ // }
label: '保管员二', // dicData: [
value: 2 // {
}, // label: '保管员一',
{ // value: 1
label: '保管员三', // },
value: 3 // {
}, // label: '保管员二',
], // value: 2
// },
// {
// label: '保管员三',
// value: 3
// },
// ],
// rules: [ // rules: [
// { // {
// required: true, // required: true,
@ -283,7 +289,7 @@ export const warehouseOption = {
delBtnIcon: " ", delBtnIcon: " ",
labelWidth: 120, labelWidth: 120,
menu: true, menu: true,
menuWidth: 200, menuWidth: 120,
dialogWidth: 920, dialogWidth: 920,
dialogClickModal: false, dialogClickModal: false,
searchEnter: true, searchEnter: true,
@ -419,20 +425,21 @@ export const warehouseOption = {
overflow: true, overflow: true,
search: true, search: true,
type:'select', type:'select',
dicData:[ dicUrl:'/api/blade-system/user/list-all-by-role-alias?roleAlias=保管员',
{ // dicData:[
label:'保管员一', // {
value:1 // label:'保管员一',
}, // value:1
{ // },
label:'保管员二', // {
value:2 // label:'保管员二',
}, // value:2
{ // },
label:'保管员三', // {
value:3 // label:'保管员三',
}, // value:3
], // },
// ],
// rules: [ // rules: [
// { // {
// required: true, // required: true,
@ -467,7 +474,7 @@ export const storageOption = {
delBtnIcon: " ", delBtnIcon: " ",
labelWidth: 120, labelWidth: 120,
menu: true, menu: true,
menuWidth: 200, menuWidth: 120,
dialogWidth: 920, dialogWidth: 920,
dialogClickModal: false, dialogClickModal: false,
searchEnter: true, searchEnter: true,

@ -284,6 +284,9 @@ export default {
done() done()
this.getWare() this.getWare()
} }
}).catch(() =>{
// loading()
done()
}) })
} }
}, },

@ -103,7 +103,7 @@ export default {
remote: true, remote: true,
props:{ props:{
label: 'goodsCode', label: 'goodsCode',
value: 'id', value: 'goodsCode',
res: 'data.records', res: 'data.records',
}, },
rules: [{ required: true, message: '请选择物料编号', trigger: 'blur' }], rules: [{ required: true, message: '请选择物料编号', trigger: 'blur' }],
@ -125,7 +125,7 @@ export default {
}, },
{ {
label: '旧库房号', label: '旧库房号',
prop: 'shCode', prop: 'oldWarehouseName',
// bind: 'oldStorageLocation.coStorehouse.shName', // bind: 'oldStorageLocation.coStorehouse.shName',
sortable: true, sortable: true,
filter: true, filter: true,
@ -154,7 +154,7 @@ export default {
}, },
{ {
label: '旧库位号', label: '旧库位号',
prop: 'oldSlId', prop: 'oldLocation',
// bind: 'oldStorageLocation.location', // bind: 'oldStorageLocation.location',
sortable: true, sortable: true,
filter: true, filter: true,
@ -214,7 +214,7 @@ export default {
{ {
label: '新库位号', label: '新库位号',
prop: 'newSIId', prop: 'newSlId',
// bind: 'newStorageLocation.location', // bind: 'newStorageLocation.location',
sortable: true, sortable: true,
filter: true, filter: true,
@ -383,8 +383,12 @@ export default {
onLoad() { onLoad() {
getTransferList({ getTransferList({
current:this.page.currentPage, current:this.page.currentPage,
size:this.page.pageSize size:this.page.pageSize,
...this.query
}).then(res =>{ }).then(res =>{
res.data.data.records.map(item =>{
item.newSlId = item.newSlId == -1 ? '' : item.newSlId
})
this.data = res.data.data.records this.data = res.data.data.records
console.log('data-------------',this.data) console.log('data-------------',this.data)
this.page.total = res.data.data.total; this.page.total = res.data.data.total;

@ -2,23 +2,23 @@
<el-dialog title="新增" append-to-body :modelValue="openShow" width="70%" @close="closeDialog" fullscreen> <el-dialog title="新增" append-to-body :modelValue="openShow" width="70%" @close="closeDialog" fullscreen>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm"> <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="8"> <!-- 按照日期自动生成 202511101037 看之前的逻辑-->
<!-- 按照日期自动生成 202511101037 看之前的逻辑--> <!-- <el-col :span="8">
<el-form-item label="入库单号:" prop="userId3"> <el-form-item label="入库单号:" prop="userId3">
20250988090 20250988090
</el-form-item> </el-form-item>
</el-col> </el-col> -->
<el-col :span="8"> <el-col :span="8">
<el-form-item label="入库时间:" prop="declareDate3"> <el-form-item label="入库时间:" prop="inOutDate">
<el-date-picker v-model="ruleForm.declareDate" type="date" placeholder="选择日期" <el-date-picker v-model="ruleForm.inOutDate" type="date" placeholder="选择日期"
style="width: 100%;"> style="width: 100%;">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="入库仓库:" prop="userId"> <el-form-item label="入库仓库:" prop="shId">
<el-select v-model="ruleForm.userId" placeholder="请选择" disabled> <el-select v-model="ruleForm.shId" placeholder="请选择" >
<el-option label="仓库一" value="1"> <el-option label="仓库一" value="1">
</el-option> </el-option>
<el-option label="仓库二" value="2"> <el-option label="仓库二" value="2">
@ -58,15 +58,14 @@
<span><i style="color:red">*</i>物料编号</span> <span><i style="color:red">*</i>物料编号</span>
</template> </template>
<template #default="scope"> <template #default="scope">
<el-select v-model="scope.row.goodsId" placeholder="请选择"> <el-select v-model="scope.row.goodsCodeAndGoodsName" placeholder="请选择" @change="(val) => changeGoods(val,scope.$index)">
<el-option label="物料一" value="1"> <el-option v-for="item in goodsList" :key="item.id" :label="item.goodsCodeAndGoodsName" :value="item.goodsCodeAndGoodsName"></el-option>
</el-option> <!-- <el-option label="玻璃饼" value="2">
<el-option label="玻璃饼" value="2"> </el-option> -->
</el-option>
</el-select> </el-select>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="boCode" label="物料名称" align="center"></el-table-column> <el-table-column prop="goodsName" label="物料名称" align="center"></el-table-column>
<el-table-column prop="boCode" label="型号/牌号" align="center"> <el-table-column prop="boCode" label="型号/牌号" align="center">
<template #default="scope"> <template #default="scope">
<span>{{ scope.row.boCode }}</span> <span>{{ scope.row.boCode }}</span>
@ -165,6 +164,7 @@
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import {getGoodsOutList} from "@/api/storeManagement/otherReceiving"
export default { export default {
props: { props: {
showDialog: { showDialog: {
@ -190,6 +190,7 @@ export default {
buyDept: '', buyDept: '',
needDept: null, needDept: null,
}, },
goodsList:[],
rules: { rules: {
userId: [ userId: [
{ required: true, message: '请选择', trigger: 'blur' }, { required: true, message: '请选择', trigger: 'blur' },
@ -213,8 +214,20 @@ export default {
}, },
mounted() { mounted() {
this.openShow = this.showDialog this.openShow = this.showDialog
this.getGoodsList()
}, },
methods: { methods: {
//
getGoodsList(){
getGoodsOutList().then(res =>{
this.goodsList = res.data.data.records
})
},
//
changeGoods(val,index){
let tmp = this.goodsList.find(item => item.goodsCodeAndGoodsName == val)
this.tableData[index] = tmp.goodsName
},
submit() { submit() {
this.$refs.ruleForm.validate((valid) => { this.$refs.ruleForm.validate((valid) => {
if (valid) { if (valid) {

File diff suppressed because it is too large Load Diff

@ -2,7 +2,7 @@
<basic-container> <basic-container>
<avue-crud ref="materalCrud" :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" <avue-crud ref="materalCrud" :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page"
@row-del="rowDel" @search-change="searchChange" @search-reset="searchReset" @row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
@row-save="rowSave" @row-update="rowUpdate" @row-save="rowSave" @row-update="rowUpdate" :before-open="beforeOpen"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange" @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange" @on-load="onLoad"> @refresh-change="refreshChange" @on-load="onLoad">
<!-- <template #goodsCode="{ row }">{{ row.coGoods.goodsCode }}</template> <!-- <template #goodsCode="{ row }">{{ row.coGoods.goodsCode }}</template>
@ -98,6 +98,7 @@ export default {
addDisplay: false, addDisplay: false,
editDisplay: false, editDisplay: false,
span: 8, span: 8,
hide:true,
width: 200, width: 200,
search: true, search: true,
// //
@ -484,6 +485,13 @@ export default {
this.query.goodsStatus = val this.query.goodsStatus = val
this.onLoad() this.onLoad()
}, },
beforeOpen(done, type) {
if (['edit', 'view'].includes(type)) {
console.log('form---------------------',this.form)
this.form.goodsId = this.form.goodsId + ''
}
done();
},
handlePaint(){ handlePaint(){
this.laInData = [] this.laInData = []
console.log('ref------------------',this.$refs.materalCrud) console.log('ref------------------',this.$refs.materalCrud)
@ -525,11 +533,10 @@ export default {
let params = { let params = {
goodsId:row.goodsId, goodsId:row.goodsId,
useAverage:row.useAverage, useAverage:row.useAverage,
delivery:row.delivery, delivery:row.delivery == 1 ? true : false,
paint:row.paint, paint:row.paint == 1 ? true : false,
special:row.special, special:row.special,
turnover:row.turnover, turnover:row.turnover,
delivery:row.delivery
} }
addMaterialStatus(params).then(res =>{ addMaterialStatus(params).then(res =>{
if(res.data.code == 200){ if(res.data.code == 200){
@ -540,6 +547,8 @@ export default {
}) })
}, },
rowUpdate(row, index, done, loading){ rowUpdate(row, index, done, loading){
row.delivery = row.delivery == 1 ? true : false
row.paint = row.paint == 1 ? true : false
editMaterialStatus(row).then(res =>{ editMaterialStatus(row).then(res =>{
if(res.data.code == 200){ if(res.data.code == 200){
this.$message.success('修改成功') this.$message.success('修改成功')
@ -555,8 +564,8 @@ export default {
...this.query ...this.query
}).then(res =>{ }).then(res =>{
res.data.data.records.map(item =>{ res.data.data.records.map(item =>{
item.paint = item.paint != '' ? item.paint ? 1 : 0 : '' item.paint = item.paint != '' && item.paint ? 1 : 0
item.delivery = item.delivery != '' ? item.delivery ? 1 : 0 : '' item.delivery = item.delivery != '' && item.delivery ? 1 : 0
}) })
this.data = res.data.data.records this.data = res.data.data.records
console.log('data-------------',this.data) console.log('data-------------',this.data)

Loading…
Cancel
Save