|  |  |  | 
|---|
|  |  |  | <view> | 
|---|
|  |  |  | <!-- 搜索框 --> | 
|---|
|  |  |  | <view class="search-bar"> | 
|---|
|  |  |  | <uni-search-bar v-model="condition" placeholder=" 扫码 / 输入" bgColor="#EEEEEE" @confirm="search" /> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <uni-search-bar v-model="condition" placeholder=" 输入批次/编码/单号" bgColor="#EEEEEE"  @confirm="search()"/> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <view> | 
|---|
|  |  |  | <view class="padding-lr margin-top-sm"> | 
|---|
|  |  |  | <block v-for="(item, index) in matList" :key="index"> | 
|---|
|  |  |  | 
|---|
|  |  |  | <text class="text-grey ">{{item.asnCode}}</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="cu-item"> | 
|---|
|  |  |  | <view class="content"> | 
|---|
|  |  |  | <text class="text-black">物料条码:</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="action"> | 
|---|
|  |  |  | <text class="text-grey ">{{item.trackCode}}</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <view class="cu-item"> | 
|---|
|  |  |  | <view class="content"> | 
|---|
|  |  |  | <text class="text-black">供应商批次:</text> | 
|---|
|  |  |  | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="cu-item"> | 
|---|
|  |  |  | <view class="content"> | 
|---|
|  |  |  | <text class="text-black">库存批次:</text> | 
|---|
|  |  |  | <text class="text-black">质检状态:</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="action"> | 
|---|
|  |  |  | <text class="text-grey ">{{item.batch}}</text> | 
|---|
|  |  |  | <text class="text-grey ">{{item.isptResult$}}</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <!-- <view class="cu-item"> | 
|---|
|  |  |  | <view class="content"> | 
|---|
|  |  |  | <text class="text-black">平台行号: <text class="text-grey ">{{item.platformId}}</text></text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="content"> | 
|---|
|  |  |  | <text class="text-black">质检结果: <text class="text-grey ">{{item.inspect}}</text></text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> --> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <view class="cu-item"> | 
|---|
|  |  |  | <view class="content"> | 
|---|
|  |  |  | <text class="text-black">库存单位: <text class="text-grey ">{{item.stockUnit}}</text></text> | 
|---|
|  |  |  | 
|---|
|  |  |  | </block> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="cu-bar btn-group foot"> | 
|---|
|  |  |  | <button class="cu-btn bg-blue shadow-blur" :disabled="repeatClick" @click="back">确定</button> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <!-- <uni-load-more v-show="matList.length != 0" :status="status" :icon-size="16" :content-text="contentText" /> --> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script> | 
|---|
|  |  |  | import { | 
|---|
|  |  |  | request | 
|---|
|  |  |  | } from '../../common/request.js' | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | tagList: [], | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | matList: [], | 
|---|
|  |  |  | condition: '', | 
|---|
|  |  |  | reload: false, | 
|---|
|  |  |  | curr:1, | 
|---|
|  |  |  | tag: '分类', | 
|---|
|  |  |  | baColor: "background-color: #0081ff;", | 
|---|
|  |  |  | desc: '商品编号:', | 
|---|
|  |  |  | condition:'', | 
|---|
|  |  |  | baseUrl: '', | 
|---|
|  |  |  | token: '', | 
|---|
|  |  |  | status: 'more', | 
|---|
|  |  |  | contentText: { | 
|---|
|  |  |  | contentdown: '上拉加载更多', | 
|---|
|  |  |  | contentrefresh: '加载中', | 
|---|
|  |  |  | contentnomore: '没有更多' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 当前tagId | 
|---|
|  |  |  | tagIdNow: 1, | 
|---|
|  |  |  | itemStyle: { | 
|---|
|  |  |  | border: "1px solid #e54d42", | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | selectedList:[] | 
|---|
|  |  |  | selectedList:[], | 
|---|
|  |  |  | repeatClick: false, | 
|---|
|  |  |  | matnrCode:'', | 
|---|
|  |  |  | asnCode:'', | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据 | 
|---|
|  |  |  | eventChannel.on('data', function(data) { | 
|---|
|  |  |  | console.log(data.item) | 
|---|
|  |  |  | that.matList = data.item | 
|---|
|  |  |  | that.getDet(data) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | onShow() { | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | search(){ | 
|---|
|  |  |  | let req = { | 
|---|
|  |  |  | matnrCode: this.condition, | 
|---|
|  |  |  | asnCode: this.condition, | 
|---|
|  |  |  | code: this.condition, | 
|---|
|  |  |  | batch: this.condition | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.getDet(req); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | back() { | 
|---|
|  |  |  | for (var i = 0; i < this.matList.length; i++) { | 
|---|
|  |  |  | if(this.matList[i].selected === true){ | 
|---|
|  |  |  | this.selectedList.push(this.matList[i]) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.getOpenerEventChannel().emit('backData', {data: this.selectedList}); | 
|---|
|  |  |  | uni.navigateBack({ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | selectedItem(index){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if(this.matList[index].selected === '' || this.matList[index].selected === null || this.matList[index].selected === undefined){ | 
|---|
|  |  |  | this.matList[index].selected = true | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | this.matList[index].selected = !this.matList[index].selected | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | async getDet(req) { | 
|---|
|  |  |  | let that = this; | 
|---|
|  |  |  | uni.showLoading({ | 
|---|
|  |  |  | title:'加载中...' | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | const { | 
|---|
|  |  |  | code, | 
|---|
|  |  |  | data, | 
|---|
|  |  |  | msg | 
|---|
|  |  |  | } = await request('/asnOrderItem/trackCode', { | 
|---|
|  |  |  | matnrCode: req.matnrCode, | 
|---|
|  |  |  | asnCode: req.asnCode, | 
|---|
|  |  |  | code: req.code, | 
|---|
|  |  |  | batch: req.batch | 
|---|
|  |  |  | }, "post") | 
|---|
|  |  |  | if (code === 200) { | 
|---|
|  |  |  | for (var i = 0; i < data.length; i++) { | 
|---|
|  |  |  | data[i].receiptQty =0; | 
|---|
|  |  |  | data[i].selected = false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.matList = data | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | uni.showToast({ | 
|---|
|  |  |  | title: msg, | 
|---|
|  |  |  | icon: "none", | 
|---|
|  |  |  | position: 'top' | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | console.log(this.matList[index].selected) | 
|---|
|  |  |  | uni.hideLoading(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | search() { | 
|---|
|  |  |  | let that = this | 
|---|
|  |  |  | uni.request({ | 
|---|
|  |  |  | url: that.baseUrl + '/order/search/pda/auth', | 
|---|
|  |  |  | data: { | 
|---|
|  |  |  | condition: that.condition | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | method:"GET", | 
|---|
|  |  |  | header: { | 
|---|
|  |  |  | 'token':uni.getStorageSync('token'), | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | success(result) { | 
|---|
|  |  |  | console.log(result); | 
|---|
|  |  |  | var res = result.data | 
|---|
|  |  |  | if (res.code === 200 ) { | 
|---|
|  |  |  | that.matList = res.data | 
|---|
|  |  |  | // that.save() | 
|---|
|  |  |  | } else if (res.code == 403) { | 
|---|
|  |  |  | uni.showToast({title: res.msg, icon: "none", position: 'top'}) | 
|---|
|  |  |  | setTimeout(() => { | 
|---|
|  |  |  | uni.reLaunch({ | 
|---|
|  |  |  | url: '../login/login' | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, 1000); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | uni.showToast({title: res.msg, icon: "none",position: 'top'}) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | showTag(parentId) { | 
|---|
|  |  |  | let that = this | 
|---|
|  |  |  | uni.request({ | 
|---|
|  |  |  | url: that.baseUrl + '/tag/list/pda/auth', | 
|---|
|  |  |  | header: { | 
|---|
|  |  |  | 'token':uni.getStorageSync('token'), | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | data: { | 
|---|
|  |  |  | limit: 100000, | 
|---|
|  |  |  | parentId: parentId | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | header: { | 
|---|
|  |  |  | 'token':uni.getStorageSync('token'), | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | success(result) { | 
|---|
|  |  |  | that.tagList = null | 
|---|
|  |  |  | that.matList = [] | 
|---|
|  |  |  | var res = result.data | 
|---|
|  |  |  | if (res.code === 200) { | 
|---|
|  |  |  | if (res.data != null && res.data.length > 0) { | 
|---|
|  |  |  | that.tagList = res.data | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | that.showMat(parentId) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | that.baColor = "background-color: #0081ff;" | 
|---|
|  |  |  | } else if (res.code === 403 ) { | 
|---|
|  |  |  | uni.showToast({title: res.msg, icon: "none", position: 'top'}) | 
|---|
|  |  |  | setTimeout(() => { | 
|---|
|  |  |  | uni.reLaunch({ | 
|---|
|  |  |  | url: '../login/login' | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, 1000); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | uni.showToast({title: res.msg, icon: "none",position: 'top'}) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | showMat(tagId) { | 
|---|
|  |  |  | let that = this | 
|---|
|  |  |  | // wms端 补接口 | 
|---|
|  |  |  | // @RequestMapping(value = "/mat/list/pda/page/auth") | 
|---|
|  |  |  | // @ManagerAuth | 
|---|
|  |  |  | // public R pdaPageList(@RequestParam(required = true)Long tagId, | 
|---|
|  |  |  | //                 @RequestParam(defaultValue = "1")Integer curr, | 
|---|
|  |  |  | //                 @RequestParam(defaultValue = "10")Integer limit){ | 
|---|
|  |  |  | //    EntityWrapper<Mat> wrapper = new EntityWrapper<>(); | 
|---|
|  |  |  | //    wrapper.eq("tag_id", tagId); | 
|---|
|  |  |  | //    wrapper.orderBy("create_time", false); | 
|---|
|  |  |  | //    return R.ok().add(matService.selectPage(new Page<>(curr, limit), wrapper)); | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | uni.request({ | 
|---|
|  |  |  | url: that.baseUrl + '/order/list/pda/page/auth', | 
|---|
|  |  |  | data: { | 
|---|
|  |  |  | curr:that.curr, | 
|---|
|  |  |  | limit: 100, | 
|---|
|  |  |  | tagId: tagId | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | method:"GET", | 
|---|
|  |  |  | header: { | 
|---|
|  |  |  | 'token':uni.getStorageSync('token'), | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | success(result) { | 
|---|
|  |  |  | that.tagList = null | 
|---|
|  |  |  | var res = result.data | 
|---|
|  |  |  | if (res.code === 200) { | 
|---|
|  |  |  | if (res.data.records != null && res.data.records.length > 0) { | 
|---|
|  |  |  | let list = res.data.records | 
|---|
|  |  |  | that.matList = that.reload ? list : that.matList.concat(list); | 
|---|
|  |  |  | that.curr = that.curr + 1 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (res.data.records.length == 0) { | 
|---|
|  |  |  | that.status = 'noMore' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | that.baColor = "background-color: #1cbbb4;" | 
|---|
|  |  |  | } else if (res.code === 403 ) { | 
|---|
|  |  |  | uni.showToast({title: res.msg, icon: "none", position: 'top'}) | 
|---|
|  |  |  | setTimeout(() => { | 
|---|
|  |  |  | uni.reLaunch({ | 
|---|
|  |  |  | url: '../login/login' | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, 1000); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | uni.showToast({title: res.msg, icon: "none",position: 'top'}) | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | toPrint(item) { | 
|---|
|  |  |  | let that = this | 
|---|
|  |  |  | uni.navigateTo({ | 
|---|
|  |  |  | url: "../order/orderDetlList", | 
|---|
|  |  |  | success: function(res) { | 
|---|
|  |  |  | // 通过eventChannel向被打开页面传送数据   向另外一个页面传递值的 | 
|---|
|  |  |  | res.eventChannel.emit('data', { | 
|---|
|  |  |  | data: item | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | events: { | 
|---|
|  |  |  | // 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据  另外一个页面传过来的 | 
|---|
|  |  |  | acceptDataFromOpenedPage: function(data) { | 
|---|
|  |  |  | that.matnr = data.data | 
|---|
|  |  |  | that.findMat(that.matnr) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | min-height: 80upx; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|