1- import { Result } from '@/request/Result'
2- import { get , post } from '@/request/index'
3- import type { LoginRequest } from '@/api/type/login'
4- import type { Ref } from 'vue'
1+ import { Result } from '@/request/Result'
2+ import { get , post } from '@/request/index'
3+ import type { LoginRequest } from '@/api/type/login'
4+ import type { Ref } from 'vue'
5+ import type { User } from "@/api/type/user.ts" ;
6+
57/**
68 * 登录
79 * @param request 登录接口请求表单
@@ -15,6 +17,23 @@ const login: (request: LoginRequest, loading?: Ref<boolean>) => Promise<Result<a
1517 return post ( '/user/login' , request , undefined , loading )
1618}
1719
20+ const ldapLogin : ( request : LoginRequest , loading ?: Ref < boolean > ) => Promise < Result < any > > = (
21+ request ,
22+ loading ,
23+ ) => {
24+ return post ( '/ldap/login' , request , undefined , loading )
25+ }
26+
27+
28+ /**
29+ * 登出
30+ * @param loading 接口加载器
31+ * @returns
32+ */
33+ const logout : ( loading ?: Ref < boolean > ) => Promise < Result < boolean > > = ( loading ) => {
34+ return post ( '/user/logout' , undefined , undefined , loading )
35+ }
36+
1837/**
1938 * 获取验证码
2039 * @param loading 接口加载器
@@ -23,7 +42,75 @@ const getCaptcha: (loading?: Ref<boolean>) => Promise<Result<any>> = (loading) =
2342 return get ( '/user/captcha' , undefined , loading )
2443}
2544
45+ /**
46+ * 获取登录方式
47+ */
48+ const getAuthType : ( loading ?: Ref < boolean > ) => Promise < Result < any > > = ( loading ) => {
49+ return get ( 'auth/types' , undefined , loading )
50+ }
51+
52+ /**
53+ * 获取二维码类型
54+ */
55+ const getQrType : ( loading ?: Ref < boolean > ) => Promise < Result < any > > = ( loading ) => {
56+ return get ( 'qr_type' , undefined , loading )
57+ }
58+
59+ const getQrSource : ( loading ?: Ref < boolean > ) => Promise < Result < any > > = ( loading ) => {
60+ return get ( 'qr_type/source' , undefined , loading )
61+ }
62+
63+ const getDingCallback : ( code : string , loading ?: Ref < boolean > ) => Promise < Result < any > > = (
64+ code ,
65+ loading
66+ ) => {
67+ return get ( 'dingtalk' , { code} , loading )
68+ }
69+
70+ const getDingOauth2Callback : ( code : string , loading ?: Ref < boolean > ) => Promise < Result < any > > = (
71+ code ,
72+ loading
73+ ) => {
74+ return get ( 'dingtalk/oauth2' , { code} , loading )
75+ }
76+
77+ const getWecomCallback : ( code : string , loading ?: Ref < boolean > ) => Promise < Result < any > > = (
78+ code ,
79+ loading
80+ ) => {
81+ return get ( 'wecom' , { code} , loading )
82+ }
83+ const getLarkCallback : ( code : string , loading ?: Ref < boolean > ) => Promise < Result < any > > = (
84+ code ,
85+ loading
86+ ) => {
87+ return get ( 'lark/oauth2' , { code} , loading )
88+ }
89+
90+ /**
91+ * 设置语言
92+ * data: {
93+ * "language": "string"
94+ * }
95+ */
96+ const postLanguage : ( data : any , loading ?: Ref < boolean > ) => Promise < Result < User > > = (
97+ data ,
98+ loading
99+ ) => {
100+ return post ( '/user/language' , data , undefined , loading )
101+ }
102+
26103export default {
27104 login,
105+ logout,
28106 getCaptcha,
107+ getAuthType,
108+ getDingCallback,
109+ getQrType,
110+ getWecomCallback,
111+ postLanguage,
112+ getDingOauth2Callback,
113+ getLarkCallback,
114+ getQrSource,
115+ ldapLogin
29116}
0 commit comments