From f9e3677f136ebddb65e0747a550a9448eda16258 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 24 六月 2025 10:06:32 +0800
Subject: [PATCH] 12
---
pages/basics/stockCheck.vue | 311 +++++++++++++++++++++++++++++++++++++++------------
1 files changed, 234 insertions(+), 77 deletions(-)
diff --git a/pages/basics/stockCheck.vue b/pages/basics/stockCheck.vue
index 4e1e581..6e80efb 100644
--- a/pages/basics/stockCheck.vue
+++ b/pages/basics/stockCheck.vue
@@ -1,40 +1,47 @@
<template>
<view>
<view class="cu-form-group margin-top">
- <view>
- 鍑哄簱鍙�
- </view>
- <view class="uni-list-cell-db">
- <picker @change="bindPickerChange" :value="index" :range="array" range-key="name">
- <view class="uni-input">{{array[index]}}</view>
- </picker>
- </view>
- <view>
- <button v-model="matBtn" class="cu-btn bg-yellow" @click="toggle('right')"><text>+琛ュ厖</text></button>
- </view>
+ <view class="title">鎵樼洏鐮�</view>
+ <input v-model="billNo" placeholder="鎵爜 / 杈撳叆" name="input" @input="findCode()" focus>
+ <!-- <button v-model="matBtn" class="cu-btn bg-yellow" @click="toggle('right')"><text>+琛ュ厖</text></button> -->
+
</view>
<view class="margin-top">
<uni-table border stripe emptyText="鏆傛棤鏇村鏁版嵁">
<uni-tr>
- <uni-th width="50">鏁伴噺</uni-th>
- <uni-th width="100">浜у搧ID</uni-th>
- <uni-th width="100">浜у搧鍚嶇О</uni-th>
- <uni-th width="100">搴撲綅</uni-th>
+ <uni-th align="center" width="80">鏁伴噺</uni-th>
+ <uni-th align="center" width="100">鍗曚綅</uni-th>
+ <uni-th align="center" width="100">浜у搧缂栫爜</uni-th>
+ <uni-th align="center" width="100">浜у搧鍚嶇О</uni-th>
+ <uni-th align="center" width="100">浜у搧鎵瑰彿</uni-th>
+ <!-- <uni-th align="center" width="100">搴撲綅</uni-th> -->
+ <!-- <uni-th align="center" width="150">纭鏁伴噺</uni-th> -->
</uni-tr>
<uni-tr v-for="(item, index) in locDetlData" :key="index">
- <uni-td>{{item.count}}</uni-td>
- <uni-td>{{item.matNo}}</uni-td>
- <uni-td>{{item.matName}}</uni-td>
- <uni-td>{{item.locNo}}</uni-td>
+ <uni-td style="text-align: center;">{{item.anfme}}</uni-td>
+ <uni-td style="text-align: center;">{{item.model}}</uni-td>
+ <uni-td style="text-align: center;">{{item.matnr}}</uni-td>
+ <uni-td style="text-align: center;">{{item.maktx}}</uni-td>
+ <uni-td style="text-align: center;">{{item.batch}}</uni-td>
+ <!-- <uni-td>{{item.locNo}}</uni-td> -->
+ <!-- <uni-td align="center">
+ <button class ="cu-btn bg-orange margin-xs" @click="conf(index,item)">淇敼</button>
+ <button class ="cu-btn bg-red margin-xs" @click="remove(index,item)">鍒犻櫎</button>
+ </uni-td> -->
</uni-tr>
</uni-table>
-
</view>
- <view>
- <button class="cu-btn bg-yellow pda-btn">纭</button>
- <button class="cu-btn bg-grey pda-btn">閲嶇疆</button>
+ <view style="height: 200rpx;">
+ <!-- 绌虹櫧灞� -->
+ </view>
+ <view class="cu-bar foot input" style="height: 130rpx;">
+ <view class="flex solid-bottom padding justify-start" >
+ <button class="cu-btn bg-yellow main-btn margin-xs" style="width: 430rpx;" @click="reset">纭� 璁�</button>
+ <button class="cu-btn bg-grey main-btn margin-xs" @click="reset">閲� 缃�</button>
+ </view>
</view>
- <view>
+
+ <scroll-view>
<uni-popup ref="popup" background-color="#fff" style="width: 500rpx;">
<view class="popup-content" :class="{ 'popup-height': type === 'left' || type === 'right' }">
<view class="cu-form-group margin-top">
@@ -50,7 +57,7 @@
</view>
<view class="cu-form-group margin-top">
<text class="title">瑙勬牸鍨嬪彿</text>
- <input type="text" name="input" autocomplete="off" v-model="specs">
+ <input type="text" name="input" autocomplete="off" v-model="size">
</view>
<view class="cu-form-group margin-top">
<text class="title">鍗曚綅</text>
@@ -58,19 +65,39 @@
</view>
<view class="cu-form-group margin-top">
<text class="title">鏁伴噺</text>
- <uni-number-box @change="countDom" v-model="count" />
+ <uni-number-box :min="0" :max="999" @change="countDom" v-model="count" />
</view>
- <button class="cu-btn bg-yellow pda-btn2" @click="confirm">琛ュ厖</button>
-
+ <view class="flex solid-bottom padding justify-center">
+ <button class="cu-btn bg-yellow pda-btn2" @click="confirm">鎻愬彇</button>
+ </view>
+ <view style="height: 200rpx;">
+ <!-- 绌虹櫧灞� -->
+ </view>
</view>
</uni-popup>
- </view>
+ </scroll-view>
<view>
<!-- 鎻愮ず淇℃伅寮圭獥 -->
<uni-popup ref="message" type="message">
<uni-popup-message :type="msgType" :message="messageText" :duration="2000"></uni-popup-message>
</uni-popup>
</view>
+ <view>
+ <!-- 杈撳叆妗嗙ず渚� -->
+ <uni-popup ref="inputDialog" type="dialog">
+ <uni-popup-dialog ref="inputClose" mode="input" title="浜у搧鏁伴噺"
+ placeholder="璇疯緭鍏ョ粍鎵樻暟閲�" @confirm="dialogInputConfirm">
+ <uni-number-box :min="0" :max="999" v-model="value" />
+ </uni-popup-dialog>
+ </uni-popup>
+ </view>
+ <!-- <view>
+ <view class="uni-padding-wrap uni-common-mt">
+ <view class="uni-btn-v">
+ <button type="default" @tap="noTitlemodalTap">鏃犳爣棰樼殑modal</button>
+ </view>
+ </view>
+ </view> -->
</view>
</template>
@@ -78,43 +105,80 @@
export default {
data() {
return {
- index: 0,
- array: [],
+ msgType: '',
+ messageText: '',
matBtn:'',
souceData:[], // 鍒濆鍖栬〃鏍兼暟鎹褰�
locDetlData:[],
matNo:'',
matName:'',
- specs:'',
+ size:'',
unit:'',
- count:'0',
+ count:0,
type: '',
- msgType:'',
- messageText:'',
+ baseIP:'',
+ basePORT:'',
+ checkList:[],
+ sourceList:[],
+ billNo:'',
+ matData:[],
+ rowNum:'',
+ value:'0',
}
},
- onLoad(){
- let that = this
- uni.request({
- url:this.baseUrl+"/available/take/check/site",
- header: {
- 'token': localStorage.getItem('token')
- },
- method: 'POST',
- async: false,
- success(res){
- if(res.data.code === 200){
- that.array = res.data.data
- }
- }
- })
+ mounted(){
+ // 鑾峰彇IP绔彛
+ const UIP = uni.getStorageSync('UIP');
+ this.baseIP = UIP;
+ const UPORT = uni.getStorageSync('UPORT');
+ this.basePORT = UPORT;
},
methods: {
- bindPickerChange: function(e) {
- console.log('picker鍙戦�侀�夋嫨鏀瑰彉锛屾惡甯﹀�间负锛�' + e.detail.value)
- this.index = e.detail.value
+ // 鎻愮ず绐楀彛
+ messageToggle(type) {
+ this.msgType = type
+ this.messageText = '鎻愬彇澶辫触'
+ this.$refs.message.open()
},
- // 鎻愬彇
+ // 鏍规嵁鎵樼洏鐮佹煡璇�
+ findCode() {
+ let that = this
+ if (that.billNo.length === 0 || that.billNo.length !== 8) {
+ return
+ }
+ let barCode = that.billNo
+ // 璧嬪�煎墠娓呯┖琛ㄦ牸
+ that.locDetlData = []
+ uni.request({
+ url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/mobile/pakout/query/auth",
+ header: {
+ 'content-type':'application/x-www-form-urlencoded',
+ 'token':uni.getStorageSync('token')
+ },
+ data: {
+ barcode: barCode
+ },
+ method:'POST',
+ success(res) {
+ if (res.data.code === 200) {
+ that.locDetlData = res.data.data
+ if (res.data.data && res.data.data.length > 0) {
+ res.data.data.map(function(item){
+ that.souceData.push(item)
+ })
+ }
+ } else if (res.data.code === 403) {
+ uni.navigateBack({
+ delta: 1
+ })
+ } else {
+ that.messageToggle('error')
+ that.messageText = res.data.msg
+ }
+ }
+ })
+ },
+ // 鐐瑰嚮琛ュ厖鐨勫脊绐�
toggle(type) {
this.type = type
// open 鏂规硶浼犲叆鍙傛暟 绛夊悓鍦� uni-popup 缁勪欢涓婄粦瀹� type灞炴��
@@ -128,6 +192,7 @@
countDom(value) {
},
+ // 鏍规嵁浜у搧ID鏌ヨ浜у搧璇︽儏
find(){
let that = this
let thatId = that.matNo
@@ -135,10 +200,10 @@
return;
}
uni.request({
- url:that.baseUrl + "/matCode/auth",
+ url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/matCode/auth",
header: {
'content-type':'application/x-www-form-urlencoded',
- 'token': localStorage.getItem('token')
+ 'token':uni.getStorageSync('token')
},
data: {
id:thatId
@@ -146,21 +211,24 @@
method: 'POST',
success(res){
let data = res.data.data
-
if(res.data.code === 200){
if(data != null){
that.matName = data.matName
- that.specs = data.specs
+ that.size = data.size
that.unit = data.unit
}
} else if (res.data.code ===403 ){
- // 寰呭畾
+ uni.navigateBack({
+ delta: 1
+ })
} else {
- // 寰呭畾
+ this.messageToggle('error')
+ this.messageText = res.data.msg
}
}
})
},
+ // 寮圭獥 纭琛ュ厖
confirm(){
let that = this
let data = {
@@ -171,19 +239,27 @@
that.addTableData(data)
},
- initTableData(data){
- for(var i=0;i<data.length;i++){
- var toPush =true
- for(var j = 0; j<this.locDetlDate.length;j++){
- if (data[i].matNo === this.locDetlData[j].matNo && data[i].locNo === this.locDetlData[j].locNo) {
- toPush = false;
- }
- }
- if(toPush){
- this.locDetlDate.push(data[i])
- }
+ // 淇敼鏁伴噺
+ conf(index,item){
+ this.$refs.inputDialog.open()
+ this.rowNum = index
+ if (item.count === undefined ) {
+ this.value = 0
}
},
+ // 淇敼鏁伴噺寮圭獥
+ dialogInputConfirm(value) {
+ this.locDetlData[this.rowNum].count = this.value
+ this.messageToggle('success')
+ this.messageText = '淇敼鎴愬姛'
+ },
+ // 绉婚櫎鐗╂枡
+ remove(index,item){
+ this.locDetlData.splice(index,1)
+ this.messageToggle('success')
+ this.messageText = '鍒犻櫎鎴愬姛'
+ },
+ // 琛ㄦ牸娓叉煋
addTableData(data){
let that = this
if(data.matNo.length === 0){
@@ -191,24 +267,105 @@
that.messageText = '鎻愬彇澶辫触'
return
}
- this.$refs.popup.close()
var toPush = true
- for (var j = 0; j < this.locDetlData.length; j++) {
- if (data.matNo === this.locDetlData[j].matNo && data.locNo === this.locDetlData[j].locNo) {
+ for (var j = 0; j < that.locDetlData.length; j++) {
+ if (data.matNo === that.locDetlData[j].matNo && data.locNo === that.locDetlData[j].locNo) {
toPush = false;
}
}
if (toPush) {
var pushData = {
- locNo: this.locDetlData[0] ? this.locDetlData[0].locNo : null,
+ locNo: that.locDetlData[0] ? that.locDetlData[0].locNo : null,
matNo: data.matNo,
count: data.count,
matName: data.matName
}
- locDetlData.push(pushData);
+ that.locDetlData.push(pushData);
}
-
+ that.$refs.popup.close()
},
+ // 閲嶇疆
+ reset(){
+ this.billNo = ''
+ this.locDetlData = []
+ },
+ check(){
+ let that = this
+ if(that.billNo.length === 0) {
+ that.messageToggle('error')
+ that.messageText = '璇� 鎵爜 / 杈撳叆 鎵樼洏鐮�'
+ return
+ }
+ if(that.billNo.length < 8) {
+ that.messageToggle('error')
+ that.messageText = '鎵樼洏鐮佸繀椤讳负8浣�'
+ return
+ }
+ if(that.locDetlData.length > 0) {
+ for(var i = 0; i < that.locDetlData.length; i++){
+ if (that.locDetlData[i].count === null || that.locDetlData[i].count === 0 ||
+ that.locDetlData[i].count === undefined) {
+ that.messageToggle('error')
+ that.messageText = that.locDetlData[i].matNo + '鍟嗗搧鏁伴噺閿欒'
+ return
+ }
+ }
+ }
+ if (that.locDetlData.length > 0) {
+ that.locDetlData.map(function (item) {
+ that.checkList.push({
+ locNo: item.locNo,
+ matNo: item.matNo,
+ checkQty: item.count,
+ itemBatch: item.itemBatch
+ });
+ });
+ }
+ if (that.souceData.length > 0) {
+ that.souceData.map(function (item) {
+ that.sourceList.push({
+ locNo: item.locNo,
+ matNo: item.matNo,
+ count: item.count,
+ itemBatch: item.itemBatch
+ });
+ });
+ }
+ // this.noTitlemodalTap()
+ uni.request({
+ url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/mobile/stock/check",
+ header: {
+ 'token':uni.getStorageSync('token')
+ },
+ data: JSON.stringify({
+ checkList: that.checkList
+ }),
+ method:'POST',
+ async:false,
+ success(res){
+ if(res.data.code === 200){
+ that.reset();
+ that.messageToggle('success')
+ that.messageText = '鐩樼偣鎴愬姛'
+ } else if (res.data.code === 403) {
+ uni.navigateBack({
+ delta: 1
+ })
+ } else {
+ that.messageToggle('error')
+ that.messageText = res.data.msg
+ }
+ }
+ })
+ },
+ noTitlemodalTap: function (e) {
+ uni.showModal({
+ content: "鏄惁纭鐩樼偣",
+ confirmText: "鏄�",
+ cancelText: "鍚�"
+ })
+
+ }
}
}
</script>
--
Gitblit v1.9.1