From 7335bf9f71207bf3d0f35208040ef696164af589 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期五, 09 九月 2022 13:36:19 +0800
Subject: [PATCH] #
---
pages/basics/checkout.vue | 369 +++++++++++++++++++++++++++++++++++++---------------
1 files changed, 260 insertions(+), 109 deletions(-)
diff --git a/pages/basics/checkout.vue b/pages/basics/checkout.vue
index fc747d0..853bd9c 100644
--- a/pages/basics/checkout.vue
+++ b/pages/basics/checkout.vue
@@ -1,50 +1,52 @@
<template>
<view >
- <scroll-view scroll-y catch:touchmove="touchmove">
- <view class="pak-seach-box">
- <view class="box-top">
- <view class="color-block-blue"></view>
- <text class="title">鎵樼洏鏉$爜</text>
+ <scroll-view scroll-y class="scroll-Y">
+ <view class="square-2">
+ <view class="square-title">
+ <view class="title-sign"><view class="sign"></view></view>
+ <view class="title-text"><text>鎵樼洏鏉$爜</text></view>
</view>
- <view class="box-buttom">
- <input v-model="barcode" type="text" placeholder="鎵爜 / 杈撳叆">
- <view class="search-icon">
- <uni-icons type="closeempty" size="20" color="#a5a5a5" @click="removeBarcode()"></uni-icons>
+ <view class="square-content">
+ <view class="content-input">
+ <input v-model="barcode" type="text" placeholder="鎵爜 / 杈撳叆" maxlength="8"
+ @input="findBarcode()" :focus="barcodeFocus" @focus="focuss" >
+ <uni-icons type="closeempty" size="20" color="#dadada" @click="removeBarcode()"></uni-icons>
</view>
</view>
</view>
- <view class="pak-seach-box">
- <view class="box-top">
- <view class="color-block-blue"></view>
- <text class="title">璐у搧鏉$爜</text>
+ <view class="square-2">
+ <view class="square-title">
+ <view class="title-sign"><view class="sign"></view></view>
+ <view class="title-text"><text>璐у搧鏉$爜</text></view>
</view>
- <view class="box-buttom">
- <input v-model="matnr" type="text" placeholder="鎵爜 / 杈撳叆" @input="findMat()">
- <view class="search-icon">
- <uni-icons type="closeempty" size="20" color="#a5a5a5" @click="removeMatnr()"></uni-icons>
+ <view class="square-content">
+ <view class="content-input-combox" style="width: 94%;">
+ <input style="width: 90%;" type="text" v-model="matnr" placeholder="鎵爜 / 杈撳叆" @input="findMat()":focus="focus"
+ @focus="focuss">
+ <!-- @focus="focuss" -->
+ <uni-icons type="closeempty" size="20" color="#dadada" @click="removeMatnr()"></uni-icons>
</view>
</view>
- <button class="cu-btn bg-blue" @click="selectMat()">+鎻愬彇</button>
</view>
- <view class="pak-data-box">
- <view class="box-top">
- <view class="color-block-blue"></view>
- <text class="title">鍟嗗搧鍒楄〃</text>
+
+ <view class="square-1">
+ <view class="square-title">
+ <view class="title-sign"><view class="sign"></view></view>
+ <view class="title-text"><text>鍟嗗搧鍒楄〃</text></view>
+ <view v-show="matCount > 0" style="display: inline-block;float: right;height: 100rpx;line-height: 100rpx;margin-right: 50rpx;">璇锋壂鐮侀�夊彇 {{matCount}} 浠跺晢鍝�</view>
</view>
</view>
- <view class="pak-data-box" v-show="matList.length === 0">
- <view style="text-align: center;">鏆傛棤鏇村鏁版嵁</view>
+ <view class="square-none" v-show="matList.length === 0">
+ <view class="v-show">鏆傛棤鏇村鏁版嵁. . . </view>
</view>
<checkbox-group @change="checkbox">
<view v-for="(item,index) in matList" :key="index" class="data-list bg-false" :class="'bg-'+item.checked" >
<view class="data-list-left">
- <view class="matnr"><text style="width: 400rpx;">缂栫爜锛歿{item.matnr}}</text></view>
- <view><text style="width: 400rpx;">鍝佸悕锛歿{item.maktx}}</text></view>
- <view><text style="width: 400rpx;">鎵瑰彿锛歿{item.batch}}</text></view>
- <view><text style="width: 400rpx;">鏁伴噺锛歿{item.anfme}}</text></view>
+ <view class="matnr" :style="item.color">No:{{listLen-index}}</view>
+ <view class="matnr" :style="item.color">{{item.matnr}}-{{item.batch}}</view>
</view>
<view class="data-list-right">
- <uni-icons type="trash" size="25" color="#a5a5a5" @click="remove(item,index)"></uni-icons>
+ <uni-icons type="trash" size="20" color="#a5a5a5" @click="remove(item,index)"></uni-icons>
</view>
</view>
</checkbox-group>
@@ -54,8 +56,14 @@
<button class="cu-btn lg" @click="resst()">閲嶇疆</button>
</view>
<view>
- <button class="cu-btn lg pakin-btn bg-blue" @click="comb()">缁勬墭</button>
+ <button class="cu-btn lg pakin-btn bg-blue" @click="comb()">纭</button>
</view>
+ </view>
+ <view>
+ <!-- 鎻愮ず淇℃伅寮圭獥 -->
+ <uni-popup ref="message" type="message">
+ <uni-popup-message :type="msgType" :message="messageText" :duration="2000"></uni-popup-message>
+ </uni-popup>
</view>
</view>
</template>
@@ -65,84 +73,98 @@
export default {
data() {
return {
+ commonUrl:null,
barcode: '',
+ barcodeFocus:true,
+ focus:false,
type: 'center',
searchBox: 'hide',
pick:'hide',
matnr:'',
+ // matList:[{matnr:'1101842-10000',batch:'22047515999',color:{color:'red'}}],
matList:[],
- result: ''
+ result: '',
+ siteList:[],
+ staNoList:[],
+ satNo:'',
+ listLen:0,
+ msgType: 'success',
+ messageText: '杩欐槸涓�鏉℃垚鍔熸彁绀�',
+ fontColor:{color:'red'},
+ matCount:'',
+ wrkNo:'',
}
+ },
+ onReady() {
+ setInterval(function(){
+ // console.log(this.matList)
+ // this.getMatListLen()
+ },1000)
},
mounted(){
const UIP = uni.getStorageSync('UIP');
this.baseIP = UIP;
const UPORT = uni.getStorageSync('UPORT');
this.basePORT = UPORT
+ const PROJ = uni.getStorageSync('UPROJ');
+ this.baseUrl = PROJ
+ this.getUrl()
},
methods: {
+ // 鑾峰彇url
+ getUrl() {
+ this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePORT + "/" +this.baseUrl
+ },
+ huanghang() {
+ this.matnr = ''
+ this.focus = false;
+ this.$nextTick(function() {
+ this.focus = true;
+ });
+
+ },
+ messageToggle(type) {
+ this.msgType = type
+ this.messageText = `杩欐槸涓�鏉�${type}娑堟伅鎻愮ず`
+ this.$refs.message.open()
+ },
+ getMatListLen() {
+ // this.listLen = this.matList.length;
+ },
+ focuss() {
+ // uni.hideKeyboard()
+ },
resst() {
this.matList = []
this.barcode = ''
this.matnr = ''
+ this.matCount = ''
uni.vibrateShort();
},
removeBarcode() {
this.barcode = ''
- uni.vibrateShort();
+ uni.vibrateShort();
+ this.barcodeFocus = false;
+ this.$nextTick(function() {
+ this.barcodeFocus = true;
+ });
},
removeMatnr() {
this.matnr = ''
uni.vibrateShort();
- },
- remove(item,index) {
- this.matList.splice(index,1)
- uni.vibrateShort();
- },
- comb() {
- uni.vibrateShort();
- let that = this;
- if (that.barcode === '') {
- uni.showToast({title: '璇锋壂鎻忔墭鐩樻潯鐮�', icon: "none", position: 'top'});
- return;
- }
- if (that.matList.length === 0) {
- uni.showToast({title: '璇锋坊鍔犲晢鍝佸垪琛�', icon: "none", position: 'top'});
- return;
- }
- uni.showLoading();
- uni.request({
- url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + '/mobile/comb/auth',
- data: JSON.stringify({
- barcode: that.barcode,
- combMats: that.matList
- }),
- method: 'POST',
- header: {
- 'token':uni.getStorageSync('token')
- },
- success(result) {
- uni.showLoading();
- var res = result.data
- if (res.code === 200) {
- uni.showToast({
- title: res.msg,
- position: 'bottom',
- duration: 1000
- });
- } 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'})
- }
- }
+ this.focus = false;
+ this.$nextTick(function() {
+ this.focus = true;
});
},
+ remove(item,index) {
+ this.matList.splice(index,1);
+ this.listLen = this.matList.length
+ this.messageToggle('success')
+ this.messageText = '鍒犻櫎鎴愬姛'
+ uni.vibrateShort();
+ },
+
selectMat() {
let that = this
uni.vibrateShort();
@@ -163,42 +185,161 @@
});
that.matnr = ''
},
+ findBarcode() {
+ let that = this
+ uni.request({
+ url: that.commonUrl + '/mobile/pakout/confirm/barcode/auth',
+ data: {
+ barcode:that.barcode
+ },
+ header: {
+ 'token':uni.getStorageSync('token'),
+ },
+ success(result) {
+ console.log(result)
+ let res = result.data;
+ if (res.code === 200) {
+ if (res.data.ioType === 101) {
+ that.matList = res.data.list.concat(that.matList)
+ that.listLen = that.matList.length;
+ return;
+ }
+ if (res.data.ioType === 103) {
+ that.matCount = res.data.list.length
+ that.wrkNo = res.data.list[0].wrkNo
+ return;
+ }
+ // if (res.data) {
+ // that.matCount = res.data.length
+ // }
+ } 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'})
+ }
+
+ }
+ });
+
+ },
findMat() {
let that = this
uni.request({
- url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + '/mat/auth',
+ url: that.commonUrl + '/mobile/pakout/confirm/pick/auth',
data: {
+ wrkNo:that.wrkNo,
matnr:that.matnr
},
header: {
'token':uni.getStorageSync('token')
},
success(result) {
- uni.vibrateShort();
- let res = result.data
- if (res.code === 200 && res.data) {
- that.matData = res.data
- uni.navigateTo({
- url: "matQuery",
- events: {
- // 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹�
- matList: function(data) {
- that.matList.push(data.data)
- },
- },
- success: function(res) {
- // 閫氳繃eventChannel鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹�
- res.eventChannel.emit('matData', { data: that.matData })
- }
- });
+ console.log(result)
+ var res = result.data;
+ if(res.code === 200 ) {
+ if(res.data) {
+ if (that.matList.length == 0) {
+ that.matList.push(res.data)
+ that.listLen = that.matList.length;
+ that.huanghang();
+ return;
+ }
+ for(let i = 0;i<that.matList.length;i++) {
+ if (that.matList.length < that.matCount){
+ if(JSON.stringify(that.matList[i]) === JSON.stringify(res.data)) {
+ that.messageToggle('warn');
+ that.messageText = '璇ュ晢鍝佸凡娣诲姞';
+ that.huanghang();
+ return;
+ } else {
+ that.matList.unshift(res.data);
+ that.listLen = that.matList.length;
+ that.huanghang();
+ return;
+ }
+ } else {
+ that.messageToggle('warn');
+ that.messageText = '宸插嚭鍏ㄩ儴鍟嗗搧锛岃纭鍑哄簱';
+ that.huanghang();
+ return;
+ }
+ }
+ }
+ } 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'})
}
}
});
},
-
+ comb() {
+ let that = this;
+ if (that.barcode === '') {
+ this.messageToggle('error')
+ this.messageText = '璇锋壂鎻忔墭鐩樼爜'
+ return;
+ }
+ if (that.barcode.length !== 8) {
+ this.messageToggle('error')
+ this.messageText = '鎵樼洏鐮佸繀椤讳负8浣�'
+ return;
+ }
+ if (that.matList.length === 0) {
+ this.messageToggle('error')
+ this.messageText = '璇锋坊鍔犲晢鍝佸垪琛�'
+ return;
+ }
+
+ if (that.matList.length < that.matCount) {
+ var len = that.matCount - that.matList.length
+ that.messageToggle('error')
+ that.messageText = '杩樺墿' + len + '浠舵湭鎵弿'
+ return;
+ }
+ uni.showLoading();
+ uni.request({
+ url: that.commonUrl + '/mobile/pakout/confirm/auth',
+ data: that.matList,
+ method: 'POST',
+ header: {
+ 'token':uni.getStorageSync('token')
+ },
+ success(result) {
+ uni.showLoading();
+ var res = result.data
+ if (res.code === 200) {
+ uni.showToast({ title: res.msg,position: 'bottom',duration: 1000});
+ that.resst();
+ } 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'})
+ }
+ }
+ });
+ },
+ getCheckDetl() { // 鑾峰彇鍑哄簱鍙h揣鐗╀俊鎭�
+ let that = this
+
+ }, // getCheckDetl
change(e) {
- console.log('褰撳墠妯″紡锛�' + e.type + ',鐘舵�侊細' + e.show);
},
toggle(type) {
this.type = type
@@ -233,7 +374,7 @@
<style>
/* @import "../../colorui/main.css";
@import "../../colorui/icon.css"; */
-
+
.pak-seach-box {
background-color: #FFFFFF;
margin: 15rpx 15rpx 0rpx 15rpx;
@@ -267,7 +408,7 @@
}
.box-buttom {
display: inline-block;
- background-color: #ededed;
+ background-color: #f0f0f0;
width: 65%;
height: 60rpx;
border-radius: 20rpx;
@@ -285,6 +426,7 @@
margin-top: 5rpx;
margin-right: 10rpx;
}
+
/* .pak-seach-box input {
background-color: #ededed;
border: 1rpx solid #d8d8d8;
@@ -330,7 +472,7 @@
}
.data-list {
border-bottom: 1px solid #d8d8d8;
- height: 180rpx;
+ height: 130rpx;
margin: 15rpx;
border-radius: 20rpx;
}
@@ -338,7 +480,7 @@
margin-top: 20rpx;
}
.data-list:last-child {
- margin-bottom: 120rpx;
+ margin-bottom: 200rpx;
}
/* .data-list-left {
display: inline-block;
@@ -349,20 +491,29 @@
line-height: 180rpx;
} */
.data-list-left {
+ width: 550rpx;
+ /* background-color: #007AFF; */
display: inline-block;
float: left;
- margin-left: 6%;
- height: 180rpx;
+ margin-left: 4%;
+ height: 130rpx;
color: #676767;
}
.matnr {
- padding-top: 10rpx;
+ display: inline-block;
+ width: 100%;
+ font-size: 14px;
+ font-weight: 700;
+ padding-top: 15rpx;
+ /* height: 130rpx;
+ line-height: 130rpx; */
}
.data-list-right {
+ /* background-color: #6739B6; */
display: inline-block;
float: right;
- height: 180rpx;
- line-height: 180rpx;
- margin-right: 10%;
+ width: 100rpx;
+ height: 130rpx;
+ line-height: 130rpx;
}
</style>
\ No newline at end of file
--
Gitblit v1.9.1