237 lines
6.9 KiB
Vue
237 lines
6.9 KiB
Vue
<template>
|
|
<view class="zd_container">
|
|
<nav-bar :inner2="true" @goIn="goIn" 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-mx
|
|
ref="scanChild"
|
|
v-model="val1"
|
|
@handleChange="handleChange"
|
|
/>
|
|
</view>
|
|
</view>
|
|
<view class="filter_item">
|
|
<view class="filter_label">已盘点数</view>
|
|
<view class="filter_input_wraper">
|
|
<input type="text" class="filter_input" v-model="val2" disabled>
|
|
</view>
|
|
</view>
|
|
<view class="filter_item">
|
|
<view class="filter_label">未盘点数</view>
|
|
<view class="filter_input_wraper">
|
|
<input type="text" class="filter_input" v-model="val3" disabled>
|
|
</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>
|
|
<th>盘点时间</th>
|
|
<th>单据号</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr v-for="(el, i) in dataList" :key="i" :class="{'checked': el.checked}">
|
|
<td><span class="iconfont icon_unchecked" :class="{'icon_checked': el.checked}" @tap="toCheck(el)"></span></td>
|
|
<td style="text-decoration: underline;" @tap="toXq(el.storagevehicle_code)"><a>{{el.storagevehicle_code}}</a></td>
|
|
<td>{{el.status}}</td>
|
|
<td>{{el.net_qty}}</td>
|
|
<!-- <td>{{el.base_qty}}</td>
|
|
<td><input type="number" class="sin_input" :min="0" v-model="el.fac_qty" @blur="e => {if (e.target.value === '') {el.fac_qty=0}}" v-enter-number></td> -->
|
|
<td>{{el.sect_name}}</td>
|
|
<td>{{el.struct_name}}</td>
|
|
<td>{{el.material_code}}</td>
|
|
<td>{{el.material_name}}</td>
|
|
<td @tap="toRemark(el)"><input type="text" class="sin_input" v-model="el.remark"></td>
|
|
<td>{{el.quanlity_in_box}}</td>
|
|
<td>{{el.check_result}}</td>
|
|
<td>{{el.check_optname}}</td>
|
|
<td>{{el.check_time}}</td>
|
|
<td>{{el.check_code}}</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="zd-row submitbar">
|
|
<!-- <button class="submit-button" :class="{'btn-disabled': !dataList.length}" :disabled="disabled1" @tap="_saveCheck">保存</button> -->
|
|
<!-- <button class="submit-button" :class="{'btn-disabled': !dataList.length}" :disabled="disabled1" @tap="_confirmCheck">确认</button> -->
|
|
<button class="zd-col-7 btn-submit btn-success letter-30" :class="{'btn-info': !dataList.length}" :disabled="disabled1" @tap="_checkexception">异常</button>
|
|
<button class="zd-col-7 btn-submit btn-success letter-30" :class="{'btn-info': !dataList.length}" :disabled="disabled1" @tap="_checknormal">正常</button>
|
|
<button class="zd-col-7 btn-submit btn-success letter-30" @tap="_checkQueryDtl(checkCode, val1)">查询</button>
|
|
</view>
|
|
<view class="msg_wrapper h-50" :class="modelShow ? 'popshow' : 'pophide'">
|
|
<view class="pop-line"></view>
|
|
<view class="msg_content">
|
|
<view class="zd_wrapper zd_wrapper-1">
|
|
<view class="filter_item filter_item-1">
|
|
<view class="filter_label">备注</view>
|
|
<view class="filter_input_wraper">
|
|
<input type="text" class="filter_input" v-model="val0">
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<view class="zd-row submitbar">
|
|
<button class="zd-col-22 btn-submit btn-success letter-30" @tap="toSurerk">确定</button>
|
|
</view>
|
|
</view>
|
|
<view v-show="modelShow" class="msg_mask"></view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import NavBar from '@/components/NavBar.vue'
|
|
import SearchBox from '@/components/SearchBox.vue'
|
|
import SearchBoxMx from '@/components/SearchBoxMx.vue'
|
|
import {checkQueryDtl, checkexception, checknormal} from '@/utils/getData1.js'
|
|
export default {
|
|
components: {
|
|
NavBar,
|
|
SearchBox,
|
|
SearchBoxMx
|
|
},
|
|
data() {
|
|
return {
|
|
title: '',
|
|
modelShow: false,
|
|
value: '1',
|
|
val0: '',
|
|
val1: '',
|
|
val2: '',
|
|
val3: '',
|
|
checkCode: '',
|
|
dataList: [],
|
|
// dataList : [{
|
|
// checked: false,
|
|
// storagevehicle_code: '1',
|
|
// status: '1',
|
|
// net_qty: '1',
|
|
// sect_name: '1',
|
|
// struct_name: '1',
|
|
// material_code: '1',
|
|
// material_name: '1',
|
|
// remark: '3342',
|
|
// }],
|
|
checkArr: [],
|
|
disabled1: false,
|
|
obj: {}
|
|
};
|
|
},
|
|
created () {
|
|
},
|
|
onLoad (option) {
|
|
this.checkCode = option.checkcode
|
|
this.title = option.title
|
|
},
|
|
mounted () {
|
|
this.$refs.scanChild.handleFocus()
|
|
},
|
|
methods: {
|
|
goIn () {
|
|
uni.navigateTo({
|
|
url: `/pages/WarehouseManage/CheckList?title=` + this.title
|
|
})
|
|
},
|
|
handleChange (e) {
|
|
this._checkQueryDtl(this.checkCode, e)
|
|
},
|
|
toRemark (e) {
|
|
this.val0 = e.remark
|
|
this.obj = e
|
|
this.modelShow = true
|
|
},
|
|
toSurerk () {
|
|
this.modelShow = false
|
|
this.dataList.map(el => {
|
|
if (this.obj.storagevehicle_code === el.storagevehicle_code) {
|
|
el.remark = this.val0
|
|
}
|
|
})
|
|
},
|
|
toXq (code) {
|
|
uni.navigateTo({
|
|
url: '/pages/WarehouseManage/Details?storagevehicle_code=' + code + '&checkcode=' + this.checkCode
|
|
})
|
|
},
|
|
toCheck (e) {
|
|
e.checked = !e.checked
|
|
this.checkArr = this.dataList.filter(i => { return i.checked === true })
|
|
},
|
|
/** 初始化查询 */
|
|
async _checkQueryDtl (code, e) {
|
|
let res = await checkQueryDtl(code, e)
|
|
this.val2 = res.check_num
|
|
this.val3 = res.uncheck_num
|
|
res.data.map(el => {
|
|
this.$set(el, 'checked', false)
|
|
})
|
|
this.dataList = [...res.data]
|
|
},
|
|
async _checkexception () {
|
|
this.disabled1 = true
|
|
try {
|
|
let res = await checkexception(this.checkArr, this.checkCode)
|
|
this.disabled1 = false
|
|
this.checkArr = []
|
|
this.dataList = []
|
|
this.obj = {}
|
|
this.val0 = ''
|
|
this.val1 = ''
|
|
this.val2 = ''
|
|
this.val3 = ''
|
|
this.$refs.scanChild.handleFocus()
|
|
uni.showToast({
|
|
title: res.message,
|
|
icon: 'none'
|
|
})
|
|
} catch (e) {
|
|
this.disabled1 = false
|
|
}
|
|
},
|
|
async _checknormal () {
|
|
this.disabled1 = true
|
|
try {
|
|
let res = await checknormal(this.checkArr, this.checkCode)
|
|
this.disabled1 = false
|
|
this.checkArr = []
|
|
this.dataList = []
|
|
this.obj = {}
|
|
this.val0 = ''
|
|
this.val1 = ''
|
|
this.val2 = ''
|
|
this.val3 = ''
|
|
this.$refs.scanChild.handleFocus()
|
|
uni.showToast({
|
|
title: res.message,
|
|
icon: 'none'
|
|
})
|
|
} catch (e) {
|
|
this.disabled1 = false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
</script> |