From df481aebfb7a19eea5d6c02f93c6f5776b0fdc19 Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 23 五月 2025 18:30:41 +0800
Subject: [PATCH] 界面大模式

---
 pages/login/index.vue |  830 +++++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 495 insertions(+), 335 deletions(-)

diff --git a/pages/login/index.vue b/pages/login/index.vue
index 6f6aca7..0406e93 100644
--- a/pages/login/index.vue
+++ b/pages/login/index.vue
@@ -1,171 +1,37 @@
-<style>
-	input::-webkit-input-placeholder {
-		font-size: 12rpx;
-	}
-
-	#headr {
-		background: #434343;
-		/* width: 375px; */
-		height: 250rpx;
-		text-align: center;
-		background-color: #438EB9;
-		/* background-image: url(../../images/login/root.png) !important;
-		background-size: cover !important; 
-		background-repeat: no-repeat !important; */
-	}
-
-	.SetServer {
-		float: left;
-		margin-left: 20rpx;
-	}
-
-	.check_rememberPwd {
-		margin-top: 20rpx;
-		margin-left: 20rpx;
-	}
-
-	.logo {
-		height: 180rpx;
-		width: 180rpx;
-		margin-top: 170rpx;
-	}
-
-	.logo_input {
-		height: 40rpx;
-		width: 40rpx;
-		margin-left: 40rpx;
-	}
-
-	.logo_icon {
-		height: 50rpx;
-		width: 50rpx;
-		margin-left: 15rpx;
-		margin-top: 20rpx;
-	}
-
-	.mui-content {
-		height: 100%;
-		padding-top: 140rpx;
-		background: #FFFFFF;
-		z-index: 1;
-	}
-
-	.mui-input-group .la_icon {
-		width: 100rpx;
-		text-align: center;
-		font-family: 'Helvetica Neue', Helvetica, sans-serif;
-		line-height: 1.5;
-		float: left;
-		padding: 7px 13px;
-	}
-
-	.mui-input-group .mui-input-row {
-		height: 85rpx;
-		position: relative;
-		clear: left;
-		overflow: hidden;
-	}
-
-	.mui-input-row:first-child {
-		border-top: 1px solid #c8c7cc;
-	}
-
-	.mui-input-row:last-child {
-		border-bottom: 1px solid #c8c7cc;
-	}
-
-	.mui-input-group .mui-input-row:last-child:after {
-		background-color: #fff;
-	}
-
-	.mui-input-group .mui-input-row:after {
-		position: absolute;
-		right: 0;
-		bottom: 0;
-		left: 15px;
-		height: 1px;
-		content: '';
-		transform: scaleY(.5);
-		background-color: #c8c7cc;
-	}
-
-	.mui-input-row input {
-		font-family: 'Helvetica Neue', Helvetica, sans-serif;
-		font-size: 15px;
-		width: 480rpx;
-		/* float: right; */
-		margin-bottom: 0;
-		padding-left: 20rpx;
-		/* padding-right: 10rpx; */
-		/* line-height: 30rpx; */
-		height: 85rpx;
-		/* padding: 7px 40px 7px 0px; */
-		-webkit-user-select: text;
-		/* border: 0; */
-		/* border-radius: 0; */
-		box-shadow: none;
-		outline: 0;
-		background: 0 0;
-		-webkit-appearance: none;
-	}
-
-	.mui-input-group label.mui-navigate-right {
-		font-size: 25px;
-		float: right;
-		padding: 0;
-		width: 80rpx;
-		margin-right: 5rpx;
-		margin-top: -88rpx;
-		display: inline-block;
-	}
-
-	button.btn_login {
-		margin-top: 50rpx;
-		padding: 20rpx;
-		line-height: 1.5;
-		background: #27A6E1;
-		border: none;
-		color: #fff;
-	}
-</style>
-
-
 <template>
-	<view class="" style="width: 100vw;height: 64vh;">
+	<view class="uni-page-login " :class="largeMode?'large-mode':''" style="width: 100vw;height: 64vh;">
 		<div id="headr" class="mui-bar mui-bar-nav">
 			<image class="logo" src="../../images/login/mobox_log_200.png"></image>
 		</div>
 		<div class="mui-content">
 			<form id='login-form' class="mui-input-group">
