From 49dfdd3bf265db28d38167f34e9aabfdd3e8e5db Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 17 十月 2025 10:16:58 +0800
Subject: [PATCH] imagebutton
---
pages/login/index.vue | 220 ++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 144 insertions(+), 76 deletions(-)
diff --git a/pages/login/index.vue b/pages/login/index.vue
index de2efe3..4eae444 100644
--- a/pages/login/index.vue
+++ b/pages/login/index.vue
@@ -1,5 +1,5 @@
<template>
- <view class="uni-page-login" 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>
@@ -13,7 +13,6 @@
<image class="logo_input" src="../../images/login/person_30.png"></image>
</label>
<input type="text" class="mui-input" v-model="userName" :placeholder="translateSys('input_login')">
- <!-- <label class="mui-navigate-right" id="namsel"><image class="logo_icon" src="../../images/login/user-photo.png</image></label> -->
</div>
<div class="mui-input-row">
<label class="la_icon">
@@ -64,6 +63,18 @@
</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">
@@ -77,7 +88,8 @@
import cmdProgress from "@/components/cmd-progress/cmd-progress.vue"
import {
showModal,
- showToast,
+ showInfo,
+ showError,
showLoading,
hideLoading
} from "@/js/Page.js"
@@ -87,7 +99,9 @@
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],
@@ -105,6 +119,11 @@
downloadUrl: "", //瀹夊崜app涓嬭浇閾炬帴
percentage: 0, //涓嬭浇杩涘害
showBtns: true,
+ selectedClasses: "",
+ classesLst: [],
+ largeMode: false,
+
+
}
},
onShow() {
@@ -141,12 +160,9 @@
async check(version) {
try {
if (!this.userServer) {
- uni.showModal({
- title: this.translateSys("tip"),
- content: this.translate("tip_no_web_server"),
- showCancel: false,
- confirmText: this.translateSys('close')
- });
+
+ showInfo( this.translate('tip_no_web_server'));
+
return;
}
// var ser = this.userServer.toLowerCase().split('/');
@@ -163,16 +179,8 @@
} 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: this.translateSys("error"),
- content: tip,
- showCancel: false,
- confirmText: this.translateSys('close')
- });
+ showError(ex,this.translateSys("error"));
+
}
@@ -236,18 +244,12 @@
//涓嬭浇鎴愬姛,d.filename鏄枃浠跺湪淇濆瓨鍦ㄦ湰鍦扮殑鐩稿璺緞锛屼娇鐢ㄤ笅闈㈢殑API鍙浆涓哄钩鍙扮粷瀵硅矾寰� var fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename);
plus.runtime.openFile(d.filename); //閫夋嫨杞欢鎵撳紑鏂囦欢
- uni.showToast({
- icon: 'none',
- title: this.translate('update_success')
- });
+ showInfo( this.translate('update_success'));
_this.$refs.promotion.close();
} else {
//涓嬭浇澶辫触
plus.downloader.clear(); //娓呴櫎涓嬭浇浠诲姟
- uni.showToast({
- icon: 'none',
- title: this.translate('update_fail')
- });
+ showInfo( this.translate('update_fail'));
_this.showBtns = false;
}
})
@@ -272,12 +274,15 @@
inputDialogToggle() {
// this.$refs.inputDialog.open()
const $this = this
+
uni.navigateTo({
url: "./set",
events: {
exitSetEvent(val) {
$this.userServer = val;
$this.query(); //鐗堟湰鍗囩骇
+ $this.largeMode = getApp().globalData.largeMode
+
}
}
})
@@ -305,6 +310,7 @@
// }, 3000)
// }, 3000)
},
+
rememberPwd(e) { //璁颁綇瀵嗙爜
console.log(e.target);
utils.session.setValue('account', '');
@@ -344,37 +350,23 @@
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')
- });
+ showInfo(this.translate('tip_no_web_server'));
return;
}
if (!this.userName) {
- uni.showModal({
- title: this.translateSys('tip'),
- content: this.translate('tip_no_user_account'),
- showCancel: false,
- confirmText: this.translateSys('close')
- });
+ showInfo(this.translate('tip_no_user_account'))
return;
}
if (!this.userPwd) {
- uni.showModal({
- title: this.translateSys('tip'),
- content: this.translate('tip_no_user_password'),
- showCancel: false,
- confirmText: this.translateSys('close')
- });
+ showInfo(this.translate('tip_no_user_password'));
+
return;
}
var rootUrl = 'http://' + this.userServer
if (this.userServer.includes("://")) {
rootUrl = this.userServer
}
- showLoading("loading......")
+ showLoading("loading...")
const res = await login(rootUrl, this.userName, this.userPwd)
//璁剧疆鍏ㄥ眬鍙傛暟锛歶ser-鐢ㄦ埛淇℃伅
utils.session.setValue('server', rootUrl);
@@ -388,23 +380,26 @@
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')
- });
+ showError(ex,this.translateSys("error"));
}
},
@@ -414,6 +409,69 @@
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) {
+ showInfo(this.translate("page.please_login_after_admin_add_classes"));
+ 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) {
+ showError(ex,this.translateSys("error"));
+
+ 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;
@@ -429,7 +487,8 @@
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;
@@ -561,32 +620,14 @@
.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 {
@@ -597,5 +638,32 @@
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