@reskin/core 0.0.1

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 (218) hide show
  1. package/README.md +25 -0
  2. package/bundles/reskin-core-classes.umd.js +48 -0
  3. package/bundles/reskin-core-classes.umd.js.map +1 -0
  4. package/bundles/reskin-core-directives.umd.js +147 -0
  5. package/bundles/reskin-core-directives.umd.js.map +1 -0
  6. package/bundles/reskin-core-entity-dictionary.umd.js +11 -0
  7. package/bundles/reskin-core-entity-dictionary.umd.js.map +1 -0
  8. package/bundles/reskin-core-entity-field.umd.js +49 -0
  9. package/bundles/reskin-core-entity-field.umd.js.map +1 -0
  10. package/bundles/reskin-core-entity-file.umd.js +11 -0
  11. package/bundles/reskin-core-entity-file.umd.js.map +1 -0
  12. package/bundles/reskin-core-entity-menu.umd.js +40 -0
  13. package/bundles/reskin-core-entity-menu.umd.js.map +1 -0
  14. package/bundles/reskin-core-entity-org.umd.js +50 -0
  15. package/bundles/reskin-core-entity-org.umd.js.map +1 -0
  16. package/bundles/reskin-core-entity-scheme.umd.js +63 -0
  17. package/bundles/reskin-core-entity-scheme.umd.js.map +1 -0
  18. package/bundles/reskin-core-entity-user.umd.js +11 -0
  19. package/bundles/reskin-core-entity-user.umd.js.map +1 -0
  20. package/bundles/reskin-core-entity.umd.js +11 -0
  21. package/bundles/reskin-core-entity.umd.js.map +1 -0
  22. package/bundles/reskin-core-guards.umd.js +89 -0
  23. package/bundles/reskin-core-guards.umd.js.map +1 -0
  24. package/bundles/reskin-core-interceptors.umd.js +702 -0
  25. package/bundles/reskin-core-interceptors.umd.js.map +1 -0
  26. package/bundles/reskin-core-services.umd.js +1188 -0
  27. package/bundles/reskin-core-services.umd.js.map +1 -0
  28. package/bundles/reskin-core-utils.umd.js +130 -0
  29. package/bundles/reskin-core-utils.umd.js.map +1 -0
  30. package/bundles/reskin-core.umd.js +13 -0
  31. package/bundles/reskin-core.umd.js.map +1 -0
  32. package/classes/package.json +10 -0
  33. package/classes/public-api.d.ts +1 -0
  34. package/classes/reskin-core-classes.d.ts +5 -0
  35. package/classes/table.helper.d.ts +23 -0
  36. package/directives/auth.directive.d.ts +27 -0
  37. package/directives/directives.module.d.ts +7 -0
  38. package/directives/package.json +10 -0
  39. package/directives/public-api.d.ts +2 -0
  40. package/directives/reskin-core-directives.d.ts +5 -0
  41. package/entity/Env.d.ts +66 -0
  42. package/entity/IPage.d.ts +35 -0
  43. package/entity/R.d.ts +25 -0
  44. package/entity/WC.d.ts +51 -0
  45. package/entity/dictionary/IDictionaryBaseInfo.d.ts +29 -0
  46. package/entity/dictionary/IDictionaryItem.d.ts +50 -0
  47. package/entity/dictionary/package.json +10 -0
  48. package/entity/dictionary/public-api.d.ts +2 -0
  49. package/entity/dictionary/reskin-core-entity-dictionary.d.ts +5 -0
  50. package/entity/field/ColumnTypeEnum.d.ts +33 -0
  51. package/entity/field/ITableField.d.ts +27 -0
  52. package/entity/field/package.json +10 -0
  53. package/entity/field/public-api.d.ts +2 -0
  54. package/entity/field/reskin-core-entity-field.d.ts +5 -0
  55. package/entity/file/IUploadFileData.d.ts +25 -0
  56. package/entity/file/package.json +10 -0
  57. package/entity/file/public-api.d.ts +1 -0
  58. package/entity/file/reskin-core-entity-file.d.ts +5 -0
  59. package/entity/menu/IMenu.d.ts +57 -0
  60. package/entity/menu/MenuTypeEnum.d.ts +24 -0
  61. package/entity/menu/package.json +10 -0
  62. package/entity/menu/public-api.d.ts +2 -0
  63. package/entity/menu/reskin-core-entity-menu.d.ts +5 -0
  64. package/entity/org/IOrgTreeNode.d.ts +58 -0
  65. package/entity/org/OrgTypeEnum.d.ts +31 -0
  66. package/entity/org/package.json +10 -0
  67. package/entity/org/public-api.d.ts +2 -0
  68. package/entity/org/reskin-core-entity-org.d.ts +5 -0
  69. package/entity/package.json +10 -0
  70. package/entity/public-api.d.ts +4 -0
  71. package/entity/reskin-core-entity.d.ts +5 -0
  72. package/entity/scheme/IFieldScheme.d.ts +97 -0
  73. package/entity/scheme/IScheme.d.ts +200 -0
  74. package/entity/scheme/SchemeEditTypeEnum.d.ts +25 -0
  75. package/entity/scheme/package.json +10 -0
  76. package/entity/scheme/public-api.d.ts +3 -0
  77. package/entity/scheme/reskin-core-entity-scheme.d.ts +5 -0
  78. package/entity/user/IAuth.d.ts +13 -0
  79. package/entity/user/IAuthAccount.d.ts +126 -0
  80. package/entity/user/package.json +10 -0
  81. package/entity/user/public-api.d.ts +2 -0
  82. package/entity/user/reskin-core-entity-user.d.ts +5 -0
  83. package/esm2015/classes/public-api.js +2 -0
  84. package/esm2015/classes/reskin-core-classes.js +5 -0
  85. package/esm2015/classes/table.helper.js +32 -0
  86. package/esm2015/directives/auth.directive.js +83 -0
  87. package/esm2015/directives/directives.module.js +16 -0
  88. package/esm2015/directives/public-api.js +3 -0
  89. package/esm2015/directives/reskin-core-directives.js +5 -0
  90. package/esm2015/entity/Env.js +2 -0
  91. package/esm2015/entity/IPage.js +2 -0
  92. package/esm2015/entity/R.js +2 -0
  93. package/esm2015/entity/WC.js +2 -0
  94. package/esm2015/entity/dictionary/IDictionaryBaseInfo.js +2 -0
  95. package/esm2015/entity/dictionary/IDictionaryItem.js +2 -0
  96. package/esm2015/entity/dictionary/public-api.js +3 -0
  97. package/esm2015/entity/dictionary/reskin-core-entity-dictionary.js +5 -0
  98. package/esm2015/entity/field/ColumnTypeEnum.js +35 -0
  99. package/esm2015/entity/field/ITableField.js +2 -0
  100. package/esm2015/entity/field/public-api.js +3 -0
  101. package/esm2015/entity/field/reskin-core-entity-field.js +5 -0
  102. package/esm2015/entity/file/IUploadFileData.js +2 -0
  103. package/esm2015/entity/file/public-api.js +2 -0
  104. package/esm2015/entity/file/reskin-core-entity-file.js +5 -0
  105. package/esm2015/entity/menu/IMenu.js +2 -0
  106. package/esm2015/entity/menu/MenuTypeEnum.js +26 -0
  107. package/esm2015/entity/menu/public-api.js +3 -0
  108. package/esm2015/entity/menu/reskin-core-entity-menu.js +5 -0
  109. package/esm2015/entity/org/IOrgTreeNode.js +2 -0
  110. package/esm2015/entity/org/OrgTypeEnum.js +33 -0
  111. package/esm2015/entity/org/public-api.js +3 -0
  112. package/esm2015/entity/org/reskin-core-entity-org.js +5 -0
  113. package/esm2015/entity/public-api.js +5 -0
  114. package/esm2015/entity/reskin-core-entity.js +5 -0
  115. package/esm2015/entity/scheme/IFieldScheme.js +2 -0
  116. package/esm2015/entity/scheme/IScheme.js +22 -0
  117. package/esm2015/entity/scheme/SchemeEditTypeEnum.js +27 -0
  118. package/esm2015/entity/scheme/public-api.js +4 -0
  119. package/esm2015/entity/scheme/reskin-core-entity-scheme.js +5 -0
  120. package/esm2015/entity/user/IAuth.js +2 -0
  121. package/esm2015/entity/user/IAuthAccount.js +2 -0
  122. package/esm2015/entity/user/public-api.js +3 -0
  123. package/esm2015/entity/user/reskin-core-entity-user.js +5 -0
  124. package/esm2015/guards/auth.guard.js +53 -0
  125. package/esm2015/guards/public-api.js +2 -0
  126. package/esm2015/guards/reskin-core-guards.js +5 -0
  127. package/esm2015/interceptors/blob.interceptor.js +66 -0
  128. package/esm2015/interceptors/cache.interceptor.js +36 -0
  129. package/esm2015/interceptors/error.interceptor.js +35 -0
  130. package/esm2015/interceptors/public-api.js +5 -0
  131. package/esm2015/interceptors/reskin-core-interceptors.js +5 -0
  132. package/esm2015/interceptors/token.interceptor.js +48 -0
  133. package/esm2015/public-api.js +2 -0
  134. package/esm2015/reskin-core.js +5 -0
  135. package/esm2015/services/account.service.js +58 -0
  136. package/esm2015/services/app.config.js +60 -0
  137. package/esm2015/services/auth.service.js +56 -0
  138. package/esm2015/services/cache.http.service.js +58 -0
  139. package/esm2015/services/destroy.service.js +15 -0
  140. package/esm2015/services/dictionary.service.js +107 -0
  141. package/esm2015/services/down.file.service.js +79 -0
  142. package/esm2015/services/field.scheme.service.js +37 -0
  143. package/esm2015/services/file.service.js +57 -0
  144. package/esm2015/services/menu.service.js +36 -0
  145. package/esm2015/services/org.service.js +46 -0
  146. package/esm2015/services/public-api.js +13 -0
  147. package/esm2015/services/reskin-core-services.js +5 -0
  148. package/esm2015/services/scheme.service.js +37 -0
  149. package/esm2015/utils/array.js +29 -0
  150. package/esm2015/utils/dom.js +18 -0
  151. package/esm2015/utils/public-api.js +4 -0
  152. package/esm2015/utils/reskin-core-utils.js +5 -0
  153. package/esm2015/utils/store.js +64 -0
  154. package/fesm2015/reskin-core-classes.js +39 -0
  155. package/fesm2015/reskin-core-classes.js.map +1 -0
  156. package/fesm2015/reskin-core-directives.js +103 -0
  157. package/fesm2015/reskin-core-directives.js.map +1 -0
  158. package/fesm2015/reskin-core-entity-dictionary.js +4 -0
  159. package/fesm2015/reskin-core-entity-dictionary.js.map +1 -0
  160. package/fesm2015/reskin-core-entity-field.js +41 -0
  161. package/fesm2015/reskin-core-entity-field.js.map +1 -0
  162. package/fesm2015/reskin-core-entity-file.js +4 -0
  163. package/fesm2015/reskin-core-entity-file.js.map +1 -0
  164. package/fesm2015/reskin-core-entity-menu.js +32 -0
  165. package/fesm2015/reskin-core-entity-menu.js.map +1 -0
  166. package/fesm2015/reskin-core-entity-org.js +39 -0
  167. package/fesm2015/reskin-core-entity-org.js.map +1 -0
  168. package/fesm2015/reskin-core-entity-scheme.js +55 -0
  169. package/fesm2015/reskin-core-entity-scheme.js.map +1 -0
  170. package/fesm2015/reskin-core-entity-user.js +4 -0
  171. package/fesm2015/reskin-core-entity-user.js.map +1 -0
  172. package/fesm2015/reskin-core-entity.js +4 -0
  173. package/fesm2015/reskin-core-entity.js.map +1 -0
  174. package/fesm2015/reskin-core-guards.js +60 -0
  175. package/fesm2015/reskin-core-guards.js.map +1 -0
  176. package/fesm2015/reskin-core-interceptors.js +179 -0
  177. package/fesm2015/reskin-core-interceptors.js.map +1 -0
  178. package/fesm2015/reskin-core-services.js +605 -0
  179. package/fesm2015/reskin-core-services.js.map +1 -0
  180. package/fesm2015/reskin-core-utils.js +118 -0
  181. package/fesm2015/reskin-core-utils.js.map +1 -0
  182. package/fesm2015/reskin-core.js +6 -0
  183. package/fesm2015/reskin-core.js.map +1 -0
  184. package/guards/auth.guard.d.ts +15 -0
  185. package/guards/package.json +10 -0
  186. package/guards/public-api.d.ts +1 -0
  187. package/guards/reskin-core-guards.d.ts +5 -0
  188. package/interceptors/blob.interceptor.d.ts +20 -0
  189. package/interceptors/cache.interceptor.d.ts +19 -0
  190. package/interceptors/error.interceptor.d.ts +19 -0
  191. package/interceptors/package.json +10 -0
  192. package/interceptors/public-api.d.ts +4 -0
  193. package/interceptors/reskin-core-interceptors.d.ts +5 -0
  194. package/interceptors/token.interceptor.d.ts +28 -0
  195. package/package.json +22 -0
  196. package/public-api.d.ts +2 -0
  197. package/reskin-core.d.ts +5 -0
  198. package/services/account.service.d.ts +33 -0
  199. package/services/app.config.d.ts +40 -0
  200. package/services/auth.service.d.ts +26 -0
  201. package/services/cache.http.service.d.ts +37 -0
  202. package/services/destroy.service.d.ts +8 -0
  203. package/services/dictionary.service.d.ts +57 -0
  204. package/services/down.file.service.d.ts +29 -0
  205. package/services/field.scheme.service.d.ts +17 -0
  206. package/services/file.service.d.ts +33 -0
  207. package/services/menu.service.d.ts +16 -0
  208. package/services/org.service.d.ts +31 -0
  209. package/services/package.json +10 -0
  210. package/services/public-api.d.ts +12 -0
  211. package/services/reskin-core-services.d.ts +5 -0
  212. package/services/scheme.service.d.ts +17 -0
  213. package/utils/array.d.ts +5 -0
  214. package/utils/dom.d.ts +6 -0
  215. package/utils/package.json +10 -0
  216. package/utils/public-api.d.ts +3 -0
  217. package/utils/reskin-core-utils.d.ts +5 -0
  218. package/utils/store.d.ts +42 -0