-				<a href="javascript:;" class="SetServer" @click="inputDialogToggle">閰嶇疆</a>
-				<!-- <div class="mui-input-row">
-					<label class="la_icon"><image class="logo_input" src="../../images/login/svr_30.png"></image></label>
-					<input type="text" class="mui-input" v-model="userServer" placeholder="鏈嶅姟鍣ㄥ湴鍧�>
-					<label class="mui-navigate-right" id="sersel"><image class="logo_icon" src="../../images/login/sel_left.png" ></image></label>
-				</div> -->
+
+				<a href="javascript:;" class="SetServer" @click="inputDialogToggle">{{translateSys('set')}}</a>
+				<a href="javascript:;" class="SetServer" @click="clickSetLanguage">{{translateSys('language')}}</a>
 				<div class="mui-input-row">
 					<label class="la_icon">
 						<image class="logo_input" src="../../images/login/person_30.png"></image>
 					</label>
-					<input type="text" class="mui-input" v-model="userName" placeholder="璇疯緭鍏ヨ处鍙�>
-					<!-- <label class="mui-navigate-right" id="namsel"><image class="logo_icon" src="../../images/login/user-photo.png</image></label> -->
+					<input type="text" class="mui-input" v-model="userName" :placeholder="translateSys('input_login')">
 				</div>
 				<div class="mui-input-row">
 					<label class="la_icon">
 						<image class="logo_input" src="../../images/login/lock_30.png"></image>
 					</label>
-					<input type="password" class="mui-input" v-model="userPwd" placeholder="璇疯緭鍏ュ瘑鐮�>
+					<input type="password" class="mui-input" v-model="userPwd"
+						:placeholder="translateSys('input_password')">
 				</div>
 				<checkbox-group class="check_rememberPwd" @change="rememberPwd">
 					<label>
 						<checkbox value="1" :checked="ischecked" />
-						<text>璁颁綇瀵嗙爜</text>
+						<text>{{translateSys('remember_password')}}</text>
 					</label>
 				</checkbox-group>
 			</form>
-			<button id='login' type="default" @tap="logind" class="btn_login">{{login}}</button>
+			<button id='login' :disabled="btnLoading" type="default" @tap="onClickLogin"
+				class="btn_login">{{translateSys("start_login")}}</button>
 			<p style="float:right; margin: 10px 10px;color:#c8c7cc">
-				<span>鐗堟湰鍙凤細</span>
+				<span>{{translateSys('version')}}锛�/span>
 				<span>{{version}}</span>
 			</p>
 			<div class=""
@@ -175,20 +41,20 @@
 		<view>
 			<!-- 杈撳叆妗嗙ず渚�-->
 			<uni-popup ref="inputDialog" type="dialog">
-				<uni-popup-dialog ref="inputClose" mode="input" title="璁剧疆" :value="userServer" placeholder="璇疯緭鍏ュ唴瀹�
-					@confirm="dialogInputConfirm"></uni-popup-dialog>
+				<uni-popup-dialog ref="inputClose" mode="input" :title="translateSys('set')" :value="userServer"
+					:placeholder="translate('input_server')" @confirm="dialogInputConfirm"></uni-popup-dialog>
 			</uni-popup>
 			<!-- 鐗堟湰鍗囩骇寮圭獥寮� -->
 			<uni-popup ref="promotion" type="center">
 				<view class="promotion" style="width: 700rpx;padding:20rpx 40rpx; background: white;font-size: 36rpx;">
 					<view class="operates" v-if="showBtns==true">
 						<view style="text-align: center;padding-top:20rpx;padding-bottom: 40rpx;">
-							绯荤粺鏈夋柊鐗堟湰锛屾槸鍚﹂渶瑕佹洿鏂�+							{{translate('tip_app_update')}}
 						</view>
 						<text @click="cancel"
-							style="display: inline-block;color: #7cd0f8;width: 50%; text-align: center;">鍙栨秷</text>
+							style="display: inline-block;color: #7cd0f8;width: 50%; text-align: center;">{{translateSys('cancel')}}</text>
 						<text @click="sure"
