jmash-core-mp 0.1.7 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/.editorconfig +9 -9
  2. package/README.md +60 -60
  3. package/babel.config.json +34 -34
  4. package/eslint.config.mjs +7 -7
  5. package/lib/api/auth/index.d.ts +21 -21
  6. package/lib/api/auth/index.js +187 -187
  7. package/lib/api/auth/types.d.ts +86 -86
  8. package/lib/api/auth/types.js +9 -9
  9. package/lib/api/cms/index.d.ts +9 -9
  10. package/lib/api/cms/index.js +42 -42
  11. package/lib/api/cms/types.d.ts +72 -72
  12. package/lib/api/cms/types.js +1 -1
  13. package/lib/api/constant.d.ts +5 -5
  14. package/lib/api/constant.js +6 -6
  15. package/lib/api/dict/index.d.ts +18 -18
  16. package/lib/api/dict/index.js +34 -34
  17. package/lib/api/dict/types.d.ts +28 -28
  18. package/lib/api/dict/types.js +1 -1
  19. package/lib/api/dicts.d.ts +18 -18
  20. package/lib/api/dicts.js +67 -67
  21. package/lib/api/files/index.d.ts +25 -25
  22. package/lib/api/files/index.js +131 -131
  23. package/lib/api/files/types.d.ts +38 -38
  24. package/lib/api/files/types.js +1 -1
  25. package/lib/api/index.d.ts +4 -4
  26. package/lib/api/index.js +6 -6
  27. package/lib/api/myorgan/types.d.ts +22 -22
  28. package/lib/api/myorgan/types.js +1 -1
  29. package/lib/api/region/index.d.ts +7 -7
  30. package/lib/api/region/index.js +19 -19
  31. package/lib/api/region/types.d.ts +19 -19
  32. package/lib/api/region/types.js +1 -1
  33. package/lib/api/types.d.ts +14 -14
  34. package/lib/api/types.js +1 -1
  35. package/lib/index.d.ts +13 -13
  36. package/lib/index.js +11 -11
  37. package/lib/store/user.d.ts +31 -31
  38. package/lib/store/user.js +224 -224
  39. package/lib/types/core.d.ts +41 -21
  40. package/lib/types/core.js +1 -1
  41. package/lib/utils/config.d.ts +3 -3
  42. package/lib/utils/config.js +30 -30
  43. package/lib/utils/db.d.ts +21 -21
  44. package/lib/utils/db.js +84 -84
  45. package/lib/utils/grpc.d.ts +5 -5
  46. package/lib/utils/grpc.js +20 -20
  47. package/lib/utils/net.d.ts +7 -7
  48. package/lib/utils/net.js +15 -15
  49. package/lib/utils/request.d.ts +2 -2
  50. package/lib/utils/request.js +122 -122
  51. package/mpx.config.js +27 -27
  52. package/package.json +1 -1
  53. package/postcss.config.js +11 -11
  54. package/project.config.json +24 -24
  55. package/project.private.config.json +13 -13
  56. package/public/index.html +15 -15
  57. package/src/api/auth/index.ts +215 -215
  58. package/src/api/auth/types.ts +166 -166
  59. package/src/api/cms/index.ts +58 -58
  60. package/src/api/cms/types.ts +137 -137
  61. package/src/api/constant.ts +6 -6
  62. package/src/api/dict/index.ts +44 -44
  63. package/src/api/dict/types.ts +49 -49
  64. package/src/api/dicts.ts +72 -72
  65. package/src/api/files/index.ts +159 -159
  66. package/src/api/files/types.ts +67 -67
  67. package/src/api/index.ts +11 -11
  68. package/src/api/myorgan/types.ts +42 -42
  69. package/src/api/region/index.ts +23 -23
  70. package/src/api/region/types.ts +36 -36
  71. package/src/api/types.ts +19 -19
  72. package/src/app.mpx +72 -72
  73. package/src/components/auth-user/jmash-logout.mpx +91 -91
  74. package/src/components/auth-user/jmash-update-user.mpx +381 -381
  75. package/src/components/auth-user/jmash-update-user.web.mpx +365 -365
  76. package/src/components/auth-user/jmash-user.mpx +345 -345
  77. package/src/components/common/jmash-avatar-edit.mpx +153 -153
  78. package/src/components/common/jmash-cascader-region.mpx +112 -112
  79. package/src/components/common/jmash-menu.mpx +129 -129
  80. package/src/components/common/jmash-none-data.mpx +77 -77
  81. package/src/components/common/jmash-pic-swiper.mpx +71 -71
  82. package/src/components/common/jmash-popup.mpx +137 -137
  83. package/src/components/common/jmash-search.mpx +126 -126
  84. package/src/components/common/jmash-single-btn.mpx +53 -53
  85. package/src/components/common/jmash-stepper.mpx +214 -214
  86. package/src/components/common/jmash-tab-bar.mpx +50 -50
  87. package/src/components/common/jmash-textarea.mpx +88 -88
  88. package/src/components/common/jmash-top-navigation.mpx +199 -199
  89. package/src/components/common/jmash-upload-picture.mpx +170 -170
  90. package/src/components/core/jmash-cms-protocol.mpx +66 -66
  91. package/src/components/core/jmash-login.ali.mpx +284 -284
  92. package/src/components/core/jmash-login.mpx +348 -348
  93. package/src/components/core/jmash-login.web.mpx +421 -421
  94. package/src/components/core/jmash-popup-login.ali.mpx +311 -311
  95. package/src/components/core/jmash-popup-login.mpx +415 -415
  96. package/src/components/core/jmash-popup-login.web.mpx +389 -389
  97. package/src/custom-tab-bar/index.mpx +10 -10
  98. package/src/global.d.ts +11 -11
  99. package/src/index.ts +13 -13
  100. package/src/packages/index.mpx +8 -8
  101. package/src/packages/pages/auth/cms-protocol.mpx +30 -30
  102. package/src/packages/pages/auth/login.mpx +58 -58
  103. package/src/packages/pages/auth/update-user.mpx +17 -17
  104. package/src/pages/basic-component.mpx +30 -30
  105. package/src/pages/half-home.mpx +58 -58
  106. package/src/pages/home.mpx +43 -43
  107. package/src/pages/index.mpx +43 -43
  108. package/src/pages/tabbar/home.mpx +71 -71
  109. package/src/pages/tabbar/my.mpx +80 -80
  110. package/src/store/user.ts +268 -268
  111. package/src/styles/index.scss +20 -46
  112. package/src/styles/vars.scss +27 -0
  113. package/src/types/core.ts +70 -41
  114. package/src/utils/config.ts +31 -31
  115. package/src/utils/db.ts +100 -100
  116. package/src/utils/grpc.ts +21 -21
  117. package/src/utils/net.ts +18 -18
  118. package/src/utils/request.ts +134 -134
  119. package/static/ali/mini.project.json +4 -4
  120. package/static/dd/project.config.json +15 -15
  121. package/static/swan/project.swan.json +14 -14
  122. package/static/tt/project.config.json +11 -11
  123. package/static/wx/project.config.json +40 -40
  124. package/uno.config.js +9 -9
  125. package/lib/app.mpx.d.ts +0 -1
  126. package/lib/components/auth-user/jmash-update-user.mpx.d.ts +0 -1
  127. package/lib/components/auth-user/jmash-user.mpx.d.ts +0 -1
  128. package/lib/components/core/jmash-login.mpx.d.ts +0 -1
  129. package/src/components/common/auth-search.mpx +0 -31
