| | |
| | | <template> |
| | | <view class="page"> |
| | | <view class="packing-registration-bg" /> |
| | | <u-navbar title="盘点报告盘点" :background="background" :border-bottom="false" :title-bold="true" title-color="#000" |
| | | back-icon-color="#000" /> |
| | | <u-navbar title="库存盘点" :background="background" :border-bottom="false" :title-bold="true" title-color="#000" |
| | | back-icon-color="#000"> |
| | | <template #right> |
| | | <text style="font-size:14px;margin-right:14px;font-weight:bold" @click="goSubmit">提交</text> |
| | | </template> |
| | | </u-navbar> |
| | | <view class="packing-registration-param"> |
| | | <view class="packing-registration-param-view"> |
| | | <view class="packing-registration-param-item param-extra"> |
| | |
| | | <text class="item-one">盘点报告号</text> |
| | | </view> |
| | | <view class="packing-registration-param-item-right"> |
| | | <text class="item-one item-two" |
| | | @click="seachPersonnelNo()">{{registerInfo.value1=='' ? "点击选择":registerInfo.value1}}</text> |
| | | <text class="item-one item-two" @click="seachPersonnelNo()">{{ registerInfo.value1 == '' ? |
| | | "点击选择" : registerInfo.value1 }}</text> |
| | | <u-icon name="arrow-right" color="#687792" size="28" @click="seachPersonnelNo()" |
| | | v-show="registerInfo.value1 ==''"></u-icon> |
| | | v-show="registerInfo.value1 == ''"></u-icon> |
| | | </view> |
| | | </view> |
| | | <view class="packing-registration-param-item param-extra"> |
| | |
| | | <text class="item-one">仓库</text> |
| | | </view> |
| | | <view class="packing-registration-param-item-right"> |
| | | <text class="item-one item-two">{{registerInfo.value2}}</text> |
| | | <text class="item-one item-two">{{ registerInfo.value2 }}</text> |
| | | </view> |
| | | </view> |
| | | <view class="packing-registration-param-item param-extra"> |
| | |
| | | </view> |
| | | <view class="packing-registration-param-item-right"> |
| | | <view class="item-one item-two" @click="openPN()"> |
| | | <text>{{registerInfo.value2=='' ? "点击输入":registerInfo.value2}}</text> |
| | | <text>{{ registerInfo.value6 == '' ? "点击输入" : registerInfo.value6 }}</text> |
| | | </view> |
| | | <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value2==''"></u-icon> |
| | | <u-icon name="arrow-right" color="#687792" size="28" |
| | | v-show="registerInfo.value6 == ''"></u-icon> |
| | | </view> |
| | | </view> |
| | | <view class="packing-registration-param-item param-extra"> |
| | |
| | | <text class="item-one">批次号</text> |
| | | </view> |
| | | <view class="packing-registration-param-item-right" @click="openBatch()"> |
| | | <text class="item-one item-two">{{registerInfo.value3=='' ? "点击输入":registerInfo.value3}}</text> |
| | | <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value3==''"></u-icon> |
| | | <text |
| | | class="item-one item-two">{{ registerInfo.value3 == '' ? "点击输入" : registerInfo.value3 }}</text> |
| | | <u-icon name="arrow-right" color="#687792" size="28" |
| | | v-show="registerInfo.value3 == ''"></u-icon> |
| | | </view> |
| | | </view> |
| | | <view class="packing-registration-param-item param-extra"> |
| | |
| | | </view> |
| | | <view class="packing-registration-param-item-right" @click="openLocation()"> |
| | | <view class="item-one item-two"> |
| | | <text>{{registerInfo.value4 == '' ? "点击输入":registerInfo.value4}}</text> |
| | | <text>{{ registerInfo.value4 == '' ? "点击输入" : registerInfo.value4 }}</text> |
| | | </view> |
| | | <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value4==''"></u-icon> |
| | | <u-icon name="arrow-right" color="#687792" size="28" |
| | | v-show="registerInfo.value4 == ''"></u-icon> |
| | | </view> |
| | | </view> |
| | | <view class="packing-registration-param-item param-extra"> |
| | |
| | | </view> |
| | | <view class="packing-registration-param-item-right" @click="openPhysicalInventory()"> |
| | | <view class="item-one item-two"> |
| | | <text>{{registerInfo.value5 == '' ? "点击输入":registerInfo.value5}}</text> |
| | | <text>{{ registerInfo.value5 == '' ? "点击输入" : registerInfo.value5 }}</text> |
| | | </view> |
| | | <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value4==''"></u-icon> |
| | | <u-icon name="arrow-right" color="#687792" size="28" |
| | | v-show="registerInfo.value4 == ''"></u-icon> |
| | | </view> |
| | | </view> |
| | | <view class="packing-registration-param-item param-extra"> |
| | |
| | | <scroll-view class="packing-registration-scroll-list" scroll-y="true"> |
| | | <u-cell-group class="packing-registration-scroll-list-group" :border="false"> |
| | | <!-- <div class="tip" style="text-align: center;" v-if="hasScanSnList.length==0">-请扫码-</div> --> |
| | | <view class="content" v-for="(x, index) in hasScanSnList" :key="index" :index="index"> |
| | | <view class="row-list"> |
| | | <view class="row-list-left"> |
| | | <view class="num-icon" style="color: #fff;">{{index+1}}</view> |
| | | <view style="margin-left: 30rpx;">{{x}}</view> |
| | | <view class="content" v-for="(item, index) in hasScanSnList" :key="index" :index="index"> |
| | | <view class="content-header"> |
| | | <view class="content-header-title">{{ index + 1 }}</view> |
| | | </view> |
| | | <view class="content-body"> |
| | | <view class="row-list"> |
| | | <view class="_label"> |
| | | <view class="_label-name">零件号:</view> |
| | | </view> |
| | | <view class="_content"> |
| | | {{ item.value0 }} |
| | | </view> |
| | | </view> |
| | | <view class="row-list"> |
| | | <view class="_label"> |
| | | <view class="_label-name">批次号:</view> |
| | | </view> |
| | | <view class="_content"> |
| | | {{ item.value1 }} |
| | | </view> |
| | | </view> |
| | | <view class="row-list"> |
| | | <view class="_label"> |
| | | <view class="_label-name">库位号:</view> |
| | | </view> |
| | | <view class="_content"> |
| | | {{ item.value0 }} |
| | | </view> |
| | | </view> |
| | | <view class="row-list"> |
| | | <view class="_label"> |
| | | <view class="_label-name">盘点数量:</view> |
| | | </view> |
| | | <view class="_content"> |
| | | {{ item.value1 }} |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </u-cell-group> |
| | | </scroll-view> |
| | | <view class="registration-form-footer"> |
| | | <u-button class="btn" type="primary" @click="goSubmit">提交</u-button> |
| | | </view> |
| | | <scan></scan> |
| | | <!-- 零件号 --> |
| | | <modalBg ref="openPN" :confirm="confirmPN"> |
| | | <u-field v-model="registerInfo.value2" label="零件号:" placeholder="请输入" :border-bottom="false"> |
| | | <u-field v-model="registerInfo.value6" label="零件号:" placeholder="请输入" :border-bottom="false"> |
| | | </u-field> |
| | | </modalBg> |
| | | <!-- 批次号 --> |
| | |
| | | </modalBg> |
| | | <!-- 盘点数量 --> |
| | | <modalBg ref="openPhysicalInventory" :confirm="confirmPhysicalInventory"> |
| | | <u-field v-model="registerInfo.value5" label="盘点数量:" placeholder="请输入" :border-bottom="false"> |
| | | <u-field v-model="registerInfo.value5" label="盘点数量:" label-width="140" placeholder="请输入" |
| | | :border-bottom="false"> |
| | | </u-field> |
| | | </modalBg> |
| | | </view> |
| | |
| | | fontSize: '32rpx', |
| | | whiteSpace: 'nowrap' |
| | | }, |
| | | registerInfo: { |
| | | value1: '', |
| | | value2: '', |
| | | value3: '', |
| | | value4: '', |
| | | value5: '' |
| | | }, |
| | | registerInfo: {}, |
| | | hasScanSnList: [], |
| | | delContent: null, |
| | | staffList: [], |
| | |
| | | }, |
| | | // 弹框保存 |
| | | confirmPN() { |
| | | console.log('保存', this.registerInfo.value2); |
| | | console.log('保存', this.registerInfo.value6); |
| | | // 请求接口,根据工单号查询其他信息并赋值 |
| | | }, |
| | | //批次号 |
| | | openBatch() { |
| | | this.$refs.openBatch.openBatch(); |
| | | this.$refs.openBatch.open(); |
| | | }, |
| | | // 弹框保存 |
| | | confirmBatch() { |
| | |
| | | |
| | | setNo(val) { |
| | | console.log('11111', val) |
| | | this.registerInfo = val |
| | | this.registerInfo.value1 = val.value1 |
| | | this.registerInfo.value2 = val.value2 |
| | | |
| | | }, |
| | | //盘点报告号 |
| | | seachPersonnelNo() { |
| | |
| | | } |
| | | } |
| | | }, |
| | | goSubmit() { |
| | | // if (this.registerInfo.shiftId == null || this.registerInfo.shiftId == '') { |
| | | // this.$u.toast('请选择班次') |
| | | // return |
| | | // } |
| | | // if (this.registerInfo.value3 == null || this.registerInfo.value3 == '') { |
| | | // this.$u.toast('请选择日期') |
| | | // return |
| | | // } |
| | | // if (this.registerInfo.locNo == null || this.registerInfo.locNo == '') { |
| | | // this.$u.toast('请选择包装库位') |
| | | // return |
| | | // } |
| | | // if (this.hasScanSnList.length == 0) { |
| | | // this.$u.toast('无待提交的SN号明细') |
| | | // return |
| | | // } |
| | | // let registrList = [] |
| | | // this.staffList = [] |
| | | // this.staffNameList.forEach((item) => { |
| | | // this.staffList.push({ |
| | | // staffId: item.id |
| | | // }) |
| | | // }) |
| | | // this.hasScanSnList.forEach((item) => { |
| | | // registrList.push({ |
| | | // shiftId: this.registerInfo.shiftId, |
| | | // value3: this.registerInfo.value3, |
| | | // locNo: this.registerInfo.locNo, |
| | | // partBatchNo: item, |
| | | // staffList: this.staffList |
| | | // }) |
| | | // }) |
| | | // this.$u.api.pigxPacking.addPackageRegister(registrList).then(res => { |
| | | // let resData = res.data |
| | | // this.hasScanSnList = [] |
| | | // this.$u.toast('提交成功') |
| | | // }).catch((e) => { |
| | | // }) |
| | | |
| | | }, |
| | | // 点击提交按钮的事件处理函数 |
| | | goSubmit() { |
| | | if (!this.registerInfo.value1) { |
| | | this.$u.toast('请选择盘点报告号'); |
| | | return; |
| | | } |
| | | if (!this.registerInfo.value5) { |
| | | this.$u.toast('请输入盘点数量'); |
| | | return; |
| | | } |
| | | uni.showLoading({ |
| | | mask: true, |
| | | title: "提交中...", |
| | | }); |
| | | // 处理提交逻辑 |
| | | this.$u.api.workReporting |
| | | .operationTask({ |
| | | inventoryNo: this.registerInfo.value1, |
| | | warehouse: this.registerInfo.value2, |
| | | partNo: this.registerInfo.value6, |
| | | batchNo: this.registerInfo.value3, |
| | | location: this.registerInfo.value4, |
| | | quantity: this.registerInfo.value5, |
| | | scanList: this.hasScanSnList |
| | | }) |
| | | .then((res) => { |
| | | uni.hideLoading(); |
| | | if (res.success) { |
| | | this.$u.toast('提交成功'); |
| | | this.registerInfo = {}; |
| | | this.hasScanSnList = []; |
| | | } else { |
| | | this.$u.toast(res.message || '提交失败'); |
| | | } |
| | | }) |
| | | .catch(() => { |
| | | uni.hideLoading(); |
| | | this.$u.toast('网络异常,请重试'); |
| | | }); |
| | | }, |
| | | } |
| | | }; |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .transparent-border { |
| | | border: none; |
| | | } |
| | | .packing-registration-bg { |
| | | background-color: #F6F9FF; |
| | | background-image: url('~@/static/custom/packing/backBg.png'); |
| | |
| | | } |
| | | |
| | | .content { |
| | | background-image: url('~@/static/custom/packing/row_bg.png'); |
| | | background-size: 100% auto; |
| | | background-repeat: no-repeat; |
| | | height: 89rpx; |
| | | width: 691rpx; |
| | | font-size: 12px; |
| | | background-color: #FFFFFF; |
| | | background-color: #ffffff; |
| | | box-sizing: border-box; |
| | | border-radius: 10rpx; |
| | | margin: 0rpx 0rpx 20rpx; |
| | | padding: 0rpx 50rpx 0rpx 32rpx; |
| | | margin: 0rpx 0rpx 16rpx; |
| | | padding: 20rpx 8rpx; |
| | | box-shadow: none; |
| | | display: flex; |
| | | align-items: center; |
| | | |
| | | .row-list { |
| | | height: 100%; |
| | | .content-header { |
| | | width: 40rpx; |
| | | height: 90rpx; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | padding-top: 0rpx !important; |
| | | |
| | | .row-list-left { |
| | | .content-header-icon { |
| | | background-image: url("~@/static/custom/moveWareHouse/header_icon.png"); |
| | | background-size: 100% auto; |
| | | background-repeat: no-repeat; |
| | | height: 28rpx; |
| | | width: 28rpx; |
| | | } |
| | | |
| | | .content-header-title { |
| | | margin-left: 11rpx; |
| | | font-size: 26rpx; |
| | | font-weight: bold; |
| | | color: #626369; |
| | | } |
| | | } |
| | | |
| | | .content-body { |
| | | flex: 1; |
| | | background-color: #ffffff; |
| | | border-radius: 10rpx; |
| | | padding: 0rpx 23rpx; |
| | | |
| | | .row-list { |
| | | height: 60rpx; |
| | | display: flex; |
| | | color: #333333; |
| | | flex-direction: row; |
| | | padding: 0px; |
| | | align-items: center; |
| | | } |
| | | |
| | | .num-icon { |
| | | background-image: url('~@/static/custom/packing/num-bg.png'); |
| | | background-size: 100% auto; |
| | | background-repeat: no-repeat; |
| | | height: 38rpx; |
| | | width: 38rpx; |
| | | text-align: center; |
| | | line-height: 38rpx; |
| | | .row-list ._label { |
| | | display: flex; |
| | | flex: 0.8; |
| | | color: #909399; |
| | | align-items: center; |
| | | |
| | | ._label-name { |
| | | margin-left: 11rpx; |
| | | font-size: 26rpx; |
| | | font-weight: 500; |
| | | color: #666666; |
| | | } |
| | | } |
| | | |
| | | .row-list-right { |
| | | display: flex; |
| | | color: #428BF7; |
| | | .row-list ._content { |
| | | flex: 1.5; |
| | | text-align: right; |
| | | color: #909399; |
| | | font-size: 24rpx; |
| | | } |
| | | |
| | | .del-icon { |
| | | background-image: url('~@/static/custom/packing/icon_dele.png'); |
| | | background-size: 100% auto; |
| | | background-repeat: no-repeat; |
| | | height: 30rpx; |
| | | width: 28rpx; |
| | | } |
| | | .row-list .s1 { |
| | | color: #d35651; |
| | | } |
| | | } |
| | | } |