-							style="display: inline-block;color: #7cd0f8;width: 50%; text-align: center;">纭</text>
+							style="display: inline-block;color: #7cd0f8;width: 50%; text-align: center;">{{translateSys('confirm')}}</text>
 					</view>
 					<view class="operates" v-else>
 						<cmd-progress :percent="percentage" stroke-color="linear-gradient(to right, #ef32d9, #89fffd)">
@@ -197,49 +63,66 @@
 				</view>
 			</uni-popup>
 			<!-- 鐗堟湰鍗囩骇寮圭獥缁撴潫 -->
+			<uni-popup ref="refClassDialog" type="dialog">
+				<uni-popup-dialog mode="info" :title="$t('page.bind_classes')" @confirm="dialogClassConfirm">
+					<view class="popup-class">
+						<view class="popup-class-item" :style="{color:item.text == selectedClasses ? '#27A6E1' :''}"
+							v-for="(item,index) in classesLst" :key="index" @click="clickSelectClass(item)">
+							<view class="ico"><uni-icons v-if="item.text == selectedClasses" type="checkmarkempty"
+									:color="item.text == selectedClasses ? '#27A6E1' :''" size="24"></uni-icons></view>
+							{{item.text}}
+						</view>
+					</view>
+				</uni-popup-dialog>
+			</uni-popup>
 		</view>
-
+		<!-- <button @click="onClickWms">鐧诲綍wms</button>
+		<view class="webview">
+			<web-view ref="webview" src="http://115.29.185.26:5000/mobox3/#/"></web-view>
+		</view> -->
 	</view>
 
 </template>
 
 <script>
 	import cmdProgress from "@/components/cmd-progress/cmd-progress.vue"
