From e843aabbda5e8761b6a8af0fe85119bdcf5b3fe8 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 25 十二月 2020 15:09:06 +0800 Subject: [PATCH] bms 登录 --- src/views/login/index.jsx | 85 +++++++++++++++++++++++++++++------------- 1 files changed, 58 insertions(+), 27 deletions(-) diff --git a/src/views/login/index.jsx b/src/views/login/index.jsx index 727768a..ab058ec 100644 --- a/src/views/login/index.jsx +++ b/src/views/login/index.jsx @@ -85,18 +85,18 @@ // 鐧诲綍鎻愪氦 let res = await Api.getusermsg(param.username, param.password) if (res.status) { - sessionStorage.setItem('UserID', res.UserID) - sessionStorage.setItem('LoginUID', res.LoginUID) - sessionStorage.setItem('User_Name', res.UserName) - sessionStorage.setItem('Full_Name', res.FullName) - sessionStorage.setItem('avatar', res.icon || '') - sessionStorage.setItem('dataM', res.dataM ? 'true' : '') - sessionStorage.setItem('localDataM', res.dataM ? 'true' : '') - sessionStorage.setItem('debug', res.debug || '') - sessionStorage.setItem('role_id', res.role_id || '') - sessionStorage.setItem('localRole_id', res.role_id || '') + localStorage.setItem('UserID', res.UserID) + localStorage.setItem('LoginUID', res.LoginUID) + localStorage.setItem('User_Name', res.UserName) + localStorage.setItem('Full_Name', res.FullName) + localStorage.setItem('avatar', res.icon || '') + localStorage.setItem('dataM', res.dataM ? 'true' : '') + localStorage.setItem('localDataM', res.dataM ? 'true' : '') + localStorage.setItem('debug', res.debug || '') + localStorage.setItem('role_id', res.role_id || '') + localStorage.setItem('localRole_id', res.role_id || '') - localStorage.setItem('lang', param.lang || 'zh-CN') + localStorage.setItem('lang', 'zh-CN') let _url = window.location.href.split('#')[0] @@ -106,19 +106,51 @@ localStorage.removeItem(_url) } - // if (this.props.location.state && this.props.location.state.from.pathname) { - // // 鏌ョ湅鏄惁涓哄叾浠栭〉闈㈣烦杞紝璺緞瀛樺湪鏃讹紝璺冲洖鍘熼〉闈� - // this.props.history.replace(this.props.location.state.from.pathname) - // } - - let _history = sessionStorage.getItem('history') - if (_history) { - sessionStorage.removeItem('history') - // 鏌ョ湅鏄惁涓哄叾浠栭〉闈㈣烦杞紝璺緞瀛樺湪鏃讹紝璺冲洖鍘熼〉闈� - this.props.history.replace(_history) - } else { - this.props.history.replace('/main') + let _param = { + UserName: param.username, + Password: param.password, + BasePath: '/' } + + localStorage.setItem('bmsSystem', param.system) + + if (param.system !== 'new') { + Api.loginAndRedirect(_param).then(result => { + if (result.IsError) { + this.setState({ + isDisabled: false + }) + message.warning('鐧诲綍澶辫触,鐢ㄦ埛鍚嶆垨瀵嗙爜閿欒!') + } else { + if (process.env.NODE_ENV === 'production') { + window.location.replace(document.location.origin + '/Home/Index') + } else { + window.location.replace(window.GLOB.location + '/Home/Index') + } + } + }) + } else { + sessionStorage.setItem('UserID', res.UserID) + sessionStorage.setItem('LoginUID', res.LoginUID) + sessionStorage.setItem('User_Name', res.UserName) + sessionStorage.setItem('Full_Name', res.FullName) + sessionStorage.setItem('avatar', res.icon || '') + sessionStorage.setItem('dataM', res.dataM ? 'true' : '') + sessionStorage.setItem('localDataM', res.dataM ? 'true' : '') + sessionStorage.setItem('debug', res.debug || '') + sessionStorage.setItem('role_id', res.role_id || '') + sessionStorage.setItem('localRole_id', res.role_id || '') + + let _history = sessionStorage.getItem('history') + if (_history) { + sessionStorage.removeItem('history') + // 鏌ョ湅鏄惁涓哄叾浠栭〉闈㈣烦杞紝璺緞瀛樺湪鏃讹紝璺冲洖鍘熼〉闈� + this.props.history.replace(_history) + } else { + this.props.history.replace('/main') + } + } + } else if (res.ErrCode === 'Need_Get_Appkey' && options.sysType === 'SSO') { message.warning('搴旂敤灏氭湭鍒涘缓锛岃鍚戜簯绔悓姝ュ簲鐢紒') @@ -463,15 +495,14 @@ } render () { - const { lineColor, bgImage, loginlogo, copyRight, webSite, ICP, loginWays, touristLogin } = this.state + const { lineColor, loginlogo, bgImage, copyRight, webSite, ICP, loginWays, touristLogin } = this.state return ( - <div className="login-container" style={bgImage ? {backgroundImage: 'url(' + bgImage + ')'} : {}}> + <div className="login-container"> <div className="logo" style={lineColor ? {borderColor: lineColor} : {}}> {loginlogo ? <img src={loginlogo} alt=""/> : null} - {this.state.platName ? <p className="plat-name">{this.state.platName}</p> : null} </div> - <div className="login-middle" style={lineColor ? {borderColor: lineColor} : {}}> + <div className="login-middle" style={bgImage ? {backgroundImage: 'url(' + bgImage + ')'} : null}> {loginWays ? <LoginForm platName={this.state.platName} dict={this.state.dict} -- Gitblit v1.8.0