Browse Source

2025-11-17

销售发货装箱优化
master
fengyuan_yang 2 months ago
parent
commit
96a85f7e91
  1. 48
      src/views/modules/boxManage/com_saleBoxManage_boxing.vue
  2. 56
      src/views/modules/boxManage/com_saleBoxManage_pallet.vue
  3. 32
      src/views/modules/boxManage/saleBoxManage.vue

48
src/views/modules/boxManage/com_saleBoxManage_boxing.vue

@ -1,12 +1,26 @@
<template>
<div class="customer-css">
<el-form label-position="top" style="margin-top: 1px; margin-left: 0px;">
<el-form-item >
<el-button type="primary" @click="searchTable()">查询</el-button>
<el-button v-if="searchData.orderStatus === '待包装'" type="primary" @click="newBox()">新增箱</el-button>
<el-button type="primary" @click="printCartonLabels()" :disabled="selectedBoxes.length <= 0">打印</el-button>
</el-form-item>
</el-form>
<div style="display: flex; align-items: center; margin-top: 1px; margin-left: 0px;">
<div>
<el-button type="primary" @click="searchTable()">查询</el-button>
<el-button v-if="searchData.orderStatus === '待包装'" type="primary" @click="newBox()">新增箱</el-button>
<el-button type="primary" @click="printCartonLabels()" :disabled="selectedBoxes.length <= 0">打印</el-button>
</div>
<span style="margin-left: auto; font-size: 14px; display: flex; align-items: center;">
<span style="margin-right: 20px;">
<span style="color: #606266;">箱标签张数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{boxingStatistics.boxCount}}</span>
</span>
<span style="margin-right: 20px;">
<span style="color: #606266;">卷标签张数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{boxingStatistics.rollCount}}</span>
</span>
<span>
<span style="color: #606266;">物料总数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{boxingStatistics.rollsCount}}</span>
</span>
</span>
</div>
<el-table
:data="dataList"
:height=searchData.height
@ -348,6 +362,11 @@ export default {
boxModelFlag: false,
boxActionType: 'add', // /
selectedBoxes: [], //
boxingStatistics: {
boxCount: 0, //
rollCount: 0, //
rollsCount: 0 //
}
}
},
computed: {
@ -372,8 +391,23 @@ export default {
//
if (data && data.code == 0) {
this.dataList = data.rows
// -
if (data.rows && data.rows.length > 0) {
const firstRecord = data.rows[0]
this.boxingStatistics.boxCount = firstRecord.boxCount || 0
this.boxingStatistics.rollCount = firstRecord.rollCount || 0
this.boxingStatistics.rollsCount = firstRecord.rollsCount || 0
} else {
this.boxingStatistics.boxCount = 0
this.boxingStatistics.rollCount = 0
this.boxingStatistics.rollsCount = 0
}
} else {
this.dataList = [];
//
this.boxingStatistics.boxCount = 0
this.boxingStatistics.rollCount = 0
this.boxingStatistics.rollsCount = 0
}
});
},

56
src/views/modules/boxManage/com_saleBoxManage_pallet.vue