@@ -0,0 +1,48 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { HTTP_INTERCEPTORS, HttpHeaders } from '@angular/common/http';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@reskin/core/services";
5
+ export class TokenInterceptor {
6
+ constructor(service) {
7
+ this.service = service;
8
+ }
9
+ intercept(request, next) {
10
+ const tc = request.headers.get('Token-Control');
11
+ const auth = this.service.token;
12
+ // 当 header 中 Token-Control 为 no-token 时不携带 token
13
+ if (tc !== 'no-token' && auth.token) {
14
+ request = request.clone({
15
+ setHeaders: {
16
+ 'Authorization': auth.token,
17
+ 'X-Auth-Id': auth.id,
18
+ },
19
+ });
20
+ }
21
+ return next.handle(request);
22
+ }
23
+ }
24
+ TokenInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TokenInterceptor, deps: [{ token: i1.RkAuthService }], target: i0.ɵɵFactoryTarget.Injectable });
25
+ TokenInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TokenInterceptor });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TokenInterceptor, decorators: [{
27
+ type: Injectable
28
+ }], ctorParameters: function () { return [{ type: i1.RkAuthService }]; } });
29
+ /**
30
+ * 请求头增加token验证拦截器
31
+ */
32
+ export function providerAuthToken() {
33
+ return { provide: HTTP_INTERCEPTORS, useClass: TokenInterceptor, multi: true };
34
+ }
35
+ /**
36
+ * 不带token验证信息请求
37
+ * @param urls 地址
38
+ * @param params 参数
39
+ * @constructor
40
+ */
41
+ export function NoAuthTokenTemplate(urls, ...params) {
42
+ let [url] = urls;
43
+ if (params.length > 0) {
44
+ url = String.raw(urls, ...params);
45
+ }
46
+ return [url, { headers: new HttpHeaders({ 'Token-Control': 'no-token' }) }];
47
+ }
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4uaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJyYXJ5L2NvcmUvaW50ZXJjZXB0b3JzL3Rva2VuLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUF3RCxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBTTVILE1BQU0sT0FBTyxnQkFBZ0I7SUFDekIsWUFBb0IsT0FBc0I7UUFBdEIsWUFBTyxHQUFQLE9BQU8sQ0FBZTtJQUFHLENBQUM7SUFFOUMsU0FBUyxDQUFDLE9BQTZCLEVBQUUsSUFBaUI7UUFDdEQsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDaEQsTUFBTSxJQUFJLEdBQVUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDdkMsaURBQWlEO1FBQ2pELElBQUksRUFBRSxLQUFLLFVBQVUsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2pDLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUNwQixVQUFVLEVBQUU7b0JBQ1IsZUFBZSxFQUFFLElBQUksQ0FBQyxLQUFLO29CQUMzQixXQUFXLEVBQUUsSUFBSSxDQUFDLEVBQUU7aUJBQ3ZCO2FBQ0osQ0FBQyxDQUFDO1NBQ047UUFDRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEMsQ0FBQzs7OEdBaEJRLGdCQUFnQjtrSEFBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7O0FBb0JYOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQjtJQUM3QixPQUFPLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDbkYsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLElBQTBCLEVBQUUsR0FBRyxNQUFhO0lBQzVFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDakIsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNuQixHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztLQUNyQztJQUNELE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDaEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciwgSFRUUF9JTlRFUkNFUFRPUlMsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFJrQXV0aFNlcnZpY2UgfSBmcm9tICdAcmVza2luL2NvcmUvc2VydmljZXMnO1xyXG5pbXBvcnQgeyBJQXV0aCB9IGZyb20gJ0ByZXNraW4vY29yZS9lbnRpdHkvdXNlcic7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUb2tlbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogUmtBdXRoU2VydmljZSkge31cclxuXHJcbiAgICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8dW5rbm93bj4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+IHtcclxuICAgICAgICBjb25zdCB0YyA9IHJlcXVlc3QuaGVhZGVycy5nZXQoJ1Rva2VuLUNvbnRyb2wnKTtcclxuICAgICAgICBjb25zdCBhdXRoOiBJQXV0aCA9IHRoaXMuc2VydmljZS50b2tlbjtcclxuICAgICAgICAvLyDlvZMgaGVhZGVyIOS4rSBUb2tlbi1Db250cm9sIOS4uiBuby10b2tlbiDml7bkuI3mkLrluKYgdG9rZW5cclxuICAgICAgICBpZiAodGMgIT09ICduby10b2tlbicgJiYgYXV0aC50b2tlbikge1xyXG4gICAgICAgICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgICAgICAgICBzZXRIZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgJ0F1dGhvcml6YXRpb24nOiBhdXRoLnRva2VuLFxyXG4gICAgICAgICAgICAgICAgICAgICdYLUF1dGgtSWQnOiBhdXRoLmlkLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KTtcclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIOivt+axguWktOWinuWKoHRva2Vu6aqM6K+B5oum5oiq5ZmoXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZXJBdXRoVG9rZW4oKSB7XHJcbiAgICByZXR1cm4geyBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUywgdXNlQ2xhc3M6IFRva2VuSW50ZXJjZXB0b3IsIG11bHRpOiB0cnVlIH07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiDkuI3luKZ0b2tlbumqjOivgeS/oeaBr+ivt+axglxyXG4gKiBAcGFyYW0gdXJscyDlnLDlnYBcclxuICogQHBhcmFtIHBhcmFtcyDlj4LmlbBcclxuICogQGNvbnN0cnVjdG9yXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gTm9BdXRoVG9rZW5UZW1wbGF0ZSh1cmxzOiBUZW1wbGF0ZVN0cmluZ3NBcnJheSwgLi4ucGFyYW1zOiBhbnlbXSk6IFtzdHJpbmcsIHsgaGVhZGVyczogSHR0cEhlYWRlcnMgfV0ge1xyXG4gICAgbGV0IFt1cmxdID0gdXJscztcclxuICAgIGlmIChwYXJhbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHVybCA9IFN0cmluZy5yYXcodXJscywgLi4ucGFyYW1zKTtcclxuICAgIH1cclxuICAgIHJldHVybiBbdXJsLCB7IGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7ICdUb2tlbi1Db250cm9sJzogJ25vLXRva2VuJyB9KSB9XTtcclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export default void 0;
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYnJhcnkvY29yZS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGVBQWUsS0FBSyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCB2b2lkIDA7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVza2luLWNvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWJyYXJ5L2NvcmUvcmVza2luLWNvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,58 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { tap } from 'rxjs/operators';
3
+ import { Store } from '@reskin/core/utils';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common/http";
6
+ import * as i2 from "./auth.service";
7
+ export class RkAccountService {
8
+ constructor(http, auth) {
9
+ this.http = http;
10
+ this.auth = auth;
11
+ this.account = new Store('account', {});
12
+ }
13
+ /**
14
+ * 加载人员权限
15
+ */
16
+ onLoadAuth() {
17
+ var _a;
18
+ const url = 'api/gl-service-sys-user/v1/user/system/user/loadAuthData';
19
+ return this.http.post(url, { SYSTEM_USER_ID: (_a = this.auth.token) === null || _a === void 0 ? void 0 : _a.id }).pipe(tap((json) => {
20
+ if (json.code === 0) {
21
+ this.account.set(json.data);
22
+ }
23
+ }));
24
+ }
25
+ /**
26
+ * 获得账号基本信息
27
+ */
28
+ get userInfo() {
29
+ return this.account.get().UserInfo;
30
+ }
31
+ /**
32
+ * 获得账号人员库权限
33
+ */
34
+ get personnelPool() {
35
+ return this.account.get().AuthPersonnelPool;
36
+ }
37
+ /**
38
+ * 获得账号业务权限
39
+ */
40
+ get workflowAuth() {
41
+ return this.account.get().AuthWfId;
42
+ }
43
+ /**
44
+ * 获得账号机构分组权限
45
+ */
46
+ get authOrgGroup() {
47
+ return this.account.get().AuthOrgGroup;
48
+ }
49
+ }
50
+ RkAccountService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkAccountService, deps: [{ token: i1.HttpClient }, { token: i2.RkAuthService }], target: i0.ɵɵFactoryTarget.Injectable });
51
+ RkAccountService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkAccountService, providedIn: 'root' });
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkAccountService, decorators: [{
53
+ type: Injectable,
54
+ args: [{
55
+ providedIn: 'root',
56
+ }]
57
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.RkAuthService }]; } });
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicmFyeS9jb3JlL3NlcnZpY2VzL2FjY291bnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdyQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7QUFNM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QixZQUNZLElBQWdCLEVBQ2hCLElBQW1CO1FBRG5CLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsU0FBSSxHQUFKLElBQUksQ0FBZTtRQUh2QixZQUFPLEdBQUcsSUFBSSxLQUFLLENBQWUsU0FBUyxFQUFnQixFQUFFLENBQUMsQ0FBQztJQUlwRSxDQUFDO0lBRUo7O09BRUc7SUFDSCxVQUFVOztRQUNOLE1BQU0sR0FBRyxHQUFHLDBEQUEwRCxDQUFDO1FBQ3ZFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUksR0FBRyxFQUFFLEVBQUUsY0FBYyxFQUFFLE1BQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLDBDQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUN2RSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNULElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUMvQjtRQUNMLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFlBQVk7UUFDWixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7SUFDM0MsQ0FBQzs7OEdBL0NRLGdCQUFnQjtrSEFBaEIsZ0JBQWdCLGNBRmIsTUFBTTs0RkFFVCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFJrQXV0aFNlcnZpY2UgfSBmcm9tICcuL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IElBY2NvdW50UHJvZmlsZSwgSUF1dGhBY2NvdW50LCBJQXV0aE9yZ0dyb3VwLCBJQXV0aFBlcnNvbm5lbFBvb2wsIElBdXRoV29ya2Zsb3cgfSBmcm9tICdAcmVza2luL2NvcmUvZW50aXR5L3VzZXInO1xyXG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0ByZXNraW4vY29yZS91dGlscyc7XHJcbmltcG9ydCB7IFIgfSBmcm9tICdAcmVza2luL2NvcmUvZW50aXR5JztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJrQWNjb3VudFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSBhY2NvdW50ID0gbmV3IFN0b3JlPElBdXRoQWNjb3VudD4oJ2FjY291bnQnLCA8SUF1dGhBY2NvdW50Pnt9KTtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgICAgICBwcml2YXRlIGF1dGg6IFJrQXV0aFNlcnZpY2UsXHJcbiAgICApIHt9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDliqDovb3kurrlkZjmnYPpmZBcclxuICAgICAqL1xyXG4gICAgb25Mb2FkQXV0aCgpIHtcclxuICAgICAgICBjb25zdCB1cmwgPSAnYXBpL2dsLXNlcnZpY2Utc3lzLXVzZXIvdjEvdXNlci9zeXN0ZW0vdXNlci9sb2FkQXV0aERhdGEnO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxSPih1cmwsIHsgU1lTVEVNX1VTRVJfSUQ6IHRoaXMuYXV0aC50b2tlbj8uaWQgfSkucGlwZShcclxuICAgICAgICAgICAgdGFwKChqc29uKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoanNvbi5jb2RlID09PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hY2NvdW50LnNldChqc29uLmRhdGEpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog6I635b6X6LSm5Y+35Z+65pys5L+h5oGvXHJcbiAgICAgKi9cclxuICAgIGdldCB1c2VySW5mbygpOiBJQWNjb3VudFByb2ZpbGUge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmFjY291bnQuZ2V0KCkuVXNlckluZm87XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDojrflvpfotKblj7fkurrlkZjlupPmnYPpmZBcclxuICAgICAqL1xyXG4gICAgZ2V0IHBlcnNvbm5lbFBvb2woKTogSUF1dGhQZXJzb25uZWxQb29sIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5hY2NvdW50LmdldCgpLkF1dGhQZXJzb25uZWxQb29sO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog6I635b6X6LSm5Y+35Lia5Yqh5p2D6ZmQXHJcbiAgICAgKi9cclxuICAgIGdldCB3b3JrZmxvd0F1dGgoKTogSUF1dGhXb3JrZmxvdyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjb3VudC5nZXQoKS5BdXRoV2ZJZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOiOt+W+l+i0puWPt+acuuaehOWIhue7hOadg+mZkFxyXG4gICAgICovXHJcbiAgICBnZXQgYXV0aE9yZ0dyb3VwKCk6IEFycmF5PElBdXRoT3JnR3JvdXA+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5hY2NvdW50LmdldCgpLkF1dGhPcmdHcm91cDtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,60 @@
1
+ import { __awaiter } from "tslib";
2
+ import { APP_INITIALIZER, Inject, Injectable, InjectionToken } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/platform-browser";
5
+ /**
6
+ * 项目环境变量配置 Token
7
+ */
8
+ export const RK_ENVIRONMENT = new InjectionToken('environment');
9
+ export class AppConfig {
10
+ constructor(env, title) {
11
+ this.env = env;
12
+ this.title = title;
13
+ }
14
+ /**
15
+ * 加载配置
16
+ */
17
+ onLoad() {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ const url = `api/gl-service-sys-core/v1/core/system/parameter/getOneByCode/${this.env.config.PROJECT_CONFIG_KEY}`;
20
+ const response = yield fetch(url);
21
+ const json = yield response.json();
22
+ if (json.code !== 0) {
23
+ throw new Error(json.msg);
24
+ }
25
+ const config = json.data.SYSTEM_PARAMETER_VALUE && JSON.parse(json.data.SYSTEM_PARAMETER_VALUE);
26
+ config.production = config.production === 'true';
27
+ AppConfig.settings = config;
28
+ this.title.setTitle(config.insights.PROJECT_NAME);
29
+ return config;
30
+ });
31
+ }
32
+ }
33
+ AppConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AppConfig, deps: [{ token: RK_ENVIRONMENT }, { token: i1.Title }], target: i0.ɵɵFactoryTarget.Injectable });
34
+ AppConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AppConfig, providedIn: 'root' });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AppConfig, decorators: [{
36
+ type: Injectable,
37
+ args: [{
38
+ providedIn: 'root',
39
+ }]
40
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
41
+ type: Inject,
42
+ args: [RK_ENVIRONMENT]
43
+ }] }, { type: i1.Title }]; } });
44
+ /**
45
+ * 项目初始化配置
46
+ * @param environment
47
+ */
48
+ export function providerAppConfig(environment) {
49
+ return [
50
+ { provide: RK_ENVIRONMENT, useValue: environment },
51
+ AppConfig,
52
+ {
53
+ provide: APP_INITIALIZER,
54
+ useFactory: (appConfig) => () => appConfig.onLoad(),
55
+ deps: [AppConfig],
56
+ multi: true,
57
+ },
58
+ ];
59
+ }
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnJhcnkvY29yZS9zZXJ2aWNlcy9hcHAuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFJcEY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUM7QUFLaEUsTUFBTSxPQUFPLFNBQVM7SUFNbEIsWUFDb0MsR0FBUSxFQUNoQyxLQUFZO1FBRFksUUFBRyxHQUFILEdBQUcsQ0FBSztRQUNoQyxVQUFLLEdBQUwsS0FBSyxDQUFPO0lBQ3JCLENBQUM7SUFFSjs7T0FFRztJQUNHLE1BQU07O1lBQ1IsTUFBTSxHQUFHLEdBQUcsaUVBQWlFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDbEgsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbEMsTUFBTSxJQUFJLEdBQU0sTUFBTSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsRUFBRTtnQkFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDN0I7WUFDRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1lBQ2hHLE1BQU0sQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsS0FBSyxNQUFNLENBQUM7WUFDakQsU0FBUyxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUM7WUFDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNsRCxPQUFPLE1BQU0sQ0FBQztRQUNsQixDQUFDO0tBQUE7O3VHQTFCUSxTQUFTLGtCQU9OLGNBQWM7MkdBUGpCLFNBQVMsY0FGTixNQUFNOzRGQUVULFNBQVM7a0JBSHJCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFRUSxNQUFNOzJCQUFDLGNBQWM7O0FBc0I5Qjs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsV0FBZ0I7SUFDOUMsT0FBTztRQUNILEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFO1FBQ2xELFNBQVM7UUFDVDtZQUNJLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLFVBQVUsRUFBRSxDQUFDLFNBQW9CLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUU7WUFDOUQsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDO1lBQ2pCLEtBQUssRUFBRSxJQUFJO1NBQ2Q7S0FDSixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBFbnYsIFIsIFdDIH0gZnJvbSAnQHJlc2tpbi9jb3JlL2VudGl0eSc7XHJcblxyXG4vKipcclxuICog6aG555uu546v5aKD5Y+Y6YeP6YWN572uIFRva2VuXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgUktfRU5WSVJPTk1FTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ2Vudmlyb25tZW50Jyk7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBDb25maWcge1xyXG4gICAgLyoqXHJcbiAgICAgKiDpobnnm67phY3nva7poblcclxuICAgICAqL1xyXG4gICAgc3RhdGljIHNldHRpbmdzOiBXQztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBASW5qZWN0KFJLX0VOVklST05NRU5UKSBwcml2YXRlIGVudjogRW52LFxyXG4gICAgICAgIHByaXZhdGUgdGl0bGU6IFRpdGxlLFxyXG4gICAgKSB7fVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5Yqg6L296YWN572uXHJcbiAgICAgKi9cclxuICAgIGFzeW5jIG9uTG9hZCgpOiBQcm9taXNlPFdDPiB7XHJcbiAgICAgICAgY29uc3QgdXJsID0gYGFwaS9nbC1zZXJ2aWNlLXN5cy1jb3JlL3YxL2NvcmUvc3lzdGVtL3BhcmFtZXRlci9nZXRPbmVCeUNvZGUvJHt0aGlzLmVudi5jb25maWcuUFJPSkVDVF9DT05GSUdfS0VZfWA7XHJcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh1cmwpO1xyXG4gICAgICAgIGNvbnN0IGpzb246IFIgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XHJcbiAgICAgICAgaWYgKGpzb24uY29kZSAhPT0gMCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoanNvbi5tc2cpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBjb25maWcgPSBqc29uLmRhdGEuU1lTVEVNX1BBUkFNRVRFUl9WQUxVRSAmJiBKU09OLnBhcnNlKGpzb24uZGF0YS5TWVNURU1fUEFSQU1FVEVSX1ZBTFVFKTtcclxuICAgICAgICBjb25maWcucHJvZHVjdGlvbiA9IGNvbmZpZy5wcm9kdWN0aW9uID09PSAndHJ1ZSc7XHJcbiAgICAgICAgQXBwQ29uZmlnLnNldHRpbmdzID0gY29uZmlnO1xyXG4gICAgICAgIHRoaXMudGl0bGUuc2V0VGl0bGUoY29uZmlnLmluc2lnaHRzLlBST0pFQ1RfTkFNRSk7XHJcbiAgICAgICAgcmV0dXJuIGNvbmZpZztcclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIOmhueebruWIneWni+WMlumFjee9rlxyXG4gKiBAcGFyYW0gZW52aXJvbm1lbnRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlckFwcENvbmZpZyhlbnZpcm9ubWVudDogRW52KSB7XHJcbiAgICByZXR1cm4gW1xyXG4gICAgICAgIHsgcHJvdmlkZTogUktfRU5WSVJPTk1FTlQsIHVzZVZhbHVlOiBlbnZpcm9ubWVudCB9LFxyXG4gICAgICAgIEFwcENvbmZpZyxcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcclxuICAgICAgICAgICAgdXNlRmFjdG9yeTogKGFwcENvbmZpZzogQXBwQ29uZmlnKSA9PiAoKSA9PiBhcHBDb25maWcub25Mb2FkKCksXHJcbiAgICAgICAgICAgIGRlcHM6IFtBcHBDb25maWddLFxyXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgXTtcclxufVxyXG4iXX0=
@@ -0,0 +1,56 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { HttpHeaders } from '@angular/common/http';
3
+ import { tap } from 'rxjs/operators';
4
+ import { Store } from '@reskin/core/utils';
5
+ import { RK_ENVIRONMENT } from './app.config';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common/http";
8
+ export class RkAuthService {
9
+ constructor(env, http) {
10
+ this.env = env;
11
+ this.http = http;
12
+ this.auth = new Store('auth', {});
13
+ }
14
+ /**
15
+ * 系统登录
16
+ * @param data 验证信息
17
+ * @returns
18
+ */
19
+ onLogin(data) {
20
+ const url = 'api/gl-service-sys-user/v1/user/system/auth/login';
21
+ const headers = new HttpHeaders({
22
+ 'ProjectNo': this.env.config.PROJECT_TYPE,
23
+ 'Token-Control': 'no-token',
24
+ });
25
+ return this.http.post(url, { data }, { headers }).pipe(tap((json) => {
26
+ if (json.code === 0) {
27
+ this.auth.set(json.data);
28
+ }
29
+ }));
30
+ }
31
+ /**
32
+ * 注销系统
33
+ */
34
+ onLogout() {
35
+ const url = 'api/gl-service-sys-user/v1/user/system/auth/logoutByAuthId';
36
+ return this.http.post(url, { AUTH_ID: this.token.id });
37
+ }
38
+ /**
39
+ * 获得 token
40
+ */
41
+ get token() {
42
+ return this.auth.get();
43
+ }
44
+ }
45
+ RkAuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkAuthService, deps: [{ token: RK_ENVIRONMENT }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
46
+ RkAuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkAuthService, providedIn: 'root' });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkAuthService, decorators: [{
48
+ type: Injectable,
49
+ args: [{
50
+ providedIn: 'root',
51
+ }]
52
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
53
+ type: Inject,
54
+ args: [RK_ENVIRONMENT]
55
+ }] }, { type: i1.HttpClient }]; } });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicmFyeS9jb3JlL3NlcnZpY2VzL2F1dGguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFNOUMsTUFBTSxPQUFPLGFBQWE7SUFFdEIsWUFDb0MsR0FBUSxFQUNoQyxJQUFnQjtRQURRLFFBQUcsR0FBSCxHQUFHLENBQUs7UUFDaEMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUhwQixTQUFJLEdBQUcsSUFBSSxLQUFLLENBQVEsTUFBTSxFQUFTLEVBQUUsQ0FBQyxDQUFDO0lBSWhELENBQUM7SUFFSjs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLElBQVk7UUFDaEIsTUFBTSxHQUFHLEdBQUcsbURBQW1ELENBQUM7UUFDaEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxXQUFXLENBQUM7WUFDNUIsV0FBVyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVk7WUFDekMsZUFBZSxFQUFFLFVBQVU7U0FDOUIsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBSSxHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUNyRCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNULElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUM1QjtRQUNMLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRUQ7O09BRUc7SUFDSCxRQUFRO1FBQ0osTUFBTSxHQUFHLEdBQUcsNERBQTRELENBQUM7UUFDekUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBSSxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMzQixDQUFDOzsyR0F4Q1EsYUFBYSxrQkFHVixjQUFjOytHQUhqQixhQUFhLGNBRlYsTUFBTTs0RkFFVCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBSVEsTUFBTTsyQkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQHJlc2tpbi9jb3JlL3V0aWxzJztcclxuaW1wb3J0IHsgSUF1dGggfSBmcm9tICdAcmVza2luL2NvcmUvZW50aXR5L3VzZXInO1xyXG5pbXBvcnQgeyBSS19FTlZJUk9OTUVOVCB9IGZyb20gJy4vYXBwLmNvbmZpZyc7XHJcbmltcG9ydCB7IEVudiwgUiB9IGZyb20gJ0ByZXNraW4vY29yZS9lbnRpdHknO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmtBdXRoU2VydmljZSB7XHJcbiAgICBwcml2YXRlIGF1dGggPSBuZXcgU3RvcmU8SUF1dGg+KCdhdXRoJywgPElBdXRoPnt9KTtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIEBJbmplY3QoUktfRU5WSVJPTk1FTlQpIHByaXZhdGUgZW52OiBFbnYsXHJcbiAgICAgICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgKSB7fVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog57O757uf55m75b2VXHJcbiAgICAgKiBAcGFyYW0gZGF0YSDpqozor4Hkv6Hmga9cclxuICAgICAqIEByZXR1cm5zXHJcbiAgICAgKi9cclxuICAgIG9uTG9naW4oZGF0YTogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3QgdXJsID0gJ2FwaS9nbC1zZXJ2aWNlLXN5cy11c2VyL3YxL3VzZXIvc3lzdGVtL2F1dGgvbG9naW4nO1xyXG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAgICAgICAnUHJvamVjdE5vJzogdGhpcy5lbnYuY29uZmlnLlBST0pFQ1RfVFlQRSxcclxuICAgICAgICAgICAgJ1Rva2VuLUNvbnRyb2wnOiAnbm8tdG9rZW4nLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxSPih1cmwsIHsgZGF0YSB9LCB7IGhlYWRlcnMgfSkucGlwZShcclxuICAgICAgICAgICAgdGFwKChqc29uKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoanNvbi5jb2RlID09PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoLnNldChqc29uLmRhdGEpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5rOo6ZSA57O757ufXHJcbiAgICAgKi9cclxuICAgIG9uTG9nb3V0KCkge1xyXG4gICAgICAgIGNvbnN0IHVybCA9ICdhcGkvZ2wtc2VydmljZS1zeXMtdXNlci92MS91c2VyL3N5c3RlbS9hdXRoL2xvZ291dEJ5QXV0aElkJztcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8Uj4odXJsLCB7IEFVVEhfSUQ6IHRoaXMudG9rZW4uaWQgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDojrflvpcgdG9rZW5cclxuICAgICAqL1xyXG4gICAgZ2V0IHRva2VuKCk6IElBdXRoIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5hdXRoLmdldCgpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,58 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { HttpHeaders } from '@angular/common/http';
3
+ import * as i0 from "@angular/core";
4
+ export class RkCacheHttpService {
5
+ constructor() {
6
+ this.cache = new Map();
7
+ }
8
+ /**
9
+ * 获得已缓存的请求
10
+ * @param url GET请求地址
11
+ */
12
+ get(url) {
13
+ return this.cache.get(url);
14
+ }
15
+ /**
16
+ * 缓存请求
17
+ * @param url GET请求地址
18
+ * @param response 响应内容
19
+ */
20
+ set(url, response) {
21
+ this.cache.set(url, response);
22
+ }
23
+ /**
24
+ * 删除指定已缓存的请求
25
+ * @param url GET请求地址
26
+ */
27
+ delete(url) {
28
+ this.cache.delete(url);
29
+ }
30
+ /**
31
+ * 删除所有已缓存的请求
32
+ */
33
+ clear() {
34
+ this.cache.clear();
35
+ }
36
+ }
37
+ RkCacheHttpService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkCacheHttpService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
+ RkCacheHttpService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkCacheHttpService, providedIn: 'root' });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkCacheHttpService, decorators: [{
40
+ type: Injectable,
41
+ args: [{
42
+ providedIn: 'root',
43
+ }]
44
+ }] });
45
+ /**
46
+ * 设置为缓存请求
47
+ * 使用方法:http.get(...CacheHttpTemplate`api/response.json`)
48
+ * @param urls 请求地址
49
+ * @param params 模板参数
50
+ */
51
+ export function CacheHttpTemplate(urls, ...params) {
52
+ let [url] = urls;
53
+ if (params.length > 0) {
54
+ url = String.raw(urls, ...params);
55
+ }
56
+ return [url, { headers: new HttpHeaders({ 'Cache-Map': 'Storage' }) }];
57
+ }
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUuaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicmFyeS9jb3JlL3NlcnZpY2VzL2NhY2hlLmh0dHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFNOUQsTUFBTSxPQUFPLGtCQUFrQjtJQUgvQjtRQUlZLFVBQUssR0FBZ0QsSUFBSSxHQUFHLEVBQTBDLENBQUM7S0FpQ2xIO0lBL0JHOzs7T0FHRztJQUNILEdBQUcsQ0FBSSxHQUFXO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEdBQUcsQ0FBSSxHQUFXLEVBQUUsUUFBa0M7UUFDbEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsR0FBVztRQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUs7UUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZCLENBQUM7O2dIQWpDUSxrQkFBa0I7b0hBQWxCLGtCQUFrQixjQUZmLE1BQU07NEZBRVQsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7QUFxQ0Q7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsSUFBMEIsRUFBRSxHQUFHLE1BQWE7SUFDMUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQztJQUNqQixJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ25CLEdBQUcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0tBQ3JDO0lBQ0QsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUMzRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSa0NhY2hlSHR0cFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSBjYWNoZTogTWFwPHN0cmluZywgT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8dW5rbm93bj4+PiA9IG5ldyBNYXA8c3RyaW5nLCBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4+KCk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDojrflvpflt7LnvJPlrZjnmoTor7fmsYJcclxuICAgICAqIEBwYXJhbSB1cmwgR0VU6K+35rGC5Zyw5Z2AXHJcbiAgICAgKi9cclxuICAgIGdldDxUPih1cmw6IHN0cmluZyk6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FjaGUuZ2V0KHVybCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDnvJPlrZjor7fmsYJcclxuICAgICAqIEBwYXJhbSB1cmwgR0VU6K+35rGC5Zyw5Z2AXHJcbiAgICAgKiBAcGFyYW0gcmVzcG9uc2Ug5ZON5bqU5YaF5a65XHJcbiAgICAgKi9cclxuICAgIHNldDxUPih1cmw6IHN0cmluZywgcmVzcG9uc2U6IE9ic2VydmFibGU8SHR0cEV2ZW50PFQ+Pikge1xyXG4gICAgICAgIHRoaXMuY2FjaGUuc2V0KHVybCwgcmVzcG9uc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5Yig6Zmk5oyH5a6a5bey57yT5a2Y55qE6K+35rGCXHJcbiAgICAgKiBAcGFyYW0gdXJsIEdFVOivt+axguWcsOWdgFxyXG4gICAgICovXHJcbiAgICBkZWxldGUodXJsOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmNhY2hlLmRlbGV0ZSh1cmwpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5Yig6Zmk5omA5pyJ5bey57yT5a2Y55qE6K+35rGCXHJcbiAgICAgKi9cclxuICAgIGNsZWFyKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY2FjaGUuY2xlYXIoKTtcclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIOiuvue9ruS4uue8k+WtmOivt+axglxyXG4gKiDkvb/nlKjmlrnms5XvvJpodHRwLmdldCguLi5DYWNoZUh0dHBUZW1wbGF0ZWBhcGkvcmVzcG9uc2UuanNvbmApXHJcbiAqIEBwYXJhbSB1cmxzIOivt+axguWcsOWdgFxyXG4gKiBAcGFyYW0gcGFyYW1zIOaooeadv+WPguaVsFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIENhY2hlSHR0cFRlbXBsYXRlKHVybHM6IFRlbXBsYXRlU3RyaW5nc0FycmF5LCAuLi5wYXJhbXM6IGFueVtdKTogW3N0cmluZywgeyBoZWFkZXJzOiBIdHRwSGVhZGVycyB9XSB7XHJcbiAgICBsZXQgW3VybF0gPSB1cmxzO1xyXG4gICAgaWYgKHBhcmFtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgdXJsID0gU3RyaW5nLnJhdyh1cmxzLCAuLi5wYXJhbXMpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIFt1cmwsIHsgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHsgJ0NhY2hlLU1hcCc6ICdTdG9yYWdlJyB9KSB9XTtcclxufVxyXG4iXX0=
@@ -0,0 +1,15 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class RkDestroyService extends Subject {
5
+ ngOnDestroy() {
6
+ this.next();
7
+ this.complete();
8
+ }
9
+ }
10
+ RkDestroyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDestroyService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
11
+ RkDestroyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDestroyService });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDestroyService, decorators: [{
13
+ type: Injectable
14
+ }] });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzdHJveS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicmFyeS9jb3JlL3NlcnZpY2VzL2Rlc3Ryb3kuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRy9CLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxPQUFhO0lBQy9DLFdBQVc7UUFDUCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDWixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEIsQ0FBQzs7OEdBSlEsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBSa0Rlc3Ryb3lTZXJ2aWNlIGV4dGVuZHMgU3ViamVjdDx2b2lkPiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm5leHQoKTtcclxuICAgICAgICB0aGlzLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,107 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { filter, map } from 'rxjs/operators';
3
+ import { CacheHttpTemplate } from './cache.http.service';
4
+ import { Store } from '@reskin/core/utils';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common/http";
7
+ export class RkDictionaryService {
8
+ constructor(http) {
9
+ this.http = http;
10
+ this.useItems = new Store('dictionary_use_items', {}, { expires: 1000 * 60 * 60 * 24 * 7 });
11
+ }
12
+ /**
13
+ * 通过字典编码获得常用项
14
+ * @param code 字典编码
15
+ * @returns 常用项
16
+ */
17
+ getUseItems(code) {
18
+ return this.useItems.get()[code] || [];
19
+ }
20
+ /**
21
+ * 通过字典编码设置常用项
22
+ * @param code 字典编码
23
+ * @param item 常用项
24
+ */
25
+ setUseItems(code, item) {
26
+ const data = this.useItems.get();
27
+ if (!data[code]) {
28
+ data[code] = [item];
29
+ }
30
+ else {
31
+ if (data[code].find((v) => v.DICTIONARY_ITEM_CODE === item.DICTIONARY_ITEM_CODE)) {
32
+ return;
33
+ }
34
+ if (data[code].length > 9) {
35
+ data[code].pop();
36
+ }
37
+ data[code].unshift(item);
38
+ }
39
+ this.useItems.set(data);
40
+ }
41
+ /**
42
+ * 通过字典编码获得字典基本信息
43
+ * @param code 字典编码
44
+ * @returns 字典基本信息
45
+ */
46
+ getBaseInfo(code) {
47
+ const url = `api/gl-service-sys-core/v1/core/system/dictionary/selectOneByDictionaryCode`;
48
+ return this.http.get(...CacheHttpTemplate `${url}/${this.codeReplace(code)}`).pipe(filter((json) => json.code === 0), map((json) => json.data));
49
+ }
50
+ /**
51
+ * 通过字典编码获得获得字典项
52
+ * @param code 字典编码
53
+ * @returns 字典项列表
54
+ */
55
+ getData(code) {
56
+ const url = `api/gl-service-sys-core/v1/core/system/dictionary/item/selectListByDictionaryCode`;
57
+ return this.http.get(...CacheHttpTemplate `${url}/${this.codeReplace(code)}`).pipe(filter((json) => json.code === 0), map((json) => json.data));
58
+ }
59
+ /**
60
+ * 通过父节点获得字典项编码
61
+ * @param code 字典编码
62
+ * @param parentId 父节点编码
63
+ * @returns 字典项列表
64
+ */
65
+ getChildData(code, parentId = '-1') {
66
+ const url = `api/gl-service-sys-core/v1/core/system/dictionary/item/selectListByDictionaryCode`;
67
+ return this.http.post(url, { DICTIONARY_CODE: code, SYS_PARENT: parentId }).pipe(filter((json) => json.code === 0), map((json) => json.data));
68
+ }
69
+ codeReplace(code) {
70
+ return code.replace(/\//g, '_');
71
+ }
72
+ /**
73
+ * 通过字典编码获得获得字典项
74
+ * @param code 字典编码
75
+ * @param keyword 关键字
76
+ * @returns 字典项列表
77
+ */
78
+ requestSearchData(code, keyword) {
79
+ const url = 'api/gl-service-sys-core/v1/core/system/dictionary/item/selectListByQuery';
80
+ return this.http.post(url, { DICTIONARY_CODE: code, DICTIONARY_ITEM_NAME: keyword }).pipe(filter((json) => json.code === 0), map((json) => json.data
81
+ .filter((item, index) => index < 10)
82
+ .map((item) => ({
83
+ label: item.DICTIONARY_ITEM_NAME,
84
+ key: item.SYSTEM_DICTIONARY_ITEM_ID,
85
+ value: item.DICTIONARY_ITEM_CODE,
86
+ }))));
87
+ }
88
+ /**
89
+ * 获得字典项的所有父节点
90
+ * @param code 字典编码
91
+ * @param id 字典项编码
92
+ * @returns 字典项列表
93
+ */
94
+ requestParentList(code, id) {
95
+ const url = 'api/gl-service-sys-core/v1/core/system/dictionary/item/selectListInfoAllParentByCode';
96
+ return this.http.post(url, { DICTIONARY_CODE: code, DICTIONARY_ITEM_CODE: id }).pipe(filter((json) => json.code === 0), map((json) => json.data));
97
+ }
98
+ }
99
+ RkDictionaryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDictionaryService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
100
+ RkDictionaryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDictionaryService, providedIn: 'root' });
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDictionaryService, decorators: [{
102
+ type: Injectable,
103
+ args: [{
104
+ providedIn: 'root',
105
+ }]
106
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicmFyeS9jb3JlL3NlcnZpY2VzL2RpY3Rpb25hcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFekQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLG1CQUFtQjtJQUc1QixZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBRjVCLGFBQVEsR0FBRyxJQUFJLEtBQUssQ0FBb0Msc0JBQXNCLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRTNGLENBQUM7SUFFeEM7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxJQUFZO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsSUFBWSxFQUFFLElBQXFCO1FBQzNDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3ZCO2FBQU07WUFDSCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsS0FBSyxJQUFJLENBQUMsb0JBQW9CLENBQUMsRUFBRTtnQkFDOUUsT0FBTzthQUNWO1lBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO2FBQ3BCO1lBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM1QjtRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsV0FBVyxDQUFDLElBQVk7UUFDcEIsTUFBTSxHQUFHLEdBQUcsNkVBQTZFLENBQUM7UUFDMUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBSSxHQUFHLGlCQUFpQixDQUFBLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDaEYsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUNqQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDM0IsQ0FBQztJQUNOLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLElBQVk7UUFDaEIsTUFBTSxHQUFHLEdBQUcsbUZBQW1GLENBQUM7UUFDaEcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBSSxHQUFHLGlCQUFpQixDQUFBLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDaEYsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUNqQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDM0IsQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFlBQVksQ0FBQyxJQUFZLEVBQUUsUUFBUSxHQUFHLElBQUk7UUFDdEMsTUFBTSxHQUFHLEdBQUcsbUZBQW1GLENBQUM7UUFDaEcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBSSxHQUFHLEVBQUUsRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDL0UsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUNqQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDM0IsQ0FBQztJQUNOLENBQUM7SUFFTyxXQUFXLENBQUMsSUFBWTtRQUM1QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGlCQUFpQixDQUFDLElBQVksRUFBRSxPQUFlO1FBQzNDLE1BQU0sR0FBRyxHQUFHLDBFQUEwRSxDQUFDO1FBQ3ZGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUksR0FBRyxFQUFFLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDeEYsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUNqQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUNULElBQUksQ0FBQyxJQUFJO2FBQ0osTUFBTSxDQUFDLENBQUMsSUFBUyxFQUFFLEtBQWEsRUFBRSxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQzthQUNoRCxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDakIsS0FBSyxFQUFFLElBQUksQ0FBQyxvQkFBb0I7WUFDaEMsR0FBRyxFQUFFLElBQUksQ0FBQyx5QkFBeUI7WUFDbkMsS0FBSyxFQUFFLElBQUksQ0FBQyxvQkFBb0I7U0FDbkMsQ0FBQyxDQUFDLENBQ1YsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsaUJBQWlCLENBQUMsSUFBWSxFQUFFLEVBQVU7UUFDdEMsTUFBTSxHQUFHLEdBQUcsc0ZBQXNGLENBQUM7UUFDbkcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBSSxHQUFHLEVBQUUsRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLG9CQUFvQixFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUNuRixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLEVBQ2pDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUMzQixDQUFDO0lBQ04sQ0FBQzs7aUhBakhRLG1CQUFtQjtxSEFBbkIsbUJBQW1CLGNBRmhCLE1BQU07NEZBRVQsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ2FjaGVIdHRwVGVtcGxhdGUgfSBmcm9tICcuL2NhY2hlLmh0dHAuc2VydmljZSc7XHJcbmltcG9ydCB7IElEaWN0aW9uYXJ5QmFzZUluZm8sIElEaWN0aW9uYXJ5SXRlbSB9IGZyb20gJ0ByZXNraW4vY29yZS9lbnRpdHkvZGljdGlvbmFyeSc7XHJcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQHJlc2tpbi9jb3JlL3V0aWxzJztcclxuaW1wb3J0IHsgUiB9IGZyb20gJ0ByZXNraW4vY29yZS9lbnRpdHknO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmtEaWN0aW9uYXJ5U2VydmljZSB7XHJcbiAgICBwcml2YXRlIHVzZUl0ZW1zID0gbmV3IFN0b3JlPFJlY29yZDxzdHJpbmcsIElEaWN0aW9uYXJ5SXRlbVtdPj4oJ2RpY3Rpb25hcnlfdXNlX2l0ZW1zJywge30sIHsgZXhwaXJlczogMTAwMCAqIDYwICogNjAgKiAyNCAqIDcgfSk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7fVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog6YCa6L+H5a2X5YW457yW56CB6I635b6X5bi455So6aG5XHJcbiAgICAgKiBAcGFyYW0gY29kZSDlrZflhbjnvJbnoIFcclxuICAgICAqIEByZXR1cm5zIOW4uOeUqOmhuVxyXG4gICAgICovXHJcbiAgICBnZXRVc2VJdGVtcyhjb2RlOiBzdHJpbmcpOiBJRGljdGlvbmFyeUl0ZW1bXSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudXNlSXRlbXMuZ2V0KClbY29kZV0gfHwgW107XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDpgJrov4flrZflhbjnvJbnoIHorr7nva7luLjnlKjpoblcclxuICAgICAqIEBwYXJhbSBjb2RlIOWtl+WFuOe8lueggVxyXG4gICAgICogQHBhcmFtIGl0ZW0g5bi455So6aG5XHJcbiAgICAgKi9cclxuICAgIHNldFVzZUl0ZW1zKGNvZGU6IHN0cmluZywgaXRlbTogSURpY3Rpb25hcnlJdGVtKSB7XHJcbiAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMudXNlSXRlbXMuZ2V0KCk7XHJcbiAgICAgICAgaWYgKCFkYXRhW2NvZGVdKSB7XHJcbiAgICAgICAgICAgIGRhdGFbY29kZV0gPSBbaXRlbV07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGRhdGFbY29kZV0uZmluZCgodikgPT4gdi5ESUNUSU9OQVJZX0lURU1fQ09ERSA9PT0gaXRlbS5ESUNUSU9OQVJZX0lURU1fQ09ERSkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoZGF0YVtjb2RlXS5sZW5ndGggPiA5KSB7XHJcbiAgICAgICAgICAgICAgICBkYXRhW2NvZGVdLnBvcCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGRhdGFbY29kZV0udW5zaGlmdChpdGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy51c2VJdGVtcy5zZXQoZGF0YSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDpgJrov4flrZflhbjnvJbnoIHojrflvpflrZflhbjln7rmnKzkv6Hmga9cclxuICAgICAqIEBwYXJhbSBjb2RlIOWtl+WFuOe8lueggVxyXG4gICAgICogQHJldHVybnMg5a2X5YW45Z+65pys5L+h5oGvXHJcbiAgICAgKi9cclxuICAgIGdldEJhc2VJbmZvKGNvZGU6IHN0cmluZyk6IE9ic2VydmFibGU8SURpY3Rpb25hcnlCYXNlSW5mbz4ge1xyXG4gICAgICAgIGNvbnN0IHVybCA9IGBhcGkvZ2wtc2VydmljZS1zeXMtY29yZS92MS9jb3JlL3N5c3RlbS9kaWN0aW9uYXJ5L3NlbGVjdE9uZUJ5RGljdGlvbmFyeUNvZGVgO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFI+KC4uLkNhY2hlSHR0cFRlbXBsYXRlYCR7dXJsfS8ke3RoaXMuY29kZVJlcGxhY2UoY29kZSl9YCkucGlwZShcclxuICAgICAgICAgICAgZmlsdGVyKChqc29uKSA9PiBqc29uLmNvZGUgPT09IDApLFxyXG4gICAgICAgICAgICBtYXAoKGpzb24pID0+IGpzb24uZGF0YSksXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOmAmui/h+Wtl+WFuOe8lueggeiOt+W+l+iOt+W+l+Wtl+WFuOmhuVxyXG4gICAgICogQHBhcmFtIGNvZGUg5a2X5YW457yW56CBXHJcbiAgICAgKiBAcmV0dXJucyDlrZflhbjpobnliJfooahcclxuICAgICAqL1xyXG4gICAgZ2V0RGF0YShjb2RlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPElEaWN0aW9uYXJ5SXRlbVtdPiB7XHJcbiAgICAgICAgY29uc3QgdXJsID0gYGFwaS9nbC1zZXJ2aWNlLXN5cy1jb3JlL3YxL2NvcmUvc3lzdGVtL2RpY3Rpb25hcnkvaXRlbS9zZWxlY3RMaXN0QnlEaWN0aW9uYXJ5Q29kZWA7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8Uj4oLi4uQ2FjaGVIdHRwVGVtcGxhdGVgJHt1cmx9LyR7dGhpcy5jb2RlUmVwbGFjZShjb2RlKX1gKS5waXBlKFxyXG4gICAgICAgICAgICBmaWx0ZXIoKGpzb24pID0+IGpzb24uY29kZSA9PT0gMCksXHJcbiAgICAgICAgICAgIG1hcCgoanNvbikgPT4ganNvbi5kYXRhKSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog6YCa6L+H54i26IqC54K56I635b6X5a2X5YW46aG557yW56CBXHJcbiAgICAgKiBAcGFyYW0gY29kZSDlrZflhbjnvJbnoIFcclxuICAgICAqIEBwYXJhbSBwYXJlbnRJZCDniLboioLngrnnvJbnoIFcclxuICAgICAqIEByZXR1cm5zIOWtl+WFuOmhueWIl+ihqFxyXG4gICAgICovXHJcbiAgICBnZXRDaGlsZERhdGEoY29kZTogc3RyaW5nLCBwYXJlbnRJZCA9ICctMScpOiBPYnNlcnZhYmxlPElEaWN0aW9uYXJ5SXRlbVtdPiB7XHJcbiAgICAgICAgY29uc3QgdXJsID0gYGFwaS9nbC1zZXJ2aWNlLXN5cy1jb3JlL3YxL2NvcmUvc3lzdGVtL2RpY3Rpb25hcnkvaXRlbS9zZWxlY3RMaXN0QnlEaWN0aW9uYXJ5Q29kZWA7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFI+KHVybCwgeyBESUNUSU9OQVJZX0NPREU6IGNvZGUsIFNZU19QQVJFTlQ6IHBhcmVudElkIH0pLnBpcGUoXHJcbiAgICAgICAgICAgIGZpbHRlcigoanNvbikgPT4ganNvbi5jb2RlID09PSAwKSxcclxuICAgICAgICAgICAgbWFwKChqc29uKSA9PiBqc29uLmRhdGEpLFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjb2RlUmVwbGFjZShjb2RlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBjb2RlLnJlcGxhY2UoL1xcLy9nLCAnXycpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog6YCa6L+H5a2X5YW457yW56CB6I635b6X6I635b6X5a2X5YW46aG5XHJcbiAgICAgKiBAcGFyYW0gY29kZSDlrZflhbjnvJbnoIFcclxuICAgICAqIEBwYXJhbSBrZXl3b3JkIOWFs+mUruWtl1xyXG4gICAgICogQHJldHVybnMg5a2X5YW46aG55YiX6KGoXHJcbiAgICAgKi9cclxuICAgIHJlcXVlc3RTZWFyY2hEYXRhKGNvZGU6IHN0cmluZywga2V5d29yZDogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3QgdXJsID0gJ2FwaS9nbC1zZXJ2aWNlLXN5cy1jb3JlL3YxL2NvcmUvc3lzdGVtL2RpY3Rpb25hcnkvaXRlbS9zZWxlY3RMaXN0QnlRdWVyeSc7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFI+KHVybCwgeyBESUNUSU9OQVJZX0NPREU6IGNvZGUsIERJQ1RJT05BUllfSVRFTV9OQU1FOiBrZXl3b3JkIH0pLnBpcGUoXHJcbiAgICAgICAgICAgIGZpbHRlcigoanNvbikgPT4ganNvbi5jb2RlID09PSAwKSxcclxuICAgICAgICAgICAgbWFwKChqc29uKSA9PlxyXG4gICAgICAgICAgICAgICAganNvbi5kYXRhXHJcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcigoaXRlbTogYW55LCBpbmRleDogbnVtYmVyKSA9PiBpbmRleCA8IDEwKVxyXG4gICAgICAgICAgICAgICAgICAgIC5tYXAoKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IGl0ZW0uRElDVElPTkFSWV9JVEVNX05BTUUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleTogaXRlbS5TWVNURU1fRElDVElPTkFSWV9JVEVNX0lELFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogaXRlbS5ESUNUSU9OQVJZX0lURU1fQ09ERSxcclxuICAgICAgICAgICAgICAgICAgICB9KSksXHJcbiAgICAgICAgICAgICksXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOiOt+W+l+Wtl+WFuOmhueeahOaJgOacieeItuiKgueCuVxyXG4gICAgICogQHBhcmFtIGNvZGUg5a2X5YW457yW56CBXHJcbiAgICAgKiBAcGFyYW0gaWQg5a2X5YW46aG557yW56CBXHJcbiAgICAgKiBAcmV0dXJucyDlrZflhbjpobnliJfooahcclxuICAgICAqL1xyXG4gICAgcmVxdWVzdFBhcmVudExpc3QoY29kZTogc3RyaW5nLCBpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxJRGljdGlvbmFyeUl0ZW1bXT4ge1xyXG4gICAgICAgIGNvbnN0IHVybCA9ICdhcGkvZ2wtc2VydmljZS1zeXMtY29yZS92MS9jb3JlL3N5c3RlbS9kaWN0aW9uYXJ5L2l0ZW0vc2VsZWN0TGlzdEluZm9BbGxQYXJlbnRCeUNvZGUnO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxSPih1cmwsIHsgRElDVElPTkFSWV9DT0RFOiBjb2RlLCBESUNUSU9OQVJZX0lURU1fQ09ERTogaWQgfSkucGlwZShcclxuICAgICAgICAgICAgZmlsdGVyKChqc29uKSA9PiBqc29uLmNvZGUgPT09IDApLFxyXG4gICAgICAgICAgICBtYXAoKGpzb24pID0+IGpzb24uZGF0YSksXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,79 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { tap } from 'rxjs/operators';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ export class RkDownFileService {
6
+ constructor(http) {
7
+ this.http = http;
8
+ }
9
+ /**
10
+ * 使用GET方法下载文件
11
+ * @param url 请求链接; url可以传递自定义文件名优先级最高;如:api/file/down?fileName=身份证.jpg
12
+ * @param params 请求参数
13
+ */
14
+ get(url, params) {
15
+ return this.http
16
+ .get(url, { params, responseType: 'blob', observe: 'response' })
17
+ .pipe(tap((response) => this.handleResponse(response, url)));
18
+ }
19
+ /**
20
+ * 使用POST方法下载文件
21
+ * @param url 请求链接; url可以传递自定义文件名优先级最高;如:api/file/down?fileName=身份证.jpg
22
+ * @param params 请求参数
23
+ */
24
+ post(url, params) {
25
+ return this.http
26
+ .post(url, params, { responseType: 'blob', observe: 'response' })
27
+ .pipe(tap((response) => this.handleResponse(response, url)));
28
+ }
29
+ handleResponse(response, url) {
30
+ const filename = this.getFileName(response.headers, url);
31
+ this.saveAs(response.body, filename);
32
+ }
33
+ getFileName(headers, url) {
34
+ const urlParams = new URLSearchParams(url.split('?')[1]);
35
+ const fileNameFromParams = urlParams.get('fileName');
36
+ if (fileNameFromParams) {
37
+ return decodeURIComponent(fileNameFromParams);
38
+ }
39
+ const disposition = headers.get('content-disposition');
40
+ if (disposition) {
41
+ const filenameMatch = disposition.match(/filename=([^;]+)/);
42
+ if (filenameMatch) {
43
+ return decodeURIComponent(filenameMatch[1]);
44
+ }
45
+ }
46
+ const filenameFromHeaders = headers.get('filename');
47
+ if (filenameFromHeaders) {
48
+ return decodeURIComponent(filenameFromHeaders);
49
+ }
50
+ const urlSegments = url.split('/');
51
+ return decodeURIComponent(urlSegments[urlSegments.length - 1].split('?')[0]);
52
+ }
53
+ /**
54
+ * 文件另存为
55
+ * @param body 二进制内容
56
+ * @param filename 文件名
57
+ */
58
+ saveAs(body, filename) {
59
+ const blob = new Blob([body], { type: 'application/x-msdownload' });
60
+ const blobURL = URL.createObjectURL(blob);
61
+ const link = document.createElement('a');
62
+ link.href = blobURL;
63
+ link.download = filename;
64
+ link.style.display = 'none';
65
+ document.body.appendChild(link);
66
+ link.click();
67
+ document.body.removeChild(link);
68
+ URL.revokeObjectURL(blobURL);
69
+ }
70
+ }
71
+ RkDownFileService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDownFileService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
72
+ RkDownFileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDownFileService, providedIn: 'root' });
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkDownFileService, decorators: [{
74
+ type: Injectable,
75
+ args: [{
76
+ providedIn: 'root',
77
+ }]
78
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bi5maWxlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJyYXJ5L2NvcmUvc2VydmljZXMvZG93bi5maWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUtyQyxNQUFNLE9BQU8saUJBQWlCO0lBQzFCLFlBQW9CLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7SUFBRyxDQUFDO0lBRXhDOzs7O09BSUc7SUFDSCxHQUFHLENBQUMsR0FBVyxFQUFFLE1BQTRCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDWCxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDO2FBQy9ELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQUksQ0FBQyxHQUFXLEVBQUUsTUFBNEI7UUFDMUMsT0FBTyxJQUFJLENBQUMsSUFBSTthQUNYLElBQUksQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLENBQUM7YUFDaEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTyxjQUFjLENBQUMsUUFBNEIsRUFBRSxHQUFXO1FBQzVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVPLFdBQVcsQ0FBQyxPQUFvQixFQUFFLEdBQVc7UUFDakQsTUFBTSxTQUFTLEdBQUcsSUFBSSxlQUFlLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sa0JBQWtCLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyRCxJQUFJLGtCQUFrQixFQUFFO1lBQ3BCLE9BQU8sa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNqRDtRQUVELE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUN2RCxJQUFJLFdBQVcsRUFBRTtZQUNiLE1BQU0sYUFBYSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUM1RCxJQUFJLGFBQWEsRUFBRTtnQkFDZixPQUFPLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQy9DO1NBQ0o7UUFFRCxNQUFNLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEQsSUFBSSxtQkFBbUIsRUFBRTtZQUNyQixPQUFPLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDbEQ7UUFFRCxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25DLE9BQU8sa0JBQWtCLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxNQUFNLENBQUMsSUFBVSxFQUFFLFFBQWdCO1FBQ3ZDLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDNUIsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDOzsrR0F0RVEsaUJBQWlCO21IQUFqQixpQkFBaUIsY0FGZCxNQUFNOzRGQUVULGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmtEb3duRmlsZVNlcnZpY2Uge1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7fVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5L2/55SoR0VU5pa55rOV5LiL6L295paH5Lu2XHJcbiAgICAgKiBAcGFyYW0gdXJsIOivt+axgumTvuaOpTsgdXJs5Y+v5Lul5Lyg6YCS6Ieq5a6a5LmJ5paH5Lu25ZCN5LyY5YWI57qn5pyA6auYO+Wmgu+8mmFwaS9maWxlL2Rvd24/ZmlsZU5hbWU96Lqr5Lu96K+BLmpwZ1xyXG4gICAgICogQHBhcmFtIHBhcmFtcyDor7fmsYLlj4LmlbBcclxuICAgICAqL1xyXG4gICAgZ2V0KHVybDogc3RyaW5nLCBwYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8QmxvYj4+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgICAgICAgIC5nZXQodXJsLCB7IHBhcmFtcywgcmVzcG9uc2VUeXBlOiAnYmxvYicsIG9ic2VydmU6ICdyZXNwb25zZScgfSlcclxuICAgICAgICAgICAgLnBpcGUodGFwKChyZXNwb25zZSkgPT4gdGhpcy5oYW5kbGVSZXNwb25zZShyZXNwb25zZSwgdXJsKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5L2/55SoUE9TVOaWueazleS4i+i9veaWh+S7tlxyXG4gICAgICogQHBhcmFtIHVybCDor7fmsYLpk77mjqU7IHVybOWPr+S7peS8oOmAkuiHquWumuS5ieaWh+S7tuWQjeS8mOWFiOe6p+acgOmrmDvlpoLvvJphcGkvZmlsZS9kb3duP2ZpbGVOYW1lPei6q+S7veivgS5qcGdcclxuICAgICAqIEBwYXJhbSBwYXJhbXMg6K+35rGC5Y+C5pWwXHJcbiAgICAgKi9cclxuICAgIHBvc3QodXJsOiBzdHJpbmcsIHBhcmFtcz86IFJlY29yZDxzdHJpbmcsIGFueT4pOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxCbG9iPj4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLnBvc3QodXJsLCBwYXJhbXMsIHsgcmVzcG9uc2VUeXBlOiAnYmxvYicsIG9ic2VydmU6ICdyZXNwb25zZScgfSlcclxuICAgICAgICAgICAgLnBpcGUodGFwKChyZXNwb25zZSkgPT4gdGhpcy5oYW5kbGVSZXNwb25zZShyZXNwb25zZSwgdXJsKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaGFuZGxlUmVzcG9uc2UocmVzcG9uc2U6IEh0dHBSZXNwb25zZTxCbG9iPiwgdXJsOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmaWxlbmFtZSA9IHRoaXMuZ2V0RmlsZU5hbWUocmVzcG9uc2UuaGVhZGVycywgdXJsKTtcclxuICAgICAgICB0aGlzLnNhdmVBcyhyZXNwb25zZS5ib2R5ISwgZmlsZW5hbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0RmlsZU5hbWUoaGVhZGVyczogSHR0cEhlYWRlcnMsIHVybDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCB1cmxQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHVybC5zcGxpdCgnPycpWzFdKTtcclxuICAgICAgICBjb25zdCBmaWxlTmFtZUZyb21QYXJhbXMgPSB1cmxQYXJhbXMuZ2V0KCdmaWxlTmFtZScpO1xyXG4gICAgICAgIGlmIChmaWxlTmFtZUZyb21QYXJhbXMpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChmaWxlTmFtZUZyb21QYXJhbXMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZGlzcG9zaXRpb24gPSBoZWFkZXJzLmdldCgnY29udGVudC1kaXNwb3NpdGlvbicpO1xyXG4gICAgICAgIGlmIChkaXNwb3NpdGlvbikge1xyXG4gICAgICAgICAgICBjb25zdCBmaWxlbmFtZU1hdGNoID0gZGlzcG9zaXRpb24ubWF0Y2goL2ZpbGVuYW1lPShbXjtdKykvKTtcclxuICAgICAgICAgICAgaWYgKGZpbGVuYW1lTWF0Y2gpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBkZWNvZGVVUklDb21wb25lbnQoZmlsZW5hbWVNYXRjaFsxXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGZpbGVuYW1lRnJvbUhlYWRlcnMgPSBoZWFkZXJzLmdldCgnZmlsZW5hbWUnKTtcclxuICAgICAgICBpZiAoZmlsZW5hbWVGcm9tSGVhZGVycykge1xyXG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGZpbGVuYW1lRnJvbUhlYWRlcnMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgdXJsU2VnbWVudHMgPSB1cmwuc3BsaXQoJy8nKTtcclxuICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHVybFNlZ21lbnRzW3VybFNlZ21lbnRzLmxlbmd0aCAtIDFdLnNwbGl0KCc/JylbMF0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog5paH5Lu25Y+m5a2Y5Li6XHJcbiAgICAgKiBAcGFyYW0gYm9keSDkuozov5vliLblhoXlrrlcclxuICAgICAqIEBwYXJhbSBmaWxlbmFtZSDmlofku7blkI1cclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBzYXZlQXMoYm9keTogQmxvYiwgZmlsZW5hbWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYm9keV0sIHsgdHlwZTogJ2FwcGxpY2F0aW9uL3gtbXNkb3dubG9hZCcgfSk7XHJcbiAgICAgICAgY29uc3QgYmxvYlVSTCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcbiAgICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcclxuICAgICAgICBsaW5rLmhyZWYgPSBibG9iVVJMO1xyXG4gICAgICAgIGxpbmsuZG93bmxvYWQgPSBmaWxlbmFtZTtcclxuICAgICAgICBsaW5rLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuICAgICAgICBsaW5rLmNsaWNrKCk7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcclxuICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKGJsb2JVUkwpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { AppConfig } from './app.config';
3
+ import { CacheHttpTemplate } from './cache.http.service';
4
+ import { filter, map, tap } from 'rxjs/operators';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common/http";
7
+ export class RkFieldSchemeService {
8
+ constructor(http) {
9
+ this.http = http;
10
+ this.appSettings = AppConfig.settings;
11
+ }
12
+ /**
13
+ * 通过字段方案标识符获得字段方案内容
14
+ * @param permission 字段方案标识符
15
+ * @returns 字段方案
16
+ */
17
+ getData(permission) {
18
+ if (this.appSettings && this.appSettings.servers.AREA_CODE) {
19
+ permission = `${this.appSettings.servers.AREA_CODE}_${permission}`;
20
+ }
21
+ const url = `api/gl-service-sys-core/v1/core/system/field/scheme/selectSchemeByIdentifier`;
22
+ return this.http.get(...CacheHttpTemplate `${url}/${permission}`).pipe(tap((json) => {
23
+ if (json.code !== 0) {
24
+ throw new Error(`通过字段方案标识符获得字段方案内容 ${url} 出现错误: ${json.msg}`);
25
+ }
26
+ }), filter((json) => json.code === 0), map((json) => json.data));
27
+ }
28
+ }
29
+ RkFieldSchemeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkFieldSchemeService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
30
+ RkFieldSchemeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkFieldSchemeService, providedIn: 'root' });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RkFieldSchemeService, decorators: [{
32
+ type: Injectable,
33
+ args: [{
34
+ providedIn: 'root',
35
+ }]
36
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuc2NoZW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJyYXJ5L2NvcmUvc2VydmljZXMvZmllbGQuc2NoZW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFPbEQsTUFBTSxPQUFPLG9CQUFvQjtJQUU3QixZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBRDVCLGdCQUFXLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUNGLENBQUM7SUFFeEM7Ozs7T0FJRztJQUNILE9BQU8sQ0FBQyxVQUFrQjtRQUN0QixJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQ3hELFVBQVUsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztTQUN0RTtRQUNELE1BQU0sR0FBRyxHQUFHLDhFQUE4RSxDQUFDO1FBQzNGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUksR0FBRyxpQkFBaUIsQ0FBQSxHQUFHLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDcEUsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDVCxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxFQUFFO2dCQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixHQUFHLFVBQVUsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7YUFDakU7UUFDTCxDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLEVBQ2pDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUMzQixDQUFDO0lBQ04sQ0FBQzs7a0hBdkJRLG9CQUFvQjtzSEFBcEIsb0JBQW9CLGNBRmpCLE1BQU07NEZBRVQsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBcHBDb25maWcgfSBmcm9tICcuL2FwcC5jb25maWcnO1xyXG5pbXBvcnQgeyBDYWNoZUh0dHBUZW1wbGF0ZSB9IGZyb20gJy4vY2FjaGUuaHR0cC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSUZpZWxkU2NoZW1lIH0gZnJvbSAnQHJlc2tpbi9jb3JlL2VudGl0eS9zY2hlbWUnO1xyXG5pbXBvcnQgeyBSIH0gZnJvbSAnQHJlc2tpbi9jb3JlL2VudGl0eSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSa0ZpZWxkU2NoZW1lU2VydmljZSB7XHJcbiAgICBwcml2YXRlIGFwcFNldHRpbmdzID0gQXBwQ29uZmlnLnNldHRpbmdzO1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7fVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog6YCa6L+H5a2X5q615pa55qGI5qCH6K+G56ym6I635b6X5a2X5q615pa55qGI5YaF5a65XHJcbiAgICAgKiBAcGFyYW0gcGVybWlzc2lvbiDlrZfmrrXmlrnmoYjmoIfor4bnrKZcclxuICAgICAqIEByZXR1cm5zIOWtl+auteaWueahiFxyXG4gICAgICovXHJcbiAgICBnZXREYXRhKHBlcm1pc3Npb246IHN0cmluZyk6IE9ic2VydmFibGU8SUZpZWxkU2NoZW1lPiB7XHJcbiAgICAgICAgaWYgKHRoaXMuYXBwU2V0dGluZ3MgJiYgdGhpcy5hcHBTZXR0aW5ncy5zZXJ2ZXJzLkFSRUFfQ09ERSkge1xyXG4gICAgICAgICAgICBwZXJtaXNzaW9uID0gYCR7dGhpcy5hcHBTZXR0aW5ncy5zZXJ2ZXJzLkFSRUFfQ09ERX1fJHtwZXJtaXNzaW9ufWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHVybCA9IGBhcGkvZ2wtc2VydmljZS1zeXMtY29yZS92MS9jb3JlL3N5c3RlbS9maWVsZC9zY2hlbWUvc2VsZWN0U2NoZW1lQnlJZGVudGlmaWVyYDtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxSPiguLi5DYWNoZUh0dHBUZW1wbGF0ZWAke3VybH0vJHtwZXJtaXNzaW9ufWApLnBpcGUoXHJcbiAgICAgICAgICAgIHRhcCgoanNvbikgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGpzb24uY29kZSAhPT0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihg6YCa6L+H5a2X5q615pa55qGI5qCH6K+G56ym6I635b6X5a2X5q615pa55qGI5YaF5a65ICR7dXJsfSDlh7rnjrDplJnor686ICR7anNvbi5tc2d9YCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICBmaWx0ZXIoKGpzb24pID0+IGpzb24uY29kZSA9PT0gMCksXHJcbiAgICAgICAgICAgIG1hcCgoanNvbikgPT4ganNvbi5kYXRhKSxcclxuICAgICAgICApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==