-	// import {
-	// 	mapState,
-	// 	mapMutations,
-	// 	mapActions ,
-	// } from 'vuex'
+	import {
+		showModal,
+		showToast,
+		showLoading,
+		hideLoading
+	} from "@/js/Page.js"
+	import {
+		isMobox3Web,
+		login,
+		getApkVersionInfo
+	} from "@/api/index.js"
+	import buttonClickMixin from '@/mixins/button-click.js';
+	import {
+		dictGetInfo
+	} from "@/api/mobox.js"
+	import utils from "@/js/utils.js"
 	export default {
+		mixins: [buttonClickMixin],
 		components: {
 			cmdProgress
 		},
 		data() {
 			//鑾峰彇鍏ㄥ眬鍙傛暟锛歶rl-鏈嶅姟鍣ㄥ湴鍧�-			var server = uni.getStorageSync('server');
-			var account = uni.getStorageSync('account');
-			var password = uni.getStorageSync('password');
-			var url = this.$store.state.url;
-			var username = this.$store.state.username;
-			var userpwd = this.$store.state.userpwd;
-			var ischecked = false;
-			if (!server)
-				server = url;
-			if (!account)
-				account = username;
-			if (account && password)
-				ischecked = true;
-			// console.log(url);
 			return {
-				login: "寮�鐧诲綍",
-				userServer: server,
-				userName: account,
-				userPwd: password,
-				ischecked: ischecked,
+				userServer: utils.session.getValue('server'),
+				userName: utils.session.getValue('account'),
+				userPwd: utils.session.getValue('password'),
+				ischecked: false,
 				version: "1.0.0",
 				downloadUrl: "", //瀹夊崜app涓嬭浇閾炬帴
 				percentage: 0, //涓嬭浇杩涘害
 				showBtns: true,
+				selectedClasses: "",
+				classesLst: [],
+				largeMode: false,
+
+
 			}
 		},
 		onShow() {
@@ -274,80 +157,67 @@
 			},
 			//妫�祴鏄惁闇�鏇存柊
 			async check(version) {
-				if (!this.userServer) {
-					uni.showModal({
-						title: "鎻愮ず",
-						content: "鏈緭鍏ョ綉绔欏湴鍧�紝璇烽噸鏂伴厤缃緭鍏ワ紒",
-						showCancel: false,
-						confirmText: "鍙栨秷"
-					});
-					return;
-				}
-				var dataInfo = {
-					server: this.userServer
-				};
-				this.$store.dispatch('GetApkVersionInfo', dataInfo).then(success => {
-					console.log(success);
-					if (success.code == '00000') {
-						let resp = success.data;
-						if (resp) {
-							// const obj = resp.data.filter(item => {
-							// 	return item.groupName == 'version'
-							// })
-							//鑾峰彇褰撳墠鐗堟湰鍙�-							const VersionName = resp.VersionName; //鏇存柊鍖呭悕绉�-							const VersionCode = resp.VersionCode; //鐗堟湰缂栫爜
-							const versionNum = resp.Version; //鏈嶅姟绔増鏈彿
-							// this.downloadUrl = resp.PdaUrl+"/"+VersionName; //app涓嬭浇閾炬帴
-							this.downloadUrl = "http://" + this.userServer + "/Program/" + VersionName; //app涓嬭浇閾炬帴this.
-							var isver = this.compare(versionNum,version);
-							if (isver) {
-								this.$refs.promotion.open();
-							} else {
-								console.log('褰撳墠宸叉槸鏈�柊鐗堟湰')
-							}
-						}
-					} else {
+				try {
+					if (!this.userServer) {
 						uni.showModal({
-							title: "閿欒",
-							content: success.msg,
+							title: this.translateSys("tip"),
+							content: this.translate("tip_no_web_server"),
 							showCancel: false,
-							confirmText: "鍙栨秷"
+							confirmText: this.translateSys('close')
 						});
+						return;
 					}
-				}).catch(ex => {
-					console.log(ex);
+					// var ser = this.userServer.toLowerCase().split('/');
+					const res = await getApkVersionInfo(this.userServer)
+					this.downloadUrl = res.dldUrl || ""
+					if (this.downloadUrl) {
+						var isver = this.compare(res.verNum || "", version);
+						if (isver) {
+							this.$refs.promotion.open();
+						} else {
+							console.log('褰撳墠宸叉槸鏈�柊鐗堟湰')
+						}
+					}
+
+				} catch (ex) {
+					// console.log(ex);
+					let exStr = JSON.stringify(ex)
+					if (exStr == "{}")
+						exStr = ex
+					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
 					uni.showModal({
-						title: "閿欒",
-						content: ex.errMsg ? ex.errMsg : ex.message,
+						title: this.translateSys("error"),
+						content: tip,
 						showCancel: false,
-						confirmText: "鍙栨秷"
+						confirmText: this.translateSys('close')
 					});
-				});
+				}
+
+
 			},
 			compare(curV, reqV) {
 				var arr1 = curV.toString().split('.');
-			    var arr2 = reqV.toString().split('.');
-			    //灏嗕袱涓増鏈彿鎷嗘垚鏁板瓧
-			    var minL = Math.min(arr1.length, arr2.length);
-			    var pos = 0; //褰撳墠姣旇緝浣�-			    var diff = 0; //褰撳墠涓轰綅姣旇緝鏄惁鐩哥瓑
-			    var flag = false;
-			    //閫愪釜姣旇緝濡傛灉褰撳墠浣嶇浉绛夊垯缁х画姣旇緝涓嬩竴浣�-			    while (pos < minL) {
-			        diff = parseInt(arr1[pos]) - parseInt(arr2[pos]);
-			        if (diff == 0) {
-			            pos++;
-			            continue;
-			        } else if (diff > 0) {
-			            flag = true;
-			            break;
-			        } else {
-			            flag = false;
-			            break;
-			        }
-			    }
-			    return flag;
+				var arr2 = reqV.toString().split('.');
+				//灏嗕袱涓増鏈彿鎷嗘垚鏁板瓧
+				var minL = Math.min(arr1.length, arr2.length);
+				var pos = 0; //褰撳墠姣旇緝浣�+				var diff = 0; //褰撳墠涓轰綅姣旇緝鏄惁鐩哥瓑
+				var flag = false;
+				//閫愪釜姣旇緝濡傛灉褰撳墠浣嶇浉绛夊垯缁х画姣旇緝涓嬩竴浣�+				while (pos < minL) {
+					diff = parseInt(arr1[pos]) - parseInt(arr2[pos]);
+					if (diff == 0) {
+						pos++;
+						continue;
+					} else if (diff > 0) {
+						flag = true;
+						break;
+					} else {
+						flag = false;
+						break;
+					}
+				}
+				return flag;
 			},
 			//纭鏇存柊
 			sure() {
@@ -386,7 +256,7 @@
 						plus.runtime.openFile(d.filename); //閫夋嫨杞欢鎵撳紑鏂囦欢
 						uni.showToast({
 							icon: 'none',
-							title: '鏇存柊鎴愬姛'
+							title: this.translate('update_success')
 						});
 						_this.$refs.promotion.close();
 					} else {
@@ -394,7 +264,7 @@
 						plus.downloader.clear(); //娓呴櫎涓嬭浇浠诲姟
 						uni.showToast({
 							icon: 'none',
-							title: '鏇存柊澶辫触'
+							title: this.translate('update_fail')
 						});
 						_this.showBtns = false;
 					}
