物料管理问题修改

dev-scheduling
zhangdi 2 weeks ago
parent f78a7c323c
commit 1bbfc5f5f1
  1. 10
      src/api/logisticsManagement/logisticsDistribution.js
  2. 9
      src/api/logisticsManagement/materialPacking.js
  3. 21
      src/views/logisticsManagement/components/addLogisticsDialog.vue
  4. 40
      src/views/logisticsManagement/components/addPackingDialog.vue
  5. 103
      src/views/logisticsManagement/components/returnDialog.vue
  6. 2
      src/views/logisticsManagement/logisticsDistribution.vue
  7. 6
      src/views/logisticsManagement/siteBasic.vue

@ -62,3 +62,13 @@ export const receiveWarehouse = (data) => {
params: data, params: data,
}); });
}; };
// 获取起点区域列表
export const getStationRegionList = (params) => {
return request({
url: '/blade-desk/order/stationRegion-list',
method: 'get',
params,
});
};

@ -42,3 +42,12 @@ export const boxUnbind = (data) => {
data: data, data: data,
}); });
}; };
// 获取流程卡号数据
export const getCardNo = (params) => {
return request({
url: '/blade-desk/order-bind/card-no',
method: 'get',
params,
});
};

@ -7,6 +7,7 @@
@close="closeDialog" @close="closeDialog"
> >
<el-form :model="form" ref="form" :rules="rules" label-width="auto" @submit.prevent> <el-form :model="form" ref="form" :rules="rules" label-width="auto" @submit.prevent>
<el-form-item label="箱条码" prop="boxBarcode"> <el-form-item label="箱条码" prop="boxBarcode">
<el-input <el-input
v-model="form.boxBarcode" v-model="form.boxBarcode"
@ -50,7 +51,7 @@ export default {
}, },
data() { data() {
return { return {
submitLoading:false, submitLoading: false,
openShow: false, openShow: false,
form: {}, form: {},
rules: { rules: {
@ -81,19 +82,21 @@ export default {
submit() { submit() {
this.$refs.form.validate(async valid => { this.$refs.form.validate(async valid => {
if (valid) { if (valid) {
this.submitLoading = true this.submitLoading = true;
let params = { let params = {
boxBarcode: this.form.boxBarcode, boxBarcode: this.form.boxBarcode,
wcId: this.form.wcId, wcId: this.form.wcId,
}; };
boxBinding(params).then(res => { boxBinding(params)
this.$message.success('操作成功'); .then(res => {
this.submitLoading = false this.$message.success('操作成功');
this.closeDialog(); this.submitLoading = false;
}).catch(err=>{ this.closeDialog();
this.submitLoading = false })
}) .catch(err => {
this.submitLoading = false;
});
} }
}); });
}, },

@ -1,11 +1,5 @@
<template> <template>
<el-dialog <el-dialog title="新增" append-to-body :modelValue="openShow" width="30%" @close="closeDialog">
title="新增"
append-to-body
:modelValue="openShow"
width="30%"
@close="closeDialog"
>
<el-form :model="form" ref="form" :rules="rules" label-width="auto" @submit.prevent> <el-form :model="form" ref="form" :rules="rules" label-width="auto" @submit.prevent>
<el-form-item label="箱条码:" prop="boxBarcode"> <el-form-item label="箱条码:" prop="boxBarcode">
<el-input <el-input
@ -54,7 +48,7 @@
</el-dialog> </el-dialog>
</template> </template>
<script> <script>
import { boxBinding, getOrderInfo } from '@/api/logisticsManagement/materialPacking'; import { boxBinding, getOrderInfo, getCardNo } from '@/api/logisticsManagement/materialPacking';
export default { export default {
props: { props: {
showDialog: { showDialog: {
@ -72,7 +66,7 @@ export default {
boxBarcode: [{ required: true, message: '请扫描箱条码', trigger: 'blur' }], boxBarcode: [{ required: true, message: '请扫描箱条码', trigger: 'blur' }],
}, },
workCenterOptions: [], workCenterOptions: [],
orderIdList:[] orderIdList: [],
}; };
}, },
mounted() { mounted() {
@ -92,17 +86,22 @@ export default {
return; return;
} }
// getCardNo({ cardNo: this.form.orderNo })
const exists = this.orderIdList.includes(orderNo); .then(res => {
if (exists) { //
this.$message.warning('该订单号已添加'); const exists = this.orderIdList.includes(orderNo);
this.form.orderNo = ''; if (exists) {
return; this.$message.warning('该订单号已添加');
} this.form.orderNo = '';
return;
// API }
this.orderIdList.push(orderNo); // API
this.form.orderNo = ''; this.orderIdList.push(orderNo);
this.form.orderNo = '';
})
.catch(err => {
this.form.orderNo = '';
});
}, },
// //
handleClose(tag) { handleClose(tag) {
@ -120,7 +119,6 @@ export default {
submit() { submit() {
this.$refs.form.validate(async valid => { this.$refs.form.validate(async valid => {
if (valid) { if (valid) {
this.submitLoading = true; this.submitLoading = true;
let params = { let params = {
boxBarcode: this.form.boxBarcode, boxBarcode: this.form.boxBarcode,

@ -1,6 +1,12 @@
<template> <template>
<el-dialog title="新增" append-to-body :modelValue="openShow" width="30%" @close="closeDialog"> <el-dialog title="新增" append-to-body :modelValue="openShow" width="30%" @close="closeDialog">
<el-form :model="form" ref="form" :rules="rules" label-width="auto" @submit.prevent> <el-form :model="form" ref="form" :rules="rules" label-width="auto" @submit.prevent>
<el-form-item label="配送模式" prop="boxType">
<el-radio-group v-model="form.bindType" @change="typeChange">
<el-radio value="bind">送料</el-radio>
<el-radio value="unbind">叫料</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="箱条码"> <el-form-item label="箱条码">
<el-input <el-input
v-model="form.boxBarcode" v-model="form.boxBarcode"
@ -8,17 +14,44 @@
placeholder="请扫描箱条码" placeholder="请扫描箱条码"
/> />
</el-form-item> </el-form-item>
<el-form-item label="起点站点" prop="stationCode"> <el-form-item label="起点站点" prop="stationCode" v-if="form.bindType == 'bind'" required>
<el-input <el-input
v-model="form.stationCode" v-model="form.stationCode"
@keyup.enter.native="changeCode" @keyup.enter.native="changeCode"
placeholder="请扫描箱条码" placeholder="请扫描箱条码"
/> />
</el-form-item> </el-form-item>
<el-form-item label="起点站点" v-if="form.bindType == 'unbind'" required>
<el-select
v-model="form.regionIndex"
placeholder="请选择站点区域"
@change="val => regionDataStartChange(val)"
>
<el-option
v-for="(item, index) in regionDataStart"
:key="index"
:label="item.stationRegion"
:value="item.stationRegion"
></el-option>
</el-select>
<el-select
v-model="form.regionCode"
placeholder="请选择站点码"
@change="val => regionDataEndChange(val)"
style="margin-top: 5px"
>
<el-option
v-for="(item, index) in regionStartCode"
:key="index"
:label="item"
:value="item"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="终点站点" prop="endLocationId"> <el-form-item label="终点站点" prop="endLocationId">
<el-select <el-select
v-model="form.endLocationId" v-model="form.endLocationId"
placeholder="请选择" placeholder="请选择作业中心"
filterable filterable
@change="endLocationChange" @change="endLocationChange"
> >
@ -29,6 +62,14 @@
:value="item.id" :value="item.id"
/> />
</el-select> </el-select>
<el-select
v-model="form.regionName"
placeholder="请选择终点区域"
filterable
style="margin-top: 5px"
>
<el-option v-for="item in regionData" :key="item" :label="item" :value="item" />
</el-select>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -44,7 +85,8 @@
import { import {
returnWarehouseList, returnWarehouseList,
returnWarehouse, returnWarehouse,
boxBinding boxBinding,
getStationRegionList,
} from '@/api/logisticsManagement/logisticsDistribution'; } from '@/api/logisticsManagement/logisticsDistribution';
export default { export default {
props: { props: {
@ -61,23 +103,59 @@ export default {
return { return {
submitLoading: false, submitLoading: false,
openShow: false, openShow: false,
form: {}, form: {
bindType: 'bind',
endLocationId: '', //
endLocationRange: '', //
regionIndex: '', //
regionCode: '', //
},
rules: { rules: {
boxBarcode: [{ required: true, message: '请扫描箱条码', trigger: 'blur' }], boxBarcode: [{ required: true, message: '请扫描箱条码', trigger: 'blur' }],
stationCode: [{ required: true, message: '请扫描站点码', trigger: 'blur' }], stationCode: [{ required: true, message: '请扫描站点码', trigger: 'blur' }],
endLocationId: [{ required: true, message: '请选择作业中心', trigger: 'blur' }], endLocationId: [{ required: true, message: '请选择作业中心', trigger: 'blur' }],
}, },
workCenterOptions: [], workCenterOptions: [],
regionData: [], //
regionDataStart: [], //
regionStartCode: [], //
}; };
}, },
mounted() { mounted() {
this.openShow = this.showDialog; this.openShow = this.showDialog;
this.returnWarehouseList(); this.returnWarehouseList();
if (this.form.bindType == 'unbind') {
this.getStationRegionList();
}
}, },
methods: { methods: {
typeChange() {
if (this.form.bindType == 'unbind') {
this.getStationRegionList();
}
},
regionDataStartChange(val) {
const selected = this.regionDataStart.find(
item => item.stationRegion === this.form.regionIndex
);
this.regionStartCode = selected.stationCodeList;
//
if (this.regionStartCode && this.regionStartCode.length > 0) {
this.form.regionCode = this.regionStartCode[0];
this.$message.success(`已自动选择站点码:${this.regionStartCode[0]}`);
}
},
//
getStationRegionList() {
getStationRegionList().then(res => {
this.regionDataStart = res.data.data;
});
},
// //
endLocationChange() { endLocationChange() {
const selected = this.workCenterOptions.find(item => item.id === this.form.endLocationId); const selected = this.workCenterOptions.find(item => item.id === this.form.endLocationId);
console.log(989898989898, selected);
this.regionData = selected ? selected.stationRegionList : [];
this.form.endName = selected ? selected.wcName : ''; this.form.endName = selected ? selected.wcName : '';
}, },
// 退 // 退
@ -97,12 +175,23 @@ export default {
this.$refs.form.validate(async valid => { this.$refs.form.validate(async valid => {
if (valid) { if (valid) {
this.submitLoading = true; this.submitLoading = true;
//
let params = { let params = {
boxBarcode: this.form.boxBarcode, boxBarcode: this.form.boxBarcode,//
startStationCode: this.form.stationCode, // endWcId: this.form.endLocationId,
endWcId: this.form.endLocationId, endWcId: this.form.endLocationId, //
}; };
// 使 stationCode
if (this.form.bindType === 'bind') {
params.startStationCode = this.form.stationCode;
}
// 使 regionCode regionIndex
else if (this.form.bindType === 'unbind') {
params.startStationCode = this.form.regionCode;
}
console.log(9898989898989, params)
boxBinding(params) boxBinding(params)
.then(res => { .then(res => {
this.$message.success('操作成功'); this.$message.success('操作成功');

@ -18,7 +18,7 @@
> >
<template #menu-left> <template #menu-left>
<el-button type="primary" @click="addFn">新增</el-button> <el-button type="primary" @click="addFn">新增</el-button>
<el-button type="primary" @click="receiveFn">接收</el-button> <!-- <el-button type="primary" @click="receiveFn">接收</el-button> -->
<!-- <el-button type="primary" @click="returnFn">退回</el-button> --> <!-- <el-button type="primary" @click="returnFn">退回</el-button> -->
</template> </template>
<template #menu-right> </template> <template #menu-right> </template>

@ -138,7 +138,7 @@ export default {
{ {
label: '站点名称', label: '站点名称',
prop: 'stationName', prop: 'stationName',
search: true, search: false,
sortable: true, sortable: true,
span: 12, span: 12,
searchOrder: 19, searchOrder: 19,
@ -154,7 +154,7 @@ export default {
{ {
label: '站点楼层', label: '站点楼层',
prop: 'stationPosition', prop: 'stationPosition',
search: true, search: false,
sortable: true, sortable: true,
span: 12, span: 12,
searchOrder: 18, searchOrder: 18,
@ -182,7 +182,7 @@ export default {
{ {
label: '更新时间', label: '更新时间',
prop: 'updateTime', prop: 'updateTime',
search: true, search: false,
sortable: true, sortable: true,
span: 12, span: 12,
display: false, display: false,

Loading…
Cancel
Save