Browse Source

配送增加库存品签收接口

pre-production
汤建军 1 year ago
parent
commit
ef61b5d02a
  1. 31
      src/api/distribution/distributionDeliveryList.js
  2. 561
      src/views/distribution/deliverylist/distributionDeliveryListedt.vue

31
src/api/distribution/distributionDeliveryList.js

@ -86,6 +86,24 @@ export const getWrapdetail = (current, size, params) => {
},
});
};
/**
* 查询指定客户库存品包件
* @param current
* @param size
* @param params
* @returns {AxiosPromise}
*/
export const getReservationPackageList = (current, size, params) => {
return request({
url: '/api/logpm-distribution/deliveryList/getReservationPackageList',
method: 'get',
params: {
...params,
current,
size,
},
});
};
export const getpackdetail = (current, size, params) => {
return request({
url: '/api/logpm-distribution/deliveryList/packdetail',
@ -280,6 +298,19 @@ export const deliverySign = data => {
});
};
/**
* 库存品包件签收
* @param data
* @returns {AxiosPromise}
*/
export const deliveryInventorySign = data => {
return request({
url: '/api/logpm-distribution/deliveryList/deliveryInventorySign',
method: 'post',
data: data,
});
};
export const $_getDetail = (params) => {
return request({

561
src/views/distribution/deliverylist/distributionDeliveryListedt.vue

@ -465,45 +465,88 @@
</el-table-column>
</el-table> -->
<!-- 客户包件 -->
<el-button @click="Batchsigning" style="margin-bottom: 4px;" type="primary">批量签收</el-button>
<el-button @click="Batchcancellation" style="margin-bottom: 4px;" type="primary">批量计划取消</el-button>
<tablecmt
:columnList="wrapoption.column"
:tableData="wrapdata"
:loading="loading"
@inputTxt="inputscReservationPackage"
@timeCheck="timescReservationPackage"
@selectCheck="selectscReservationPackage"
ref="wtableBox"
@selection="selectionChange"
>
<template #default="slotProps">
<template v-if="slotProps.scope.column.label === '操作'">
<el-text size="small" @click="handleQRCode(slotProps.scope.row)">查看二维码</el-text>
<el-text
v-if="
slotProps.scope.row.orderPackageLoadingStatus === '10' ||
slotProps.scope.row.orderPackageLoadingStatusName === '待装车' ||
<el-tabs v-model="reservationActiveName" @tab-click="reservationHandleClick">
<el-tab-pane label="客户包件" name="reservationPackage">
<el-button @click="Batchsigning" style="margin-bottom: 4px;" type="primary">批量签收</el-button>
<el-button @click="Batchcancellation" style="margin-bottom: 4px;" type="primary">批量计划取消</el-button>
<tablecmt
:columnList="wrapoption.column"
:tableData="wrapdata"
:loading="loading"
@inputTxt="inputscReservationPackage"
@timeCheck="timescReservationPackage"
@selectCheck="selectscReservationPackage"
ref="wtableBox"
@selection="selectionChange"
>
<template #default="slotProps">
<template v-if="slotProps.scope.column.label === '操作'">
<el-text size="small" @click="handleQRCode(slotProps.scope.row)">查看二维码</el-text>
<el-text
v-if="
slotProps.scope.row.orderPackageStatus !== '70' ||
slotProps.scope.row.orderPackageStatusName !== '已签收'
"
size="small"
@click="cancelReservationPackage(slotProps.scope.row)"
>计划取消</el-text
>
<el-text
v-if="
size="small"
@click="cancelReservationPackage(slotProps.scope.row)"
>计划取消</el-text
>
<el-text
v-if="
slotProps.scope.row.orderPackageLoadingStatus === '10' ||
slotProps.scope.row.orderPackageLoadingStatusName === '待装车'
"
size="small"
@click="signingReservationPackage(slotProps.scope.row)"
>PC签收</el-text
>
</template>
</template>
</tablecmt>
size="small"
@click="signingReservationPackage(slotProps.scope.row)"
>PC签收</el-text
>
</template>
</template>
</tablecmt>
</el-tab-pane>
<el-tab-pane label="库存品包件" name="reservationInventoryPackage">
<el-button @click="Batchsigning" style="margin-bottom: 4px;" type="primary">批量签收</el-button>
<el-button @click="Batchcancellation" style="margin-bottom: 4px;" type="primary">批量计划取消</el-button>
<tablecmt
:columnList="wrapoption.reservationInventoryoptioncolumn"
:tableData="reservationInventoryPackageData"
:loading="loading"
@inputTxt="inputscReservationInventoryPackage"
@timeCheck="timescReservationInventoryPackage"
@selectCheck="selectscReservationInventoryPackage"
ref="wtableBox"
@selection="selectionChange"
>
<template #default="slotProps">
<template v-if="slotProps.scope.column.label === '操作'">
<el-text size="small" @click="handleQRCode(slotProps.scope.row)">查看二维码</el-text>
<el-text
v-if="
slotProps.scope.row.stockSignfoStatus === '10' ||
slotProps.scope.row.orderPackageStatusName === '未签收'
"
size="small"
@click="cancelReservationInventoryPackage(slotProps.scope.row)"
>计划取消</el-text
>
<el-text
v-if="
slotProps.scope.row.stockSignfoStatus == '10' ||
slotProps.scope.row.stockSignfoStatusName == '未签收'
"
size="small"
@click="signingReservationInventoryPackage(slotProps.scope.row)"
>PC签收</el-text
>
</template>
</template>
</tablecmt>
</el-tab-pane>
<!-- <el-tab-pane label="角色管理" name="third">角色管理</el-tab-pane>-->
<!-- <el-tab-pane label="定时任务补偿" name="fourth">定时任务补偿</el-tab-pane>-->
</el-tabs>
<div class="avue-crud__pagination" style="width: 100%">
<!-- 分页模块 -->
@ -705,7 +748,7 @@
getinventorydetail,
getClientDetail,
$_getDetail,
$_isSignt, deliverySign
$_isSignt, deliverySign, getReservationPackageList, deliveryInventorySign
} from '@/api/distribution/distributionDeliveryList';
import { showOrderPackgeCode } from '@/api/distribution/distributionStockArticle';
import { showInventoryPackgeCode } from '@/api/distribution/distributionStockList';
@ -722,6 +765,7 @@ export default {
data() {
return {
html: '',
reservationActiveName:'reservationPackage',
checkloading: false, //
dialogImageUrl: '', //
dialogVisible: false, //
@ -2429,6 +2473,8 @@ export default {
query: {},
/** 是否全屏 */
fullscreen: false,
//
inventoryQuery: {},
column: [
{
prop: '',
@ -2813,6 +2859,352 @@ export default {
// width: '100px'
// }
],
reservationInventoryoptioncolumn: [
{
prop: 'incomingBatch',
label: '入库批次号',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'orderCode',
label: '订单自编码',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
// {
// prop: 'serviceNumber',
// label: '',
// type: 2,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
{
prop: 'marketName',
label: '商场名称',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'brandName',
label: '品牌',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'cargoNumber',
label: '物料编号',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'descriptionGoods',
label: '物料名称',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'cargoNorms',
label: '物料规格',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
// {
// prop: 'cargoUnit',
// label: '',
// type: 2,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
{
prop: 'stockStatusName',
label: '备货状态',
type: 3,
values: '',
width: '150',
checkarr: [
{
label: '未备货',
value: '10',
},
{
label: '已备货',
value: '20',
},
],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'stockLockingStatusName',
label: '装车状态',
type: 3,
values: '',
width: '150',
checkarr: [
{
label: '未装车',
value: '10',
},
{
label: '已装车',
value: '20',
},
],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'stockSignfoStatusName',
label: '签收状态',
type: 3,
values: '',
width: '150',
checkarr: [
{
label: '未签收',
value: '10',
},
{
label: '已签收',
value: '20',
},
],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'scanTime',
label: '装车时间',
type: 4,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'driverName',
label: '计划装车人',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'scanUser',
label: '实际装车人',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'num',
label: '计划出库数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'loadedNub',
label: '实际出库数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
//
{
prop: 'signingUser',
label: '签收人',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'signingTime',
label: '签收时间',
type: 4,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
//
// {
// prop: 'deliveryNumber',
// label: '',
// type: 2,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'readyStock',
// label: '',
// type: 2,
// values: '',
// width: '180',
// checkarr: [],
// fixed: false,
// sortable: true,
// },
// {
// prop: 'readyStock',
// label: '',
// type: 2,
// values: '',
// width: '180',
// checkarr: [],
// fixed: false,
// sortable: true,
// },
// {
// prop: 'cargoNumber',
// label: '',
// type: 3,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// },
// {
// prop: 'cargoUnit',
// label: '',
// type: 2,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'pallet',
// label: '',
// type: 2,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'goodsAllocation',
// label: '',
// type: 2,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'goodsAllocation',
// label: '',
// type: 1,
// values: '',
// width: '180',
// checkarr: [],
// fixed: false,
// sortable: true,
// },
// {
// prop: 'readyStock',
// label: '',
// type: 1,
// values: '',
// width: '180',
// checkarr: [],
// fixed: false,
// sortable: true,
// },
{
prop: '',
label: '操作',
type: 6,
values: '',
width: '200',
checkarr: [],
fixed: 'right',
hide: true,
},
],
},
//
inventoryoption: {
@ -3053,6 +3445,8 @@ export default {
wid: null,
//
wrapdata: [],
//
reservationInventoryPackageData: [],
//
packdata: [],
loading:false,
@ -3276,9 +3670,16 @@ export default {
console.log('index', index);
console.log('row', row);
this.wrapoption.query[row.prop] = index;
if (!index) delete this.inventoryQuery[row.prop];
if (!index) delete this.query[row.prop];
this.getWrapdetails(this.page);
},
inputscReservationInventoryPackage(index, row) {
console.log('index', index);
console.log('row', row);
this.wrapoption.inventoryQuery[row.prop] = index;
if (!index) delete this.inventoryQuery[row.prop];
this.getReservationInventoryPackageListInfo(this.page);
},
timescReservationPackage(index, row) {
if (!!index) {
index = dayjs(index).format('YYYY-MM-DD');
@ -3289,6 +3690,16 @@ export default {
}
this.getWrapdetails(this.page);
},
timescReservationInventoryPackage(index, row) {
if (!!index) {
index = dayjs(index).format('YYYY-MM-DD');
}
this.wrapoption.inventoryQuery[row.prop] = index;
if (!index) {
delete this.wrapoption.inventoryQuery[row.prop];
}
this.getReservationInventoryPackageListInfo(this.page);
},
selectscReservationPackage(index, row) {
console.log(index, row);
if (row.prop === 'orderPackageStatusName') {
@ -3304,6 +3715,19 @@ export default {
}
this.getWrapdetails(this.page);
},
selectscReservationInventoryPackage(index, row) {
console.log(index, row);
if (row.prop === 'stockSignfoStatusName') {
this.wrapoption.inventoryQuery['stockSignfoStatus'] = index;
} else if (row.prop === 'stockLockingStatusName') {
this.wrapoption.inventoryQuery['stockLockingStatus'] = index;
} else if (row.prop === 'stockStatusName') {
this.wrapoption.inventoryQuery['stockStatus'] = index;
} else {
this.wrapoption.inventoryQuery[row.prop] = index;
}
this.getReservationInventoryPackageListInfo(this.page);
},
timesc() {},
btnsc() {},
@ -3362,6 +3786,25 @@ export default {
}
})
},
cancelReservationInventoryPackage(row) {
console.log('row', row);
console.log('deliveryId', this.deliveryId);
console.log('reservationId', this.wid);
this.$message.warning("功能维护中...");
return;
// let data = {
// deliveryId:this.deliveryId,
// reservationId:this.wid,
// type:1,
// packageIds:row.id
// }
// cancelReservationPackage(data).then(res=>{
// if (res.data.code === 200){
// this.$message.success(res.data.msg);
// this.getWrapdetails(this.page);
// }
// })
},
signingReservationPackage(row) {
console.log('row', row);
console.log('wid',this.wid);
@ -3381,6 +3824,41 @@ export default {
})
// this.$message.warning('...');
// return;
},
signingReservationInventoryPackage(row) {
console.log('row', row);
console.log('wid',this.wid);
console.log('deliveryId',this.deliveryId);
let data = {
deliveryId:this.deliveryId,
reservationId:this.wid,
barcodes:row.stockPackageCode
}
//
deliveryInventorySign(data).then(res=>{
console.log('res>>>>>>>>>>>>>>>>>>>>>>>',res);
if (res.data.code === 200){
this.$message.success(res.data.msg);
this.getReservationInventoryPackageListInfo(this.page);
}
})
// this.$message.warning('...');
// return;
},
//tabs
reservationHandleClick(tab, event) {
console.log(tab, event);
let tabName = tab.paneName;
console.log("tabName",tabName);
switch (tabName) {
case "reservationPackage":
this.getWrapdetails(this.page);
break;
case "reservationInventoryPackage":
console.log("reservationInventoryPackage");
this.getReservationInventoryPackageListInfo(this.page);
break;
}
},
//
Batchsigning(){
@ -3964,7 +4442,22 @@ export default {
this.loading=false;//
});
},
getReservationInventoryPackageListInfo(page){
let params = {};
params.reservationId = this.wid;
getReservationPackageList(
page.currentPage,
page.pageSize,
Object.assign(params, this.wrapoption.inventoryQuery)
).then(res=>{
console.log('库存品包件>>>>>>>', res.data.data);
const data = res.data.data;
this.reservationInventoryPackageData = data.records;
this.loading=false;//
})
},
handleDelete() {
if (this.selectionList.length === 0) {
this.$message.warning('请选择至少一条数据');

Loading…
Cancel
Save