木箱详情

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

@@ -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>
<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_wrapper">
<view class="filter_item">
@@ -8,42 +8,34 @@
<span class="filter_label">木箱</span>
</view>
<view class="filter_input_wraper">
<search-box v-model="val1" :focused="true" @handleChange="handleChange1"
<search-box v-model="val1" :focused="true"
/>
</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>重量kg</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.package_box_sn === pkId, 'bgyellow': e.colro_flag === '1'}">
<td>{{e.package_box_sn}}</td>
<td>{{e.container_name}}</td>
<tr v-for="(e, i) in dataList" :key="i">
<td style="text-decoration: underline;" @tap="toXq(el.package_box_sn)">{{e.package_box_sn}}</td>
<td>{{e.point_code}}</td>
<td>{{e.point_name}}</td>
<td>{{e.box_weight}}</td>
<td>{{e.product_name}}</td>
<td>{{e.product_description}}</td>
<td>{{e.net_weight}}</td>
<td>{{e.change_out}}</td>
<td>{{e.change_in}}</td>
<td>{{e.sale_order_name}}</td>
</tr>
</tbody>
</table>
@@ -51,9 +43,8 @@
</view>
</view>
<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 || !val2}" :disabled="disabled2" @tap="_stdeliverApply">发货申请</button>
<button class="submit-button" @tap="_stivtQuery(val1, val2)">查询</button>
<button class="submit-button" :class="{'btn-disabled': !val1}" :disabled="disabled1" @tap="_stoutConfirm">出库确认</button>
<button class="submit-button" @tap="_stivtDtlQuery">查询</button>
</view>
</view>
</template>
@@ -61,7 +52,7 @@
<script>
import NavBar from '@/components/NavBar.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 {
components: {
NavBar,
@@ -70,36 +61,41 @@
data() {
return {
val1: '',
val2: '',
billCode: '',
dataList: [],
pkId: '',
pkObj: {},
disabled1: false,
disabled2: false
disabled1: false
};
},
created () {
onLoad (option) {
this.billCode = option.billcode
this._stivtDtlQuery()
},
methods: {
handleChange1 (e) {
this._stivtQuery(e, this.val2)
goIn () {
uni.navigateTo({
url: `/pages/WarehouseManage/ProdDelivery`
})
},
handleChange2 (e) {
this._stivtQuery(this.val1, e)
handleChange (e) {
// console.log(e)
},
toXq (code) {
uni.navigateTo({
url: '/pages/WarehouseManage/ProdDeliveryDtl?boxno=' + code
})
},
/** 初始化查询 */
async _stivtQuery (val1, val2) {
let res = await stivtQuery(val1, val2)
async _stivtDtlQuery () {
let res = await stivtDtlQuery(this.val1, this.billCode)
this.dataList = [...res.data]
},
async _stoutConfirm () {
this.disabled1 = true
try {
let res = await stoutConfirm(this.dataList, this.val1)
let res = await stoutConfirm(this.val1)
this.disabled1 = false
this.pkId = ''
this.pkObj = {}
this._stivtQuery(this.val1, this.val2)
this.val1 = ''
this._stivtDtlQuery()
uni.showToast({
title: res.message,
icon: 'none'
@@ -107,47 +103,6 @@
} catch (e) {
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>