Skip to content
项目
群组
代码片段
帮助
正在加载...
登录/注册
切换导航
广
广东建设用地-前端
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
广东建设用地
广东建设用地-前端
Commits
b144a8f6
提交
b144a8f6
authored
7月 22, 2024
作者:
jinrb
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
新增粤政易账号登录
上级
a9bfd966
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
112 行增加
和
20 行删除
+112
-20
user.ts
src/api/sys/user.ts
+12
-0
user.ts
src/store/modules/user.ts
+22
-1
MiniLogin.vue
src/views/system/loginmini/MiniLogin.vue
+78
-19
没有找到文件。
src/api/sys/user.ts
浏览文件 @
b144a8f6
...
...
@@ -12,6 +12,7 @@ import { PageEnum } from '/@/enums/pageEnum';
const
{
createErrorModal
}
=
useMessage
();
enum
Api
{
Login
=
'/sys/login'
,
yzyLogin
=
'/sys/yzyLogin'
,
phoneLogin
=
'/sys/phoneLogin'
,
Logout
=
'/sys/logout'
,
GetUserInfo
=
'/sys/user/getUserInfo'
,
...
...
@@ -62,6 +63,17 @@ export function loginApi(params: LoginParams, mode: ErrorMessageMode = 'modal')
}
);
}
export
function
yzyLoginApi
(
params
:
LoginParams
,
mode
:
ErrorMessageMode
=
'modal'
)
{
return
defHttp
.
post
<
LoginResultModel
>
(
{
url
:
Api
.
yzyLogin
,
params
,
},
{
errorMessageMode
:
mode
,
}
);
}
/**
* @description: user phoneLogin api
...
...
src/store/modules/user.ts
浏览文件 @
b144a8f6
...
...
@@ -7,7 +7,7 @@ import { PageEnum } from '/@/enums/pageEnum';
import
{
ROLES_KEY
,
TOKEN_KEY
,
USER_INFO_KEY
,
LOGIN_INFO_KEY
,
DB_DICT_DATA_KEY
,
TENANT_ID
}
from
'/@/enums/cacheEnum'
;
import
{
getAuthCache
,
setAuthCache
,
removeAuthCache
}
from
'/@/utils/auth'
;
import
{
GetUserInfoModel
,
LoginParams
,
ThirdLoginParams
}
from
'/@/api/sys/model/userModel'
;
import
{
doLogout
,
getUserInfo
,
loginApi
,
phoneLoginApi
,
thirdLogin
,
codeLogin
,
bindYzy
}
from
'/@/api/sys/user'
;
import
{
doLogout
,
getUserInfo
,
loginApi
,
yzyLoginApi
,
phoneLoginApi
,
thirdLogin
,
codeLogin
,
bindYzy
}
from
'/@/api/sys/user'
;
import
{
useI18n
}
from
'/@/hooks/web/useI18n'
;
import
{
useMessage
}
from
'/@/hooks/web/useMessage'
;
import
{
router
}
from
'/@/router'
;
...
...
@@ -132,6 +132,27 @@ export const useUserStore = defineStore({
return
Promise
.
reject
(
error
);
}
},
/**
* 粤政易登录事件
*/
async
yzylogin
(
params
:
LoginParams
&
{
goHome
?:
boolean
;
mode
?:
ErrorMessageMode
;
}
):
Promise
<
GetUserInfoModel
|
null
>
{
try
{
const
{
goHome
=
true
,
mode
,
...
loginParams
}
=
params
;
const
data
=
await
yzyLoginApi
(
loginParams
,
mode
);
const
{
token
,
userInfo
}
=
data
;
// save token
this
.
setToken
(
token
);
// this.setTenant(userInfo.loginTenantId);
return
this
.
afterLoginAction
(
goHome
,
data
);
}
catch
(
error
)
{
return
Promise
.
reject
(
error
);
}
},
/**
* 扫码登录事件
*/
...
...
src/views/system/loginmini/MiniLogin.vue
浏览文件 @
b144a8f6
...
...
@@ -9,10 +9,13 @@
</div>
<div
class=
"aui-form"
>
<div
class=
"aui-formBox"
>
<div
class=
"aui-formWell"
>
<div
class=
"aui-flex aui-form-nav investment_title"
>
<a-tabs
v-model:activeKey=
"activeKey"
@
change=
"changeTab"
>
<a-tab-pane
key=
"1"
tab=
"建设用地账号登录"
>
<!--
<div
class=
"aui-flex aui-form-nav investment_title"
>
<div
class=
"aui-flex-box"
>
{{
t
(
'sys.login.signInFormTitle'
)
}}
</div>
</div>
</div>
-->
<div
class=
"aui-form-box"
style=
"height: 260px"
>
<a-form
ref=
"loginRef"
:model=
"formData"
v-if=
"activeIndex === 'accountLogin'"
@
keyup
.
enter
.
native=
"loginHandleClick"
>
<div
class=
"aui-account"
>
...
...
@@ -40,6 +43,32 @@
</div>
</a-form>
</div>
</a-tab-pane>
<a-tab-pane
key=
"2"
tab=
"粤政易账号登录"
>
<!--
<div
class=
"aui-flex aui-form-nav investment_title"
>
<div
class=
"aui-flex-box"
>
{{
t
(
'sys.login.signInFormTitle'
)
}}
</div>
</div>
-->
<div
class=
"aui-form-box"
style=
"height: 260px"
>
<a-form
ref=
"loginRef"
:model=
"formData"
v-if=
"activeIndex === 'accountLogin'"
@
keyup
.
enter
.
native=
"loginHandleClick"
>
<div
class=
"aui-account"
>
<div
class=
"aui-inputClear"
>
<i
class=
"icon icon-code"
></i>
<a-form-item>
<a-input
class=
"fix-auto-fill"
:placeholder=
"t('sys.login.userName')"
v-model:value=
"formData.username"
/>
</a-form-item>
</div>
<div
class=
"aui-inputClear"
>
<i
class=
"icon icon-password"
></i>
<a-form-item>
<a-input-password
class=
"fix-auto-fill"
:placeholder=
"t('sys.login.password')"
v-model:value=
"formData.password"
/>
</a-form-item>
</div>
</div>
</a-form>
</div>
</a-tab-pane>
</a-tabs>
<!-- 登录按钮 -->
<div
class=
"aui-formButton"
>
<div
class=
"aui-flex"
>
...
...
@@ -87,6 +116,7 @@
url
:
''
,
});
//手机登录表单字段
const
activeKey
=
ref
(
'1'
);
const
loginRef
=
ref
();
...
...
@@ -98,6 +128,15 @@
},
});
function
changeTab
()
{
formData
.
value
=
{
inputCode
:
''
,
username
:
''
,
password
:
''
,
url
:
''
,
}
}
/**
* 获取验证码
*/
...
...
@@ -128,24 +167,44 @@
}
try
{
loginLoading
.
value
=
true
;
const
{
userInfo
}:
any
=
await
userStore
.
login
(
toRaw
({
password
:
RsaParams
(
formData
.
password
),
username
:
RsaParams
(
formData
.
username
),
url
:
RsaParams
(
formData
.
url
),
captcha
:
formData
.
inputCode
,
checkKey
:
randCodeData
.
checkKey
,
mode
:
'none'
,
//不要默认的错误提示
})
);
if
(
userInfo
)
{
userStore
.
setUserInfo
(
userInfo
);
notification
.
success
({
message
:
t
(
'sys.login.loginSuccessTitle'
),
description
:
`
${
t
(
'sys.login.loginSuccessDesc'
)}
:
${
userInfo
.
realname
}
`
,
duration
:
3
,
});
if
(
activeKey
.
value
==
'1'
)
{
const
{
userInfo
}:
any
=
await
userStore
.
login
(
toRaw
({
password
:
RsaParams
(
formData
.
password
),
username
:
RsaParams
(
formData
.
username
),
url
:
RsaParams
(
formData
.
url
),
captcha
:
formData
.
inputCode
,
checkKey
:
randCodeData
.
checkKey
,
mode
:
'none'
,
//不要默认的错误提示
})
);
if
(
userInfo
)
{
userStore
.
setUserInfo
(
userInfo
);
notification
.
success
({
message
:
t
(
'sys.login.loginSuccessTitle'
),
description
:
`
${
t
(
'sys.login.loginSuccessDesc'
)}
:
${
userInfo
.
realname
}
`
,
duration
:
3
,
});
}
}
else
{
const
{
userInfo
}:
any
=
await
userStore
.
yzylogin
(
toRaw
({
password
:
RsaParams
(
formData
.
password
),
username
:
RsaParams
(
formData
.
username
),
mode
:
'none'
,
//不要默认的错误提示
})
);
if
(
userInfo
)
{
userStore
.
setUserInfo
(
userInfo
);
notification
.
success
({
message
:
t
(
'sys.login.loginSuccessTitle'
),
description
:
`
${
t
(
'sys.login.loginSuccessDesc'
)}
:
${
userInfo
.
realname
}
`
,
duration
:
3
,
});
}
}
}
catch
(
error
:
any
)
{
notification
.
error
({
message
:
t
(
'sys.api.errorTip'
),
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论