| | |
| | | <template> |
| | | <view class="content"> |
| | | <image class="bg-img" src="../../static/login.jpg"></image> |
| | | <view class="container"> |
| | | <view class="title">智云L-MES制造执行系统</view> |
| | | <view class="box"> |
| | | <view class="logo"> |
| | | <image src="../../static/logo.png" mode=""></image> |
| | | </view> |
| | | <view class="login"> |
| | | <!-- <view class="item"> |
| | | <view class="left">当前帐套:</view> |
| | | <picker :range="arrayDataBases" :value="DataBases" @change="DataBasesChange"> |
| | | <view class="right" style="display: flex;align-items: center;"> |
| | | <input type="text" disabled v-model="DataBases" placeholder="请选择当前帐套"> |
| | | <uni-icons type="forward" color="#808080" style="border-left: 1px solid #aaaaaa;padding: 0 8rpx;" size="18"></uni-icons> |
| | | </view> |
| | | </picker> |
| | | </view> --> |
| | | <view class="item"> |
| | | <view class="left">当前组织:</view> |
| | | <picker :range="arrayOrganization" :value="Organization" @change="OrganizationChange"> |
| | | <view class="right" style="display: flex;align-items: center;"> |
| | | <input type="text" disabled v-model="Organization" placeholder="请选择当前组织"> |
| | | <uni-icons type="forward" color="#808080" style="border-left: 1px solid #aaaaaa;padding: 0 8rpx;" size="18"></uni-icons> |
| | | </view> |
| | | </picker> |
| | | </view> |
| | | <view class="item"> |
| | | <view class="left">用户名:</view> |
| | | <view class="right"> |
| | | <input type="text" v-model="UserName"> |
| | | </view> |
| | | </view> |
| | | <view class="item"> |
| | | <view class="left">密 码:</view> |
| | | <view class="right"> |
| | | <input type="password" v-model="PassWord"> |
| | | </view> |
| | | </view> |
| | | <!-- <view class="api"> |
| | | 当前服务器地址:{{serverUrl}} |
| | | </view> |
| | | <view class="apibtn" @tap="changeApi=true">修改服务器地址</view> --> |
| | | </view> |
| | | </view> |
| | | <hFormAlert v-if="changeApi" placeholder="请输入服务器地址" @confirm="confirm" @cancel="cancel"></hFormAlert> |
| | | |
| | | <view class="btn" @tap="submit">登 录</view> |
| | | <view class="btn apibtn" @tap="changeApi=true">服务器设置</view> |
| | | </view> |
| | | </view> |
| | | <view class="content"> |
| | | <image class="bg-img" src="../../static/login.jpg"></image> |
| | | <view class="container"> |
| | | <view class="title">智云L-MES制造执行系统</view> |
| | | <view class="box"> |
| | | <view class="logo"> |
| | | <image src="../../static/logo.png" mode=""></image> |
| | | </view> |
| | | <view class="login"> |
| | | <!-- <view class="item"> |
| | | <view class="left">当前帐套:</view> |
| | | <picker :range="arrayDataBases" :value="DataBases" @change="DataBasesChange"> |
| | | <view class="right" style="display: flex;align-items: center;"> |
| | | <input type="text" disabled v-model="DataBases" placeholder="请选择当前帐套"> |
| | | <uni-icons type="forward" color="#808080" style="border-left: 1px solid #aaaaaa;padding: 0 8rpx;" size="18"></uni-icons> |
| | | </view> |
| | | </picker> |
| | | </view> --> |
| | | <view class="item"> |
| | | <view class="left">当前组织:</view> |
| | | <picker :range="arrayOrganization" :value="Organization" @change="OrganizationChange"> |
| | | <view class="right" style="display: flex;align-items: center;"> |
| | | <input type="text" disabled v-model="Organization" placeholder="请选择当前组织"> |
| | | <uni-icons type="forward" color="#808080" |
| | | style="border-left: 1px solid #aaaaaa;padding: 0 8rpx;" size="18"></uni-icons> |
| | | </view> |
| | | </picker> |
| | | </view> |
| | | <view class="item"> |
| | | <view class="left">用户名:</view> |
| | | <view class="right"> |
| | | <input type="text" v-model="UserName"> |
| | | </view> |
| | | </view> |
| | | <view class="item"> |
| | | <view class="left">密 码:</view> |
| | | <view class="right"> |
| | | <input type="password" v-model="PassWord"> |
| | | </view> |
| | | </view> |
| | | <!-- <view class="api"> |
| | | 当前服务器地址:{{serverUrl}} |
| | | </view> |
| | | <view class="apibtn" @tap="changeApi=true">修改服务器地址</view> --> |
| | | </view> |
| | | </view> |
| | | <uni-popup ref="popup" type="center"> |
| | | <uni-popup-dialog title="服务器设置" mode="input" @confirm="confirmHandler" :before-close="true" |
| | | @close="close"> |
| | | <view class="popup-content"> |
| | | <input type="text" v-model="serverUrlName" placeholder="请输入服务器名称"> |
| | | </view> |
| | | </uni-popup-dialog> |
| | | </uni-popup> |
| | | |
| | | <view class="btn" @tap="submit">登 录</view> |
| | | <view class="btn apibtn" @click="openServerSettingHandler">服务器设置</view> |
| | | |
| | | </view> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | import { setLoginData,setUserInfo} from "@/utils/auth.js"; |
| | | import hFormAlert from '@/components/h-form-alert/h-form-alert.vue'; |
| | | export default { |
| | | components: { |
| | | hFormAlert |
| | | }, |
| | | data() { |
| | | return { |
| | | arrayDataBases:[], |
| | | DataBases:'', |
| | | |
| | | arrayOrganization:[], |
| | | Organization:'', |
| | | HOrgNameList:[], |
| | | |
| | | HOrgName:'', |
| | | UserName:'',//admin 001 |
| | | PassWord:'',//123456 |
| | | changeApi:false, |
| | | serverUrl: uni.getStorageSync('serverUrl')||'http://47.96.97.237/API', |
| | | } |
| | | }, |
| | | onLoad() { |
| | | var logindata = uni.getStorageSync('loginData')||'' |
| | | // console.log(logindata) |
| | | if(logindata){ |
| | | logindata = JSON.parse(logindata) |
| | | this.HOrgName = logindata.HOrgName |
| | | this.Organization = logindata.Organization |
| | | this.UserName = logindata.UserName |
| | | this.PassWord = logindata.PassWord |
| | | } |
| | | this.getOrganization() |
| | | // this.getDataBases() |
| | | }, |
| | | methods: { |
| | | confirm(e){ |
| | | console.log(e) |
| | | uni.setStorageSync('serverUrl',e) |
| | | this.serverUrl = e |
| | | this.changeApi = false |
| | | this.getOrganization() |
| | | }, |
| | | cancel(){ |
| | | this.changeApi = false |
| | | }, |
| | | getDataBases(){ |
| | | uni.request({ |
| | | url: this.serverUrl + '/Web/GetDataBases', |
| | | success: (result) => { |
| | | console.log(result); |
| | | if (result.count == 1) { |
| | | for(var i=0;i<res.data.data.length;i++){ |
| | | this.arrayDataBases[i] = result.data.data[i].name; |
| | | } |
| | | } |
| | | console.log(this.arrayDataBases); |
| | | this.$forceUpdate(); |
| | | }, |
| | | fail: (res) => { |
| | | console.log(res); |
| | | }, |
| | | }); |
| | | }, |
| | | DataBasesChange(e){ |
| | | console.log(e.detail.value) |
| | | this.DataBases = this.arrayDataBases[e.detail.value] |
| | | uni.setStorageSync('DataBases', this.DataBases); |
| | | }, |
| | | |
| | | getOrganization(){ |
| | | uni.request({ |
| | | url: this.serverUrl + '/Web/GetOrganizations', |
| | | success: (res) => { |
| | | console.log(res.data.data); |
| | | for(var i=0;i<res.data.data.length;i++){ |
| | | this.arrayOrganization[i] = res.data.data[i].Name |
| | | this.HOrgNameList[i] = res.data.data[i].ID |
| | | } |
| | | this.$forceUpdate(); |
| | | }, |
| | | fail: (res) => { |
| | | console.log(res); |
| | | uni.showToast({ |
| | | title:'获取组织失败,请检查服务器地址', |
| | | icon:'none' |
| | | }) |
| | | }, |
| | | }); |
| | | }, |
| | | OrganizationChange(e){ |
| | | // console.log(e.detail.value) |
| | | this.Organization = this.arrayOrganization[e.detail.value] |
| | | this.HOrgName = this.HOrgNameList[e.detail.value] |
| | | }, |
| | | submit(){ |
| | | if(!this.Organization){ |
| | | uni.showToast({ |
| | | title:'请选择组织', |
| | | icon:'none' |
| | | }) |
| | | }else if(!this.UserName){ |
| | | uni.showToast({ |
| | | title:'请输入用户名', |
| | | icon:'none' |
| | | }) |
| | | }else if(!this.PassWord){ |
| | | uni.showToast({ |
| | | title:'请输入密码', |
| | | icon:'none' |
| | | }) |
| | | }else{ |
| | | uni.showLoading({ |
| | | title:'登录中...', |
| | | mask:true |
| | | }) |
| | | var data = { |
| | | UserName: this.UserName, |
| | | PassWord: this.PassWord, |
| | | HOrgName: this.HOrgName, |
| | | Organization: this.Organization |
| | | } |
| | | uni.setStorageSync('loginData', JSON.stringify(data)); |
| | | uni.request({ |
| | | url: this.serverUrl + '/Web/GetUser', |
| | | method:'GET', |
| | | data:data, |
| | | success: (res) => { |
| | | console.log(res) |
| | | uni.hideLoading() |
| | | uni.showToast({ |
| | | title:res.data.Message, |
| | | icon:'none' |
| | | }) |
| | | if(res.data.count == 1){ |
| | | setLoginData(data) |
| | | setUserInfo(res.data.data[0]) |
| | | uni.setStorageSync('HUserName', res.data.data[0].Czymc); |
| | | uni.setStorageSync('HBillerID', res.data.data[0].HK3UserID); |
| | | uni.setStorageSync('SourceFlag', false); |
| | | uni.setStorageSync('login', "login"); |
| | | uni.setStorageSync('Organization', this.Organization); |
| | | uni.setStorageSync('OrganizationID', this.HOrgName); |
| | | |
| | | uni.reLaunch({ |
| | | url:'/pages/index/index' |
| | | }) |
| | | } |
| | | }, |
| | | fail: (res) => { |
| | | console.log(res); |
| | | uni.hideLoading() |
| | | uni.showToast({ |
| | | title:'接口请求失败', |
| | | icon:'none' |
| | | }) |
| | | }, |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | import { |
| | | setLoginData, |
| | | setUserInfo |
| | | } from "@/utils/auth.js"; |
| | | import hFormAlert from '@/components/h-form-alert/h-form-alert.vue'; |
| | | import { |
| | | CommonUtils |
| | | } from "../../utils/common"; |
| | | export default { |
| | | components: { |
| | | hFormAlert |
| | | }, |
| | | data() { |
| | | return { |
| | | CommonUtils, |
| | | arrayDataBases: [], |
| | | DataBases: '', |
| | | |
| | | serverUrlandName: { |
| | | "浙江智云迈思": 'http://47.96.97.237/API/', |
| | | "温州海诚光学": 'http://122.228.39.234:7177/API/', |
| | | "宁波惠康工业": 'http://172.16.72.30:6699/API/', |
| | | "余姚兴达起动器": 'http://121.37.133.104/API/', |
| | | "李林俊本地测试": 'http://localhost:8082/LuBaoAPI/', |
| | | "苏州卫智科技": 'http://221.224.60.42:8082/API_WW/', |
| | | "杭州凯贝奈特": 'http://192.168.50.253:8080/API/', |
| | | "杭州凯贝奈特外网": 'http://erp.hzcabinet.cn:9090/API/', |
| | | "翁涛涛本地测试": 'http://localhost:81/API/', |
| | | "陈镐哲本地测试": 'http://localhost:81/API/', |
| | | "张瑞广本地测试": 'http://localhost:8082/API/', |
| | | "余思杰本地测试": 'http://localhost:8082/LuBaoAPI/', |
| | | }, |
| | | serverUrlName: '浙江智云迈思', |
| | | |
| | | arrayOrganization: [], |
| | | Organization: '', |
| | | HOrgNameList: [], |
| | | |
| | | HOrgName: '', |
| | | UserName: '', //admin 001 |
| | | PassWord: '', //123456 |
| | | serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API/', |
| | | serverUrlCache: '', |
| | | } |
| | | }, |
| | | onShow() { |
| | | var logindata = uni.getStorageSync('loginData') || '' |
| | | // console.log(logindata) |
| | | if (logindata) { |
| | | logindata = JSON.parse(logindata) |
| | | this.HOrgName = logindata.HOrgName |
| | | this.Organization = logindata.Organization |
| | | this.UserName = logindata.HUserNumber |
| | | this.PassWord = logindata.HPassWord |
| | | // this.UserName = logindata.UserName |
| | | // this.PassWord = logindata.PassWord |
| | | } |
| | | this.getOrganization() |
| | | this.getDataBases() |
| | | }, |
| | | methods: { |
| | | async InitOrgination() { |
| | | console.log("初始化组织") |
| | | await this.$nextTick(() => { |
| | | this.Organization = this.arrayOrganization[0] |
| | | this.HOrgName = this.HOrgNameList[0] |
| | | |
| | | let org = uni.getStorageSync('Organization') |
| | | let orgName = uni.getStorageSync('OrganizationID') |
| | | let orgHas = Array.from(this.arrayOrganization).findIndex((e) => e == org) |
| | | if (org && (orgHas != -1)) { |
| | | this.Organization = org |
| | | this.HOrgName = orgName |
| | | } |
| | | }) |
| | | }, |
| | | confirmHandler() { |
| | | console.log(this.serverUrlName) |
| | | console.log(this.serverUrlandName[this.serverUrlName]) |
| | | let url = this.serverUrlandName[this.serverUrlName]; |
| | | if (url != undefined) { |
| | | uni.setStorageSync('serverUrl', url) |
| | | this.serverUrl = url |
| | | this.changeApi = false |
| | | this.getOrganization() |
| | | this.$refs.popup.close() |
| | | } else { |
| | | uni.showToast({ |
| | | title: '服务器名称错误请重新输入', |
| | | icon: 'none', |
| | | }) |
| | | } |
| | | }, |
| | | close() { |
| | | this.$refs.popup.close() |
| | | }, |
| | | openServerSettingHandler() { |
| | | this.$refs.popup.open() |
| | | }, |
| | | getDataBases() { |
| | | uni.request({ |
| | | url: this.serverUrl + '/Web/GetDataBases', |
| | | success: (result) => { |
| | | console.log(result); |
| | | if (result.count == 1) { |
| | | for (var i = 0; i < res.data.data.length; i++) { |
| | | this.arrayDataBases[i] = result.data.data[i].name; |
| | | } |
| | | } |
| | | console.log(this.arrayDataBases); |
| | | this.$forceUpdate(); |
| | | }, |
| | | fail: (res) => { |
| | | console.log(res); |
| | | }, |
| | | }); |
| | | }, |
| | | DataBasesChange(e) { |
| | | console.log(e.detail.value) |
| | | this.DataBases = this.arrayDataBases[e.detail.value] |
| | | uni.setStorageSync('DataBases', this.DataBases); |
| | | }, |
| | | |
| | | getOrganization() { |
| | | this.arrayOrganization = [] |
| | | uni.request({ |
| | | url: this.serverUrl + '/Web/GetOrganizations', |
| | | success: (res) => { |
| | | console.log(res.data.data); |
| | | for (var i = 0; i < res.data.data.length; i++) { |
| | | this.arrayOrganization[i] = res.data.data[i].Name |
| | | this.HOrgNameList[i] = res.data.data[i].ID |
| | | } |
| | | // this.Organization = res.data.data[0].Name |
| | | // this.HOrgName = res.data.data[0].ID |
| | | this.$forceUpdate(); |
| | | this.InitOrgination() |
| | | }, |
| | | fail: (res) => { |
| | | console.log(res); |
| | | uni.showToast({ |
| | | title: '获取组织失败,请检查服务器地址', |
| | | icon: 'none' |
| | | }) |
| | | }, |
| | | }); |
| | | }, |
| | | OrganizationChange(e) { |
| | | // console.log(e.detail.value) |
| | | this.Organization = this.arrayOrganization[e.detail.value] |
| | | this.HOrgName = this.HOrgNameList[e.detail.value] |
| | | }, |
| | | submit() { |
| | | if (!this.Organization) { |
| | | uni.showToast({ |
| | | title: '请选择组织', |
| | | icon: 'none' |
| | | }) |
| | | } else if (!this.UserName) { |
| | | uni.showToast({ |
| | | title: '请输入用户名', |
| | | icon: 'none' |
| | | }) |
| | | } else if (!this.PassWord) { |
| | | uni.showToast({ |
| | | title: '请输入密码', |
| | | icon: 'none' |
| | | }) |
| | | } else { |
| | | uni.showLoading({ |
| | | title: '登录中...', |
| | | mask: true |
| | | }) |
| | | var data = |
| | | { |
| | | HUserNumber: this.UserName, |
| | | HPassWord: this.PassWord, |
| | | HStockOrgID: this.HOrgName, |
| | | HStockOrgName: this.Organization |
| | | } |
| | | |
| | | // UserName: this.UserName, |
| | | // PassWord: this.PassWord, |
| | | // HOrgName: this.HOrgName, |
| | | // Organization: this.Organization |
| | | // } |
| | | uni.setStorageSync('loginData', JSON.stringify(data)); |
| | | uni.request({ |
| | | url: this.serverUrl + 'WEBSController/GetUser_Json', |
| | | method: 'GET', |
| | | data: data, |
| | | success: (res) => { |
| | | console.log(res) |
| | | uni.hideLoading() |
| | | uni.showToast({ |
| | | title: res.data.Message, |
| | | icon: 'none' |
| | | }) |
| | | if (res.data.count == 1) { |
| | | setLoginData(data) |
| | | setUserInfo(res.data.data[0]) |
| | | uni.setStorageSync('HUserName', res.data.data[0].Czymc); |
| | | uni.setStorageSync('HBillerID', res.data.data[0].HK3UserID); |
| | | uni.setStorageSync('SourceFlag', false); |
| | | uni.setStorageSync('login', "login"); |
| | | uni.setStorageSync('Organization', this.Organization); |
| | | uni.setStorageSync('OrganizationID', this.HOrgName); |
| | | this.CommonUtils.setServerUrl(this.serverUrl) |
| | | uni.reLaunch({ |
| | | url: '/pages/index/index' |
| | | }) |
| | | } |
| | | }, |
| | | fail: (res) => { |
| | | console.log(res); |
| | | uni.hideLoading() |
| | | uni.showToast({ |
| | | title: '接口请求失败', |
| | | icon: 'none' |
| | | }) |
| | | }, |
| | | }); |
| | | |
| | | // uni.request({ |
| | | // url: this.serverUrl + '/Web/GetUser', |
| | | // method: 'GET', |
| | | // data: data, |
| | | // success: (res) => { |
| | | // console.log(res) |
| | | // uni.hideLoading() |
| | | // uni.showToast({ |
| | | // title: res.data.Message, |
| | | // icon: 'none' |
| | | // }) |
| | | // if (res.data.count == 1) { |
| | | // setLoginData(data) |
| | | // setUserInfo(res.data.data[0]) |
| | | // uni.setStorageSync('HUserName', res.data.data[0].Czymc); |
| | | // uni.setStorageSync('HBillerID', res.data.data[0].HK3UserID); |
| | | // uni.setStorageSync('SourceFlag', false); |
| | | // uni.setStorageSync('login', "login"); |
| | | // uni.setStorageSync('Organization', this.Organization); |
| | | // uni.setStorageSync('OrganizationID', this.HOrgName); |
| | | // this.CommonUtils.setServerUrl(this.serverUrl) |
| | | // uni.reLaunch({ |
| | | // url: '/pages/index/index' |
| | | // }) |
| | | // } |
| | | // }, |
| | | // fail: (res) => { |
| | | // console.log(res); |
| | | // uni.hideLoading() |
| | | // uni.showToast({ |
| | | // title: '接口请求失败', |
| | | // icon: 'none' |
| | | // }) |
| | | // }, |
| | | // }); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .bg-img{ |
| | | position: fixed; |
| | | width: 100%; |
| | | height: 100%; |
| | | top: 0; |
| | | left: 0; |
| | | z-index: -1; |
| | | } |
| | | .container{ |
| | | width: 100%; |
| | | height: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | .title{ |
| | | margin-top: 174rpx; |
| | | font-size: 47rpx; |
| | | font-weight: bold; |
| | | color: #FFFFFF; |
| | | } |
| | | .box{ |
| | | width: 682rpx; |
| | | position: relative; |
| | | top: 120rpx; |
| | | display: flex; |
| | | justify-content: center; |
| | | .logo{ |
| | | width: 155rpx; |
| | | height: 155rpx; |
| | | padding: 10rpx; |
| | | position: absolute; |
| | | z-index: 9; |
| | | background-color: rgba(255, 255, 255, 0.5); |
| | | border-radius: 100%; |
| | | image{ |
| | | width: 100%; |
| | | height: 100%; |
| | | border-radius: 100%; |
| | | background-color: #f0f3f7; |
| | | } |
| | | } |
| | | .login{ |
| | | width: 100%; |
| | | height: 480rpx; |
| | | position: absolute; |
| | | top: 90rpx; |
| | | z-index: 0; |
| | | background: #FFFFFF; |
| | | border-radius: 25rpx 0 25rpx 0; |
| | | box-shadow: 0 6rpx 24rpx 8rpx rgba(21, 99, 210, 0.14); |
| | | padding-top: 160rpx; |
| | | .item{ |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: flex-end; |
| | | margin-right: 38rpx; |
| | | margin-bottom: 70rpx; |
| | | .left{ |
| | | font-size: 34rpx; |
| | | font-weight: 400; |
| | | color: #3C3C3C; |
| | | } |
| | | .right{ |
| | | width: 441rpx; |
| | | height: 68rpx; |
| | | background: #EBEBEB; |
| | | border-radius: 10rpx; |
| | | input{ |
| | | height: 100%; |
| | | padding: 0 30rpx; |
| | | font-size: 30rpx; |
| | | } |
| | | } |
| | | } |
| | | // .api{ |
| | | // margin-left: 30rpx; |
| | | // font-size: 27rpx; |
| | | // color: #888; |
| | | // } |
| | | // .apibtn{ |
| | | // text-align: center; |
| | | // font-size: 27rpx; |
| | | // margin-top: 14rpx; |
| | | // color: #066fb8; |
| | | // text-decoration: underline; /* 添加下划线 */ |
| | | // font-style: italic; /* 将字体变为斜体 */ |
| | | // } |
| | | } |
| | | } |
| | | .btn{ |
| | | width: 540rpx; |
| | | height: 92rpx; |
| | | line-height: 92rpx; |
| | | margin-top: 940rpx; |
| | | background: #78CEFD; |
| | | box-shadow: 0rpx 0rpx 44rpx 7rpx rgba(120,206,253,0.3); |
| | | border-radius: 10rpx; |
| | | font-weight: 400; |
| | | color: #FEFEFE; |
| | | text-align: center; |
| | | font-size: 36rpx; |
| | | } |
| | | .apibtn{ |
| | | margin-top: 50rpx; |
| | | background: #eec18e; |
| | | box-shadow: 0rpx 0rpx 44rpx 7rpx rgba(253, 186, 118, 0.3); |
| | | } |
| | | } |
| | | </style> |
| | | .bg-img { |
| | | position: fixed; |
| | | width: 100%; |
| | | height: 100%; |
| | | top: 0; |
| | | left: 0; |
| | | z-index: -1; |
| | | } |
| | | |
| | | .container { |
| | | width: 100%; |
| | | height: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | |
| | | .title { |
| | | margin-top: 174rpx; |
| | | font-size: 47rpx; |
| | | font-weight: bold; |
| | | color: #FFFFFF; |
| | | } |
| | | |
| | | .box { |
| | | width: 682rpx; |
| | | position: relative; |
| | | top: 120rpx; |
| | | display: flex; |
| | | justify-content: center; |
| | | |
| | | .logo { |
| | | width: 155rpx; |
| | | height: 155rpx; |
| | | padding: 10rpx; |
| | | position: absolute; |
| | | z-index: 9; |
| | | background-color: rgba(255, 255, 255, 0.5); |
| | | border-radius: 100%; |
| | | |
| | | image { |
| | | width: 100%; |
| | | height: 100%; |
| | | border-radius: 100%; |
| | | background-color: #f0f3f7; |
| | | } |
| | | } |
| | | |
| | | .login { |
| | | width: 100%; |
| | | height: 480rpx; |
| | | position: absolute; |
| | | top: 90rpx; |
| | | z-index: 0; |
| | | background: #FFFFFF; |
| | | border-radius: 25rpx 0 25rpx 0; |
| | | box-shadow: 0 6rpx 24rpx 8rpx rgba(21, 99, 210, 0.14); |
| | | padding-top: 160rpx; |
| | | |
| | | .item { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: flex-end; |
| | | margin-right: 38rpx; |
| | | margin-bottom: 70rpx; |
| | | |
| | | .left { |
| | | font-size: 34rpx; |
| | | font-weight: 400; |
| | | color: #3C3C3C; |
| | | } |
| | | |
| | | .right { |
| | | width: 441rpx; |
| | | height: 68rpx; |
| | | background: #EBEBEB; |
| | | border-radius: 10rpx; |
| | | |
| | | input { |
| | | height: 100%; |
| | | padding: 0 30rpx; |
| | | font-size: 30rpx; |
| | | } |
| | | } |
| | | } |
| | | |
| | | // .api{ |
| | | // margin-left: 30rpx; |
| | | // font-size: 27rpx; |
| | | // color: #888; |
| | | // } |
| | | // .apibtn{ |
| | | // text-align: center; |
| | | // font-size: 27rpx; |
| | | // margin-top: 14rpx; |
| | | // color: #066fb8; |
| | | // text-decoration: underline; /* 添加下划线 */ |
| | | // font-style: italic; /* 将字体变为斜体 */ |
| | | // } |
| | | } |
| | | } |
| | | |
| | | .btn { |
| | | width: 540rpx; |
| | | height: 92rpx; |
| | | line-height: 92rpx; |
| | | margin-top: 940rpx; |
| | | background: #78CEFD; |
| | | box-shadow: 0rpx 0rpx 44rpx 7rpx rgba(120, 206, 253, 0.3); |
| | | border-radius: 10rpx; |
| | | font-weight: 400; |
| | | color: #FEFEFE; |
| | | text-align: center; |
| | | font-size: 36rpx; |
| | | } |
| | | |
| | | .apibtn { |
| | | margin-top: 50rpx; |
| | | background: #eec18e; |
| | | box-shadow: 0rpx 0rpx 44rpx 7rpx rgba(253, 186, 118, 0.3); |
| | | } |
| | | } |
| | | |
| | | .popup-content { |
| | | box-sizing: border-box; |
| | | display: flex; |
| | | flex-direction: column; |
| | | gap: 30rpx; |
| | | |
| | | .pop-item { |
| | | border: #EBEBEB 2rpx solid; |
| | | border-radius: 10rpx; |
| | | padding: 14rpx 8rpx; |
| | | } |
| | | |
| | | >picker { |
| | | background-color: #EBEBEB; |
| | | } |
| | | } |
| | | </style> |