2023-12-17 15:28:03 +00:00
|
|
|
|
<template>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<tpx-page>
|
|
|
|
|
|
<tpx-layout>
|
|
|
|
|
|
<template v-slot:header></template>
|
|
|
|
|
|
<template v-slot:body>
|
|
|
|
|
|
<view class="dt-block">
|
|
|
|
|
|
<view class="dt-tle">
|
2024-09-01 14:56:12 +00:00
|
|
|
|
<view @click="setClipboardData(postInfo.billCode)" class="t1">订单号: {{postInfo.billCode}}</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<view class="t2">
|
|
|
|
|
|
<text class="clr-prm"></text>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<u-line margin="20rpx 0 20rpx"></u-line>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
<view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<bpe-addressjiami-tmp v-model:value="postInfo"></bpe-addressjiami-tmp>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<view class="dt-block">
|
|
|
|
|
|
<view class="dt-tle" @click="handleCopyWareHouse()">
|
|
|
|
|
|
<view class="t1">{{postInfo.intoWarehouseName}}联系信息</view>
|
|
|
|
|
|
<view class="t2">
|
|
|
|
|
|
<u-icon name="file-text" size="38" custom-style=""></u-icon>
|
|
|
|
|
|
</view>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<u-line margin="20rpx 0 20rpx"></u-line>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
<view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<view>
|
|
|
|
|
|
<text class="font-weight font-28 pr-20">{{postInfo.intoWarehouseContact}}</text>
|
|
|
|
|
|
<text class="clr-sub font-28">{{postInfo.intoWarehousePhone}}</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<u-text :text="postInfo.intoWarehouseAddress"
|
|
|
|
|
|
size="24" margin="20rpx 0 0 0" color="#999"
|
|
|
|
|
|
></u-text>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<view class="dt-block">
|
|
|
|
|
|
<view class="dt-tle">
|
|
|
|
|
|
<view class="t1">进仓货物总览</view>
|
|
|
|
|
|
<view class="t2">
|
2024-09-02 15:14:22 +00:00
|
|
|
|
<tpx-text-dic :value="billInfo.confirmStatus" :list="dicData.emis_wsin_tab"></tpx-text-dic>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
</view>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<u-line margin="20rpx 0 20rpx"></u-line>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
<view class="dt-item font-28">
|
|
|
|
|
|
<view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<text class="pr-20 clr-sub">总重量:</text>
|
|
|
|
|
|
<text class="">{{billInfo. totalWeight }} kg</text>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
<view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<text class="pr-20 clr-sub">总体积:</text>
|
|
|
|
|
|
<text class="">{{billInfo.totalVolume}}m³</text>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
<view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<text class="pr-20 clr-sub">总件数:</text>
|
|
|
|
|
|
<text class="">{{billInfo.totalParcelQty}}</text>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
|
|
<view v-for="(item) in billInfo.stockInBatchList" class="dt-block" style="padding-bottom: 2rpx;">
|
|
|
|
|
|
<view class="dt-tle">
|
|
|
|
|
|
<view class="t1">进仓单号:{{item.inNo}}</view>
|
|
|
|
|
|
<view class="t2">
|
|
|
|
|
|
<!-- <text class="clr-prm">{{'部分入仓'}}</text> -->
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<u-line margin="20rpx 0 20rpx"></u-line>
|
|
|
|
|
|
|
2023-12-17 15:28:03 +00:00
|
|
|
|
<view class="dt-item font-28">
|
|
|
|
|
|
<view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<text class="pr-20 clr-sub">进仓时间:</text>
|
|
|
|
|
|
<text class="font-weight">{{item.entryDate}}</text>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
<view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<text class="pr-20 clr-sub">操作员:</text>
|
|
|
|
|
|
<text class="font-weight">{{item.createByName}}</text>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
|
2024-09-01 14:56:12 +00:00
|
|
|
|
<view v-for="(gdItem) in item.cargoList" class="yditem">
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<view class="ydi-lab">
|
2024-09-01 14:56:12 +00:00
|
|
|
|
<text class="font-weight">{{gdItem.goodsName}}</text>
|
|
|
|
|
|
<text>异常:{{gdItem.abnormalQty}}</text>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
<view class="ydi-lab mt-10">
|
2024-09-01 14:56:12 +00:00
|
|
|
|
<text class="clr-sub">{{gdItem.brand}} - {{gdItem.nationArea}}</text>
|
|
|
|
|
|
<text class="clr-prm">实入:{{gdItem.cargoQty}}</text>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<view class="yditem" style="padding-bottom: 5rpx;">
|
|
|
|
|
|
<view class="dt-item font-28">
|
|
|
|
|
|
<view>
|
|
|
|
|
|
<text class="pr-20 clr-sub">重量:</text>
|
|
|
|
|
|
<text class="">{{item.totalWeight}} kg</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view>
|
|
|
|
|
|
<text class="pr-20 clr-sub">体积:</text>
|
|
|
|
|
|
<text class="">{{item.totalVolume}}m³</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view>
|
|
|
|
|
|
<text class="pr-20 clr-sub">件数:</text>
|
|
|
|
|
|
<text class="">{{item.totalParcelQty}}</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
|
|
<view class="dt-item font-28">
|
|
|
|
|
|
<u-row>
|
|
|
|
|
|
<text class="pr-20 clr-sub">包装类型:</text>
|
|
|
|
|
|
<tpx-text-dic :value="item.packType" :list="dicData.emis_tab_packing_type"></tpx-text-dic>
|
|
|
|
|
|
</u-row>
|
|
|
|
|
|
<view>
|
|
|
|
|
|
<text class="pr-20 clr-sub">供应商:</text>
|
|
|
|
|
|
<text class="">{{item.prepareInSupplier}}</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="dt-item font-28">
|
|
|
|
|
|
<view>
|
2024-12-29 15:39:01 +00:00
|
|
|
|
<text class="pr-20 clr-sub">同行快递:</text>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<text class="">{{item.prepareInExpress}}</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view>
|
|
|
|
|
|
<text class="pr-20 clr-sub">快递单号:</text>
|
|
|
|
|
|
<text class="">{{item.prepareInBillCode}}</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view v-if="item.blPrepareInFreight == '1'" class="dt-item font-28">
|
|
|
|
|
|
<view>
|
|
|
|
|
|
<text class="pr-20 clr-sub">代垫运费:</text>
|
|
|
|
|
|
<text class="font-weight clr-prm">¥{{item.prepareInEstFee}}</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
|
|
<view class="dt-item font-28">
|
|
|
|
|
|
<view>
|
|
|
|
|
|
<text class="pr-20 clr-sub">发货备注:</text>
|
|
|
|
|
|
<text class=" ">{{item.prepareInRemark}}</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
|
|
<view class="dt-item font-28" style="margin-bottom: 10rpx;">
|
|
|
|
|
|
<view>
|
|
|
|
|
|
<text class="pr-20 clr-sub">仓库收货备注:</text>
|
|
|
|
|
|
<text class=" ">{{item.remark}}</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="mb-20">
|
|
|
|
|
|
<u-row>
|
|
|
|
|
|
<u-image v-for="(sImgUrl, simIndex) in item.picUrl"
|
|
|
|
|
|
@click="handlePreviewImgs(item.picUrl, simIndex)" :src="sImgUrl" width="100" height="50" mode="aspectFill"
|
|
|
|
|
|
custom-style="margin: 20rpx 20rpx 0 0;"
|
|
|
|
|
|
></u-image>
|
|
|
|
|
|
</u-row>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
<u-row justify="end">
|
|
|
|
|
|
<view style="display: inline-block;white-space: nowrap;" class="mt-10 pb-30">
|
|
|
|
|
|
<u-row>
|
2024-09-02 15:14:22 +00:00
|
|
|
|
<u-button v-if="item.confirmStatus!=1" @click="handleDialogClick(feedModal)" shape="circle" :plain="true"
|
2024-09-01 12:18:45 +00:00
|
|
|
|
custom-style="height: 54rpx;margin-left: 20rpx;">反馈异常</u-button>
|
2024-09-01 14:56:12 +00:00
|
|
|
|
|
2024-09-02 15:14:22 +00:00
|
|
|
|
<u-button v-if="billInfo.stockInFlag == 1" :disabled="item.confirmStatus==1" @click="confirmJinCang(item.inNo)" shape="circle" type="primary"
|
2024-09-01 14:56:12 +00:00
|
|
|
|
custom-style="height: 54rpx;margin-left: 20rpx;">
|
2024-09-02 15:14:22 +00:00
|
|
|
|
{{item.confirmStatus==1?'已确认进仓':'进仓确认'}}
|
2024-09-01 14:56:12 +00:00
|
|
|
|
</u-button>
|
2024-09-02 15:14:22 +00:00
|
|
|
|
|
2024-09-01 12:18:45 +00:00
|
|
|
|
</u-row>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</u-row>
|
|
|
|
|
|
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</view>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
</template>
|
|
|
|
|
|
<template v-slot:footer>
|
|
|
|
|
|
<view class="blcok-white-noradius">
|
|
|
|
|
|
<u-row justify="space-around">
|
|
|
|
|
|
<u-button @click="handleDownloadPdf()" :plain="true" size="large" shape="circle" custom-style="margin: 0 10rpx;height:80rpx;font-size: 30rpx;"
|
|
|
|
|
|
>下载PDF
|
|
|
|
|
|
</u-button>
|
2024-09-02 15:14:22 +00:00
|
|
|
|
<u-button v-if="billInfo.stockInFlag == 1" :disabled="billInfo.confirmStatus==1" @click="confirmJinCang()" type="primary" size="large" shape="circle" custom-style="margin: 0 10rpx;height:80rpx;font-size: 30rpx;"
|
|
|
|
|
|
>{{billInfo.confirmStatus==1?'已确认进仓':'确认可发货'}}
|
2024-09-01 12:18:45 +00:00
|
|
|
|
</u-button>
|
|
|
|
|
|
</u-row>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</tpx-layout>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<tpx-com-dialog v-model:show="feedModal.show" title="反馈内容" @onSure="handleSubmitFeed">
|
|
|
|
|
|
<template v-slot:body>
|
|
|
|
|
|
<u-input placeholder="请输入" custom-style="height: 56rpx;font-size: 28rpx;"></u-input>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</tpx-com-dialog>
|
|
|
|
|
|
</tpx-page>
|
2023-12-17 15:28:03 +00:00
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
2024-09-01 12:18:45 +00:00
|
|
|
|
import BpeAddressjiamiTmp from "@/components/buns-post-edit-templates/bpe-addressjiami-tmp"
|
|
|
|
|
|
import BpeGoodstaticTmp from "@/components/buns-post-edit-templates/bpe-goodstatic-tmp"
|
|
|
|
|
|
import * as apiService from "@/common/api"
|
2024-09-02 09:06:25 +00:00
|
|
|
|
import { saveNetFile } from "@/common/untool"
|
2024-09-01 12:18:45 +00:00
|
|
|
|
|
2023-12-17 15:28:03 +00:00
|
|
|
|
export default {
|
2024-09-01 12:18:45 +00:00
|
|
|
|
components: { BpeAddressjiamiTmp, BpeGoodstaticTmp },
|
2023-12-17 15:28:03 +00:00
|
|
|
|
props: {
|
|
|
|
|
|
// hasLeftWin: {
|
|
|
|
|
|
// type: Boolean
|
|
|
|
|
|
// }
|
|
|
|
|
|
},
|
|
|
|
|
|
computed: {
|
2024-09-01 12:18:45 +00:00
|
|
|
|
dicData() {
|
|
|
|
|
|
return this.$store.getters.dicData
|
|
|
|
|
|
},
|
2023-12-17 15:28:03 +00:00
|
|
|
|
},
|
|
|
|
|
|
data() {
|
|
|
|
|
|
return {
|
2024-09-01 12:18:45 +00:00
|
|
|
|
pageLoading: true,
|
|
|
|
|
|
queryOption: {
|
|
|
|
|
|
inNo: '', // 进仓单号
|
|
|
|
|
|
},
|
|
|
|
|
|
billInfo: {},
|
|
|
|
|
|
postInfo: {},
|
2023-12-17 15:28:03 +00:00
|
|
|
|
feedModal: {
|
|
|
|
|
|
show: false
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
onShareAppMessage() {
|
|
|
|
|
|
return {
|
|
|
|
|
|
// title: '',
|
|
|
|
|
|
// path: 'TODO'
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
2024-09-01 12:18:45 +00:00
|
|
|
|
onLoad(option) {
|
|
|
|
|
|
this.queryOption = option
|
2023-12-17 15:28:03 +00:00
|
|
|
|
this.initData();
|
|
|
|
|
|
},
|
|
|
|
|
|
onUnload() {
|
2024-09-01 12:18:45 +00:00
|
|
|
|
|
2023-12-17 15:28:03 +00:00
|
|
|
|
},
|
|
|
|
|
|
methods: {
|
2024-09-01 12:18:45 +00:00
|
|
|
|
initData() {
|
|
|
|
|
|
this.inNo = this.queryOption.inNo
|
|
|
|
|
|
this.inNo && (this.queryOrderDetail(this.queryOption))
|
|
|
|
|
|
},
|
|
|
|
|
|
async queryOrderDetail(params) {
|
|
|
|
|
|
let res = await apiService.getWarehouseInInfo({...params, _loading: true})
|
|
|
|
|
|
if(!res.data) {
|
|
|
|
|
|
this.showToast("进仓单号数据不存在")
|
|
|
|
|
|
}
|
|
|
|
|
|
let data = res.data || {}
|
|
|
|
|
|
data?.stockInBatchList?.map?.(t=> {
|
|
|
|
|
|
t.picUrl && (t.picUrl = t.picUrl.split(","))
|
|
|
|
|
|
})
|
|
|
|
|
|
this.billInfo = data
|
|
|
|
|
|
if(data.billCode) {
|
|
|
|
|
|
let ores = await apiService.getOrderDetail({ billCode: data.billCode })
|
|
|
|
|
|
this.postInfo = ores.data
|
|
|
|
|
|
}
|
|
|
|
|
|
this.pageLoading = false
|
2023-12-17 15:28:03 +00:00
|
|
|
|
},
|
2024-09-01 12:18:45 +00:00
|
|
|
|
handleDialogClick(curModal){
|
|
|
|
|
|
curModal.show = !curModal.show
|
2023-12-17 15:28:03 +00:00
|
|
|
|
},
|
2024-09-01 12:18:45 +00:00
|
|
|
|
handleCopyWareHouse(){
|
|
|
|
|
|
let { intoWarehouseName, intoWarehouseContact,intoWarehousePhone, intoWarehouseAddress } = this.postInfo
|
|
|
|
|
|
let text = `仓库名称:${intoWarehouseName}\n仓库联系人:${intoWarehouseContact}\n仓库联系人电话:${intoWarehousePhone}\n仓库地址:${intoWarehouseAddress}`
|
|
|
|
|
|
this.setClipboardData(text)
|
2023-12-17 15:28:03 +00:00
|
|
|
|
},
|
2024-09-01 12:18:45 +00:00
|
|
|
|
handlePreviewImgs(list = [], index) {
|
2023-12-17 15:28:03 +00:00
|
|
|
|
uni.previewImage({
|
2024-09-01 12:18:45 +00:00
|
|
|
|
current: index,
|
|
|
|
|
|
urls: list
|
2023-12-17 15:28:03 +00:00
|
|
|
|
})
|
|
|
|
|
|
},
|
2024-09-01 12:18:45 +00:00
|
|
|
|
async handleDownloadPdf(){
|
|
|
|
|
|
let res = await apiService.exportWarehouseInTpl({ orderSn: this.postInfo.orderSn })
|
2024-09-02 09:06:25 +00:00
|
|
|
|
let sres = await saveNetFile(res)
|
2024-09-01 12:18:45 +00:00
|
|
|
|
},
|
|
|
|
|
|
async confirmJinCang(inNo) {
|
2024-09-01 15:23:35 +00:00
|
|
|
|
let confirmStatus = '2' // 部分入仓
|
2024-09-01 12:18:45 +00:00
|
|
|
|
if(!inNo) {
|
2024-09-01 15:23:35 +00:00
|
|
|
|
confirmStatus = '1' // 全部入仓
|
2024-09-01 12:18:45 +00:00
|
|
|
|
inNo = this.billInfo.inNo
|
|
|
|
|
|
}
|
2024-09-01 14:56:12 +00:00
|
|
|
|
let res = await apiService.cusConfirmWsIn({ inNo, confirmStatus, _loading: true })
|
2024-09-01 12:18:45 +00:00
|
|
|
|
this.initData()
|
|
|
|
|
|
},
|
2023-12-17 15:28:03 +00:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
<style lang="scss">
|
|
|
|
|
|
@import '@/common/uni-nvue.scss';
|
|
|
|
|
|
page {
|
|
|
|
|
|
background-color: #F6F6F6;
|
|
|
|
|
|
height: 100% !important;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
</style>
|
|
|
|
|
|
<style scoped lang="scss">
|
|
|
|
|
|
.dt-block {
|
|
|
|
|
|
margin-top: 30rpx;
|
|
|
|
|
|
padding: 30rpx;
|
|
|
|
|
|
background-color: #FFF;
|
|
|
|
|
|
position: relative;
|
|
|
|
|
|
}
|
|
|
|
|
|
.dt-tle {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
.t1 {
|
|
|
|
|
|
font-size: 30rpx;
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
}
|
|
|
|
|
|
.t2{
|
|
|
|
|
|
font-size: 30rpx;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.dt-item {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
|
margin-bottom: 20rpx;
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.yditem{
|
|
|
|
|
|
padding: 20rpx 20rpx;
|
|
|
|
|
|
background-color: #F6F6F6;
|
|
|
|
|
|
border-radius: 10rpx;
|
|
|
|
|
|
margin-bottom: 20rpx;
|
|
|
|
|
|
}
|
|
|
|
|
|
.ydi-lab{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
}
|
|
|
|
|
|
</style>
|