package/.editorconfig CHANGED
@@ -1,9 +1,9 @@
1
- root = true
2
-
3
- [*]
4
- charset = utf-8
5
- indent_style = space
6
- indent_size = 2
7
- end_of_line = lf
8
- insert_final_newline = true
9
- trim_trailing_whitespace = true
1
+ root = true
2
+
3
+ [*]
4
+ charset = utf-8
5
+ indent_style = space
6
+ indent_size = 2
7
+ end_of_line = lf
8
+ insert_final_newline = true
9
+ trim_trailing_whitespace = true
package/README.md CHANGED
@@ -1,60 +1,60 @@
1
- # jmash-core-mp
2
-
3
- 采用 MPX 构建的 Jmash 高性能跨端小程序。
4
- https://mpxjs.cn/
5
-
6
- ## Project setup
7
-
8
- ```javascript
9
- // 开发构建,默认输出微信小程序
10
- npm run serve
11
-
12
- // 开发构建,跨平台输出支付宝小程序
13
- npm run serve:ali
14
-
15
- // 开发构建,跨平台输出 Web
16
- npm run serve:web
17
-
18
- // 开发构建,跨平台输出其他平台小程序target = swan|tt|qq|jd|ks
19
- npm run serve -- --targets={target}
20
-
21
- // 开发构建,同时输出多平台产物
22
- npm run serve -- --targets=wx,ali,web
23
-
24
- // 生产构建,默认输出微信小程序
25
- npm run build
26
-
27
- // 生产构建,跨平台输出
28
- npm run build:ali
29
- npm run build:web
30
- npm run build -- --targets=wx,ali,web
31
- ```
32
-
33
- # ALi 小程序
34
-
35
- 登录
36
- minidev login
37
-
38
- 调试开发
39
- minidev dev
40
-
41
- 本地 IP 调试
42
- minidev dev --host 192.168.1.154
43
-
44
- 真机调试
45
- minidev remote-debug -a 2021006137629651
46
-
47
- Web 端调试
48
- minidev dev
49
- web -a 2021006137629651
50
- 真机预览
51
- minidev preview -a 2021006137629651
52
-
53
- # pnpm publish --no-git-checks
54
-
55
- 官方镜像
56
- npm config set registry https://registry.npmjs.org/
57
- 国内镜像
58
- npm config set registry https://registry.npmmirror.com/
59
- 代理镜像
60
- npm config set registry https://npm.crenjoy.com/
1
+ # jmash-core-mp
2
+
3
+ 采用 MPX 构建的 Jmash 高性能跨端小程序。
4
+ https://mpxjs.cn/
5
+
6
+ ## Project setup
7
+
8
+ ```javascript
9
+ // 开发构建,默认输出微信小程序
10
+ npm run serve
11
+
12
+ // 开发构建,跨平台输出支付宝小程序
13
+ npm run serve:ali
14
+
15
+ // 开发构建,跨平台输出 Web
16
+ npm run serve:web
17
+
18
+ // 开发构建,跨平台输出其他平台小程序target = swan|tt|qq|jd|ks
19
+ npm run serve -- --targets={target}
20
+
21
+ // 开发构建,同时输出多平台产物
22
+ npm run serve -- --targets=wx,ali,web
23
+
24
+ // 生产构建,默认输出微信小程序
25
+ npm run build
26
+
27
+ // 生产构建,跨平台输出
28
+ npm run build:ali
29
+ npm run build:web
30
+ npm run build -- --targets=wx,ali,web
31
+ ```
32
+
33
+ # ALi 小程序
34
+
35
+ 登录
36
+ minidev login
37
+
38
+ 调试开发
39
+ minidev dev
40
+
41
+ 本地 IP 调试
42
+ minidev dev --host 192.168.1.154
43
+
44
+ 真机调试
45
+ minidev remote-debug -a 2021006137629651
46
+
47
+ Web 端调试
48
+ minidev dev
49
+ web -a 2021006137629651
50
+ 真机预览
51
+ minidev preview -a 2021006137629651
52
+
53
+ # pnpm publish --no-git-checks
54
+
55
+ 官方镜像
56
+ npm config set registry https://registry.npmjs.org/
57
+ 国内镜像
58
+ npm config set registry https://registry.npmmirror.com/
59
+ 代理镜像
60
+ npm config set registry https://npm.crenjoy.com/
package/babel.config.json CHANGED
@@ -1,34 +1,34 @@
1
- {
2
- "presets": [
3
- [
4
- "@babel/preset-env",
5
- {
6
- "modules": false,
7
- "shippedProposals": true
8
- }
9
- ],
10
- ],
11
- "plugins": [
12
- [
13
- "@babel/transform-runtime",
14
- {
15
- "corejs": 3,
16
- "version": "^7.10.4"
17
- }
18
- ],
19
- "@mpxjs/babel-plugin-inject-page-events",
20
- ],
21
- "sourceType": "unambiguous",
22
- "env": {
23
- "test": {
24
- "presets": [
25
- [
26
- "@babel/env",
27
- {
28
- "shippedProposals": true
29
- }
30
- ]
31
- ]
32
- }
33
- }
34
- }
1
+ {
2
+ "presets": [
3
+ [
4
+ "@babel/preset-env",
5
+ {
6
+ "modules": false,
7
+ "shippedProposals": true
8
+ }
9
+ ],
10
+ ],
11
+ "plugins": [
12
+ [
13
+ "@babel/transform-runtime",
14
+ {
15
+ "corejs": 3,
16
+ "version": "^7.10.4"
17
+ }
18
+ ],
19
+ "@mpxjs/babel-plugin-inject-page-events",
20
+ ],
21
+ "sourceType": "unambiguous",
22
+ "env": {
23
+ "test": {
24
+ "presets": [
25
+ [
26
+ "@babel/env",
27
+ {
28
+ "shippedProposals": true
29
+ }
30
+ ]
31
+ ]
32
+ }
33
+ }
34
+ }
package/eslint.config.mjs CHANGED
@@ -1,7 +1,7 @@
1
- import { mpxConfig } from '@mpxjs/eslint-config'
2
- export default mpxConfig(
3
- {
4
- mpx: true,
5
- typescript: true
6
- }
7
- )
1
+ import { mpxConfig } from '@mpxjs/eslint-config'
2
+ export default mpxConfig(
3
+ {
4
+ mpx: true,
5
+ typescript: true
6
+ }
7
+ )
@@ -1,21 +1,21 @@
1
- import { ResponseData } from "../../types/core";
2
- import type { LoginReq, LoginRes, RolesPerms, WebLoginReq, TokenModel, PhoneRegisterReq, PhoneReplaceReq, UpdateUserReq, UserInfoReq, UserInfo } from "./types";
3
- declare class AuthApi {
4
- mpLogin(data: LoginReq): Promise<ResponseData<LoginRes>>;
5
- mpPhoneRegister(data: PhoneRegisterReq): Promise<ResponseData<LoginRes>>;
6
- replaceBindphone(data: PhoneReplaceReq): Promise<ResponseData<string>>;
7
- webLogin(data: WebLoginReq): Promise<ResponseData<TokenModel>>;
8
- refreshToken(): Promise<ResponseData<TokenModel>>;
9
- userInfo(): Promise<ResponseData<UserInfo>>;
10
- userRolesPerms(): Promise<ResponseData<RolesPerms>>;
11
- allowRunAsUser(): Promise<ResponseData<any[]>>;
12
- runAsUser(userId: string): Promise<ResponseData<any>>;
13
- updateUser(data: any): Promise<ResponseData<any>>;
14
- updatePwd(encodeOldPwd: string, encodeNewPwd: string): Promise<ResponseData<any>>;
15
- deptTree(deptId?: string, tenant?: string): Promise<ResponseData<any[]>>;
16
- jobTree(jobId?: string, tenant?: string): Promise<ResponseData<any[]>>;
17
- updateUserInfo(data: UpdateUserReq): Promise<ResponseData<UserInfo>>;
18
- findUserInfo(data: UserInfoReq): Promise<ResponseData<UserInfo>>;
19
- }
20
- export declare const authApi: AuthApi;
21
- export {};
1
+ import { ResponseData } from "../../types/core";
2
+ import type { LoginReq, LoginRes, RolesPerms, WebLoginReq, TokenModel, PhoneRegisterReq, PhoneReplaceReq, UpdateUserReq, UserInfoReq, UserInfo } from "./types";
3
+ declare class AuthApi {
4
+ mpLogin(data: LoginReq): Promise<ResponseData<LoginRes>>;
5
+ mpPhoneRegister(data: PhoneRegisterReq): Promise<ResponseData<LoginRes>>;
6
+ replaceBindphone(data: PhoneReplaceReq): Promise<ResponseData<string>>;
7
+ webLogin(data: WebLoginReq): Promise<ResponseData<TokenModel>>;
8
+ refreshToken(): Promise<ResponseData<TokenModel>>;
9
+ userInfo(): Promise<ResponseData<UserInfo>>;
10
+ userRolesPerms(): Promise<ResponseData<RolesPerms>>;
11
+ allowRunAsUser(): Promise<ResponseData<any[]>>;
12
+ runAsUser(userId: string): Promise<ResponseData<any>>;
13
+ updateUser(data: any): Promise<ResponseData<any>>;
14
+ updatePwd(encodeOldPwd: string, encodeNewPwd: string): Promise<ResponseData<any>>;
15
+ deptTree(deptId?: string, tenant?: string): Promise<ResponseData<any[]>>;
16
+ jobTree(jobId?: string, tenant?: string): Promise<ResponseData<any[]>>;
17
+ updateUserInfo(data: UpdateUserReq): Promise<ResponseData<UserInfo>>;
18
+ findUserInfo(data: UserInfoReq): Promise<ResponseData<UserInfo>>;
19
+ }
20
+ export declare const authApi: AuthApi;
21
+ export {};
@@ -1,187 +1,187 @@
1
- import { OpensType } from "./types";
2
- import { db } from "../../utils/db";
3
- import { grpc } from "../../utils/grpc";
4
- import { config } from "../../utils/config";
5
- import mpx from "@mpxjs/core";
6
- class AuthApi {
7
- // 小程序静默登录
8
- mpLogin(data) {
9
- if (__mpx_mode__ === "wx") {
10
- data.opensType = OpensType.wechat;
11
- }
12
- if (__mpx_mode__ === "ali") {
13
- data.opensType = OpensType.ali_pay;
14
- }
15
- return mpx.xfetch.fetch({
16
- url: "/v1/front/rbac/miniapp_login/" + config.tenant,
17
- method: "POST",
18
- data,
19
- header: {
20
- "content-type": "application/json",
21
- Authorization: false,
22
- },
23
- });
24
- }
25
- // 手机号注册登录
26
- mpPhoneRegister(data) {
27
- if (__mpx_mode__ === "wx") {
28
- data.opensType = OpensType.wechat;
29
- }
30
- if (__mpx_mode__ === "ali") {
31
- data.opensType = OpensType.ali_pay;
32
- }
33
- return mpx.xfetch.fetch({
34
- url: "/v1/front/rbac/miniapp_phonenumber/" + config.tenant,
35
- method: "POST",
36
- data: data,
37
- header: {
38
- Authorization: false,
39
- },
40
- });
41
- }
42
- // 已登陆状态小程序更换绑定手机号
43
- replaceBindphone(data) {
44
- data.tenant = config.tenant;
45
- if (__mpx_mode__ === "wx") {
46
- data.opensType = OpensType.wechat;
47
- }
48
- if (__mpx_mode__ === "ali") {
49
- data.opensType = OpensType.ali_pay;
50
- }
51
- grpc.clearEmpty(data);
52
- return mpx.xfetch.fetch({
53
- url: "/v1/front/rbac/miniapp_bindphone",
54
- method: "POST",
55
- data: data,
56
- });
57
- }
58
- //web登录.
59
- webLogin(data) {
60
- data.tenant = config.tenant;
61
- data.directoryId = "user";
62
- data.clientId = config.appId ? config.appId : "h5";
63
- data.captchaId = "1";
64
- data.captchaCode = "1";
65
- return mpx.xfetch.fetch({
66
- url: "/v1/rbac/auth/login",
67
- method: "POST",
68
- data: data,
69
- header: {
70
- Authorization: false,
71
- },
72
- });
73
- }
74
- // 刷新token
75
- refreshToken() {
76
- return mpx.xfetch.fetch({
77
- url: "/v1/front/rbac/auth/refresh_token",
78
- method: "POST",
79
- data: {
80
- refreshToken: db.getRefreshToken(),
81
- tenant: config.tenant,
82
- clientId: config.appId,
83
- },
84
- header: { "content-type": "application/json" },
85
- });
86
- }
87
- // 获取当前会话用户
88
- userInfo() {
89
- return mpx.xfetch.fetch({
90
- url: "/v1/rbac/auth/user?tenant=" + config.tenant,
91
- method: "GET",
92
- });
93
- }
94
- // 当前用户角色权限
95
- userRolesPerms() {
96
- return mpx.xfetch.fetch({
97
- url: "/v1/rbac/auth/roles_perms?tenant=" + config.tenant,
98
- method: "GET",
99
- });
100
- }
101
- // 允许切换身份的用户列表
102
- allowRunAsUser() {
103
- return mpx.xfetch.fetch({
104
- url: "/v1/rbac/auth/allow_run_as_user?tenant=" + config.tenant,
105
- method: "GET",
106
- });
107
- }
108
- // 运行某种身份
109
- runAsUser(userId) {
110
- const data = {
111
- tenant: config.tenant,
112
- userId: userId,
113
- };
114
- return mpx.xfetch.fetch({
115
- url: "/v1/rbac/auth/run_as",
116
- method: "POST",
117
- data: data,
118
- });
119
- }
120
- // 更新用户
121
- updateUser(data) {
122
- return mpx.xfetch.fetch({
123
- url: "/v1/rbac/auth/user",
124
- method: "PATCH",
125
- data: data,
126
- });
127
- }
128
- // 修改密码
129
- updatePwd(encodeOldPwd, encodeNewPwd) {
130
- const data = {
131
- tenant: db.getUserTenant(),
132
- encodeOldPwd: encodeOldPwd,
133
- encodeNewPwd: encodeNewPwd,
134
- };
135
- return mpx.xfetch.fetch({
136
- url: "/v1/rbac/auth/change_pwd",
137
- method: "PATCH",
138
- data: data,
139
- });
140
- }
141
- // 部门Tree
142
- deptTree(deptId, tenant) {
143
- const query = {
144
- tenant: tenant ? tenant : config.tenant,
145
- excludeId: deptId,
146
- };
147
- return mpx.xfetch.fetch({
148
- url: "/v1/rbac/dept/treelist",
149
- method: "GET",
150
- data: query,
151
- });
152
- }
153
- // 职务Tree
154
- jobTree(jobId, tenant) {
155
- const query = {
156
- tenant: tenant ? tenant : config.tenant,
157
- roleType: "job",
158
- hasRoleType: true,
159
- excludeId: jobId,
160
- };
161
- return mpx.xfetch.fetch({
162
- url: "/v1/rbac/role/treelist",
163
- method: "GET",
164
- data: query,
165
- });
166
- }
167
- // 修改个人信息
168
- updateUserInfo(data) {
169
- data.tenant = config.tenant;
170
- grpc.clearEmpty(data);
171
- return mpx.xfetch.fetch({
172
- url: "/v1/rbac/auth/user",
173
- method: "PATCH",
174
- data: data,
175
- });
176
- }
177
- // 获取当前会话用户的信息
178
- findUserInfo(data) {
179
- data.tenant = config.tenant;
180
- return mpx.xfetch.fetch({
181
- url: "/v1/front/rbac/auth/user",
182
- method: "GET",
183
- data,
184
- });
185
- }
186
- }
187
- export const authApi = new AuthApi();
1
+ import { OpensType } from "./types";
2
+ import { db } from "../../utils/db";
3
+ import { grpc } from "../../utils/grpc";
4
+ import { config } from "../../utils/config";
5
+ import mpx from "@mpxjs/core";
6
+ class AuthApi {
7
+ // 小程序静默登录
8
+ mpLogin(data) {
9
+ if (__mpx_mode__ === "wx") {
10
+ data.opensType = OpensType.wechat;
11
+ }
12
+ if (__mpx_mode__ === "ali") {
13
+ data.opensType = OpensType.ali_pay;
14
+ }
15
+ return mpx.xfetch.fetch({
16
+ url: "/v1/front/rbac/miniapp_login/" + config.tenant,
17
+ method: "POST",
18
+ data,
19
+ header: {
20
+ "content-type": "application/json",
21
+ Authorization: false,
22
+ },
23
+ });
24
+ }
25
+ // 手机号注册登录
26
+ mpPhoneRegister(data) {
27
+ if (__mpx_mode__ === "wx") {
28
+ data.opensType = OpensType.wechat;
29
+ }
30
+ if (__mpx_mode__ === "ali") {
31
+ data.opensType = OpensType.ali_pay;
32
+ }
33
+ return mpx.xfetch.fetch({
34
+ url: "/v1/front/rbac/miniapp_phonenumber/" + config.tenant,
35
+ method: "POST",
36
+ data: data,
37
+ header: {
38
+ Authorization: false,
39
+ },
40
+ });
41
+ }
42
+ // 已登陆状态小程序更换绑定手机号
43
+ replaceBindphone(data) {
44
+ data.tenant = config.tenant;
45
+ if (__mpx_mode__ === "wx") {
46
+ data.opensType = OpensType.wechat;
47
+ }
48
+ if (__mpx_mode__ === "ali") {
49
+ data.opensType = OpensType.ali_pay;
50
+ }
51
+ grpc.clearEmpty(data);
52
+ return mpx.xfetch.fetch({
53
+ url: "/v1/front/rbac/miniapp_bindphone",
54
+ method: "POST",
55
+ data: data,
56
+ });
57
+ }
58
+ //web登录.
59
+ webLogin(data) {
60
+ data.tenant = config.tenant;
61
+ data.directoryId = "user";
62
+ data.clientId = config.appId ? config.appId : "h5";
63
+ data.captchaId = "1";
64
+ data.captchaCode = "1";
65
+ return mpx.xfetch.fetch({
66
+ url: "/v1/rbac/auth/login",
67
+ method: "POST",
68
+ data: data,
69
+ header: {
70
+ Authorization: false,
71
+ },
72
+ });
73
+ }
74
+ // 刷新token
75
+ refreshToken() {
76
+ return mpx.xfetch.fetch({
77
+ url: "/v1/front/rbac/auth/refresh_token",
78
+ method: "POST",
79
+ data: {
80
+ refreshToken: db.getRefreshToken(),
81
+ tenant: config.tenant,
82
+ clientId: config.appId,
83
+ },
84
+ header: { "content-type": "application/json" },
85
+ });
86
+ }
87
+ // 获取当前会话用户
88
+ userInfo() {
89
+ return mpx.xfetch.fetch({
90
+ url: "/v1/rbac/auth/user?tenant=" + config.tenant,
91
+ method: "GET",
92
+ });
93
+ }
94
+ // 当前用户角色权限
95
+ userRolesPerms() {
96
+ return mpx.xfetch.fetch({
97
+ url: "/v1/rbac/auth/roles_perms?tenant=" + config.tenant,
98
+ method: "GET",
99
+ });
100
+ }
101
+ // 允许切换身份的用户列表
102
+ allowRunAsUser() {
103
+ return mpx.xfetch.fetch({
104
+ url: "/v1/rbac/auth/allow_run_as_user?tenant=" + config.tenant,
105
+ method: "GET",
106
+ });
107
+ }
108
+ // 运行某种身份
109
+ runAsUser(userId) {
110
+ const data = {
111
+ tenant: config.tenant,
112
+ userId: userId,
113
+ };
114
+ return mpx.xfetch.fetch({
115
+ url: "/v1/rbac/auth/run_as",
116
+ method: "POST",
117
+ data: data,
118
+ });
119
+ }
120
+ // 更新用户
121
+ updateUser(data) {
122
+ return mpx.xfetch.fetch({
123
+ url: "/v1/rbac/auth/user",
124
+ method: "PATCH",
125
+ data: data,
126
+ });
127
+ }
128
+ // 修改密码
129
+ updatePwd(encodeOldPwd, encodeNewPwd) {
130
+ const data = {
131
+ tenant: db.getUserTenant(),
132
+ encodeOldPwd: encodeOldPwd,
133
+ encodeNewPwd: encodeNewPwd,
134
+ };
135
+ return mpx.xfetch.fetch({
136
+ url: "/v1/rbac/auth/change_pwd",
137
+ method: "PATCH",
138
+ data: data,
139
+ });
140
+ }
141
+ // 部门Tree
142
+ deptTree(deptId, tenant) {
143
+ const query = {
144
+ tenant: tenant ? tenant : config.tenant,
145
+ excludeId: deptId,
146
+ };
147
+ return mpx.xfetch.fetch({
148
+ url: "/v1/rbac/dept/treelist",
149
+ method: "GET",
150
+ data: query,
151
+ });
152
+ }
153
+ // 职务Tree
154
+ jobTree(jobId, tenant) {
155
+ const query = {
156
+ tenant: tenant ? tenant : config.tenant,
157
+ roleType: "job",
158
+ hasRoleType: true,
159
+ excludeId: jobId,
160
+ };
161
+ return mpx.xfetch.fetch({
162
+ url: "/v1/rbac/role/treelist",
163
+ method: "GET",
164
+ data: query,
165
+ });
166
+ }
167
+ // 修改个人信息
168
+ updateUserInfo(data) {
169
+ data.tenant = config.tenant;
170
+ grpc.clearEmpty(data);
171
+ return mpx.xfetch.fetch({
172
+ url: "/v1/rbac/auth/user",
173
+ method: "PATCH",
174
+ data: data,
175
+ });
176
+ }
177
+ // 获取当前会话用户的信息
178
+ findUserInfo(data) {
179
+ data.tenant = config.tenant;
180
+ return mpx.xfetch.fetch({
181
+ url: "/v1/front/rbac/auth/user",
182
+ method: "GET",
183
+ data,
184
+ });
185
+ }
186
+ }
187
+ export const authApi = new AuthApi();