|
|
|
@ -1,111 +1,114 @@
|
|
|
|
|
<template> |
|
|
|
|
<!-- <u-navbar title="自提明细扫描" placeholder border=true :autoBack="true" leftIconSize='35'></u-navbar> --> |
|
|
|
|
<u-navbar title="自提明细扫描" bgColor='#D3832A' leftIconColor='#ffffff' titleStyle='color:#ffffff' placeholder |
|
|
|
|
:autoBack="true" leftIconSize='35'></u-navbar> |
|
|
|
|
<view class="headtop"> |
|
|
|
|
<view> |
|
|
|
|
<view>车牌号:{{details.pickUpPlate}}</view> |
|
|
|
|
<view>司机:{{details.consignee}}</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="tabmabx"> |
|
|
|
|
<view> |
|
|
|
|
<uni-table :loading='false' emptyText="暂无更多数据"> |
|
|
|
|
<uni-tr> |
|
|
|
|
<uni-th width="70" align="center"></uni-th> |
|
|
|
|
<uni-th align="center">订单总数</uni-th> |
|
|
|
|
<uni-th align="center">签收件数</uni-th> |
|
|
|
|
</uni-tr> |
|
|
|
|
<uni-tr v-for="item in [1,2]"> |
|
|
|
|
<uni-td align="center" class="jhjs">{{item==1?'计划':'完成'}}</uni-td> |
|
|
|
|
<uni-td align="center">{{item==1?details.orderNum:details.completeNum}}</uni-td> |
|
|
|
|
<uni-td align="center">{{item==1?details.planNum:details.signedNum}}</uni-td> |
|
|
|
|
</uni-tr> |
|
|
|
|
</uni-table> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="scinp"> |
|
|
|
|
<view>齐套状态</view> |
|
|
|
|
<view> |
|
|
|
|
<cusSelects @change='checktype' :data='typearr' :value="schanvalue" placeholder='全部' :arrLeft='5' size='145' |
|
|
|
|
:clearable='true'></cusSelects> |
|
|
|
|
</view> |
|
|
|
|
<view class="inputs"> |
|
|
|
|
<input placeholder="请输入查询的订单号" /> |
|
|
|
|
</view> |
|
|
|
|
<view class="btscan" @click="initpage">查询</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="tabtip"> |
|
|
|
|
<view @click="setorderStatus(1)"> |
|
|
|
|
<view :class="orderType==1?'xz':''">定制品</view> |
|
|
|
|
</view> |
|
|
|
|
<view @click="setorderStatus(2)"> |
|
|
|
|
<view :class="orderType==2?'xz':''">库存品</view> |
|
|
|
|
</view> |
|
|
|
|
<view @click="setorderStatus(3)"> |
|
|
|
|
<view :class="orderType==3?'xz':''">零担</view> |
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
</view> |
|
|
|
|
<scroll-view scroll-y="true" class="scrollv"> |
|
|
|
|
<view class="mabxs"> |
|
|
|
|
|
|
|
|
|
<block v-for="item in dataList" :key="item"> |
|
|
|
|
<!-- 定制品 --> |
|
|
|
|
<template v-if="orderType==1"> |
|
|
|
|
<view class="ite" @click="showsdqs"> |
|
|
|
|
<view> |
|
|
|
|
<view @click.stop="goorderdetail(item)">订单号:{{item.orderCode}}</view> |
|
|
|
|
<view>包条码:{{item.orderPackageCode}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>是否扫描:{{item.scanStatusStr}}</view> |
|
|
|
|
<view>异常:{{item.errorStatusStr}}</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<!-- 库存品 --> |
|
|
|
|
<template v-if="orderType==2"> |
|
|
|
|
<view class="ite" @click="showsdqs"> |
|
|
|
|
<view> |
|
|
|
|
<view>SKU:{{item.sku}}</view> |
|
|
|
|
<view>包件号:{{item.coding}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>物品:{{item.descriptionGoods}}</view> |
|
|
|
|
<view>规格:{{item.specification}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>单位:{{item.cargoUnit}}</view> |
|
|
|
|
<view>扫描:{{item.scanStatus==1?'未扫描':item.scanStatus==''?'未扫描':'扫描'}}</view> |
|
|
|
|
<!-- <view>规格:{{item.specification}}</view> --> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<!-- 零担 --> |
|
|
|
|
<template v-if="orderType==3"> |
|
|
|
|
<view class="ite" @click="showsTipsZero(item)"> |
|
|
|
|
<view> |
|
|
|
|
<view>订单号:{{item.orderCode}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>运单号:{{item.waybillNumber}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>产品名称:{{item.firsts}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>预计签收件数:{{item.reservationQuantity}}</view> |
|
|
|
|
<view>实际签收件数:{{item.signforQuantity}}</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</template> |
|
|
|
|
</block> |
|
|
|
|
</view> |
|
|
|
|
</scroll-view> |
|
|
|
|
<BasicContainer ref="basicContainer" :option="option"> |
|
|
|
|
<template #head> |
|
|
|
|
<view class="headtop"> |
|
|
|
|
<view> |
|
|
|
|
<view>车牌号:{{details.pickUpPlate}}</view> |
|
|
|
|
<view>司机:{{details.consignee}}</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="tabmabx"> |
|
|
|
|
<view> |
|
|
|
|
<uni-table :loading='false' emptyText="暂无更多数据"> |
|
|
|
|
<uni-tr> |
|
|
|
|
<uni-th width="70" align="center"></uni-th> |
|
|
|
|
<uni-th align="center">订单总数</uni-th> |
|
|
|
|
<uni-th align="center">签收件数</uni-th> |
|
|
|
|
</uni-tr> |
|
|
|
|
<uni-tr v-for="item in [1,2]"> |
|
|
|
|
<uni-td align="center" class="jhjs">{{item==1?'计划':'完成'}}</uni-td> |
|
|
|
|
<uni-td align="center">{{item==1?details.orderNum:details.completeNum}}</uni-td> |
|
|
|
|
<uni-td align="center">{{item==1?details.planNum:details.signedNum}}</uni-td> |
|
|
|
|
</uni-tr> |
|
|
|
|
</uni-table> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="scinp"> |
|
|
|
|
<view>齐套状态</view> |
|
|
|
|
<view> |
|
|
|
|
<cusSelects @change='checktype' :data='typearr' :value="schanvalue" placeholder='全部' :arrLeft='5' |
|
|
|
|
size='145' :clearable='true'></cusSelects> |
|
|
|
|
</view> |
|
|
|
|
<view class="inputs"> |
|
|
|
|
<input placeholder="请输入查询的订单号" /> |
|
|
|
|
</view> |
|
|
|
|
<view class="btscan" @click="initpage">查询</view> |
|
|
|
|
</view> |
|
|
|
|
<view class="tabtip"> |
|
|
|
|
<view @click="setorderStatus(1)"> |
|
|
|
|
<view :class="orderType==1?'xz':''">定制品</view> |
|
|
|
|
</view> |
|
|
|
|
<view @click="setorderStatus(2)"> |
|
|
|
|
<view :class="orderType==2?'xz':''">库存品</view> |
|
|
|
|
</view> |
|
|
|
|
<view @click="setorderStatus(3)"> |
|
|
|
|
<view :class="orderType==3?'xz':''">零担</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<template #body> |
|
|
|
|
<scroll-view scroll-y="true" class="scrollv"> |
|
|
|
|
<view class="mabxs"> |
|
|
|
|
|
|
|
|
|
<block v-for="item in dataList" :key="item"> |
|
|
|
|
<!-- 定制品 --> |
|
|
|
|
<template v-if="orderType==1"> |
|
|
|
|
<view class="ite" @click="showsdqs"> |
|
|
|
|
<view> |
|
|
|
|
<view @click.stop="goorderdetail(item)">订单号:{{item.orderCode}}</view> |
|
|
|
|
<view>包条码:{{item.orderPackageCode}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>是否扫描:{{item.scanStatusStr}}</view> |
|
|
|
|
<view>异常:{{item.errorStatusStr}}</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<!-- 库存品 --> |
|
|
|
|
<template v-if="orderType==2"> |
|
|
|
|
<view class="ite" @click="showsdqs"> |
|
|
|
|
<view> |
|
|
|
|
<view>SKU:{{item.sku}}</view> |
|
|
|
|
<view>包件号:{{item.coding}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>物品:{{item.descriptionGoods}}</view> |
|
|
|
|
<view>规格:{{item.specification}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>单位:{{item.cargoUnit}}</view> |
|
|
|
|
<view>扫描:{{item.scanStatus==1?'未扫描':item.scanStatus==''?'未扫描':'扫描'}}</view> |
|
|
|
|
<!-- <view>规格:{{item.specification}}</view> --> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
|
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<!-- 零担 --> |
|
|
|
|
<template v-if="orderType==3"> |
|
|
|
|
<view class="ite" @click="showsTipsZero(item)"> |
|
|
|
|
<view> |
|
|
|
|
<view>订单号:{{item.orderCode}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>运单号:{{item.waybillNumber}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>产品名称:{{item.firsts}}</view> |
|
|
|
|
</view> |
|
|
|
|
<view> |
|
|
|
|
<view>预计签收件数:{{item.reservationQuantity}}</view> |
|
|
|
|
<view>实际签收件数:{{item.signforQuantity}}</view> |
|
|
|
|
</view> |
|
|
|
|
</view> |
|
|
|
|
</template> |
|
|
|
|
</block> |
|
|
|
|
</view> |
|
|
|
|
</scroll-view> |
|
|
|
|
</template> |
|
|
|
|
</BasicContainer> |
|
|
|
|
<tiplist ref="tiplists"></tiplist> |
|
|
|
|
<saomiao2></saomiao2> |
|
|
|
|
</template> |
|
|
|
@ -128,6 +131,15 @@
|
|
|
|
|
import cusSelects from '@/compoment/cus-selects-fan/cus-selects-fan.vue' |
|
|
|
|
import { inject, reactive, ref, toRefs, watchEffect } from "vue"; |
|
|
|
|
const utils = inject('utils') as any |
|
|
|
|
const option = { |
|
|
|
|
title: '自提明细扫描', |
|
|
|
|
haveData: true, |
|
|
|
|
async pullDownRefreshInitPage() { |
|
|
|
|
details.dataList = [] |
|
|
|
|
await initpage() |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
let details = reactive<pagedetailType>({ |
|
|
|
|
schanvalue: '', |
|
|
|
|
typearr: [ |
|
|
|
@ -163,6 +175,7 @@
|
|
|
|
|
stockList: [] |
|
|
|
|
}) |
|
|
|
|
const tiplists = ref(null) |
|
|
|
|
const basicContainer = ref(null) |
|
|
|
|
onLoad((op) => { |
|
|
|
|
details.billLadingId = op.billLadingId |
|
|
|
|
}) |
|
|
|
@ -174,8 +187,12 @@
|
|
|
|
|
sacn() |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
// initpage() |
|
|
|
|
const timer = setTimeout(() => { |
|
|
|
|
basicContainer.value.startPullDownRefresh() |
|
|
|
|
clearTimeout(timer) |
|
|
|
|
}, 200) |
|
|
|
|
details.dataList = details.orderList |
|
|
|
|
initpage() |
|
|
|
|
}) |
|
|
|
|
function goorderdetail(item) { |
|
|
|
|
uni.navigateTo({ |
|
|
|
@ -301,51 +318,66 @@
|
|
|
|
|
} |
|
|
|
|
async function initpage() { |
|
|
|
|
details.dataList = [] |
|
|
|
|
console.log('获取数据') |
|
|
|
|
if (details.orderType == 1) { |
|
|
|
|
let data = { |
|
|
|
|
orderStatus: details.orderStatus, |
|
|
|
|
billLadingId: details.billLadingId, |
|
|
|
|
orderCode: details.orderCode |
|
|
|
|
} |
|
|
|
|
let response = await billLadingdetailList(data) |
|
|
|
|
if (response.code !== 200) return |
|
|
|
|
details.orderList = response.data.list |
|
|
|
|
details.consignee = response.data.consignee |
|
|
|
|
details.pickUpPlate = response.data.pickUpPlate |
|
|
|
|
details.carTypeStr = response.data.carTypeStr |
|
|
|
|
details.orderNum = response.data.orderNum |
|
|
|
|
details.planNum = response.data.planNum |
|
|
|
|
details.completeNum = response.data.completeNum |
|
|
|
|
details.signedNum = response.data.signedNum |
|
|
|
|
} else if (details.orderType == 2) { |
|
|
|
|
let data = { |
|
|
|
|
orderStatus: details.orderStatus, |
|
|
|
|
id: details.billLadingId, |
|
|
|
|
orderCode: details.orderCode, |
|
|
|
|
current: 1, |
|
|
|
|
size: 10 |
|
|
|
|
try { |
|
|
|
|
uni.showLoading({ |
|
|
|
|
title: '数据加载中', |
|
|
|
|
mask: true |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
console.log('获取数据') |
|
|
|
|
if (details.orderType == 1) { |
|
|
|
|
let data = { |
|
|
|
|
orderStatus: details.orderStatus, |
|
|
|
|
billLadingId: details.billLadingId, |
|
|
|
|
orderCode: details.orderCode |
|
|
|
|
} |
|
|
|
|
let response = await billLadingdetailList(data) |
|
|
|
|
if (response.code !== 200) return |
|
|
|
|
details.orderList = response.data.list || [] |
|
|
|
|
details.consignee = response.data.consignee |
|
|
|
|
details.pickUpPlate = response.data.pickUpPlate |
|
|
|
|
details.carTypeStr = response.data.carTypeStr |
|
|
|
|
details.orderNum = response.data.orderNum |
|
|
|
|
details.planNum = response.data.planNum |
|
|
|
|
details.completeNum = response.data.completeNum |
|
|
|
|
details.signedNum = response.data.signedNum |
|
|
|
|
details.dataList = details.orderList |
|
|
|
|
} else if (details.orderType == 2) { |
|
|
|
|
let data = { |
|
|
|
|
orderStatus: details.orderStatus, |
|
|
|
|
id: details.billLadingId, |
|
|
|
|
orderCode: details.orderCode, |
|
|
|
|
current: 1, |
|
|
|
|
size: 10 |
|
|
|
|
} |
|
|
|
|
let response = await billLadinggetInventoryNum(data) |
|
|
|
|
if (response.code !== 200) return |
|
|
|
|
details.zeroList = response.data.records || [] |
|
|
|
|
details.dataList = details.zeroList |
|
|
|
|
} |
|
|
|
|
let response = await billLadinggetInventoryNum(data) |
|
|
|
|
if (response.code !== 200) return |
|
|
|
|
details.zeroList = response.data.records |
|
|
|
|
} |
|
|
|
|
else if (details.orderType == 3) { |
|
|
|
|
let data = { |
|
|
|
|
billLadingId: details.billLadingId |
|
|
|
|
else if (details.orderType == 3) { |
|
|
|
|
let data = { |
|
|
|
|
billLadingId: details.billLadingId |
|
|
|
|
} |
|
|
|
|
const response = await billLadingzeroBillData(data) |
|
|
|
|
console.log('response :>> ', response); |
|
|
|
|
if (response.code !== 200) return |
|
|
|
|
details.stockList = response.data || [] |
|
|
|
|
details.dataList = details.stockList |
|
|
|
|
} |
|
|
|
|
const response = await billLadingzeroBillData(data) |
|
|
|
|
console.log('response :>> ', response); |
|
|
|
|
if (response.code !== 200) return |
|
|
|
|
details.stockList = response.data || [] |
|
|
|
|
} catch (e) { |
|
|
|
|
//TODO handle the exception |
|
|
|
|
} finally { |
|
|
|
|
uni.hideLoading() |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
function setorderStatus(state : number) { |
|
|
|
|
details.dataList = [] |
|
|
|
|
details.orderType = state |
|
|
|
|
initpage() |
|
|
|
|
if (state === 1) details.dataList = details.orderList |
|
|
|
|
else if (state === 2) details.dataList = details.zeroList |
|
|
|
|
else if (state === 3) details.dataList = details.stockList |
|
|
|
|
basicContainer.value.startPullDownRefresh() |
|
|
|
|
// if (state === 1) details.dataList = details.orderList |
|
|
|
|
// else if (state === 2) details.dataList = details.zeroList |
|
|
|
|
// else if (state === 3) details.dataList = details.stockList |
|
|
|
|
} |
|
|
|
|
function checktype(e) { |
|
|
|
|
if (e == '') { |
|
|
|
|