From 90e4a6dfe3511fd4d4ba6f80489f2dcf0f902d28 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 24 六月 2025 10:02:51 +0800
Subject: [PATCH] 12
---
pages/basics/stockCheck.vue | 361 ++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 351 insertions(+), 10 deletions(-)
diff --git a/pages/basics/stockCheck.vue b/pages/basics/stockCheck.vue
index f45e227..6e80efb 100644
--- a/pages/basics/stockCheck.vue
+++ b/pages/basics/stockCheck.vue
@@ -1,18 +1,103 @@
<template>
<view>
<view class="cu-form-group margin-top">
- <view class="title">鍑哄簱鍙�</view>
- <picker @change="PickerChange" :value="index" :range="picker">
- <view class="picker">
- {{index>-1?picker[index]:'璇烽�夋嫨'}}
+ <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 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 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 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>
+
+ <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">
+ <text>琛ュ厖浜у搧</text>
+ </view>
+ <view class="cu-form-group margin-top">
+ <text class="title">浜у搧ID</text>
+ <input type="text" v-model="matNo" placeholder="鎵爜 / 杈撳叆" name="input" autocomplete="off" focus @input="find()">
+ </view>
+ <view class="cu-form-group margin-top">
+ <text class="title">浜у搧鍚嶇О</text>
+ <input type="text" name="input" autocomplete="off" v-model="matName">
+ </view>
+ <view class="cu-form-group margin-top">
+ <text class="title">瑙勬牸鍨嬪彿</text>
+ <input type="text" name="input" autocomplete="off" v-model="size">
+ </view>
+ <view class="cu-form-group margin-top">
+ <text class="title">鍗曚綅</text>
+ <input type="text" name="input" autocomplete="off" v-model="unit">
+ </view>
+ <view class="cu-form-group margin-top">
+ <text class="title">鏁伴噺</text>
+ <uni-number-box :min="0" :max="999" @change="countDom" v-model="count" />
+ </view>
+ <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>
- </picker>
- <button></button>
+ </uni-popup>
+ </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>
- <button class="cu-btn bg-yellow pda-btn">纭</button>
- <button class="cu-btn bg-grey pda-btn">閲嶇疆</button>
+ <!-- 杈撳叆妗嗙ず渚� -->
+ <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>
@@ -20,11 +105,267 @@
export default {
data() {
return {
- picker: ['+琛ュ厖', '姹豹姹�', '鍝煎敡鍝煎敡'],
+ msgType: '',
+ messageText: '',
+ matBtn:'',
+ souceData:[], // 鍒濆鍖栬〃鏍兼暟鎹褰�
+ locDetlData:[],
+ matNo:'',
+ matName:'',
+ size:'',
+ unit:'',
+ count:0,
+ type: '',
+ baseIP:'',
+ basePORT:'',
+ checkList:[],
+ sourceList:[],
+ billNo:'',
+ matData:[],
+ rowNum:'',
+ value:'0',
}
},
+ mounted(){
+ // 鑾峰彇IP绔彛
+ const UIP = uni.getStorageSync('UIP');
+ this.baseIP = UIP;
+ const UPORT = uni.getStorageSync('UPORT');
+ this.basePORT = UPORT;
+ },
methods: {
-
+ // 鎻愮ず绐楀彛
+ 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灞炴��
+ this.$refs.popup.open(type)
+ },
+ messageToggle(type) {
+ this.msgType = type
+ this.messageText = '鎻愬彇澶辫触'
+ this.$refs.message.open()
+ },
+ countDom(value) {
+
+ },
+ // 鏍规嵁浜у搧ID鏌ヨ浜у搧璇︽儏
+ find(){
+ let that = this
+ let thatId = that.matNo
+ if(that.matNo.length===0){
+ return;
+ }
+ uni.request({
+ url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/matCode/auth",
+ header: {
+ 'content-type':'application/x-www-form-urlencoded',
+ 'token':uni.getStorageSync('token')
+ },
+ data: {
+ id:thatId
+ },
+ method: 'POST',
+ success(res){
+ let data = res.data.data
+ if(res.data.code === 200){
+ if(data != null){
+ that.matName = data.matName
+ 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 = {
+ matNo:that.matNo,
+ matName:that.matName,
+ count:that.count
+ }
+ that.addTableData(data)
+
+ },
+ // 淇敼鏁伴噺
+ 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){
+ that.messageToggle('error')
+ that.messageText = '鎻愬彇澶辫触'
+ return
+ }
+ var toPush = true
+ 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: that.locDetlData[0] ? that.locDetlData[0].locNo : null,
+ matNo: data.matNo,
+ count: data.count,
+ matName: data.matName
+ }
+ 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