@@ -418,8 +288,27 @@
 			// 	actionLogin:'login'
 			// }),
 			inputDialogToggle() {
-				this.$refs.inputDialog.open()
+				// this.$refs.inputDialog.open()
+				const $this = this
+				
+				uni.navigateTo({
+					url: "./set",
+					events: {
+						exitSetEvent(val) {
+							$this.userServer = val;
+							$this.query(); //鐗堟湰鍗囩骇
+							$this.largeMode = 	getApp().globalData.largeMode 
+					
+						}
+					}
+				})
 			},
+			clickSetLanguage() {
+				uni.navigateTo({
+					url: './language'
+				});
+			},
+
 			dialogInputConfirm(val) {
 				// console.log(val);
 				// uni.showLoading({
@@ -428,7 +317,7 @@
 				// setTimeout(() => {
 				// uni.hideLoading();
 				this.userServer = val;
-				uni.setStorageSync('server', val);
+				utils.session.setValue('server', val);
 				// this.value = val
 				// 鍏抽棴绐楀彛鍚庯紝鎭㈠榛樿鍐呭
 				this.$refs.inputDialog.close();
@@ -437,13 +326,14 @@
 				// }, 3000)
 				// }, 3000)
 			},
+
 			rememberPwd(e) { //璁颁綇瀵嗙爜
 				console.log(e.target);
-				uni.setStorageSync('account', '');
-				uni.setStorageSync('password', '');
-				if (e.target.value[0] == '1') {
-					uni.setStorageSync('account', this.userName);
-					uni.setStorageSync('password', this.userPwd);
+				utils.session.setValue('account', '');
+				utils.session.setValue('password', '');
+				if (e.detail.value[0] == '1') {
+					utils.session.setValue('account', this.userName);
+					utils.session.setValue('password', this.userPwd);
 				}
 			},
 			// getCookie(key){
@@ -465,98 +355,368 @@
 			// 	((expiredays==null)?'':';expires='+exdate.toGMTString());
 
 			// },
-			logind() {
-				if (!this.userServer) {
-					uni.showModal({
-						title: "鎻愮ず",
-						content: "鏈緭鍏ョ綉绔欏湴鍧�紝璇烽噸鏂伴厤缃緭鍏ワ紒",
-						showCancel: false,
-						confirmText: "鍙栨秷"
-					});
-					return;
-				}
-				if (!this.userName) {
-					uni.showModal({
-						title: "鎻愮ず",
-						content: "鏈緭鍏ョ敤鎴峰悕锛岃閲嶆柊杈撳叆锛�,
-						showCancel: false,
-						confirmText: "鍙栨秷"
-					});
-					return;
-				}
-				if (!this.userPwd) {
-					uni.showModal({
-						title: "鎻愮ず",
-						content: "鏈緭鍏ュ瘑鐮侊紝璇烽噸鏂拌緭鍏ワ紒",
-						showCancel: false,
-						confirmText: "鍙栨秷"
-					});
-					return;
-				}
-				//妫�煡 "鐧诲綍鐘舵�/閿佸睆鐘舵�" 缁撴潫
-				var loginInfo = {
-					server: this.userServer,
-					uname: this.userName,
-					pwd: this.userPwd,
-					cname: plus.device.model,
-					type: "0"
-				};
-				console.log(loginInfo);
-
-				this.$data.login = "loading......";
-				//鐧诲綍
-				this.$store.dispatch('login', loginInfo).then(success => {
-					console.log(success);
-					if (success.code == '00000') {
-						//鐧诲綍鎴愬姛鍚庢竻绌虹紦瀛樻暟鎹�-						this.$store.commit("areaFunc", null);
-						this.$store.commit("classAttrList", null);
-						this.$store.commit("classGridStyleInfo", null);
-						this.$store.commit("dicValueInfo", null);
-						this.$store.commit("subClassAttrList", null);
-						this.$store.commit("subClassGridStyleInfo", null);
-						//璁剧疆鍏ㄥ眬鍙傛暟锛歶ser-鐢ㄦ埛淇℃伅
-						uni.setStorageSync('server', loginInfo.server);
-						uni.setStorageSync('account', loginInfo.uname);
-						uni.setStorageSync('password', loginInfo.pwd);
-						// this.mutatLogin({loginid:success});
-						this.$store.commit('login', {
-							loginid: success
-						});
-						uni.navigateTo({
-							url: '../index/index?args=9999999999'
-						})
-						// uni.redirectTo({
-						// 	url:'../index/index?args=9999999999'
-						// });
-						this.login = "寮�鐧诲綍";
-
-					} else {
-						uni.showModal({
-							title: "閿欒",
-							content: success.msg,
-							showCancel: false,
-							confirmText: "鍙栨秷"
-						});
-						this.login = "寮�鐧诲綍";
-					}
-				}).catch(ex => {
-					console.log(ex);
-					uni.showModal({
-						title: "閿欒",
-						content: ex.errMsg,
-						showCancel: false,
-						confirmText: "鍙栨秷"
-					});
-					this.login = "寮�鐧诲綍";
+			onClickLogin() {
+				this.handleButtonClick((done) => {
+					this.logind()
+					setTimeout(() => {
+						done(); // 閲嶇疆鐘舵�
+					}, 1000);
 				});
-			}
+			},
+			async logind() {
+				try {
+					if (!this.userServer) {
+						uni.showModal({
+							title: this.translateSys('tip'),
+							content: this.translate('tip_no_web_server'),
+							showCancel: false,
+							confirmText: this.translateSys('close')
+						});
+						return;
+					}
+					if (!this.userName) {
+						uni.showModal({
+							title: this.translateSys('tip'),
+							content: this.translate('tip_no_user_account'),
+							showCancel: false,
+							confirmText: this.translateSys('close')
+						});
+						return;
+					}
+					if (!this.userPwd) {
+						uni.showModal({
+							title: this.translateSys('tip'),
+							content: this.translate('tip_no_user_password'),
+							showCancel: false,
+							confirmText: this.translateSys('close')
+						});
+						return;
+					}
+					var rootUrl = 'http://' + this.userServer
+					if (this.userServer.includes("://")) {
+						rootUrl = this.userServer
+					}
+					showLoading("loading......")
+					const res = await login(rootUrl, this.userName, this.userPwd)
+					//璁剧疆鍏ㄥ眬鍙傛暟锛歶ser-鐢ㄦ埛淇℃伅
+					utils.session.setValue('server', rootUrl);
+					utils.session.setValue('account', this.userName);
+					utils.session.setValue('password', this.userPwd);
+					const app = getApp()
+					app.globalData.sessionId = res.session_id
+					app.globalData.loginUser = {
+						id: this.userName,
+						name: res.name,
+						pwd: this.userPwd
+					}
+					hideLoading()
+					const bindInfo = utils.session.getValue('bind_classes')
+					app.globalData.bindClasses = bindInfo?.checked || false
+					if (app.globalData.bindClasses) {
+						this.selectedClasses = bindInfo?.classes || ""
+						await this.loadClassesList()
+						if (this.classesLst.length > 0) {
+							this.$refs.refClassDialog.open()
+
+						}
+						return
+					}
+					uni.navigateTo({
+						url: '../index/index?args=9999999999'
+					})
+
+
+
+				} catch (ex) {
+					hideLoading()
+					let exStr = JSON.stringify(ex)
+					if (exStr == "{}")
+						exStr = ex
+					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
+					uni.showModal({
+						title: this.translateSys("error"),
+						content: tip,
+						showCancel: false,
+						confirmText: this.translateSys('close')
+					});
+				}
+
+			},
+			onClickWms() {
+				let otherAppSchemeURL = "testapp://pages/index/index"; // 鏇挎崲涓虹洰鏍嘺pp鐨剆cheme URL
+				plus.runtime.openURL(otherAppSchemeURL, function(error) {
+					console.error('鎵撳紑搴旂敤澶辫触: ', error);
+				}, "uni.TeatApp");
+			},
+			async loadClassesList() {
+				try {
+					var $this = this;
+					var dataInfo = {
+						dict_id: "",
+						dict_name: "WMS_CLASSES"
+					};
+					const res = await dictGetInfo(dataInfo)
+					var list = [];
+					(res.dict_item_list || []).forEach((item) => {
+						list.push({
+							text: item.value ? item.value : item.name,
+							value: item.name,
+						});
+					});
+
+					if (list.length == 0) {
+						uni.showModal({
+							title: this.translate("get_classes_fail"),
+							content: this.translate("page.please_login_after_admin_add_classes"),
+							showCancel: false,
+							confirmText: this.translateSys('close')
+						});
+						this.selectedClasses = ""
+					} else {
+						if (this.selectedClasses) {
+							const curIndex = list.findIndex((a) => {
+								return a.text == this.selectedClasses
+							})
+							if (curIndex < 0) {
+								this.selectedClasses = list[0].text
+							}
+						} else {
+							this.selectedClasses = list[0].text
+						}
+					}
+					this.classesLst = list
+
+
+				} catch (ex) {
+					let exStr = JSON.stringify(ex)
+					if (exStr == "{}")
+						exStr = ex
+					let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr
+					uni.showModal({
+						title: this.translate("get_classes_fail"),
+						content: tip,
+						showCancel: false,
+						confirmText: this.translateSys('close')
+					});
+
+					this.selectedClasses = ""
+					this.classesLst = []
+					// {
+					// 	text: "娴嬭瘯",
+					// 	value: "test"
+					// }, {
+					// 	text: "娴嬭瘯3",
+					// 	value: "test3"
+					// }
+				}
+			},
+			dialogClassConfirm() {
+
+				utils.session.setValue('bind_classes', {
+					checked: true,
+					classes: this.selectedClasses
+				})
+				getApp().globalData.classes = this.selectedClasses
+				uni.navigateTo({
+					url: '../index/index?args=9999999999'
+				})
+			},
+			clickSelectClass(item) {
+				this.selectedClasses = item.text
+			},
+			translate(t) {
+				if (typeof this.$t == "function") return this.$t(`page.${t}`)
+				else return t;
+			},
+			translateSys(t) {
+				if (typeof this.$t == "function") return this.$t(`sys.${t}`)
+				else return t;
+			},
 		},
-		onLoad() {
+		onLoad(options) {
+			//鑾峰彇mac鍦板潃
+
+			var url = utils.session.getValue('server');
+			var username = utils.session.getValue('account');
+			var userpwd = utils.session.getValue('password');
+			this.largeMode = utils.session.getValue('large_mode') ? true : false
+			getApp().globalData.largeMode = this.largeMode
+			var ischecked = false;
+			if (!this.userServer)
+				this.userServer = url;
+			if (!this.userName)
+				this.userName = username;
+			if (this.userName && this.userPwd)
+				ischecked = true;
+			this.ischecked = ischecked
+			var net = plus.android.importClass("java.net.NetworkInterface");
+			var wl0 = net.getByName('wlan0');
+			var macByte = wl0.getHardwareAddress();
+			var deviceId = ''
+			//涓嬮潰杩欐浠g爜鏉ヨ嚜缃戠粶  
+			for (var i = 0; i < macByte.length; i++) {
+				var tmp = "";
+				var num = macByte[i];
+				if (num < 0) {
+					tmp = (255 + num + 1).toString(16);
+				} else {
+					tmp = num.toString(16);
+				}
+				if (tmp.length == 1) {
+					tmp = "0" + tmp;
+				}
+				deviceId += tmp;
+			}
+			getApp().globalData.deviceId = deviceId
+			getApp().globalData.cname = plus.device.model
+			//78b8d67511ca
+			console.log('Android璁惧鐨刣eviceId:', deviceId);
 			plus.runtime.getProperty(plus.runtime.appid, (info) => {
 				// console.log(info);
-				this.$data.version = info.version;
+				this.version = info.version;
 			});
 		}
 	}
 </script>
+<style lang="scss">
+	.uni-page-login {
+		input::-webkit-input-placeholder {
+			font-size: 12rpx;
+		}
+
+		#headr {
+			background: #434343;
+			/* width: 375px; */
+			height: 250rpx;
+			text-align: center;
+			background-color: #438EB9;
+			/* background-image: url(../../images/login/root.png) !important;
+		background-size: cover !important; 
+		background-repeat: no-repeat !important; */
+		}
+
+		.SetServer {
+			float: left;
+			margin-left: 20rpx;
+		}
+
+		.check_rememberPwd {
+			margin-top: 20rpx;
+			margin-left: 20rpx;
+		}
+
+		.logo {
+			height: 180rpx;
+			width: 180rpx;
+			margin-top: 170rpx;
+		}
+
+		.logo_input {
+			height: 40rpx;
+			width: 40rpx;
+			margin-left: 40rpx;
+		}
+
+		.logo_icon {
+			height: 50rpx;
+			width: 50rpx;
+			margin-left: 15rpx;
+			margin-top: 20rpx;
+		}
+
+		.mui-content {
+			height: 100%;
+			padding-top: 140rpx;
+			background: #FFFFFF;
+			z-index: 1;
+		}
+
+		.mui-input-group .la_icon {
+			width: 100rpx;
+			text-align: center;
+			font-family: 'Helvetica Neue', Helvetica, sans-serif;
+			line-height: 1.5;
+			float: left;
+			padding: 7px 13px;
+		}
+
+		.mui-input-group .mui-input-row {
+			height: 85rpx;
+			position: relative;
+			clear: left;
+			overflow: hidden;
+		}
+
+		.mui-input-row:first-child {
+			border-top: 1px solid #c8c7cc;
+		}
+
+		.mui-input-row:last-child {
+			border-bottom: 1px solid #c8c7cc;
+		}
+
+		.mui-input-group .mui-input-row:last-child:after {
+			background-color: #fff;
+		}
+
+		.mui-input-group .mui-input-row:after {
+			position: absolute;
+			right: 0;
+			bottom: 0;
+			left: 15px;
+			height: 1px;
+			content: '';
+			transform: scaleY(.5);
+			background-color: #c8c7cc;
+		}
+
+		.mui-input-row input {
+			font-family: 'Helvetica Neue', Helvetica, sans-serif;
+			width: 480rpx;
+			margin-bottom: 0;
+			padding-left: 20rpx;
+			-webkit-user-select: text;
+			box-shadow: none;
+			outline: 0;
+			background: 0 0;
+			-webkit-appearance: none;
+		}
+
+		button.btn_login {
+			margin-top: 50rpx;
+			padding: 20rpx;
+			line-height: 1.5;
+			background: #27A6E1;
+			border: none;
+			color: #fff;
+		}
+
+		.popup-class {
+			display: flex;
+			flex-direction: column;
+			width: 100%;
+
+			.popup-class-item {
+				padding: 20rpx 0;
+				border-bottom: 1px solid #eee;
+				display: flex;
+				flex-direction: row;
+
+				.ico {
+					width: 20px;
+					margin: 0 20rpx;
+
+				}
+			}
+
+		}
+	}
+	
+	.uni-page-login.large-mode{
+		.logo_input {
+			height: 54rpx;
+			width: 54rpx;
+		}
+	}
+	
+</style>
\ No newline at end of file

--
Gitblit v1.9.1