|
|
|
@ -152,7 +152,8 @@ |
|
|
|
<el-tab-pane label="手工装箱" name="box"> |
|
|
|
<el-button @click="oneClickPacking()" type="primary" style="margin-left: 2px;margin-top: 0px">{{'一键装箱'}}</el-button> |
|
|
|
<el-button @click="upLoadPallet()" type="primary" style="margin-left: 2px;margin-top: 0px">{{'导入装箱单'}}</el-button> |
|
|
|
<el-button @click="newPalletModel()" type="primary" style="margin-left: 2px;margin-top: 0px">{{'装箱'}}</el-button> |
|
|
|
<el-button @click="palletMaintenance()" type="primary" style="margin-left: 2px;margin-top: 0px">{{'栈板维护'}}</el-button> |
|
|
|
<!-- <el-button @click="newPalletModel()" type="primary" style="margin-left: 2px;margin-top: 0px">{{'装箱'}}</el-button>--> |
|
|
|
<el-button @click="exportExcel()" type="primary" style="margin-left: 2px;margin-top: 0px">{{'导出模版'}}</el-button> |
|
|
|
<el-table |
|
|
|
:data="dataList4" |
|
|
|
@ -168,7 +169,7 @@ |
|
|
|
label="操作"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
|
|
<a type="text" size="small" @click="boxDetailModel(scope.row)">箱明细</a> |
|
|
|
<!-- <a type="text" size="small" @click="boxDetailModel(scope.row)">箱明细</a>--> |
|
|
|
<a type="text" size="small" @click="updatePalletModel(scope.row)">修改</a> |
|
|
|
<a type="text" size="small" @click="deletePallet(scope.row)">删除</a> |
|
|
|
</template> |
|
|
|
@ -497,32 +498,12 @@ |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<el-dialog title="一键装箱" :close-on-click-modal="false" v-drag :visible.sync="oneClickPackingModelFlag" width="400px"> |
|
|
|
<el-form label-position="top" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
<el-dialog title="一键装箱" :close-on-click-modal="false" v-drag :visible.sync="oneClickPackingModelFlag" width="170px"> |
|
|
|
<el-form label-position="top" style="margin-left: 7px;margin-top: 10px;"> |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item :label="''" > |
|
|
|
<template #label> |
|
|
|
<span slot="label" style="" class="big-label"> |
|
|
|
<a href="#" @click="palletFlag=true">栈板</a> |
|
|
|
</span> |
|
|
|
</template> |
|
|
|
<el-input v-model="oneClickPackingModelData.pallet" disabled ></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item :label="'栈板编号'" > |
|
|
|
<el-input v-model="oneClickPackingModelData.palletRemark" ></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item :label="'栈板高度(M)'" > |
|
|
|
<el-input v-model="oneClickPackingModelData.height" type="number" ></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item :label="'数量'" > |
|
|
|
<el-input v-model="oneClickPackingModelData.palletQty" type="number" ></el-input> |
|
|
|
<el-checkbox style="font-weight: bold" v-model="oneClickPackingModelData.boxRemnant">是否显示零数箱</el-checkbox> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
@ -532,6 +513,50 @@ |
|
|
|
<el-button type="primary" @click="oneClickPackingModelFlag=false">关闭</el-button> |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<el-dialog title="栈板维护" :close-on-click-modal="false" v-drag :visible.sync="palletMaintenanceModelFlag" width="450px"> |
|
|
|
<!-- 栈板记录列表 --> |
|
|
|
<div style="margin: 15px 0;"> |
|
|
|
<div style="margin-bottom: 10px;"> |
|
|
|
<span style="font-weight: bold; margin-right: 10px;">栈板记录:</span> |
|
|
|
<el-button type="primary" size="small" @click="addPalletMaintenanceRecord">添加行</el-button> |
|
|
|
</div> |
|
|
|
<el-table :data="palletMaintenanceRecords" border style="width: 100%; margin-bottom: 15px;" class="zxClass" |
|
|
|
max-height="200" v-if="palletMaintenanceRecords.length > 0"> |
|
|
|
<el-table-column label="栈板" min-width="100"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input v-model="scope.row.pallet" disabled style="width: 100%;"> |
|
|
|
<template slot="append"> |
|
|
|
<el-button @click="selectPalletMaintenance(scope.$index)" size="mini" type="primary">选择</el-button> |
|
|
|
</template> |
|
|
|
</el-input> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="栈板高度(M)" width="90"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input v-model="scope.row.height" type="text" placeholder="请输入高度" style="width: 100%;"></el-input> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="托数" width="80"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-input v-model="scope.row.palletQty" type="text" placeholder="请输入托数" style="width: 100%;"></el-input> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="操作" width="40"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<a type="text" size="mini" @click="removePalletMaintenanceRecord(scope.$index)">删除</a> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
<div v-if="palletMaintenanceRecords.length === 0" style="text-align: center; color: #999; padding: 20px; border: 1px dashed #ddd;"> |
|
|
|
暂无栈板记录,请点击"添加行"按钮添加 |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<el-footer style="height:40px;margin-top: 10px;text-align:center"> |
|
|
|
<el-button type="primary" @click="savePalletMaintenance()">确定</el-button> |
|
|
|
<el-button type="primary" @click="palletMaintenanceModelFlag=false">关闭</el-button> |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog title="物料信息" @close="closePartDialog" @open="openPartDialog" :visible.sync="partFlag" width="559px" v-drag> |
|
|
|
<el-form inline="inline" label-position="top" :model="partData" style="margin-left: 7px;margin-top: -5px;"> |
|
|
|
|
|
|
|
@ -639,6 +664,7 @@ |
|
|
|
updateEcssDel, |
|
|
|
cancerConfirmEcssDel, |
|
|
|
searchCoDelPalletData, |
|
|
|
searchCoDelPalletDataNew, |
|
|
|
searchEcssCoDelPalletHeaderData, |
|
|
|
searchEcssCoDelPalletDetailData, |
|
|
|
savePalletHeader, |
|
|
|
@ -646,6 +672,7 @@ |
|
|
|
savePalletDetail, |
|
|
|
deletePalletDetail, |
|
|
|
saveOneClickPacking, |
|
|
|
savePalletMaintenance, |
|
|
|
getNotifyPartDetail, |
|
|
|
searchPalletList, |
|
|
|
updateExportFlag |
|
|
|
@ -704,11 +731,15 @@ |
|
|
|
}, |
|
|
|
oneClickPackingModelFlag:false, |
|
|
|
oneClickPackingModelData:{ |
|
|
|
pallet:'', |
|
|
|
palletRemark:'', |
|
|
|
height:'', |
|
|
|
palletQty:'', |
|
|
|
}, |
|
|
|
boxRemnant: false, |
|
|
|
}, |
|
|
|
// 一键装箱栈板记录 |
|
|
|
oneClickPalletRecords: [], |
|
|
|
currentOneClickPalletIndex: -1, // 当前选择栈板的行索引 |
|
|
|
// 栈板维护相关 |
|
|
|
palletMaintenanceModelFlag: false, |
|
|
|
palletMaintenanceRecords: [], |
|
|
|
currentPalletMaintenanceIndex: -1, // 当前选择栈板的行索引 |
|
|
|
palletModelFlag:false, |
|
|
|
palletModelData:{ |
|
|
|
addFlag:0, |
|
|
|
@ -2097,7 +2128,7 @@ |
|
|
|
}); |
|
|
|
} |
|
|
|
if(this.activeName==='pallet'){ |
|
|
|
searchCoDelPalletData(this.currentRow).then(({data}) => { |
|
|
|
searchCoDelPalletDataNew(this.currentRow).then(({data}) => { |
|
|
|
//区分请求成功和失败的状况 |
|
|
|
if (data && data.code == 0) { |
|
|
|
this.dataList3 = data.rows |
|
|
|
@ -2232,12 +2263,12 @@ |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
/* if(this.currentRow.notifyStatus!=='仓库已确认'){ |
|
|
|
this.$alert('仓库未确认无法导入装箱清单!', '错误', { |
|
|
|
/*if(this.currentRow.walMartOrderFlag==='Y'){ |
|
|
|
this.$alert('沃尔玛订单暂时无法导入装箱清单!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} */ |
|
|
|
}*/ |
|
|
|
let inData={ |
|
|
|
site:this.currentRow.site, |
|
|
|
buNo:this.currentRow.buNo, |
|
|
|
@ -2317,7 +2348,6 @@ |
|
|
|
}, |
|
|
|
updatePalletModel(row){ |
|
|
|
this.palletModelData=JSON.parse(JSON.stringify(row)) |
|
|
|
this.palletModelData.pallet=row.palletNo |
|
|
|
this.palletModelData.palletRemark=row.palletRemark |
|
|
|
this.palletModelData.addFlag=1 |
|
|
|
this.palletModelFlag=true |
|
|
|
@ -2519,7 +2549,7 @@ |
|
|
|
this.dataList5 = data.rows |
|
|
|
} |
|
|
|
}) |
|
|
|
searchCoDelPalletData(this.currentRow).then(({data}) => { |
|
|
|
searchCoDelPalletDataNew(this.currentRow).then(({data}) => { |
|
|
|
if (data && data.code == 0) { |
|
|
|
this.dataList3 = data.rows |
|
|
|
} else { |
|
|
|
@ -2578,37 +2608,27 @@ |
|
|
|
return false |
|
|
|
} */ |
|
|
|
this.oneClickPackingModelData={ |
|
|
|
addFlag:0, |
|
|
|
site:this.currentRow.site, |
|
|
|
buNo:this.currentRow.buNo, |
|
|
|
delNo:this.currentRow.delNo, |
|
|
|
seqNo:'', |
|
|
|
palletNo:'', |
|
|
|
palletQty:'', |
|
|
|
length:'', |
|
|
|
width:'', |
|
|
|
height:'', |
|
|
|
volume:'', |
|
|
|
grossWeight:'', |
|
|
|
netWeight:'', |
|
|
|
palletRemark:'', |
|
|
|
} |
|
|
|
boxRemnant: false, |
|
|
|
} |
|
|
|
// 重置栈板记录并默认添加一行 |
|
|
|
this.oneClickPalletRecords = [] |
|
|
|
this.oneClickPalletRecords.push({ |
|
|
|
pallet: '', |
|
|
|
palletQty: '', |
|
|
|
height: '' |
|
|
|
}) |
|
|
|
this.oneClickPackingModelFlag=true |
|
|
|
}, |
|
|
|
saveOneClickPacking(){ |
|
|
|
if(this.oneClickPackingModelData.palletQty===''||this.oneClickPackingModelData.palletQty==null){ |
|
|
|
this.$alert('请输入数量!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
if(this.oneClickPackingModelData.height===''||this.oneClickPackingModelData.height==null){ |
|
|
|
this.$alert('请输入栈板高度(M)!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
let saveData = { |
|
|
|
site: this.currentRow.site, |
|
|
|
buNo: this.currentRow.buNo, |
|
|
|
delNo: this.currentRow.delNo, |
|
|
|
boxRemnant: this.oneClickPackingModelData.boxRemnant, |
|
|
|
palletRecords: JSON.stringify(this.oneClickPalletRecords) |
|
|
|
} |
|
|
|
saveOneClickPacking(this.oneClickPackingModelData).then(({data}) => { |
|
|
|
|
|
|
|
saveOneClickPacking(saveData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.refreshCurrentTabTable() |
|
|
|
this.oneClickPackingModelFlag=false; |
|
|
|
@ -2626,6 +2646,24 @@ |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
// 一键装箱栈板记录相关方法 |
|
|
|
addOneClickPalletRecord() { |
|
|
|
this.oneClickPalletRecords.push({ |
|
|
|
pallet: '', |
|
|
|
palletQty: '', |
|
|
|
height: '' |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
removeOneClickPalletRecord(index) { |
|
|
|
this.oneClickPalletRecords.splice(index, 1) |
|
|
|
}, |
|
|
|
|
|
|
|
selectOneClickPallet(index) { |
|
|
|
this.currentOneClickPalletIndex = index |
|
|
|
this.palletFlag = true |
|
|
|
}, |
|
|
|
|
|
|
|
openPalletDialog () { |
|
|
|
//请求 |
|
|
|
this.searchPalletList(); |
|
|
|
@ -2635,7 +2673,7 @@ |
|
|
|
this.palletFlag = false |
|
|
|
}, |
|
|
|
searchPalletList () { |
|
|
|
this.palletData.buNo = this.oneOrAll===2?this.oneClickPackingModelData.buNo:this.palletModelData.buNo |
|
|
|
this.palletData.buNo = (this.oneOrAll===2 || this.oneOrAll===3)?this.currentRow.buNo:this.palletModelData.buNo |
|
|
|
searchPalletList(this.palletData).then(({data}) => { |
|
|
|
if (data && data.code === 0){ |
|
|
|
this.palletList = data.rows; |
|
|
|
@ -2644,12 +2682,108 @@ |
|
|
|
}, |
|
|
|
palletRowDblclick (row) { |
|
|
|
if (this.oneOrAll===2) { |
|
|
|
this.oneClickPackingModelData.pallet = row.palletNo |
|
|
|
// 一键装箱栈板选择 |
|
|
|
if (this.currentOneClickPalletIndex >= 0) { |
|
|
|
this.oneClickPalletRecords[this.currentOneClickPalletIndex].pallet = row.palletNo |
|
|
|
} |
|
|
|
} else if (this.oneOrAll===3) { |
|
|
|
// 栈板维护栈板选择 |
|
|
|
if (this.currentPalletMaintenanceIndex >= 0) { |
|
|
|
this.palletMaintenanceRecords[this.currentPalletMaintenanceIndex].pallet = row.palletNo |
|
|
|
} |
|
|
|
} else { |
|
|
|
this.palletModelData.pallet = row.palletNo |
|
|
|
} |
|
|
|
this.palletFlag = false |
|
|
|
}, |
|
|
|
|
|
|
|
// 栈板维护相关方法 |
|
|
|
palletMaintenance() { |
|
|
|
this.oneOrAll = 3; |
|
|
|
if(this.currentRow.site===''||this.currentRow.site==null){ |
|
|
|
this.$alert('请先选择发货通知单!', '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
|
|
|
|
// 重置栈板记录并默认添加一行 |
|
|
|
this.palletMaintenanceRecords = [] |
|
|
|
this.palletMaintenanceRecords.push({ |
|
|
|
pallet: '', |
|
|
|
palletQty: '', |
|
|
|
height: '' |
|
|
|
}) |
|
|
|
this.palletMaintenanceModelFlag = true |
|
|
|
}, |
|
|
|
|
|
|
|
addPalletMaintenanceRecord() { |
|
|
|
this.palletMaintenanceRecords.push({ |
|
|
|
pallet: '', |
|
|
|
palletQty: '', |
|
|
|
height: '' |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
removePalletMaintenanceRecord(index) { |
|
|
|
this.palletMaintenanceRecords.splice(index, 1) |
|
|
|
}, |
|
|
|
|
|
|
|
selectPalletMaintenance(index) { |
|
|
|
this.currentPalletMaintenanceIndex = index |
|
|
|
this.palletFlag = true |
|
|
|
}, |
|
|
|
|
|
|
|
savePalletMaintenance() { |
|
|
|
// 验证栈板记录 |
|
|
|
for (let i = 0; i < this.palletMaintenanceRecords.length; i++) { |
|
|
|
const record = this.palletMaintenanceRecords[i] |
|
|
|
if (!record.pallet) { |
|
|
|
this.$alert(`第${i + 1}行栈板不能为空!`, '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
if (!record.palletQty || record.palletQty <= 0) { |
|
|
|
this.$alert(`第${i + 1}行托数必须大于0!`, '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
if (!record.height || record.height <= 0) { |
|
|
|
this.$alert(`第${i + 1}行栈板高度必须大于0!`, '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
return false |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 这里只新增栈板记录,不做其他事情 |
|
|
|
let saveData = { |
|
|
|
site: this.currentRow.site, |
|
|
|
buNo: this.currentRow.buNo, |
|
|
|
delNo: this.currentRow.delNo, |
|
|
|
palletRecords: JSON.stringify(this.palletMaintenanceRecords), |
|
|
|
} |
|
|
|
|
|
|
|
// 使用相同的API,但传递maintenanceOnly标识 |
|
|
|
savePalletMaintenance(saveData).then(({data}) => { |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.refreshCurrentTabTable() |
|
|
|
this.palletMaintenanceModelFlag = false; |
|
|
|
this.$message({ |
|
|
|
message: '栈板记录新增成功', |
|
|
|
type: 'success', |
|
|
|
duration: 1500, |
|
|
|
onClose: () => {} |
|
|
|
}) |
|
|
|
} else { |
|
|
|
this.$alert(data.msg, '错误', { |
|
|
|
confirmButtonText: '确定' |
|
|
|
}) |
|
|
|
} |
|
|
|
}) |
|
|
|
}, |
|
|
|
}, |
|
|
|
activated() { |
|
|
|
this.searchTable() |
|
|
|
|