|
@@ -1,27 +1,30 @@
|
|
|
<template>
|
|
|
- <view class="section">
|
|
|
-
|
|
|
- <!-- <view style="position:absolute;top:10px;right:10px;z-index:99;color:#2a98ff" @tap="goSeverConfig">服务器配置</view> -->
|
|
|
-
|
|
|
- <!-- #ifdef APP-PLUS-->
|
|
|
- <view style="position:absolute;top:30px;right:15px;z-index:99;color:#2a98ff" @tap="goSeverConfig">服务器配置</view>
|
|
|
- <!--#endif-->
|
|
|
-
|
|
|
+ <view id="login" class="section">
|
|
|
+ <!-- <u-loading-page :loading="true" loading-text="loading..." loading-mode="spinner"></u-loading-page> -->
|
|
|
|
|
|
<view class="bg">
|
|
|
<image class="bgImage" :src="bg" v-if="bg" />
|
|
|
<!-- <image class="bgImage" src="@/static/images/wt/bg.png" v-else /> -->
|
|
|
</view>
|
|
|
|
|
|
-
|
|
|
- <view class="middle login">
|
|
|
+ <view class="middle">
|
|
|
<view class="top">
|
|
|
- <image class="logo" :src="logo" v-if="logo" />
|
|
|
- <image class="logo" src="@/static/logo200.png" v-else />
|
|
|
+ <image class="logo" mode="heightFix" :src="logo" v-if="logo" />
|
|
|
+ <image class="logo" mode="heightFix" src="@/static/logo200.png" v-else />
|
|
|
<text class="title" v-if="title">{{ title }}</text>
|
|
|
<text class="title" v-else>移动端配置</text>
|
|
|
</view>
|
|
|
|
|
|
+ <view class="content">
|
|
|
+ <text class="title">请登录</text>
|
|
|
+
|
|
|
+ <!-- #ifdef APP-PLUS || H5 -->
|
|
|
+ <view id="okay">首次账号登录请先配置服务器</view>
|
|
|
+ <!-- <u-icon class="icons" name="scan" color="gray" size="22"></u-icon> -->
|
|
|
+ <view class="setting" @tap="goSeverConfig"> 配置服务器 </view>
|
|
|
+ <!--#endif-->
|
|
|
+ </view>
|
|
|
+
|
|
|
<view id="login-input" style="margin-top: 20px" v-if="switchText == '账号密码登录'">
|
|
|
<u-input v-model="phone" prefixIcon="phone" placeholder="请输入手机号码" />
|
|
|
</view>
|
|
@@ -69,18 +72,14 @@ import useStores from "@/store/modules/user.js";
|
|
|
const useStore = useStores();
|
|
|
const newPublicStore = publicStore();
|
|
|
|
|
|
-
|
|
|
-
|
|
|
const { proxy } = getCurrentInstance();
|
|
|
|
|
|
-
|
|
|
-
|
|
|
const data = reactive({
|
|
|
/** saas数据 */
|
|
|
bg: "",
|
|
|
logo: "",
|
|
|
- title: '',
|
|
|
- bottomTitle: '',
|
|
|
+ title: "",
|
|
|
+ bottomTitle: "",
|
|
|
/** login数据 */
|
|
|
phone: undefined,
|
|
|
verify: undefined,
|
|
@@ -97,11 +96,9 @@ const data = reactive({
|
|
|
const { title, bg, bottomTitle, logo, phone, verify, codeTime, switchText, username, password, tenantId, inputIconBool } = toRefs(data);
|
|
|
|
|
|
function goSeverConfig() {
|
|
|
-
|
|
|
- uni.navigateTo({
|
|
|
- url: '/pages/serveConfig'
|
|
|
- })
|
|
|
-
|
|
|
+ uni.navigateTo({
|
|
|
+ url: "/pages/serveConfig",
|
|
|
+ });
|
|
|
}
|
|
|
/**登录方式切换 */
|
|
|
function switchMode() {
|
|
@@ -166,24 +163,22 @@ function env() {
|
|
|
// }else{
|
|
|
// }
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- //#ifdef H5
|
|
|
- var linkUrl=window.location.host;
|
|
|
+ //#ifdef H5
|
|
|
+ var linkUrl = window.location.host;
|
|
|
// var linkUrl='ces.cn';
|
|
|
- //#endif
|
|
|
+ // var linkUrl='172.16.120.165:13203'
|
|
|
+ //#endif
|
|
|
|
|
|
- //#ifdef APP-PLUS
|
|
|
- var linkUrl=newPublicStore.serveUrl;
|
|
|
- //#endif
|
|
|
+ //#ifdef APP-PLUS
|
|
|
+ var linkUrl = newPublicStore.serveUrl;
|
|
|
+ //#endif
|
|
|
|
|
|
-// uni.showToast({
|
|
|
-// title: '服务器链接地址为'+linkUrl,
|
|
|
-// icon: "none",
|
|
|
-// })
|
|
|
+ // uni.showToast({
|
|
|
+ // title: '服务器链接地址为'+linkUrl,
|
|
|
+ // icon: "none",
|
|
|
+ // })
|
|
|
|
|
|
- getMobileTenantConfigApi({ url:linkUrl });
|
|
|
+ getMobileTenantConfigApi({ url: linkUrl });
|
|
|
|
|
|
// let port = uni.getSystemInfoSync().platform;
|
|
|
// switch (port) {
|
|
@@ -204,25 +199,18 @@ function env() {
|
|
|
// }
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
/** 点击提交按钮 */
|
|
|
async function submitRes() {
|
|
|
-
|
|
|
-
|
|
|
- //#ifdef APP-PLUS
|
|
|
- var linkUrl=newPublicStore.serveUrl;
|
|
|
- if(!newPublicStore.serveUrl){
|
|
|
+ //#ifdef APP-PLUS
|
|
|
+ var linkUrl = newPublicStore.serveUrl;
|
|
|
+ if (!newPublicStore.serveUrl) {
|
|
|
uni.showToast({
|
|
|
- title: '首次登录请先进行服务器配置...',
|
|
|
- icon: "none",
|
|
|
- })
|
|
|
- return
|
|
|
+ title: "首次登录请先进行服务器配置...",
|
|
|
+ icon: "none",
|
|
|
+ });
|
|
|
+ return;
|
|
|
}
|
|
|
- //#endif
|
|
|
-
|
|
|
+ //#endif
|
|
|
|
|
|
if (switchText.value == "账号密码登录") {
|
|
|
if (!phone.value) {
|
|
@@ -301,7 +289,7 @@ async function getMobileTenantConfigApi(params) {
|
|
|
bottomTitle.value = data.loginFooter;
|
|
|
tenantId.value = data.tenantId;
|
|
|
bg.value = data.loginBackUrl;
|
|
|
- logo.value=data.loginLogo;
|
|
|
+ logo.value = data.loginLogo;
|
|
|
uni.setStorageSync("homeTitle", data.loginTitle);
|
|
|
}
|
|
|
});
|
|
@@ -319,10 +307,8 @@ function inputIcon() {
|
|
|
* @onLoad
|
|
|
*/
|
|
|
onLoad(() => {
|
|
|
-
|
|
|
env();
|
|
|
|
|
|
-
|
|
|
const token = getToken();
|
|
|
//需要登录
|
|
|
if (token) {
|
|
@@ -333,13 +319,12 @@ onLoad(() => {
|
|
|
});
|
|
|
</script>
|
|
|
<style>
|
|
|
-.uni-input{
|
|
|
- color:red!important
|
|
|
- }</style>
|
|
|
+.uni-input {
|
|
|
+ color: red !important;
|
|
|
+}
|
|
|
+</style>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
-
|
|
|
-
|
|
|
.section {
|
|
|
display: flex;
|
|
|
width: 100%;
|
|
@@ -359,7 +344,7 @@ onLoad(() => {
|
|
|
height: 100%;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
.middle {
|
|
|
position: relative;
|
|
|
z-index: 1;
|
|
@@ -367,36 +352,127 @@ onLoad(() => {
|
|
|
padding: 0 40px;
|
|
|
margin: auto;
|
|
|
margin-top: 30%;
|
|
|
- #login-input .u-input{
|
|
|
- border-color:gray!important
|
|
|
- }
|
|
|
|
|
|
- .uni-input-placeholder{
|
|
|
- color:gray!important
|
|
|
+ #login-input {
|
|
|
+ .u-input {
|
|
|
+ height: 45px;
|
|
|
+ border-radius: 8px;
|
|
|
+ padding: 5px 12px !important;
|
|
|
+ border: 0 !important;
|
|
|
+ // border-color: #000 !important;
|
|
|
+ // border-color: gray !important;
|
|
|
+ background-color: rgba(255, 255, 255, 0.1) !important;
|
|
|
+ background-color: #f5f6fa !important;
|
|
|
+ }
|
|
|
+
|
|
|
+ :deep(.uni-input-wrapper) {
|
|
|
+ font-size: 16px;
|
|
|
+ color: #a0a4af;
|
|
|
+ }
|
|
|
+
|
|
|
+ :deep(uni-input) {
|
|
|
+ color: #000 !important;
|
|
|
+ background-color: rgba(255, 255, 255, 0) !important;
|
|
|
+ border: 0px solid #ededed !important;
|
|
|
+ padding-left: 0 !important;
|
|
|
+ }
|
|
|
+
|
|
|
+ :deep(.u-icon__icon) {
|
|
|
+ font-size: 24px !important;
|
|
|
+ line-height: 24px !important;
|
|
|
+ color: gray !important;
|
|
|
+ }
|
|
|
+
|
|
|
+ :deep(.iconfont) {
|
|
|
+ color: gray !important;
|
|
|
+ }
|
|
|
+
|
|
|
+ :deep(.u-button) {
|
|
|
+ width: 35%;
|
|
|
+ height: 45px;
|
|
|
+ line-height: 45px;
|
|
|
+ color: #2a98ff;
|
|
|
+ border-radius: 24px;
|
|
|
+ margin: 0 0 0 5%;
|
|
|
+ font-size: 17px !important;
|
|
|
+ white-space: nowrap;
|
|
|
+ border-color: #2a98ff !important;
|
|
|
+ background-color: rgba(255, 255, 255, 0.1) !important;
|
|
|
+ }
|
|
|
|
|
|
+ :deep(:-webkit-autofill) {
|
|
|
+ caret-color: #a0a4af; // 设置光标颜色
|
|
|
+ // -webkit-text-fill-color: gray !important;
|
|
|
+ -webkit-box-shadow: 0 0 0px 1000px transparent inset !important;
|
|
|
+ background-color: transparent;
|
|
|
+ background-image: none;
|
|
|
+ transition: background-color 50000s ease-in-out 0s; //背景色透明 生效时长 过渡效果 启用时延迟的时间
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
.top {
|
|
|
display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
margin-bottom: 60px;
|
|
|
+
|
|
|
+ :deep(uni-image) {
|
|
|
+ height: 40px;
|
|
|
+ }
|
|
|
.logo {
|
|
|
- width: 40px;
|
|
|
- height: auto;
|
|
|
- max-height:50px;
|
|
|
- margin: 0 20px 0 auto;
|
|
|
+ margin-right: 10px;
|
|
|
}
|
|
|
.title {
|
|
|
font-size: 20px;
|
|
|
- text-align: center;
|
|
|
color: #000;
|
|
|
+ max-width: 50%;
|
|
|
+ white-space: nowrap;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .content {
|
|
|
+ display: flex;
|
|
|
+ position: relative;
|
|
|
+ .title {
|
|
|
margin: auto auto auto 0;
|
|
|
+ color: #000;
|
|
|
+ font-size: 17px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .icons {
|
|
|
+ margin: auto 5px 0 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ .setting {
|
|
|
+ color: #2a98ff;
|
|
|
+ margin: auto 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ #okay {
|
|
|
+ position: absolute;
|
|
|
+ top: -35px;
|
|
|
+ right: 0px;
|
|
|
+ background-color: #2a98ff;
|
|
|
+ text-align: center;
|
|
|
+ line-height: 25px;
|
|
|
+ display: inline-block;
|
|
|
+ color: #fff;
|
|
|
+ padding: 3px 5px;
|
|
|
+ border-radius: 3px;
|
|
|
+ }
|
|
|
+ #okay::after {
|
|
|
+ content: "";
|
|
|
+ position: absolute;
|
|
|
+ border: 5px solid transparent;
|
|
|
+ transform: rotate(90deg);
|
|
|
+ right: 5px;
|
|
|
+ bottom: -9px;
|
|
|
+ border-left-color: #2a98ff;
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
|
|
|
.switchText {
|
|
|
- color: gray;
|
|
|
- font-size: 16px;
|
|
|
+ color: #a0a4af;
|
|
|
margin-top: 20px;
|
|
|
width: 100%;
|
|
|
display: block;
|
|
@@ -408,7 +484,7 @@ onLoad(() => {
|
|
|
border-radius: 24px;
|
|
|
background: #2a98ff;
|
|
|
color: #fff;
|
|
|
- margin-top: 45px;
|
|
|
+ margin-top: 30px;
|
|
|
border: 0px;
|
|
|
}
|
|
|
}
|