木箱详情

This commit is contained in:
2023-04-19 16:16:02 +08:00
parent b116b08acf
commit b70b2ca2d5
4 changed files with 278 additions and 84 deletions

View File

@@ -134,12 +134,24 @@
"navigationStyle": "custom" "navigationStyle": "custom"
} }
} }
,{
"path" : "pages/WarehouseManage/ProdDelivery",
"style": {
"navigationStyle": "custom"
}
}
,{ ,{
"path" : "pages/WarehouseManage/ProdDeliveryConfirm", "path" : "pages/WarehouseManage/ProdDeliveryConfirm",
"style": { "style": {
"navigationStyle": "custom" "navigationStyle": "custom"
} }
} }
,{
"path" : "pages/WarehouseManage/ProdDeliveryDtl",
"style": {
"navigationStyle": "custom"
}
}
,{ ,{
"path" : "pages/WarehouseManage/XuniDelivery", "path" : "pages/WarehouseManage/XuniDelivery",
"style": { "style": {

View File

@@ -0,0 +1,130 @@
<template>
<view class="zd_container">
<nav-bar title="生产区发货"></nav-bar>
<view class="zd_content">
<view class="zd_wrapper">
<view class="filter_item">
<view class="filter_label_wraper">
<span class="filter_label">木箱</span>
</view>
<view class="filter_input_wraper">
<search-box v-model="val1" :focused="true" @handleChange="handleChange1"
/>
</view>
</view>
<view class="filter_item">
<view class="filter_label_wraper">
<span class="filter_label">单据号</span>
</view>
<view class="filter_input_wraper">
<search-box v-model="val2" @handleChange="handleChange2" />
</view>
</view>
</view>
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>单据号</th>
<th>状态</th>
<th>总重量</th>
<th>明细数</th>
<th>客户编码</th>
<th>客户名称</th>
<th>交货单</th>
<th>备注</th>
<th>创建人</th>
<th>创建时间</th>
<th>分配人</th>
<th>分配时间</th>
<th>确认人</th>
<th>确认时间</th>
</tr>
</thead>
<tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.bill_code === pkId}">
<td>{{e.bill_code}}</td>
<td>{{e.bill_status}}</td>
<td>{{e.total_qty}}</td>
<td>{{e.detail_count}}</td>
<td>{{e.cust_code}}</td>
<td>{{e.cust_name}}</td>
<td>{{e.source_id}}</td>
<td>{{e.remark}}</td>
<td>{{e.input_optname}}</td>
<td>{{e.input_time}}</td>
<td>{{e.dis_optname}}</td>
<td>{{e.dis_time}}</td>
<td>{{e.confirm_optname}}</td>
<td>{{e.confirm_time}}</td>
</tr>
</tbody>
</table>
</view>
</view>
</view>
<view class="submit-bar">
<button class="submit-button" :class="{'btn-disabled': !pkId}" :disabled="disabled1" @tap="toSure">确认</button>
<button class="submit-button" @tap="_stivtQuery(val1, val2)">查询</button>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue'
import {stivtQuery} from '@/utils/getData1.js'
export default {
components: {
NavBar,
SearchBox
},
data() {
return {
val1: '',
val2: '',
dataList: [],
pkId: '',
pkObj: {},
disabled1: false
};
},
created () {
// this._stivtQuery(this.val1, this.val2)
},
methods: {
handleChange1 (e) {
this._stivtQuery(e, this.val2)
},
handleChange2 (e) {
this._stivtQuery(this.val1, e)
},
/** 初始化查询 */
async _stivtQuery (val1, val2) {
let res = await stivtQuery(val1, val2)
this.dataList = [...res.data]
},
toSure () {
if (this.pkId) {
uni.navigateTo({
url: '/pages/WarehouseManage/ProdDeliveryConfirm?billcode=' + this.pkObj.bill_code
})
}
},
toCheck (e) {
this.pkId = this.pkId === e.bill_code ? '' : e.bill_code
this.pkObj = this.pkId === e.bill_code ? e : {}
}
}
}
</script>
<style lang="stylus">
.zd_content
padding-bottom 77rpx
.slide_new table td:nth-child(1), .slide_new table th:nth-child(1)
box-shadow 1px 0 2px rgba(0,0,0,.12)
.bgyellow td
background-color #E9B451
</style>

View File

@@ -1,6 +1,6 @@
<template> <template>
<view class="zd_container"> <view class="zd_container">
<nav-bar title="生产区发货确认"></nav-bar> <nav-bar :inner2="true" @goIn="goIn" title="生产区发货确认"></nav-bar>
<view class="zd_content"> <view class="zd_content">
<view class="zd_wrapper"> <view class="zd_wrapper">
<view class="filter_item"> <view class="filter_item">
@@ -8,42 +8,34 @@
<span class="filter_label">木箱</span> <span class="filter_label">木箱</span>
</view> </view>
<view class="filter_input_wraper"> <view class="filter_input_wraper">
<search-box v-model="val1" :focused="true" @handleChange="handleChange1" <search-box v-model="val1" :focused="true"
/> />
</view> </view>
</view> </view>
<view class="filter_item">
<view class="filter_label_wraper">
<span class="filter_label">点位</span>
</view>
<view class="filter_input_wraper">
<search-box v-model="val2" @handleChange="handleChange2" />
</view>
</view>
</view> </view>
<view class="zd_wrapper grid-wraper"> <view class="zd_wrapper grid-wraper">
<view class="slide_new"> <view class="slide_new">
<table> <table>
<thead> <thead>
<tr> <tr>
<th>木箱</th> <th>木箱</th>
<th>子卷号</th> <th>点位编码</th>
<th>物料编码</th> <th>点位名称</th>
<th>物料名称</th> <th>重量</th>
<th>重量kg</th> <th>产品编码</th>
<th>更换外包</th> <th>产品名称</th>
<th>更换内包</th> <th>订单号</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr v-for="(e, i) in dataList" :key="i" @click="toCheck(e)" :class="{'checked': e.package_box_sn === pkId, 'bgyellow': e.colro_flag === '1'}"> <tr v-for="(e, i) in dataList" :key="i">
<td>{{e.package_box_sn}}</td> <td style="text-decoration: underline;" @tap="toXq(el.package_box_sn)">{{e.package_box_sn}}</td>
<td>{{e.container_name}}</td> <td>{{e.point_code}}</td>
<td>{{e.point_name}}</td>
<td>{{e.box_weight}}</td>
<td>{{e.product_name}}</td> <td>{{e.product_name}}</td>
<td>{{e.product_description}}</td> <td>{{e.product_description}}</td>
<td>{{e.net_weight}}</td> <td>{{e.sale_order_name}}</td>
<td>{{e.change_out}}</td>
<td>{{e.change_in}}</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -51,9 +43,8 @@
</view> </view>
</view> </view>
<view class="submit-bar"> <view class="submit-bar">
<button class="submit-button" :class="{'btn-disabled': !dataList.length}" :disabled="disabled1" @tap="_stoutConfirm">出库确认</button> <button class="submit-button" :class="{'btn-disabled': !val1}" :disabled="disabled1" @tap="_stoutConfirm">出库确认</button>
<button class="submit-button" :class="{'btn-disabled': !val1 || !val2}" :disabled="disabled2" @tap="_stdeliverApply">发货申请</button> <button class="submit-button" @tap="_stivtDtlQuery">查询</button>
<button class="submit-button" @tap="_stivtQuery(val1, val2)">查询</button>
</view> </view>
</view> </view>
</template> </template>
@@ -61,7 +52,7 @@
<script> <script>
import NavBar from '@/components/NavBar.vue' import NavBar from '@/components/NavBar.vue'
import SearchBox from '@/components/SearchBox.vue' import SearchBox from '@/components/SearchBox.vue'
import {stivtQuery, stoutConfirm, stoutPrint, stdeliverApply} from '@/utils/getData1.js' import {stivtDtlQuery, stoutConfirm} from '@/utils/getData1.js'
export default { export default {
components: { components: {
NavBar, NavBar,
@@ -70,36 +61,41 @@
data() { data() {
return { return {
val1: '', val1: '',
val2: '', billCode: '',
dataList: [], dataList: [],
pkId: '', disabled1: false
pkObj: {},
disabled1: false,
disabled2: false
}; };
}, },
created () { onLoad (option) {
this.billCode = option.billcode
this._stivtDtlQuery()
}, },
methods: { methods: {
handleChange1 (e) { goIn () {
this._stivtQuery(e, this.val2) uni.navigateTo({
url: `/pages/WarehouseManage/ProdDelivery`
})
}, },
handleChange2 (e) { handleChange (e) {
this._stivtQuery(this.val1, e) // console.log(e)
},
toXq (code) {
uni.navigateTo({
url: '/pages/WarehouseManage/ProdDeliveryDtl?boxno=' + code
})
}, },
/** 初始化查询 */ /** 初始化查询 */
async _stivtQuery (val1, val2) { async _stivtDtlQuery () {
let res = await stivtQuery(val1, val2) let res = await stivtDtlQuery(this.val1, this.billCode)
this.dataList = [...res.data] this.dataList = [...res.data]
}, },
async _stoutConfirm () { async _stoutConfirm () {
this.disabled1 = true this.disabled1 = true
try { try {
let res = await stoutConfirm(this.dataList, this.val1) let res = await stoutConfirm(this.val1)
this.disabled1 = false this.disabled1 = false
this.pkId = '' this.val1 = ''
this.pkObj = {} this._stivtDtlQuery()
this._stivtQuery(this.val1, this.val2)
uni.showToast({ uni.showToast({
title: res.message, title: res.message,
icon: 'none' icon: 'none'
@@ -107,47 +103,6 @@
} catch (e) { } catch (e) {
this.disabled1 = false this.disabled1 = false
} }
},
async _stdeliverApply () {
this.disabled2 = true
if (!this.val1 || !this.val2) {
this.disabled2 = false
return
}
try {
let res = await stdeliverApply(this.val1, this.val2)
this.disabled2 = false
uni.showToast({
title: res.message,
icon: 'none'
})
} catch (e) {
this.disabled2 = false
}
},
async _stoutPrint () {
this.disabled1 = true
if (!this.pkId) {
this.disabled1 = false
return
}
try {
let res = await stoutPrint(this.pkObj)
this.disabled1 = false
this.pkId = ''
this.pkObj = {}
this._stivtQuery(this.val1, this.val2)
uni.showToast({
title: res.message,
icon: 'none'
})
} catch (e) {
this.disabled1 = false
}
},
toCheck (e) {
this.pkId = this.pkId === e.package_box_sn ? '' : e.package_box_sn
this.pkObj = this.pkId === e.package_box_sn ? e : {}
} }
} }
} }

View File

@@ -0,0 +1,97 @@
<template>
<view class="zd_container">
<nav-bar :inner2="true" @goIn="goIn" title="木箱明细"></nav-bar>
<view class="zd_content">
<view class="zd_wrapper grid-wraper">
<view class="slide_new">
<table>
<thead>
<tr>
<th>木箱号</th>
<th>子卷号</th>
<th>sap批次</th>
<th>净重</th>
<th>状态</th>
<th>订单号</th>
<th>客户编码</th>
<th>客户名称</th>
<th>幅宽</th>
<th>厚度</th>
<th>长度</th>
<th>客户要求幅宽</th>
<th>物料标准厚度</th>
<th>保质期</th>
<th>制造完成日期</th>
<th>入库日期</th>
</tr>
</thead>
<tbody>
<tr v-for="(el, i) in dataList" :key="i">
<td>{{el.package_box_sn}}</td>
<td>{{el.container_name}}</td>
<td>{{el.sap_pcsn}}</td>
<td>{{el.net_weight}}</td>
<td>{{el.status}}</td>
<td>{{el.sale_order_name}}</td>
<td>{{el.customer_name}}</td>
<td>{{el.customer_description}}</td>
<td>{{el.width}}</td>
<td>{{el.thickness}}</td>
<td>{{el.length}}</td>
<td>{{el.width_standard}}</td>
<td>{{el.thickness_request}}</td>
<td>{{el.quality_guaran_period}}</td>
<td>{{el.date_of_production}}</td>
<td>{{el.date_of_fg_inbound}}</td>
</tr>
</tbody>
</table>
</view>
</view>
</view>
</view>
</template>
<script>
import NavBar from '@/components/NavBar.vue'
import {stivtbBoxDtlQuery} from '@/utils/getData1.js'
export default {
components: {
NavBar,
},
data() {
return {
boxno: '',
dataList: [],
disabled1: false
};
},
created () {
},
onLoad (option) {
this.boxno = option.boxno
this._stivtbBoxDtlQuery()
},
methods: {
goIn () {
uni.navigateTo({
url: `/pages/WarehouseManage/ProdDeliveryConfirm`
})
},
/** 初始化查询 */
async _stivtbBoxDtlQuery () {
let res = await stivtbBoxDtlQuery(this.boxno)
this.dataList = [...res.data]
}
}
}
</script>
<style lang="stylus">
.zd_content
padding-bottom 77rpx
.slide_new table td:nth-child(1), .slide_new table th:nth-child(1)
box-shadow 1px 0 2px rgba(0,0,0,.12)
.bgyellow td
background-color #E9B451
</style>