@ -1,12 +1,30 @@
<template>
<div class="customer-css">
<el-form label-position="top" style="margin-top: 1px; margin-left: 0px;">
<el-form-item >
<el-button type="primary" @click="searchTable()">查询</el-button>
<el-button v-if="searchData.orderStatus === '待包装'" type="primary" @click="newPallet()">新增托</el-button>
<el-button type="primary" @click="printPalletLabels()" :disabled="selectedPallets.length <= 0">打印</el-button>
</el-form-item>
</el-form>
<div style="display: flex; align-items: center; margin-top: 1px; margin-left: 0px;">
<div>
<el-button type="primary" @click="searchTable()">查询</el-button>
<el-button v-if="searchData.orderStatus === '待包装'" type="primary" @click="newPallet()">新增托</el-button>
<el-button type="primary" @click="printPalletLabels()" :disabled="selectedPallets.length <= 0">打印</el-button>
</div>
<span style="margin-left: auto; font-size: 14px; display: flex; align-items: center;">
<span style="margin-right: 20px;">
<span style="color: #606266;">托数量</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{palletListStatistics.palletCount}}</span>
</span>
<span style="margin-right: 20px;">
<span style="color: #606266;">托箱标签张数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{palletListStatistics.boxesCount}}</span>
</span>
<span style="margin-right: 20px;">
<span style="color: #606266;">托卷标签张数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{palletListStatistics.rollCount}}</span>
</span>
<span>
<span style="color: #606266;">物料总数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{palletListStatistics.rollsQty}}</span>
</span>
</span>
</div>
<el-table
:data="dataList"
:height=searchData.height
@ -392,6 +410,12 @@ export default {
boxRollDetailList: [],
boxRollDetailLoading: false,
selectedPallets: [], //
palletListStatistics: {
palletCount: 0, //
boxesCount: 0, //
rollCount: 0, //
rollsQty: 0 //
}
}
},
computed: {
@ -416,8 +440,26 @@ export default {
//
if (data && data.code == 0) {
this.dataList = data.rows
// -
if (data.rows && data.rows.length > 0) {
const firstRecord = data.rows[0]
this.palletListStatistics.palletCount = firstRecord.palletCount || 0
this.palletListStatistics.boxesCount = firstRecord.boxesCount || 0
this.palletListStatistics.rollCount = firstRecord.rollCount || 0
this.palletListStatistics.rollsQty = firstRecord.rollsQty || 0
} else {
this.palletListStatistics.palletCount = 0
this.palletListStatistics.boxesCount = 0
this.palletListStatistics.rollCount = 0
this.palletListStatistics.rollsQty = 0
}
} else {
this.dataList = [];
//
this.palletListStatistics.palletCount = 0
this.palletListStatistics.boxesCount = 0
this.palletListStatistics.rollCount = 0
this.palletListStatistics.rollsQty = 0
}
});
},

32
src/views/modules/boxManage/saleBoxManage.vue

@ -86,9 +86,23 @@
<el-tabs v-model="activeName" style="margin-top: 0px; width: 99%;" @tab-click="tabClick" class="customer-tab" type="border-card">
<el-tab-pane label="扫描装盒" name="cases">
<el-form v-if="currentRow.orderStatus === '待包装'" label-position="top" style="margin-left: 2px;">
<el-form v-if="currentRow.orderStatus === '待包装'" label-position="top" style="margin-left: 2px; display: flex; align-items: center;">
<el-button type="primary" size="small" @click="openCaseDialog">新增</el-button>
<el-button type="danger" size="small" @click="deleteCaseRecord">删除</el-button>
<span style="margin-left: auto; font-size: 14px; display: flex; align-items: center;">
<span style="margin-right: 20px;">
<span style="color: #606266;">盒标签张数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{casesStatistics.boxCountCases}}</span>
</span>
<span style="margin-right: 20px;">
<span style="color: #606266;">卷标签张数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{casesStatistics.boxCountRolls}}</span>
</span>
<span>
<span style="color: #606266;">物料总数</span>
<span style="color: rgb(38, 92, 147); font-weight: bold;">{{casesStatistics.totalQty}}</span>
</span>
</span>
</el-form>
<el-table
ref="caseTable"
@ -386,6 +400,11 @@ export default {
activeName: 'cases',
//
casesList: [],
casesStatistics: {
boxCountCases: 0, //
boxCountRolls: 0, //
totalQty: 0 //
},
caseDialogVisible: false,
caseForm: {
casesNo: '',
@ -882,6 +901,17 @@ export default {
}
searchSoReceiveCasesData(templateData).then(({data}) => {
this.casesList = data.rows || []
// -
if (data.rows && data.rows.length > 0) {
const firstRecord = data.rows[0]
this.casesStatistics.boxCountCases = firstRecord.boxCountCases || 0
this.casesStatistics.boxCountRolls = firstRecord.boxCountRolls || 0
this.casesStatistics.totalQty = firstRecord.totalQty || 0
} else {
this.casesStatistics.boxCountCases = 0
this.casesStatistics.boxCountRolls = 0
this.casesStatistics.totalQty = 0
}
})
},

Loading…
Cancel
Save