From c0b24b804539df3a40a0be613b44562c7e073005 Mon Sep 17 00:00:00 2001 From: whycq <10027870+whycq@user.noreply.gitee.com> Date: 星期四, 20 四月 2023 10:43:46 +0800 Subject: [PATCH] # --- App.vue | 244 +++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 217 insertions(+), 27 deletions(-) diff --git a/App.vue b/App.vue index 78aee36..c206b2f 100644 --- a/App.vue +++ b/App.vue @@ -1,6 +1,11 @@ <script> import Vue from 'vue' export default { + globalData: { + baseHttp: '', + baseUrll: '', + upVersion: 0, + }, onLaunch: function() { Vue.prototype.ColorList = [{ title: '瀚g孩', @@ -80,11 +85,159 @@ ] }, onShow: function() { + this.getVersion(); + this.baseUrll = uni.getStorageSync("baseUrl") console.log('App Show') }, onHide: function() { console.log('App Hide') }, + methods: { + //妫�娴嬪綋鍓嶅钩鍙帮紝濡傛灉鏄畨鍗撳垯鍚姩瀹夊崜鏇存柊 + getVersion() { + let that = this; + uni.getSystemInfo({ + success: (res) => { + console.log(res.platform); + if (res.platform == "android") { + that.AndroidCheckUpdate(); + } + } + }) + }, + // 鑾峰彇褰撳墠鐗堟湰鍙� + AndroidCheckUpdate() { + let that = this; + plus.runtime.getProperty(plus.runtime.appid, (wgtinfo) => { + that.version = wgtinfo.version //瀹㈡埛绔増鏈彿 + console.log('褰撳墠app鐗堟湰淇℃伅锛�' + that.version); + }) + that.getUpdateVersion() + }, + getUpdateVersion() { + let that = this; + uni.request({ + url: that.baseUrll + "/mobile/appUpdate/queryUpdate", + method:'GET', + success(res) { + // 鏂癮pp鐗堟湰 + that.upVersion = Number(res.data.data) + // 褰撳墠app鐗堟湰 + let currentVersion = Number(that.version) + if(that.upVersion > currentVersion) { + that.downWgt(); //涓嬭浇鏂囦欢 + } + } + }) + return + that.$req.get(that.baseUrll + "/appUpdate/queryUpdate", {}, {}).then(function(res) { + console.log('res.data:' + JSON.stringify(res.data)) + console.log("鐜板湪鐨勭増鏈�" + that.version + "鏁版嵁搴撶増鏈�" + res.data.data.version + "杩涘叆鏌ユ壘app鐗堟湰"); + if (res.data.data.version > that.version) { + // 杩欓噷涓嬭浇apkurl浠�/appUpdate/queryUpdate鎺ュ彛璇锋眰杩斿洖鏁版嵁涓幏鍙� + that.downloadUrl = BaseUrl + '/' + res.data.data.androidUrl + // 鏄惁寮哄埗鏇存柊锛�0 鍚︼紱1 鏄級 + that.isForceUpdate = res.data.data.isForceUpdate + uni.showModal({ + // 鏇存柊鎻愰啋 + title: '鍙戠幇鏂扮増鏈紝鏄惁鏇存柊', + content: '姝ょ増鏈彿锛�' + that.version + '\xa0\xa0\xa0' + '寰呮洿鏂扮増鏈彿锛�' + res.data.data + .version, + success: res => { + if (res.confirm) { + that.downWgt(); //涓嬭浇鏂囦欢 + // that.showdownLine = true; + // plus.runtime.openURL(androidUrl) + } else if (res.cancel) { + console.log('that.isForceUpdate锛�' + that.isForceUpdate); + // 涓嶆洿鏂板己鍒堕��鍑篴pp + if (that.isForceUpdate == 1) { + console.log('that.isForceUpdate1锛�' + that.isForceUpdate); + uni.showModal({ + // 鏇存柊鎻愰啋 + title: '鍙戠幇鏂扮増鏈紝鏄惁鏇存柊', + content: '姝ょ増鏈负寮哄埗鏇存柊鐗堟湰濡備笉鍗囩骇灏嗛��鍑篈PP', + success: res => { + if (res.confirm) { + console.log('涓嶆洿鏂板己鍒堕��鍑篴pp'); + plus.runtime.quit(); + } else if (res.cancel) { + that.AndroidCheckUpdate(); + } + } + }); + } + } + } + }); + //dtask.start(); + } + }).catch(error => { + uni.showToast({ + title: '璋冪敤璇锋眰澶辫触', + mask: false, + duration: 5000, + icon: "none" + }); + }); + complete: () => {} + }, + downWgt() { + let that = this; + const downloadUrl = that.baseUrll + "/static/appupload/" + that.upVersion + ".apk" + uni.showLoading({ + title: '鏇存柊涓�︹��' + }) + // return + const downloadTask = uni.downloadFile({ //鎵ц涓嬭浇 + url: downloadUrl, //涓嬭浇鍦板潃 + timeout: 1000 * 30, //30绉掕秴鏃舵椂闂� + success: downloadResult => { //涓嬭浇鎴愬姛 + console.log(downloadResult); + that.showdownLine = false + uni.hideLoading(); + console.log('downloadResult.statusCode' + downloadResult.statusCode) + if (downloadResult.statusCode == 200) { + console.log('鏇存柊涓�') + uni.showModal({ + title: '', + content: '鏇存柊鎴愬姛锛岀‘瀹氱幇鍦ㄩ噸鍚悧锛�', + confirmText: '閲嶅惎', + confirmColor: '#EE8F57', + success: function(res) { + if (res.confirm == true) { + plus.runtime.install( //瀹夎 + downloadResult.tempFilePath, { + force: true + }, + function(res) { + utils.showToast('鏇存柊鎴愬姛锛岄噸鍚腑'); + plus.runtime.restart(); + } + ); + } + } + }); + } + }, + fail: err => { + uni.hideLoading(); + that.showdownLine = false + that.$u.toast(err.errMsg) + console.log(err) + }, + complete: com => { + console.log(com) + } + }); + + // 涓嬭浇杩涘害 + downloadTask.onProgressUpdate(res => { + that.downloadNum = res.progress + console.log('涓嬭浇杩涘害' + that.downloadNum); + }); + }, + } } </script> @@ -92,7 +245,7 @@ /*姣忎釜椤甸潰鍏叡css */ @import "colorui/main.css"; @import "colorui/icon.css"; - + .footer { width: 100%; height: 150rpx; @@ -101,26 +254,29 @@ position: fixed; bottom: 0; border-top: 1px solid #d8d8d8; - border-radius: 20rpx 20rpx 0 0 ; + border-radius: 20rpx 20rpx 0 0; z-index: 1; } + .nav-list { display: flex; flex-wrap: wrap; padding: 0px 40upx 0px; justify-content: space-between; } + .nav-li { padding: 30upx; border-radius: 12upx; width: 95%; margin: 0 2.5% 40upx; - + background-size: cover; background-position: center; position: relative; z-index: 1; } + .nav-li::after { content: ""; position: absolute; @@ -134,25 +290,30 @@ opacity: 0.2; transform: scale(0.9, 0.9); } + .nav-li.cur { color: #fff; background: rgb(94, 185, 94); box-shadow: 4upx 4upx 6upx rgba(94, 185, 94, 0.4); } + .nav-title { font-size: 32upx; font-weight: 300; } + .nav-title::first-letter { font-size: 40upx; margin-right: 4upx; } + .nav-name { font-size: 28upx; text-transform: Capitalize; margin-top: 20upx; position: relative; } + .nav-name::before { content: ""; position: absolute; @@ -164,7 +325,7 @@ right: 0; opacity: 0.5; } - + .nav-name::after { content: ""; position: absolute; @@ -176,12 +337,13 @@ right: 40upx; opacity: 0.3; } - + .nav-name::first-letter { font-weight: bold; font-size: 36upx; margin-right: 1px; } + .nav-li text { position: absolute; right: 30upx; @@ -192,36 +354,39 @@ text-align: center; line-height: 60upx; } + .text-light { font-weight: 300; } + @keyframes show { 0% { transform: translateY(-50px); } - + 60% { transform: translateY(40upx); } - + 100% { transform: translateY(0px); } } - + @-webkit-keyframes show { 0% { transform: translateY(-50px); } - + 60% { transform: translateY(40upx); } - + 100% { transform: translateY(0px); } } + /* .pda-btn { margin-left:120rpx; @@ -241,12 +406,13 @@ height: 60upx; line-height: 60upx; } + .main-btn { padding: 0 20px; font-size: 20px; height: 40px; } - + /* uni-checkbox .uni-checkbox-input{ border-radius: 20% !important; border: 1px solid black; @@ -256,23 +422,23 @@ } */ /* uni-checkbox-group{ width: 100% !important; } uni-checkbox-group uni-label{ width: 33% !important; display: inline-flex; margin-bottom: 20rpx; } */ - + /*checkbox 閫夐」妗嗗ぇ灏� */ - uni-checkbox .uni-checkbox-input{ + uni-checkbox .uni-checkbox-input { width: 30rpx !important; height: 30rpx !important; } - + /*checkbox閫変腑鍚庢牱寮� */ - uni-checkbox .uni-checkbox-input.uni-checkbox-input-checked{ + uni-checkbox .uni-checkbox-input.uni-checkbox-input-checked { background: #3D7EFF; - border-color:#3D7EFF; + border-color: #3D7EFF; } - + /*checkbox閫変腑鍚庡浘鏍囨牱寮� */ - uni-checkbox .uni-checkbox-input.uni-checkbox-input-checked::before{ - width: 30rpx; - height: 30rpx; + uni-checkbox .uni-checkbox-input.uni-checkbox-input-checked::before { + width: 30rpx; + height: 30rpx; line-height: 30rpx; text-align: center; font-size: 30rpx; @@ -281,6 +447,7 @@ transform: translate(-50%, -50%) scale(1); -webkit-transform: translate(-50%, -50%) scale(1); } + .square-2 { background-color: #ffffff; box-shadow: 0px 0px 5px #d9d9d9; @@ -289,10 +456,12 @@ border-radius: 20rpx; margin: 20rpx auto 20rpx auto; } + .square-title { width: 100%; height: 100rpx; } + .title-sign { display: inline-block; float: left; @@ -300,6 +469,7 @@ width: 2em; line-height: 100rpx; } + .sign { background-color: #007AFF; width: 15rpx; @@ -308,13 +478,15 @@ position: relative; top: 50%; left: 50%; - transform: translate(-50%,-50%); + transform: translate(-50%, -50%); } + .square-content { width: 100%; height: 100rpx; } - .square-content>text{ + + .square-content>text { height: 100%; /* background-color: #18BC37; */ width: 22%; @@ -325,6 +497,7 @@ margin-left: 3%; font-size: 30rpx; } + .content-input { background-color: #f9f9f9; display: inline-block; @@ -336,15 +509,17 @@ border-radius: 15rpx; border: 1px solid #eeeeee; } + .content-input input { display: inline-block; float: left; - height: 100%; + height: 80rpx; width: 90%; text-indent: 20rpx; font-size: 32rpx; letter-spacing: 3rpx; } + .content-input-btn { background-color: #f9f9f9; display: inline-block; @@ -356,6 +531,7 @@ border-radius: 15rpx; border: 1px solid #eeeeee; } + .content-input-btn input { display: inline-block; float: left; @@ -366,6 +542,7 @@ font-size: 32rpx; letter-spacing: 3rpx; } + .content-input-combox { background-color: #f9f9f9; display: inline-block; @@ -376,8 +553,9 @@ margin: 10rpx 2.5%; border-radius: 10rpx; border: 1px solid #eeeeee; - margin: 10rpx 3% 10rpx 0 ; + margin: 10rpx 3% 10rpx 0; } + .content-input-combox input { display: inline-block; float: left; @@ -388,17 +566,20 @@ font-size: 32rpx; letter-spacing: 3rpx; } + .content-combox { display: inline-block; float: right; height: 80rpx; - width: 70%; - margin: 10rpx 3% 10rpx 0 ; + width: 94%; + margin: 10rpx 3% 10rpx 0; } + .square-none { width: 100%; height: 100rpx; } + .square-1 { position: relative; background-color: #ffffff; @@ -408,6 +589,7 @@ border-radius: 20rpx; margin: 20rpx auto 20rpx auto; } + .v-show { width: 100%; height: 100%; @@ -415,6 +597,7 @@ text-align: center; color: #7a7a7a; } + .title-text { /* background-color: #000000; */ display: inline-block; @@ -425,12 +608,14 @@ font-weight: 700; letter-spacing: 7rpx; } + .content-btn { /* background-color: #57a3ff; */ display: inline-block; height: 100rpx; width: 25%; } + .pda-btn { background-color: #1E9FFF; height: 80rpx; @@ -441,6 +626,7 @@ font-size: 32rpx; color: #FFFFFF; } + .square-3 { background-color: #ffffff; box-shadow: 0px 0px 5px #d9d9d9; @@ -449,6 +635,7 @@ border-radius: 20rpx; margin: 20rpx auto 20rpx auto; } + .searchBox { position: absolute; width: 94%; @@ -461,6 +648,7 @@ background-color: #F9F9F9; border-radius: 20rpx; } + .searchIcon { display: inline-block; float: left; @@ -469,18 +657,20 @@ text-align: center; line-height: 80rpx; } - + .searchArea { display: inline-block; float: left; width: 80%; height: 100%; } + .searchArea input { height: 100%; font-size: 14px; color: #5f5f5f; } + .closeIcon { display: inline-block; float: left; -- Gitblit v1.9.1