bx-rest 0.0.34 → 0.1.0
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.
- package/README.md +60 -4
- package/esm2020/functions/mapResult.mjs +2 -2
- package/esm2020/map/disk/base.mjs +57 -0
- package/esm2020/map/disk/folder.mjs +17 -0
- package/esm2020/map/disk/storage.mjs +17 -0
- package/esm2020/map/lists/element.mjs +8 -8
- package/esm2020/map/lists.mjs +19 -0
- package/esm2020/map/task.mjs +115 -0
- package/esm2020/map/user.mjs +89 -0
- package/esm2020/public-api.mjs +4 -2
- package/esm2020/request/disk/file.mjs +38 -0
- package/esm2020/request/disk/folder.mjs +46 -0
- package/esm2020/request/disk/storage.mjs +46 -0
- package/esm2020/request/disk.mjs +19 -0
- package/esm2020/request/lists/element.mjs +5 -7
- package/esm2020/request/tasks/task.mjs +61 -0
- package/esm2020/request/tasks.mjs +17 -0
- package/esm2020/request/user.mjs +23 -55
- package/esm2020/request-navvy/disk/file.mjs +43 -0
- package/esm2020/request-navvy/disk/folder.mjs +45 -0
- package/esm2020/request-navvy/disk/operation.mjs +95 -0
- package/esm2020/request-navvy/disk/storage.mjs +54 -0
- package/esm2020/request-navvy/disk.mjs +21 -0
- package/esm2020/request-navvy/lists/element.mjs +24 -0
- package/esm2020/request-navvy/lists.mjs +25 -0
- package/esm2020/request-navvy/tasks/task.mjs +64 -0
- package/esm2020/request-navvy/tasks.mjs +17 -0
- package/esm2020/request-navvy/user.mjs +53 -0
- package/esm2020/rest.mjs +42 -4
- package/esm2020/services/base.mjs +3 -2
- package/esm2020/services/http/HttpBX.mjs +15 -35
- package/esm2020/services/http/HttpData.mjs +2 -8
- package/esm2020/services/http/http.mjs +8 -8
- package/esm2020/services/http/sessionKey.mjs +36 -20
- package/esm2020/settings.mjs +4 -5
- package/esm2020/typification/rest/base/answer.mjs +2 -0
- package/esm2020/typification/rest/base/filterGenerator.mjs +2 -0
- package/esm2020/typification/rest/batch/batchRequestParam.mjs +1 -1
- package/esm2020/typification/rest/disk/file.mjs +2 -0
- package/esm2020/typification/rest/disk/folder.mjs +2 -0
- package/esm2020/typification/rest/disk/map.mjs +2 -0
- package/esm2020/typification/rest/disk/storage/uploadfile.mjs +2 -0
- package/esm2020/typification/rest/lists/element/get.mjs +1 -1
- package/esm2020/typification/rest/task/fieldsForSend.mjs +2 -0
- package/esm2020/typification/rest/task/people/base.mjs +2 -0
- package/esm2020/typification/rest/task/task.mjs +2 -0
- package/esm2020/typification/settings.mjs +1 -1
- package/fesm2015/bx-rest.mjs +1094 -312
- package/fesm2015/bx-rest.mjs.map +1 -1
- package/fesm2020/bx-rest.mjs +1092 -312
- package/fesm2020/bx-rest.mjs.map +1 -1
- package/functions/mapResult.d.ts +4 -2
- package/map/disk/base.d.ts +12 -0
- package/map/disk/folder.d.ts +9 -0
- package/map/disk/storage.d.ts +9 -0
- package/map/lists/element.d.ts +4 -4
- package/map/lists.d.ts +9 -0
- package/map/task.d.ts +8 -0
- package/map/user.d.ts +12 -0
- package/package.json +1 -1
- package/public-api.d.ts +3 -1
- package/request/disk/file.d.ts +25 -0
- package/request/disk/folder.d.ts +26 -0
- package/request/disk/storage.d.ts +34 -0
- package/request/disk.d.ts +10 -0
- package/request/lists/element.d.ts +3 -5
- package/request/tasks/task.d.ts +55 -0
- package/request/tasks.d.ts +8 -0
- package/request/user.d.ts +9 -20
- package/request-navvy/disk/file.d.ts +19 -0
- package/request-navvy/disk/folder.d.ts +11 -0
- package/request-navvy/disk/operation.d.ts +23 -0
- package/request-navvy/disk/storage.d.ts +23 -0
- package/request-navvy/disk.d.ts +12 -0
- package/request-navvy/lists/element.d.ts +12 -0
- package/request-navvy/lists.d.ts +15 -0
- package/request-navvy/tasks/task.d.ts +16 -0
- package/request-navvy/tasks.d.ts +8 -0
- package/request-navvy/user.d.ts +19 -0
- package/rest.d.ts +25 -1
- package/services/http/HttpBX.d.ts +3 -12
- package/services/http/HttpData.d.ts +1 -3
- package/services/http/http.d.ts +0 -5
- package/services/http/sessionKey.d.ts +13 -2
- package/typification/rest/base/{httpAnswerBX.d.ts → answer.d.ts} +1 -1
- package/typification/rest/base/filterGenerator.d.ts +5 -0
- package/typification/rest/batch/batchRequestParam.d.ts +2 -2
- package/typification/rest/disk/file.d.ts +14 -0
- package/typification/rest/disk/folder.d.ts +47 -0
- package/typification/rest/disk/map.d.ts +6 -0
- package/typification/rest/disk/storage/uploadfile.d.ts +9 -0
- package/typification/rest/lists/element/get.d.ts +9 -1
- package/typification/rest/task/fieldsForSend.d.ts +61 -0
- package/typification/rest/task/people/base.d.ts +12 -0
- package/typification/rest/task/task.d.ts +102 -0
- package/typification/settings.d.ts +3 -4
- package/esm2020/services/map/base.mjs +0 -14
- package/esm2020/services/map/rest/user.mjs +0 -89
- package/esm2020/typification/rest/base/httpAnswerBX.mjs +0 -2
- package/services/map/base.d.ts +0 -6
- package/services/map/rest/user.d.ts +0 -12
package/fesm2020/bx-rest.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { NgModule, inject, Component, ViewEncapsulation, Inject, Injectable } from '@angular/core';
|
|
3
|
-
import { Subscription, filter, take, of, throwError, forkJoin, mergeMap } from 'rxjs';
|
|
4
|
-
import { map, catchError, mergeMap as mergeMap$1, first } from 'rxjs/operators';
|
|
2
|
+
import { NgModule, inject, Component, ViewEncapsulation, Inject, Injectable, Optional } from '@angular/core';
|
|
3
|
+
import { Subscription, filter, take, of, throwError, forkJoin, mergeMap, tap } from 'rxjs';
|
|
4
|
+
import { map, catchError, mergeMap as mergeMap$1, first, take as take$1 } from 'rxjs/operators';
|
|
5
5
|
import clone from 'just-clone';
|
|
6
6
|
import * as i1$1 from '@angular/material/snack-bar';
|
|
7
7
|
import { MatSnackBarRef, MAT_SNACK_BAR_DATA } from '@angular/material/snack-bar';
|
|
@@ -13,10 +13,26 @@ import * as i1$2 from '@ngrx/store';
|
|
|
13
13
|
import { createAction, props, createReducer, on } from '@ngrx/store';
|
|
14
14
|
import { DateTime } from 'luxon';
|
|
15
15
|
import * as i2$1 from '@angular/router';
|
|
16
|
-
import flatten from 'just-flatten-it';
|
|
17
16
|
import * as i1$3 from '@angular/common/http';
|
|
18
17
|
import { HttpParams } from '@angular/common/http';
|
|
19
18
|
|
|
19
|
+
const REST_SETTINGS = {
|
|
20
|
+
auth: {
|
|
21
|
+
source: 'cookies',
|
|
22
|
+
key: 'auth'
|
|
23
|
+
},
|
|
24
|
+
urls: {
|
|
25
|
+
home: 'b24.trace-studio.com'
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
function BXRestMapResult(v) {
|
|
30
|
+
if (v && (v.result || typeof v.result === 'boolean')) {
|
|
31
|
+
return v.result;
|
|
32
|
+
}
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
|
|
20
36
|
const $get = 'get';
|
|
21
37
|
const $add = 'add';
|
|
22
38
|
const $set = 'set';
|
|
@@ -560,7 +576,7 @@ class BaseServices {
|
|
|
560
576
|
}
|
|
561
577
|
getHomeAddress() {
|
|
562
578
|
// return this.prepareBaseAddress(environment.urls.home)
|
|
563
|
-
return this.prepareBaseAddress(
|
|
579
|
+
return this.prepareBaseAddress(REST_SETTINGS.urls.home);
|
|
564
580
|
}
|
|
565
581
|
dateDiff(a, b) {
|
|
566
582
|
return new Date(a.valueOf() - b.valueOf());
|
|
@@ -664,17 +680,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
664
680
|
}]
|
|
665
681
|
}] });
|
|
666
682
|
|
|
667
|
-
const REST_SETTINGS = {
|
|
668
|
-
support: {
|
|
669
|
-
map: true,
|
|
670
|
-
result: true
|
|
671
|
-
},
|
|
672
|
-
auth: 'cookies',
|
|
673
|
-
urls: {
|
|
674
|
-
home: 'b24.trace-studio.com'
|
|
675
|
-
}
|
|
676
|
-
};
|
|
677
|
-
|
|
678
683
|
class RestServices {
|
|
679
684
|
constructor() {
|
|
680
685
|
this.BX24 = false;
|
|
@@ -695,7 +700,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
695
700
|
}], ctorParameters: function () { return []; } });
|
|
696
701
|
|
|
697
702
|
class SessionKeyServices extends BaseServices {
|
|
698
|
-
constructor(store, route, BxApiLib) {
|
|
703
|
+
constructor(store, route, BxApiLib, REST_SETTINGS) {
|
|
699
704
|
super();
|
|
700
705
|
this.store = store;
|
|
701
706
|
this.route = route;
|
|
@@ -704,6 +709,7 @@ class SessionKeyServices extends BaseServices {
|
|
|
704
709
|
this.subscribe = {
|
|
705
710
|
authData: new Subscription()
|
|
706
711
|
};
|
|
712
|
+
this.REST_SETTINGS = REST_SETTINGS;
|
|
707
713
|
this.authData$ = this.store.select('auth');
|
|
708
714
|
this.authData$.subscribe(authData => {
|
|
709
715
|
if ((authData && !authData.access_token.length) || !authData) {
|
|
@@ -800,24 +806,34 @@ class SessionKeyServices extends BaseServices {
|
|
|
800
806
|
this.subscribe.authData.unsubscribe();
|
|
801
807
|
}
|
|
802
808
|
getAuth() {
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
809
|
+
switch (REST_SETTINGS.auth.key) {
|
|
810
|
+
case 'auth':
|
|
811
|
+
return CookiesServices.get('auth');
|
|
812
|
+
default:
|
|
813
|
+
if (window.BX && window.BX.bitrix_sessid()) {
|
|
814
|
+
return window.BX.bitrix_sessid();
|
|
815
|
+
}
|
|
816
|
+
else if (this.getSessid().length) {
|
|
817
|
+
let str = this.getSessid();
|
|
818
|
+
return (str) ? str : '';
|
|
819
|
+
}
|
|
820
|
+
else {
|
|
821
|
+
return CookiesServices.get('auth');
|
|
822
|
+
}
|
|
812
823
|
}
|
|
813
824
|
}
|
|
814
825
|
getKeyAuth() {
|
|
815
|
-
if (
|
|
816
|
-
|
|
817
|
-
return 'sessid';
|
|
826
|
+
if (REST_SETTINGS.auth.key.length) {
|
|
827
|
+
return REST_SETTINGS.auth.key;
|
|
818
828
|
}
|
|
819
829
|
else {
|
|
820
|
-
|
|
830
|
+
if (window.BX && window.BX.bitrix_sessid()
|
|
831
|
+
|| this.getSessid().length) {
|
|
832
|
+
return 'sessid';
|
|
833
|
+
}
|
|
834
|
+
else {
|
|
835
|
+
return 'auth';
|
|
836
|
+
}
|
|
821
837
|
}
|
|
822
838
|
}
|
|
823
839
|
getSessid() {
|
|
@@ -843,7 +859,7 @@ class SessionKeyServices extends BaseServices {
|
|
|
843
859
|
return false;
|
|
844
860
|
}
|
|
845
861
|
getAuthParams() {
|
|
846
|
-
switch (REST_SETTINGS.auth) {
|
|
862
|
+
switch (REST_SETTINGS.auth.source) {
|
|
847
863
|
case 'cookies':
|
|
848
864
|
return of(this.getAuth());
|
|
849
865
|
default:
|
|
@@ -851,21 +867,26 @@ class SessionKeyServices extends BaseServices {
|
|
|
851
867
|
}
|
|
852
868
|
}
|
|
853
869
|
getBaseUrl() {
|
|
854
|
-
return of(this.prepareBaseAddress(REST_SETTINGS.urls.home, 'rest'));
|
|
870
|
+
return of(this.prepareBaseAddress(this.REST_SETTINGS.urls.home, 'rest'));
|
|
855
871
|
// return this.authData$.pipe( // TODO: разобраться позже
|
|
856
872
|
// take(1),
|
|
857
873
|
// map(v => (v && v.domain) ? this.prepareBaseAddress(v.domain) : undefined)
|
|
858
874
|
// )
|
|
859
875
|
}
|
|
860
876
|
}
|
|
861
|
-
SessionKeyServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionKeyServices, deps: [{ token: i1$2.Store }, { token: i2$1.ActivatedRoute }, { token: RestServices }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
877
|
+
SessionKeyServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionKeyServices, deps: [{ token: i1$2.Store }, { token: i2$1.ActivatedRoute }, { token: RestServices }, { token: REST_SETTINGS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
862
878
|
SessionKeyServices.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionKeyServices, providedIn: 'root' });
|
|
863
879
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionKeyServices, decorators: [{
|
|
864
880
|
type: Injectable,
|
|
865
881
|
args: [{
|
|
866
882
|
providedIn: 'root'
|
|
867
883
|
}]
|
|
868
|
-
}], ctorParameters: function () { return [{ type: i1$2.Store }, { type: i2$1.ActivatedRoute }, { type: RestServices }
|
|
884
|
+
}], ctorParameters: function () { return [{ type: i1$2.Store }, { type: i2$1.ActivatedRoute }, { type: RestServices }, { type: undefined, decorators: [{
|
|
885
|
+
type: Optional
|
|
886
|
+
}, {
|
|
887
|
+
type: Inject,
|
|
888
|
+
args: [REST_SETTINGS]
|
|
889
|
+
}] }]; } });
|
|
869
890
|
|
|
870
891
|
class HttpData extends BaseServices {
|
|
871
892
|
constructor() {
|
|
@@ -970,12 +991,6 @@ class HttpData extends BaseServices {
|
|
|
970
991
|
}
|
|
971
992
|
return sendHttpParams;
|
|
972
993
|
}
|
|
973
|
-
mapResult(v) {
|
|
974
|
-
if (v && (v.result || typeof v.result === 'boolean')) {
|
|
975
|
-
return v.result;
|
|
976
|
-
}
|
|
977
|
-
return undefined;
|
|
978
|
-
}
|
|
979
994
|
sliceArrayIntoChunks(arr, chunkSize) {
|
|
980
995
|
const res = [];
|
|
981
996
|
for (let i = 0; i < arr.length; i += chunkSize) {
|
|
@@ -1081,12 +1096,13 @@ class HttpServices extends BaseHttpServices {
|
|
|
1081
1096
|
}
|
|
1082
1097
|
return res;
|
|
1083
1098
|
}
|
|
1084
|
-
mapBranchResult(res)
|
|
1085
|
-
|
|
1086
|
-
}
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1099
|
+
// mapBranchResult<T>(res: iBatchRequestAnswer<T>[]){
|
|
1100
|
+
// return Object.assign([], ...res.map(i => (i.result && i.result.result) ? i.result.result : undefined)) as {[key:keyBatch]: T}
|
|
1101
|
+
// }
|
|
1102
|
+
//
|
|
1103
|
+
// mapBranchResultWithoutKey<T>(res: iBatchRequestAnswer<T>[]): T[]{
|
|
1104
|
+
// return flatten<T>(Object.assign([], ...res.map(i => (i.result && i.result.result) ? i.result.result : undefined)))
|
|
1105
|
+
// }
|
|
1090
1106
|
httpPost(url, params = {}, textError = '', settings = this.defSettings) {
|
|
1091
1107
|
return this.session.getAuthParams().pipe(mergeMap(auth => {
|
|
1092
1108
|
if (auth) {
|
|
@@ -1155,13 +1171,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
1155
1171
|
}]
|
|
1156
1172
|
}], ctorParameters: function () { return [{ type: i1$3.HttpClient }, { type: SnackBarService }, { type: SessionKeyServices }]; } });
|
|
1157
1173
|
|
|
1158
|
-
|
|
1159
|
-
if (v && (v.result || typeof v.result === 'boolean')) {
|
|
1160
|
-
return v.result;
|
|
1161
|
-
}
|
|
1162
|
-
return undefined;
|
|
1163
|
-
}
|
|
1164
|
-
|
|
1174
|
+
// type TransformFunction<T, R> = (input: T) => R;
|
|
1165
1175
|
class HttpBXServices extends HttpServices {
|
|
1166
1176
|
timeNowOnServer() {
|
|
1167
1177
|
return this.httpGet('server.time').pipe(map(v => {
|
|
@@ -1203,38 +1213,20 @@ class HttpBXServices extends HttpServices {
|
|
|
1203
1213
|
}
|
|
1204
1214
|
return res;
|
|
1205
1215
|
}
|
|
1206
|
-
mapBranchResult(res) {
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
// ? Object.assign(v, {result: v.result.map(i => mapHttp(i))}) as iHttpAnswerBX<R>
|
|
1221
|
-
// :
|
|
1222
|
-
return Object.assign(v, { result: mapHttp(v.result) });
|
|
1223
|
-
}
|
|
1224
|
-
return v;
|
|
1225
|
-
}), map(v => (v && REST_SETTINGS.support.result) ? mapResult : v));
|
|
1226
|
-
}
|
|
1227
|
-
get(name, params = {}, textError = '', mapHttp = (v) => {
|
|
1228
|
-
return v;
|
|
1229
|
-
}, settings = this.defSettings) {
|
|
1230
|
-
return this.httpGet(this.getNameMethod(name), params, textError, settings).pipe(map(v => {
|
|
1231
|
-
if (v && v.result && REST_SETTINGS.support.map) {
|
|
1232
|
-
return Array.isArray(v.result)
|
|
1233
|
-
? Object.assign(v, { result: v.result.map(i => mapHttp(i)) })
|
|
1234
|
-
: Object.assign(v, { result: mapHttp(v.result) });
|
|
1235
|
-
}
|
|
1236
|
-
return v;
|
|
1237
|
-
}), map(v => (v && REST_SETTINGS.support.result) ? mapResult : v));
|
|
1216
|
+
// override mapBranchResult<T>(res: iBatchRequestAnswer<T>[]) {
|
|
1217
|
+
// return Object.assign([], ...res.map(i => (i.result && i.result.result) ? i.result.result : undefined)) as {
|
|
1218
|
+
// [key: keyBatch]: T
|
|
1219
|
+
// }
|
|
1220
|
+
// }
|
|
1221
|
+
//
|
|
1222
|
+
// override mapBranchResultWithoutKey<T>(res: iBatchRequestAnswer<T>[]): T[] {
|
|
1223
|
+
// return flatten<T>(Object.assign([], ...res.map(i => (i.result && i.result.result) ? i.result.result : undefined)))
|
|
1224
|
+
// }
|
|
1225
|
+
post(name, params = {}, textError = '', settings = this.defSettings) {
|
|
1226
|
+
return this.httpPost(this.getNameMethod(name), params, textError, settings);
|
|
1227
|
+
}
|
|
1228
|
+
get(name, params = {}, textError = '', settings = this.defSettings) {
|
|
1229
|
+
return this.httpGet(this.getNameMethod(name), params, textError, settings);
|
|
1238
1230
|
}
|
|
1239
1231
|
httpPost(url, params = {}, textError = '', settings = this.defSettings) {
|
|
1240
1232
|
return this.session.getAuthParams().pipe(mergeMap(auth => {
|
|
@@ -1304,40 +1296,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
1304
1296
|
}]
|
|
1305
1297
|
}] });
|
|
1306
1298
|
|
|
1307
|
-
let BaseMapServices$1 = class BaseMapServices extends BaseServices {
|
|
1308
|
-
};
|
|
1309
|
-
BaseMapServices$1.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices$1, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
1310
|
-
BaseMapServices$1.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices$1, providedIn: 'root' });
|
|
1311
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices$1, decorators: [{
|
|
1312
|
-
type: Injectable,
|
|
1313
|
-
args: [{
|
|
1314
|
-
providedIn: 'root'
|
|
1315
|
-
}]
|
|
1316
|
-
}] });
|
|
1317
|
-
|
|
1318
|
-
class BXRestListsElementMap extends BaseMapServices$1 {
|
|
1319
|
-
get(item) {
|
|
1320
|
-
return Object.assign(item, {
|
|
1321
|
-
BP_PUBLISHED: item.BP_PUBLISHED === 'Y',
|
|
1322
|
-
CREATED_BY: this.toNum(item.CREATED_BY),
|
|
1323
|
-
IBLOCK_ID: this.toNum(item.IBLOCK_ID),
|
|
1324
|
-
ID: this.toNum(item.ID)
|
|
1325
|
-
});
|
|
1326
|
-
}
|
|
1327
|
-
}
|
|
1328
|
-
BXRestListsElementMap.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementMap, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
1329
|
-
BXRestListsElementMap.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementMap, providedIn: 'root' });
|
|
1330
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElementMap, decorators: [{
|
|
1331
|
-
type: Injectable,
|
|
1332
|
-
args: [{
|
|
1333
|
-
providedIn: 'root'
|
|
1334
|
-
}]
|
|
1335
|
-
}] });
|
|
1336
|
-
|
|
1337
1299
|
class BXRestListsElement {
|
|
1338
|
-
constructor(http
|
|
1300
|
+
constructor(http) {
|
|
1339
1301
|
this.http = http;
|
|
1340
|
-
this.mapResult = mapResult;
|
|
1341
1302
|
this.url = {
|
|
1342
1303
|
add: [$lists, $element, $add],
|
|
1343
1304
|
delete: [$lists, $element, $delete],
|
|
@@ -1347,19 +1308,19 @@ class BXRestListsElement {
|
|
|
1347
1308
|
};
|
|
1348
1309
|
}
|
|
1349
1310
|
get(pram) {
|
|
1350
|
-
return this.http.post(this.url.get, pram, 'Не Удалось получить элемент списка'
|
|
1311
|
+
return this.http.post(this.url.get, pram, 'Не Удалось получить элемент списка');
|
|
1351
1312
|
}
|
|
1352
1313
|
customPipe() {
|
|
1353
1314
|
}
|
|
1354
1315
|
}
|
|
1355
|
-
BXRestListsElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElement, deps: [{ token: HttpBXServices }
|
|
1316
|
+
BXRestListsElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElement, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1356
1317
|
BXRestListsElement.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElement, providedIn: 'root' });
|
|
1357
1318
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestListsElement, decorators: [{
|
|
1358
1319
|
type: Injectable,
|
|
1359
1320
|
args: [{
|
|
1360
1321
|
providedIn: 'root'
|
|
1361
1322
|
}]
|
|
1362
|
-
}], ctorParameters: function () { return [{ type: HttpBXServices }
|
|
1323
|
+
}], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
|
|
1363
1324
|
|
|
1364
1325
|
class BXRestLists {
|
|
1365
1326
|
constructor(element) {
|
|
@@ -1382,70 +1343,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
1382
1343
|
}]
|
|
1383
1344
|
}], ctorParameters: function () { return [{ type: BXRestListsElement }]; } });
|
|
1384
1345
|
|
|
1385
|
-
const save = createAction('[Users Component] Save', props());
|
|
1386
|
-
const saveArr = createAction('[Users Component] Save Arr', props());
|
|
1387
|
-
const update = createAction('[Users Component] Update', props());
|
|
1388
|
-
const loadAll = createAction('[Users Component] loadAll', props());
|
|
1389
|
-
const saveSelf = createAction('[Users Component] saveSelf', props());
|
|
1390
|
-
const saveIDLoadedDepartment = createAction('[Users Component] saveIDLoadedDepartment', props());
|
|
1391
|
-
const initialState = {
|
|
1392
|
-
load: {
|
|
1393
|
-
all: false,
|
|
1394
|
-
department: []
|
|
1395
|
-
},
|
|
1396
|
-
self: undefined,
|
|
1397
|
-
data: []
|
|
1398
|
-
};
|
|
1399
|
-
const _usersReducer = createReducer(initialState, on(saveIDLoadedDepartment, (s, data) => {
|
|
1400
|
-
let copy = clone(s);
|
|
1401
|
-
copy.load.department = [...copy.load.department, ...data.id];
|
|
1402
|
-
return copy;
|
|
1403
|
-
}), on(save, (s, data) => {
|
|
1404
|
-
const find = s.data.find(v => v.ID === data.ID);
|
|
1405
|
-
if (!find) {
|
|
1406
|
-
const copy = clone(s);
|
|
1407
|
-
copy.data.push(data);
|
|
1408
|
-
return copy;
|
|
1409
|
-
}
|
|
1410
|
-
return s;
|
|
1411
|
-
}), on(saveArr, (s, data) => {
|
|
1412
|
-
const copy = clone(s);
|
|
1413
|
-
if (copy.data && copy.data.length) {
|
|
1414
|
-
for (const user of data.arr) {
|
|
1415
|
-
const find = copy.data.find(v => v.ID === user.ID);
|
|
1416
|
-
if (!find) {
|
|
1417
|
-
copy.data.push(user);
|
|
1418
|
-
}
|
|
1419
|
-
}
|
|
1420
|
-
}
|
|
1421
|
-
else {
|
|
1422
|
-
copy.data = [...data.arr];
|
|
1423
|
-
}
|
|
1424
|
-
return copy;
|
|
1425
|
-
}), on(update, (s, data) => {
|
|
1426
|
-
const copy = clone(s);
|
|
1427
|
-
let find = copy.data.findIndex(v => v.ID === data.ID);
|
|
1428
|
-
if (find !== -1) {
|
|
1429
|
-
const copy = clone(s);
|
|
1430
|
-
copy.data.splice(find, 1, data);
|
|
1431
|
-
// copy.data.push(data)
|
|
1432
|
-
return copy;
|
|
1433
|
-
}
|
|
1434
|
-
return s;
|
|
1435
|
-
}), on(loadAll, (s, data) => {
|
|
1436
|
-
if (data.load !== s.load.all) {
|
|
1437
|
-
const copy = clone(s);
|
|
1438
|
-
copy.load.all = data.load;
|
|
1439
|
-
return copy;
|
|
1440
|
-
}
|
|
1441
|
-
return s;
|
|
1442
|
-
}), on(saveSelf, (s, data) => {
|
|
1443
|
-
return { ...s, self: data.self };
|
|
1444
|
-
}));
|
|
1445
|
-
function usersReducer(state = initialState, action) {
|
|
1446
|
-
return _usersReducer(state, action);
|
|
1447
|
-
}
|
|
1448
|
-
|
|
1449
1346
|
class BaseMapServices extends BaseServices {
|
|
1450
1347
|
}
|
|
1451
1348
|
BaseMapServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -1457,100 +1354,83 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
1457
1354
|
}]
|
|
1458
1355
|
}] });
|
|
1459
1356
|
|
|
1460
|
-
class
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
});
|
|
1468
|
-
if (user.LAST_LOGIN) {
|
|
1469
|
-
res.LAST_LOGIN = this.toDate(user.LAST_LOGIN);
|
|
1470
|
-
}
|
|
1471
|
-
return res;
|
|
1357
|
+
class BXRestMapListsElement extends BaseMapServices {
|
|
1358
|
+
get(items) {
|
|
1359
|
+
return items.map(item => Object.assign(item, {
|
|
1360
|
+
BP_PUBLISHED: item.BP_PUBLISHED === 'Y',
|
|
1361
|
+
CREATED_BY: this.toNum(item.CREATED_BY),
|
|
1362
|
+
IBLOCK_ID: this.toNum(item.IBLOCK_ID),
|
|
1363
|
+
ID: this.toNum(item.ID)
|
|
1364
|
+
}));
|
|
1472
1365
|
}
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1366
|
+
}
|
|
1367
|
+
BXRestMapListsElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapListsElement, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
1368
|
+
BXRestMapListsElement.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapListsElement, providedIn: 'root' });
|
|
1369
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapListsElement, decorators: [{
|
|
1370
|
+
type: Injectable,
|
|
1371
|
+
args: [{
|
|
1372
|
+
providedIn: 'root'
|
|
1373
|
+
}]
|
|
1374
|
+
}] });
|
|
1375
|
+
|
|
1376
|
+
class BXRestMapLists extends BaseMapServices {
|
|
1377
|
+
constructor(element) {
|
|
1378
|
+
super();
|
|
1379
|
+
this.element = element;
|
|
1481
1380
|
}
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
res = user.LAST_NAME + ' ' + user.NAME + ' ' + user.SECOND_NAME;
|
|
1497
|
-
}
|
|
1498
|
-
return res.trim();
|
|
1381
|
+
}
|
|
1382
|
+
BXRestMapLists.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapLists, deps: [{ token: BXRestMapListsElement }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1383
|
+
BXRestMapLists.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapLists, providedIn: 'root' });
|
|
1384
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapLists, decorators: [{
|
|
1385
|
+
type: Injectable,
|
|
1386
|
+
args: [{
|
|
1387
|
+
providedIn: 'root'
|
|
1388
|
+
}]
|
|
1389
|
+
}], ctorParameters: function () { return [{ type: BXRestMapListsElement }]; } });
|
|
1390
|
+
|
|
1391
|
+
class BXRestNavvyListsElement {
|
|
1392
|
+
constructor(BXRestListsElement, BXRestMap) {
|
|
1393
|
+
this.BXRestListsElement = BXRestListsElement;
|
|
1394
|
+
this.BXRestMap = BXRestMap;
|
|
1499
1395
|
}
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
if (!user.LAST_NAME) {
|
|
1503
|
-
const NAME = (user.NAME) ? user.NAME : '';
|
|
1504
|
-
res = NAME;
|
|
1505
|
-
}
|
|
1506
|
-
else if (!user.NAME) {
|
|
1507
|
-
res = user.LAST_NAME;
|
|
1508
|
-
}
|
|
1509
|
-
else {
|
|
1510
|
-
res = user.LAST_NAME + ' ' + user.NAME;
|
|
1511
|
-
}
|
|
1512
|
-
return res.trim();
|
|
1396
|
+
get(pram) {
|
|
1397
|
+
return this.BXRestListsElement.get(pram).pipe(map(v => (v) ? this.BXRestMap.get(BXRestMapResult(v)) : undefined));
|
|
1513
1398
|
}
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1399
|
+
}
|
|
1400
|
+
BXRestNavvyListsElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyListsElement, deps: [{ token: BXRestListsElement }, { token: BXRestMapListsElement }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1401
|
+
BXRestNavvyListsElement.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyListsElement, providedIn: 'root' });
|
|
1402
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyListsElement, decorators: [{
|
|
1403
|
+
type: Injectable,
|
|
1404
|
+
args: [{
|
|
1405
|
+
providedIn: 'root'
|
|
1406
|
+
}]
|
|
1407
|
+
}], ctorParameters: function () { return [{ type: BXRestListsElement }, { type: BXRestMapListsElement }]; } });
|
|
1408
|
+
|
|
1409
|
+
class BXRestNavvyLists {
|
|
1410
|
+
constructor(element) {
|
|
1411
|
+
this.element = element;
|
|
1412
|
+
this.url = {
|
|
1413
|
+
add: [$lists, $add],
|
|
1414
|
+
delete: [$lists, $delete],
|
|
1415
|
+
get: [$lists, $get],
|
|
1416
|
+
update: [$lists, $update],
|
|
1417
|
+
getIblockTypeId: [$lists, $get, $iblock, $type, $id], // Метод возвращает id типа инфоблока
|
|
1418
|
+
};
|
|
1534
1419
|
}
|
|
1535
1420
|
}
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type:
|
|
1421
|
+
BXRestNavvyLists.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyLists, deps: [{ token: BXRestNavvyListsElement }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1422
|
+
BXRestNavvyLists.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyLists, providedIn: 'root' });
|
|
1423
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyLists, decorators: [{
|
|
1539
1424
|
type: Injectable,
|
|
1540
1425
|
args: [{
|
|
1541
1426
|
providedIn: 'root'
|
|
1542
1427
|
}]
|
|
1543
|
-
}] });
|
|
1428
|
+
}], ctorParameters: function () { return [{ type: BXRestNavvyListsElement }]; } });
|
|
1544
1429
|
|
|
1545
1430
|
class BXRestUser {
|
|
1546
|
-
constructor(http, snackBar
|
|
1547
|
-
// private img: ImgServices,
|
|
1548
|
-
//private dateTrace: DateTrace,
|
|
1549
|
-
store, userMap) {
|
|
1431
|
+
constructor(http, snackBar) {
|
|
1550
1432
|
this.http = http;
|
|
1551
1433
|
this.snackBar = snackBar;
|
|
1552
|
-
this.store = store;
|
|
1553
|
-
this.userMap = userMap;
|
|
1554
1434
|
this.url = {
|
|
1555
1435
|
admin: [$user, 'admin'],
|
|
1556
1436
|
get: [$user, $get],
|
|
@@ -1569,7 +1449,6 @@ class BXRestUser {
|
|
|
1569
1449
|
this.def = {
|
|
1570
1450
|
params: { ACTIVE: 1, start: 0 }
|
|
1571
1451
|
};
|
|
1572
|
-
this.user$ = this.store.select('users');
|
|
1573
1452
|
}
|
|
1574
1453
|
admin() {
|
|
1575
1454
|
return this.http.get(this.url.admin);
|
|
@@ -1577,7 +1456,7 @@ class BXRestUser {
|
|
|
1577
1456
|
get(params = {}) {
|
|
1578
1457
|
let copyParams = clone(params);
|
|
1579
1458
|
this.setDefParam(copyParams);
|
|
1580
|
-
return this.http.post(this.url.get, copyParams, 'Не удалось получить пользователей'
|
|
1459
|
+
return this.http.post(this.url.get, copyParams, 'Не удалось получить пользователей');
|
|
1581
1460
|
// .pipe(
|
|
1582
1461
|
// tap(v => {
|
|
1583
1462
|
// if (v && v.result) {
|
|
@@ -1586,30 +1465,8 @@ class BXRestUser {
|
|
|
1586
1465
|
// })
|
|
1587
1466
|
// )
|
|
1588
1467
|
}
|
|
1589
|
-
current(
|
|
1590
|
-
if (update) {
|
|
1591
|
-
return this.getSelfHttp();
|
|
1592
|
-
}
|
|
1593
|
-
else {
|
|
1594
|
-
return this.user$.pipe(mergeMap$1(v => {
|
|
1595
|
-
if (v && v.self) {
|
|
1596
|
-
return of(v.self);
|
|
1597
|
-
}
|
|
1598
|
-
else {
|
|
1599
|
-
return this.getSelfHttp();
|
|
1600
|
-
}
|
|
1601
|
-
}), first());
|
|
1602
|
-
}
|
|
1603
|
-
}
|
|
1604
|
-
getSelfHttp() {
|
|
1468
|
+
current() {
|
|
1605
1469
|
return this.http.get(this.url.current, {}, 'Не удалось получить пользователя');
|
|
1606
|
-
// .pipe(
|
|
1607
|
-
// tap(v => {
|
|
1608
|
-
// if (v) {
|
|
1609
|
-
// this.store.dispatch(saveSelf({self: v}))
|
|
1610
|
-
// }
|
|
1611
|
-
// }),
|
|
1612
|
-
// )
|
|
1613
1470
|
}
|
|
1614
1471
|
access(access, textError = 'Не удалось получить права') {
|
|
1615
1472
|
return this.http.get(this.url.access, { ACCESS: access }, textError);
|
|
@@ -1648,14 +1505,15 @@ class BXRestUser {
|
|
|
1648
1505
|
// })
|
|
1649
1506
|
// )
|
|
1650
1507
|
// }
|
|
1651
|
-
saveArrUser(users) {
|
|
1652
|
-
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1508
|
+
// private saveArrUser(users: iBXRestUserHttp[]) {
|
|
1509
|
+
// let result: iBXRestUser [] = []
|
|
1510
|
+
// for (const user of users) {
|
|
1511
|
+
// result.push(this.userMap.HttpToBX(user))
|
|
1512
|
+
// }
|
|
1513
|
+
// this.store.dispatch(saveArr({arr: result}))
|
|
1514
|
+
//
|
|
1515
|
+
// return result
|
|
1516
|
+
// }
|
|
1659
1517
|
search(params) {
|
|
1660
1518
|
if (typeof params === 'string') {
|
|
1661
1519
|
params = { FIND: params };
|
|
@@ -1673,15 +1531,14 @@ class BXRestUser {
|
|
|
1673
1531
|
let sendData = {
|
|
1674
1532
|
ID: user.ID,
|
|
1675
1533
|
};
|
|
1676
|
-
const userBX = this.userMap.BXtoHttp(user)
|
|
1677
|
-
for (const field of fieldUpdate) {
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
}
|
|
1534
|
+
// const userBX = this.userMap.BXtoHttp(user)
|
|
1535
|
+
// for (const field of fieldUpdate) {
|
|
1536
|
+
// if (userBX[field]) {
|
|
1537
|
+
// sendData[field] = userBX[field]
|
|
1538
|
+
// } else {
|
|
1539
|
+
// this.snackBar.error('Одно из указанных полей отправлено не верно')
|
|
1540
|
+
// }
|
|
1541
|
+
// }
|
|
1685
1542
|
return this.http.post(this.url.update, sendData, 'Не удалось обновить пользователя с ID' + user.ID);
|
|
1686
1543
|
}
|
|
1687
1544
|
else {
|
|
@@ -1724,29 +1581,952 @@ class BXRestUser {
|
|
|
1724
1581
|
}
|
|
1725
1582
|
}
|
|
1726
1583
|
}
|
|
1727
|
-
BXRestUser.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUser, deps: [{ token: HttpBXServices }, { token: SnackBarService }
|
|
1584
|
+
BXRestUser.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUser, deps: [{ token: HttpBXServices }, { token: SnackBarService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1728
1585
|
BXRestUser.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUser, providedIn: 'root' });
|
|
1729
1586
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUser, decorators: [{
|
|
1730
1587
|
type: Injectable,
|
|
1731
1588
|
args: [{
|
|
1732
1589
|
providedIn: 'root'
|
|
1733
1590
|
}]
|
|
1734
|
-
}], ctorParameters: function () { return [{ type: HttpBXServices }, { type: SnackBarService }
|
|
1591
|
+
}], ctorParameters: function () { return [{ type: HttpBXServices }, { type: SnackBarService }]; } });
|
|
1592
|
+
|
|
1593
|
+
class BXRestTasksTask {
|
|
1594
|
+
constructor(http) {
|
|
1595
|
+
this.http = http;
|
|
1596
|
+
this.url = {
|
|
1597
|
+
add: [$tasks, $task, $add],
|
|
1598
|
+
approve: [$tasks, $task, $approve],
|
|
1599
|
+
complete: [$tasks, $task, $complete],
|
|
1600
|
+
counters: {
|
|
1601
|
+
get: [$tasks, $task, $counters, $get], //Получает счетчики пользователя
|
|
1602
|
+
},
|
|
1603
|
+
deger: [$tasks, $task, $deger],
|
|
1604
|
+
delegate: [$tasks, $task, $delegate],
|
|
1605
|
+
delete: [$tasks, $task, $delete],
|
|
1606
|
+
disapprove: [$tasks, $task, $disapprove],
|
|
1607
|
+
favorite: {
|
|
1608
|
+
add: [$tasks, $task, $favorite, $add],
|
|
1609
|
+
delete: [$tasks, $task, $favorite, $delete], // Удаляет задачи из "Избранного"
|
|
1610
|
+
},
|
|
1611
|
+
files: {
|
|
1612
|
+
attach: [$tasks, $task, $files, $attach], // Прикрепляет загруженный на диск файл к задаче
|
|
1613
|
+
},
|
|
1614
|
+
get: [$tasks, $task, $get],
|
|
1615
|
+
getFields: [$tasks, $task, $getFields],
|
|
1616
|
+
getaccess: [$tasks, $task, $getaccess],
|
|
1617
|
+
history: {
|
|
1618
|
+
list: [$tasks, $task, $history, $list], // Получает историю задачи
|
|
1619
|
+
},
|
|
1620
|
+
list: [$tasks, $task, $list],
|
|
1621
|
+
pause: [$tasks, $task, $pause],
|
|
1622
|
+
renew: [$tasks, $task, $renew],
|
|
1623
|
+
start: [$tasks, $task, $start],
|
|
1624
|
+
startwatch: [$tasks, $task, 'startwatch'],
|
|
1625
|
+
stopwatch: [$tasks, $task, 'stopwatch'],
|
|
1626
|
+
update: [$tasks, $task, $update],
|
|
1627
|
+
result: {
|
|
1628
|
+
list: [$tasks, $task, $result, $list],
|
|
1629
|
+
addFromComment: [$tasks, $task, $result, 'addFromComment'],
|
|
1630
|
+
deleteFromComment: [$tasks, $task, $result, 'deleteFromComment'], // Удаление результата задачи по комментарию из которого он был создан
|
|
1631
|
+
},
|
|
1632
|
+
planner: {
|
|
1633
|
+
getlist: [$task, $planner, $getlist], // Возвращает массив, содержащий идентификаторы задач в плане на день
|
|
1634
|
+
}
|
|
1635
|
+
};
|
|
1636
|
+
}
|
|
1637
|
+
add(param) {
|
|
1638
|
+
return this.http.post(this.url.add, param);
|
|
1639
|
+
}
|
|
1640
|
+
}
|
|
1641
|
+
BXRestTasksTask.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTasksTask, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1642
|
+
BXRestTasksTask.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTasksTask, providedIn: 'root' });
|
|
1643
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTasksTask, decorators: [{
|
|
1644
|
+
type: Injectable,
|
|
1645
|
+
args: [{
|
|
1646
|
+
providedIn: 'root'
|
|
1647
|
+
}]
|
|
1648
|
+
}], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
|
|
1649
|
+
|
|
1650
|
+
class BXRestTasks {
|
|
1651
|
+
constructor(task) {
|
|
1652
|
+
this.task = task;
|
|
1653
|
+
}
|
|
1654
|
+
}
|
|
1655
|
+
BXRestTasks.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTasks, deps: [{ token: BXRestTasksTask }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1656
|
+
BXRestTasks.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTasks, providedIn: 'root' });
|
|
1657
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTasks, decorators: [{
|
|
1658
|
+
type: Injectable,
|
|
1659
|
+
args: [{
|
|
1660
|
+
providedIn: 'root'
|
|
1661
|
+
}]
|
|
1662
|
+
}], ctorParameters: function () { return [{ type: BXRestTasksTask }]; } });
|
|
1663
|
+
|
|
1664
|
+
class BXRestDiskFile {
|
|
1665
|
+
constructor(http) {
|
|
1666
|
+
this.http = http;
|
|
1667
|
+
this.url = {
|
|
1668
|
+
getfields: [$disk, $file, $getFields],
|
|
1669
|
+
get: [$disk, $file, $get],
|
|
1670
|
+
rename: [$disk, $file, $rename],
|
|
1671
|
+
copyto: [$disk, $file, $copyto],
|
|
1672
|
+
moveto: [$disk, $file, $moveto],
|
|
1673
|
+
delete: [$disk, $file, $delete],
|
|
1674
|
+
markdeleted: [$disk, $file, $markdeleted],
|
|
1675
|
+
restore: [$disk, $file, $restore],
|
|
1676
|
+
uploadversion: [$disk, $file, 'uploadversion'],
|
|
1677
|
+
getVersions: [$disk, $file, 'getVersions'],
|
|
1678
|
+
restoreFromVersion: [$disk, $file, 'restoreFromVersion'],
|
|
1679
|
+
getExternalLink: [$disk, $file, 'getexternallink'] // Возвращает публичную ссылку на файл
|
|
1680
|
+
};
|
|
1681
|
+
}
|
|
1682
|
+
get(id) {
|
|
1683
|
+
return this.http.post(this.url.get, { id: id }, 'Не удалось получить файл');
|
|
1684
|
+
}
|
|
1685
|
+
markDel(id) {
|
|
1686
|
+
return this.http.post(this.url.markdeleted, { id: id }, 'Не удалось переместить файл в корзину');
|
|
1687
|
+
}
|
|
1688
|
+
}
|
|
1689
|
+
BXRestDiskFile.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskFile, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1690
|
+
BXRestDiskFile.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskFile, providedIn: 'root' });
|
|
1691
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskFile, decorators: [{
|
|
1692
|
+
type: Injectable,
|
|
1693
|
+
args: [{
|
|
1694
|
+
providedIn: 'root'
|
|
1695
|
+
}]
|
|
1696
|
+
}], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
|
|
1697
|
+
|
|
1698
|
+
class BXRestDiskFolder {
|
|
1699
|
+
constructor(http) {
|
|
1700
|
+
this.http = http;
|
|
1701
|
+
this.url = {
|
|
1702
|
+
getfields: [$disk, $folder, $getFields],
|
|
1703
|
+
get: [$disk, $folder, $get],
|
|
1704
|
+
getchildren: [$disk, $folder, $getchildren],
|
|
1705
|
+
addsubfolder: [$disk, $folder, 'addsubfolder'],
|
|
1706
|
+
copyto: [$disk, $folder, $copyto],
|
|
1707
|
+
moveto: [$disk, $folder, $moveto],
|
|
1708
|
+
rename: [$disk, $folder, $rename],
|
|
1709
|
+
deletetree: [$disk, $folder, 'deletetree'],
|
|
1710
|
+
markdeleted: [$disk, $folder, $markdeleted],
|
|
1711
|
+
restore: [$disk, $folder, $restore],
|
|
1712
|
+
uploadfile: [$disk, $folder, $uploadfile],
|
|
1713
|
+
getExternalLink: [$disk, $folder, 'getExternalLink'] // Метод возвращает публичную ссылку
|
|
1714
|
+
};
|
|
1715
|
+
}
|
|
1716
|
+
uploadfile(id, fileContent) {
|
|
1717
|
+
return this.http.post(this.url.uploadfile, {
|
|
1718
|
+
id: id,
|
|
1719
|
+
fileContent: fileContent,
|
|
1720
|
+
data: {
|
|
1721
|
+
NAME: fileContent[0]
|
|
1722
|
+
} // Обязательное поле NAME - имя нового файла
|
|
1723
|
+
// generateUniqueName Необязательный, по умолчанию false. При указании true, для загружаемого файла будет уникализировано имя, добавлением суффикса (1), (2) и т.п.
|
|
1724
|
+
// rights Необязательный, по умолчанию пустой массив. Массив прав доступа на загружаемый файл.
|
|
1725
|
+
});
|
|
1726
|
+
}
|
|
1727
|
+
getchildren(id) {
|
|
1728
|
+
return this.http.post(this.url.getchildren, { id: id }, 'get folders and files');
|
|
1729
|
+
}
|
|
1730
|
+
}
|
|
1731
|
+
BXRestDiskFolder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskFolder, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1732
|
+
BXRestDiskFolder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskFolder, providedIn: 'root' });
|
|
1733
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskFolder, decorators: [{
|
|
1734
|
+
type: Injectable,
|
|
1735
|
+
args: [{
|
|
1736
|
+
providedIn: 'root'
|
|
1737
|
+
}]
|
|
1738
|
+
}], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
|
|
1739
|
+
|
|
1740
|
+
class BXRestDisk {
|
|
1741
|
+
constructor(file, folder) {
|
|
1742
|
+
this.file = file;
|
|
1743
|
+
this.folder = folder;
|
|
1744
|
+
}
|
|
1745
|
+
}
|
|
1746
|
+
BXRestDisk.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDisk, deps: [{ token: BXRestDiskFile }, { token: BXRestDiskFolder }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1747
|
+
BXRestDisk.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDisk, providedIn: 'root' });
|
|
1748
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDisk, decorators: [{
|
|
1749
|
+
type: Injectable,
|
|
1750
|
+
args: [{
|
|
1751
|
+
providedIn: 'root'
|
|
1752
|
+
}]
|
|
1753
|
+
}], ctorParameters: function () { return [{ type: BXRestDiskFile }, { type: BXRestDiskFolder }]; } });
|
|
1754
|
+
|
|
1755
|
+
const save = createAction('[Users Component] Save', props());
|
|
1756
|
+
const saveArr = createAction('[Users Component] Save Arr', props());
|
|
1757
|
+
const update = createAction('[Users Component] Update', props());
|
|
1758
|
+
const loadAll = createAction('[Users Component] loadAll', props());
|
|
1759
|
+
const saveSelf = createAction('[Users Component] saveSelf', props());
|
|
1760
|
+
const saveIDLoadedDepartment = createAction('[Users Component] saveIDLoadedDepartment', props());
|
|
1761
|
+
const initialState = {
|
|
1762
|
+
load: {
|
|
1763
|
+
all: false,
|
|
1764
|
+
department: []
|
|
1765
|
+
},
|
|
1766
|
+
self: undefined,
|
|
1767
|
+
data: []
|
|
1768
|
+
};
|
|
1769
|
+
const _usersReducer = createReducer(initialState, on(saveIDLoadedDepartment, (s, data) => {
|
|
1770
|
+
let copy = clone(s);
|
|
1771
|
+
copy.load.department = [...copy.load.department, ...data.id];
|
|
1772
|
+
return copy;
|
|
1773
|
+
}), on(save, (s, data) => {
|
|
1774
|
+
const find = s.data.find(v => v.ID === data.ID);
|
|
1775
|
+
if (!find) {
|
|
1776
|
+
const copy = clone(s);
|
|
1777
|
+
copy.data.push(data);
|
|
1778
|
+
return copy;
|
|
1779
|
+
}
|
|
1780
|
+
return s;
|
|
1781
|
+
}), on(saveArr, (s, data) => {
|
|
1782
|
+
const copy = clone(s);
|
|
1783
|
+
if (copy.data && copy.data.length) {
|
|
1784
|
+
for (const user of data.arr) {
|
|
1785
|
+
const find = copy.data.find(v => v.ID === user.ID);
|
|
1786
|
+
if (!find) {
|
|
1787
|
+
copy.data.push(user);
|
|
1788
|
+
}
|
|
1789
|
+
}
|
|
1790
|
+
}
|
|
1791
|
+
else {
|
|
1792
|
+
copy.data = [...data.arr];
|
|
1793
|
+
}
|
|
1794
|
+
return copy;
|
|
1795
|
+
}), on(update, (s, data) => {
|
|
1796
|
+
const copy = clone(s);
|
|
1797
|
+
let find = copy.data.findIndex(v => v.ID === data.ID);
|
|
1798
|
+
if (find !== -1) {
|
|
1799
|
+
const copy = clone(s);
|
|
1800
|
+
copy.data.splice(find, 1, data);
|
|
1801
|
+
// copy.data.push(data)
|
|
1802
|
+
return copy;
|
|
1803
|
+
}
|
|
1804
|
+
return s;
|
|
1805
|
+
}), on(loadAll, (s, data) => {
|
|
1806
|
+
if (data.load !== s.load.all) {
|
|
1807
|
+
const copy = clone(s);
|
|
1808
|
+
copy.load.all = data.load;
|
|
1809
|
+
return copy;
|
|
1810
|
+
}
|
|
1811
|
+
return s;
|
|
1812
|
+
}), on(saveSelf, (s, data) => {
|
|
1813
|
+
return { ...s, self: data.self };
|
|
1814
|
+
}));
|
|
1815
|
+
function usersReducer(state = initialState, action) {
|
|
1816
|
+
return _usersReducer(state, action);
|
|
1817
|
+
}
|
|
1818
|
+
|
|
1819
|
+
class BXRestUserMap extends BaseMapServices {
|
|
1820
|
+
current(user) {
|
|
1821
|
+
let res = Object.assign(clone(user), {
|
|
1822
|
+
ID: this.toNum(user.ID),
|
|
1823
|
+
IS_ONLINE: this.toBool(user.IS_ONLINE),
|
|
1824
|
+
DATE_REGISTER: this.toDate(user.DATE_REGISTER),
|
|
1825
|
+
PERSONAL_BIRTHDAY: this.toDate(user.PERSONAL_BIRTHDAY),
|
|
1826
|
+
});
|
|
1827
|
+
if (user.LAST_LOGIN) {
|
|
1828
|
+
res.LAST_LOGIN = this.toDate(user.LAST_LOGIN);
|
|
1829
|
+
}
|
|
1830
|
+
return res;
|
|
1831
|
+
}
|
|
1832
|
+
BXtoHttp(user) {
|
|
1833
|
+
return Object.assign(clone(user), {
|
|
1834
|
+
ID: this.toStr(user.ID),
|
|
1835
|
+
IS_ONLINE: this.toBXYorN(user.IS_ONLINE),
|
|
1836
|
+
DATE_REGISTER: this.getBXStrTime(user.DATE_REGISTER),
|
|
1837
|
+
PERSONAL_BIRTHDAY: this.toStr(user.PERSONAL_BIRTHDAY),
|
|
1838
|
+
LAST_LOGIN: this.toStr(user.LAST_LOGIN)
|
|
1839
|
+
});
|
|
1840
|
+
}
|
|
1841
|
+
getFIO(user) {
|
|
1842
|
+
let res = '';
|
|
1843
|
+
if (!user.LAST_NAME) {
|
|
1844
|
+
const SECOND_NAME = (user.SECOND_NAME) ? user.SECOND_NAME : '';
|
|
1845
|
+
const NAME = (user.NAME) ? user.NAME : '';
|
|
1846
|
+
res = NAME + ' ' + SECOND_NAME;
|
|
1847
|
+
}
|
|
1848
|
+
else if (!user.NAME) {
|
|
1849
|
+
res = user.LAST_NAME;
|
|
1850
|
+
}
|
|
1851
|
+
else if (!user.SECOND_NAME) {
|
|
1852
|
+
res = user.LAST_NAME + ' ' + user.NAME;
|
|
1853
|
+
}
|
|
1854
|
+
else {
|
|
1855
|
+
res = user.LAST_NAME + ' ' + user.NAME + ' ' + user.SECOND_NAME;
|
|
1856
|
+
}
|
|
1857
|
+
return res.trim();
|
|
1858
|
+
}
|
|
1859
|
+
getFI(user) {
|
|
1860
|
+
let res = '';
|
|
1861
|
+
if (!user.LAST_NAME) {
|
|
1862
|
+
const NAME = (user.NAME) ? user.NAME : '';
|
|
1863
|
+
res = NAME;
|
|
1864
|
+
}
|
|
1865
|
+
else if (!user.NAME) {
|
|
1866
|
+
res = user.LAST_NAME;
|
|
1867
|
+
}
|
|
1868
|
+
else {
|
|
1869
|
+
res = user.LAST_NAME + ' ' + user.NAME;
|
|
1870
|
+
}
|
|
1871
|
+
return res.trim();
|
|
1872
|
+
}
|
|
1873
|
+
getFIOShort(user) {
|
|
1874
|
+
let res = '';
|
|
1875
|
+
if (!user.LAST_NAME) {
|
|
1876
|
+
const SECOND_NAME = (user.SECOND_NAME) ? user.SECOND_NAME : '';
|
|
1877
|
+
const NAME = (user.NAME) ? user.NAME : '';
|
|
1878
|
+
res = NAME + ' ' + SECOND_NAME;
|
|
1879
|
+
}
|
|
1880
|
+
else if (!user.NAME) {
|
|
1881
|
+
res = user.LAST_NAME;
|
|
1882
|
+
}
|
|
1883
|
+
else if (!user.SECOND_NAME) {
|
|
1884
|
+
res = user.LAST_NAME + ' ' + user.NAME.charAt(0).toUpperCase() + '.';
|
|
1885
|
+
}
|
|
1886
|
+
else {
|
|
1887
|
+
res =
|
|
1888
|
+
user.LAST_NAME + ' ' +
|
|
1889
|
+
user.NAME.charAt(0).toUpperCase() + '.' +
|
|
1890
|
+
user.SECOND_NAME.charAt(0).toUpperCase() + '.';
|
|
1891
|
+
}
|
|
1892
|
+
return res.trim();
|
|
1893
|
+
}
|
|
1894
|
+
}
|
|
1895
|
+
BXRestUserMap.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUserMap, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
1896
|
+
BXRestUserMap.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUserMap, providedIn: 'root' });
|
|
1897
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestUserMap, decorators: [{
|
|
1898
|
+
type: Injectable,
|
|
1899
|
+
args: [{
|
|
1900
|
+
providedIn: 'root'
|
|
1901
|
+
}]
|
|
1902
|
+
}] });
|
|
1903
|
+
|
|
1904
|
+
class BXRestNavvyUser {
|
|
1905
|
+
constructor(BXRestUser, store, BXRestUserMap) {
|
|
1906
|
+
this.BXRestUser = BXRestUser;
|
|
1907
|
+
this.store = store;
|
|
1908
|
+
this.BXRestUserMap = BXRestUserMap;
|
|
1909
|
+
this.user$ = this.store.select('users');
|
|
1910
|
+
}
|
|
1911
|
+
current(update = false) {
|
|
1912
|
+
if (update) {
|
|
1913
|
+
return this.self();
|
|
1914
|
+
}
|
|
1915
|
+
else {
|
|
1916
|
+
return this.user$.pipe(mergeMap$1(v => {
|
|
1917
|
+
if (v && v.self) {
|
|
1918
|
+
return of(v.self);
|
|
1919
|
+
}
|
|
1920
|
+
else {
|
|
1921
|
+
return this.self();
|
|
1922
|
+
}
|
|
1923
|
+
}), first());
|
|
1924
|
+
}
|
|
1925
|
+
}
|
|
1926
|
+
self() {
|
|
1927
|
+
return this.BXRestUser.current()
|
|
1928
|
+
.pipe(map(v => {
|
|
1929
|
+
if (v && v.result) {
|
|
1930
|
+
return this.BXRestUserMap.current(v.result);
|
|
1931
|
+
}
|
|
1932
|
+
return undefined;
|
|
1933
|
+
}), tap(v => {
|
|
1934
|
+
if (v) {
|
|
1935
|
+
this.store.dispatch(saveSelf({ self: v }));
|
|
1936
|
+
}
|
|
1937
|
+
}));
|
|
1938
|
+
}
|
|
1939
|
+
}
|
|
1940
|
+
BXRestNavvyUser.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyUser, deps: [{ token: BXRestUser }, { token: i1$2.Store }, { token: BXRestUserMap }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1941
|
+
BXRestNavvyUser.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyUser, providedIn: 'root' });
|
|
1942
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyUser, decorators: [{
|
|
1943
|
+
type: Injectable,
|
|
1944
|
+
args: [{
|
|
1945
|
+
providedIn: 'root'
|
|
1946
|
+
}]
|
|
1947
|
+
}], ctorParameters: function () { return [{ type: BXRestUser }, { type: i1$2.Store }, { type: BXRestUserMap }]; } });
|
|
1948
|
+
|
|
1949
|
+
class BXRestTaskMap extends BaseMapServices {
|
|
1950
|
+
TaskBXHttpToTaskBX(item) {
|
|
1951
|
+
let result = {};
|
|
1952
|
+
if (item.id) {
|
|
1953
|
+
result.id = this.toNum(item.id);
|
|
1954
|
+
}
|
|
1955
|
+
if (item.parentId) {
|
|
1956
|
+
result.parentId = this.toNum(item.parentId);
|
|
1957
|
+
}
|
|
1958
|
+
if (item.priority) {
|
|
1959
|
+
result.priority = this.toNum(item.priority);
|
|
1960
|
+
}
|
|
1961
|
+
if (item.status) {
|
|
1962
|
+
result.status = this.toNum(item.status);
|
|
1963
|
+
}
|
|
1964
|
+
if (item.multitask) {
|
|
1965
|
+
result.multitask = item.multitask === 'Y';
|
|
1966
|
+
}
|
|
1967
|
+
if (item.groupId) {
|
|
1968
|
+
result.groupId = this.toNum(item.groupId);
|
|
1969
|
+
}
|
|
1970
|
+
if (item.stageId) {
|
|
1971
|
+
result.stageId = this.toNum(item.stageId);
|
|
1972
|
+
}
|
|
1973
|
+
if (item.createdBy) {
|
|
1974
|
+
result.createdBy = this.toNum(item.createdBy);
|
|
1975
|
+
}
|
|
1976
|
+
if (item.createdDate) {
|
|
1977
|
+
result.createdDate = this.toDate(item.createdDate);
|
|
1978
|
+
}
|
|
1979
|
+
if (item.responsibleId) {
|
|
1980
|
+
result.responsibleId = this.toNum(item.responsibleId);
|
|
1981
|
+
}
|
|
1982
|
+
if (item.changedBy) {
|
|
1983
|
+
result.changedBy = this.toNum(item.changedBy);
|
|
1984
|
+
}
|
|
1985
|
+
if (item.changedDate) {
|
|
1986
|
+
result.changedDate = this.toDate(item.changedDate);
|
|
1987
|
+
}
|
|
1988
|
+
if (item.statusChangedBy) {
|
|
1989
|
+
result.statusChangedBy = this.toNum(item.statusChangedBy);
|
|
1990
|
+
}
|
|
1991
|
+
if (item.statusChangedDate) {
|
|
1992
|
+
result.statusChangedDate = this.toDate(item.statusChangedDate);
|
|
1993
|
+
}
|
|
1994
|
+
if (item.closedBy) {
|
|
1995
|
+
result.closedBy = this.toNum(item.closedBy);
|
|
1996
|
+
}
|
|
1997
|
+
if (item.closedDate) {
|
|
1998
|
+
result.closedDate = this.toDate(item.closedDate);
|
|
1999
|
+
}
|
|
2000
|
+
if (item.dateStart) {
|
|
2001
|
+
result.dateStart = this.toDate(item.dateStart);
|
|
2002
|
+
}
|
|
2003
|
+
if (item.deadline) {
|
|
2004
|
+
result.deadline = this.toDate(item.deadline);
|
|
2005
|
+
}
|
|
2006
|
+
if (item.startDatePlan) {
|
|
2007
|
+
result.startDatePlan = this.toDate(item.startDatePlan);
|
|
2008
|
+
}
|
|
2009
|
+
if (item.endDatePlan) {
|
|
2010
|
+
result.endDatePlan = this.toDate(item.endDatePlan);
|
|
2011
|
+
}
|
|
2012
|
+
if (item.forumTopicId) {
|
|
2013
|
+
result.forumTopicId = this.toNum(item.forumTopicId);
|
|
2014
|
+
}
|
|
2015
|
+
if (item.forumId) {
|
|
2016
|
+
result.forumId = this.toNum(item.forumId);
|
|
2017
|
+
}
|
|
2018
|
+
if (item.viewedDate) {
|
|
2019
|
+
result.viewedDate = this.toDate(item.viewedDate);
|
|
2020
|
+
}
|
|
2021
|
+
if (item.sorting) {
|
|
2022
|
+
result.sorting = this.toNum(item.sorting);
|
|
2023
|
+
}
|
|
2024
|
+
if (item.durationPlan) {
|
|
2025
|
+
result.durationPlan = this.toNum(item.durationPlan);
|
|
2026
|
+
}
|
|
2027
|
+
if (item.descriptionInBbcode) {
|
|
2028
|
+
result.descriptionInBbcode = item.descriptionInBbcode === 'Y';
|
|
2029
|
+
}
|
|
2030
|
+
if (item.accomplices) {
|
|
2031
|
+
result.accomplices = item.accomplices.map(i => this.toNum(i));
|
|
2032
|
+
}
|
|
2033
|
+
if (item.subStatus) {
|
|
2034
|
+
result.subStatus = this.toNum(item.subStatus);
|
|
2035
|
+
}
|
|
2036
|
+
if (item.creator) {
|
|
2037
|
+
result.creator = Object.assign(item.creator, { id: this.toNum(item.creator.id) });
|
|
2038
|
+
}
|
|
2039
|
+
if (item.responsible) {
|
|
2040
|
+
result.responsible = Object.assign(item.responsible, { id: this.toNum(item.responsible.id) });
|
|
2041
|
+
}
|
|
2042
|
+
if (item.accomplicesData) {
|
|
2043
|
+
result.accomplicesData =
|
|
2044
|
+
Object.values(item.accomplicesData).map(i => Object.assign(i, { id: this.toNum(i.id) }));
|
|
2045
|
+
}
|
|
2046
|
+
if (item.allowTimeTracking) {
|
|
2047
|
+
result.allowTimeTracking = item.allowTimeTracking === 'Y';
|
|
2048
|
+
}
|
|
2049
|
+
return Object.assign(item, result);
|
|
2050
|
+
}
|
|
2051
|
+
}
|
|
2052
|
+
BXRestTaskMap.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTaskMap, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
2053
|
+
BXRestTaskMap.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTaskMap, providedIn: 'root' });
|
|
2054
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestTaskMap, decorators: [{
|
|
2055
|
+
type: Injectable,
|
|
2056
|
+
args: [{
|
|
2057
|
+
providedIn: 'root'
|
|
2058
|
+
}]
|
|
2059
|
+
}] });
|
|
2060
|
+
|
|
2061
|
+
// export interface TimeProcess {
|
|
2062
|
+
// total: number,
|
|
2063
|
+
// next: number
|
|
2064
|
+
// }
|
|
2065
|
+
class BXRestNavvyTasksTask {
|
|
2066
|
+
// pageSize = 50
|
|
2067
|
+
// nowLoad$ = new ReplaySubject<TimeProcess>(1)
|
|
2068
|
+
// def: { select: iBXRestTaskFieldsName[] } = {
|
|
2069
|
+
// select: ['ID', 'PARENT_ID', 'TITLE', 'DESCRIPTION', 'MARK', 'PRIORITY', 'STATUS', 'MULTITASK',
|
|
2070
|
+
// 'GROUP_ID', 'STAGE_ID', 'CREATED_BY', 'CREATED_DATE', 'RESPONSIBLE_ID', 'ACCOMPLICES', 'AUDITORS',
|
|
2071
|
+
// 'CHANGED_BY', 'CHANGED_DATE', 'STATUS_CHANGED_DATE', 'CLOSED_BY', 'CLOSED_DATE', 'DATE_START', 'VIEWED_DATE',
|
|
2072
|
+
// 'DEADLINE', 'START_DATE_PLAN', 'END_DATE_PLAN', 'FORKED_BY_TEMPLATE_ID', 'TIME_ESTIMATE', 'TIME_SPENT_IN_LOGS',
|
|
2073
|
+
// 'TAGS', 'ALLOW_TIME_TRACKING'
|
|
2074
|
+
// ]
|
|
2075
|
+
// }
|
|
2076
|
+
// storeTask$: Observable<iStoreTask>
|
|
2077
|
+
constructor(BXRestTasks, snackBar,
|
|
2078
|
+
// private store: Store<{ tasks: IStoreTask }>,
|
|
2079
|
+
taskMap) {
|
|
2080
|
+
this.BXRestTasks = BXRestTasks;
|
|
2081
|
+
this.snackBar = snackBar;
|
|
2082
|
+
this.taskMap = taskMap;
|
|
2083
|
+
// this.storeTask$ = this.store.select('tasks')
|
|
2084
|
+
// this.nowLoad$.next({
|
|
2085
|
+
// total: 0,
|
|
2086
|
+
// next: 0
|
|
2087
|
+
// })
|
|
2088
|
+
}
|
|
2089
|
+
add(param) {
|
|
2090
|
+
return this.BXRestTasks.add(param).pipe(map(v => {
|
|
2091
|
+
if (v && v.result && v.result.task) {
|
|
2092
|
+
return this.taskMap.TaskBXHttpToTaskBX(v.result.task);
|
|
2093
|
+
}
|
|
2094
|
+
return undefined;
|
|
2095
|
+
}));
|
|
2096
|
+
// return this.http.post<{ task: TaskBXHttp }>(this.url.add, {fields: param}).pipe(
|
|
2097
|
+
// map(v => {
|
|
2098
|
+
// if (v && v.result && v.result.task) {
|
|
2099
|
+
// return Object.assign(
|
|
2100
|
+
// v,
|
|
2101
|
+
// {
|
|
2102
|
+
// result: this.taskBXMap.TaskBXHttpToTaskBX(v.result.task)
|
|
2103
|
+
// })
|
|
2104
|
+
// }
|
|
2105
|
+
// return undefined
|
|
2106
|
+
// }
|
|
2107
|
+
// ))
|
|
2108
|
+
}
|
|
2109
|
+
}
|
|
2110
|
+
BXRestNavvyTasksTask.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyTasksTask, deps: [{ token: BXRestTasksTask }, { token: SnackBarService }, { token: BXRestTaskMap }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2111
|
+
BXRestNavvyTasksTask.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyTasksTask, providedIn: 'root' });
|
|
2112
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyTasksTask, decorators: [{
|
|
2113
|
+
type: Injectable,
|
|
2114
|
+
args: [{
|
|
2115
|
+
providedIn: 'root'
|
|
2116
|
+
}]
|
|
2117
|
+
}], ctorParameters: function () { return [{ type: BXRestTasksTask }, { type: SnackBarService }, { type: BXRestTaskMap }]; } });
|
|
2118
|
+
|
|
2119
|
+
class BXRestNavvyTasks {
|
|
2120
|
+
constructor(task) {
|
|
2121
|
+
this.task = task;
|
|
2122
|
+
}
|
|
2123
|
+
}
|
|
2124
|
+
BXRestNavvyTasks.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyTasks, deps: [{ token: BXRestNavvyTasksTask }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2125
|
+
BXRestNavvyTasks.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyTasks, providedIn: 'root' });
|
|
2126
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyTasks, decorators: [{
|
|
2127
|
+
type: Injectable,
|
|
2128
|
+
args: [{
|
|
2129
|
+
providedIn: 'root'
|
|
2130
|
+
}]
|
|
2131
|
+
}], ctorParameters: function () { return [{ type: BXRestNavvyTasksTask }]; } });
|
|
2132
|
+
|
|
2133
|
+
class BXRestNavvyDiskFile extends BaseServices {
|
|
2134
|
+
constructor(BXRestDiskFile) {
|
|
2135
|
+
super();
|
|
2136
|
+
this.BXRestDiskFile = BXRestDiskFile;
|
|
2137
|
+
}
|
|
2138
|
+
get(id) {
|
|
2139
|
+
return this.BXRestDiskFile.get(id).pipe(map(v => {
|
|
2140
|
+
if (v && v.result) {
|
|
2141
|
+
let newResult = Object.assign(v.result, { SIZE: this.toNum(v.result.SIZE) });
|
|
2142
|
+
return Object.assign(v, {
|
|
2143
|
+
result: newResult
|
|
2144
|
+
});
|
|
2145
|
+
}
|
|
2146
|
+
return undefined;
|
|
2147
|
+
}));
|
|
2148
|
+
}
|
|
2149
|
+
markDel(id) {
|
|
2150
|
+
return this.BXRestDiskFile.markDel(id)
|
|
2151
|
+
.pipe(map(v => {
|
|
2152
|
+
if (v && v.result) {
|
|
2153
|
+
let newResult = Object.assign(v.result, { SIZE: this.toNum(v.result.SIZE) });
|
|
2154
|
+
return Object.assign(v, {
|
|
2155
|
+
result: newResult
|
|
2156
|
+
});
|
|
2157
|
+
}
|
|
2158
|
+
return undefined;
|
|
2159
|
+
}));
|
|
2160
|
+
}
|
|
2161
|
+
}
|
|
2162
|
+
BXRestNavvyDiskFile.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskFile, deps: [{ token: BXRestDiskFile }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2163
|
+
BXRestNavvyDiskFile.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskFile, providedIn: 'root' });
|
|
2164
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskFile, decorators: [{
|
|
2165
|
+
type: Injectable,
|
|
2166
|
+
args: [{
|
|
2167
|
+
providedIn: 'root'
|
|
2168
|
+
}]
|
|
2169
|
+
}], ctorParameters: function () { return [{ type: BXRestDiskFile }]; } });
|
|
2170
|
+
|
|
2171
|
+
class BXRestMapDiskBase extends BaseMapServices {
|
|
2172
|
+
separationFoldersAndFiles(arr) {
|
|
2173
|
+
let result = { file: [], folder: [] };
|
|
2174
|
+
for (let i of arr) {
|
|
2175
|
+
if (this.instanceOfiFile(i)) {
|
|
2176
|
+
result.file.push(Object.assign(i, {
|
|
2177
|
+
CREATED_BY: this.toNum(i.CREATED_BY),
|
|
2178
|
+
CREATE_TIME: this.toDate(i.CREATE_TIME),
|
|
2179
|
+
DELETED_BY: this.toNum(i.DELETED_BY),
|
|
2180
|
+
DELETED_TYPE: this.toNum(i.DELETED_TYPE),
|
|
2181
|
+
DELETE_TIME: (i.DELETE_TIME) ? this.toDate(i.DELETE_TIME) : null,
|
|
2182
|
+
ID: this.toNum(i.ID),
|
|
2183
|
+
PARENT_ID: this.toNum(i.PARENT_ID),
|
|
2184
|
+
REAL_OBJECT_ID: this.toNum(i.REAL_OBJECT_ID),
|
|
2185
|
+
STORAGE_ID: this.toNum(i.STORAGE_ID),
|
|
2186
|
+
UPDATED_BY: this.toNum(i.UPDATED_BY),
|
|
2187
|
+
UPDATE_TIME: this.toDate(i.UPDATE_TIME),
|
|
2188
|
+
SIZE: this.toNum(i.SIZE),
|
|
2189
|
+
}));
|
|
2190
|
+
}
|
|
2191
|
+
else if (this.instanceOfiFolder(i)) {
|
|
2192
|
+
result.folder.push(Object.assign(i, {
|
|
2193
|
+
CREATED_BY: this.toNum(i.CREATED_BY),
|
|
2194
|
+
CREATE_TIME: this.toDate(i.CREATE_TIME),
|
|
2195
|
+
DELETED_BY: this.toNum(i.DELETED_BY),
|
|
2196
|
+
DELETED_TYPE: this.toNum(i.DELETED_TYPE),
|
|
2197
|
+
DELETE_TIME: (i.DELETE_TIME) ? this.toDate(i.DELETE_TIME) : null,
|
|
2198
|
+
ID: this.toNum(i.ID),
|
|
2199
|
+
PARENT_ID: this.toNum(i.PARENT_ID),
|
|
2200
|
+
REAL_OBJECT_ID: this.toNum(i.REAL_OBJECT_ID),
|
|
2201
|
+
STORAGE_ID: this.toNum(i.STORAGE_ID),
|
|
2202
|
+
UPDATED_BY: this.toNum(i.UPDATED_BY),
|
|
2203
|
+
UPDATE_TIME: this.toDate(i.UPDATE_TIME),
|
|
2204
|
+
}));
|
|
2205
|
+
}
|
|
2206
|
+
}
|
|
2207
|
+
return result;
|
|
2208
|
+
}
|
|
2209
|
+
instanceOfiFile(object) {
|
|
2210
|
+
return object && object.TYPE && object.TYPE === 'file';
|
|
2211
|
+
}
|
|
2212
|
+
instanceOfiFolder(object) {
|
|
2213
|
+
return object && object.TYPE && object.TYPE === 'folder';
|
|
2214
|
+
}
|
|
2215
|
+
}
|
|
2216
|
+
BXRestMapDiskBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskBase, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
2217
|
+
BXRestMapDiskBase.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskBase, providedIn: 'root' });
|
|
2218
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskBase, decorators: [{
|
|
2219
|
+
type: Injectable,
|
|
2220
|
+
args: [{
|
|
2221
|
+
providedIn: 'root'
|
|
2222
|
+
}]
|
|
2223
|
+
}] });
|
|
2224
|
+
|
|
2225
|
+
class BXRestMapDiskFolder extends BXRestMapDiskBase {
|
|
2226
|
+
getContent(arr) {
|
|
2227
|
+
return this.separationFoldersAndFiles(arr);
|
|
2228
|
+
}
|
|
2229
|
+
}
|
|
2230
|
+
BXRestMapDiskFolder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskFolder, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
2231
|
+
BXRestMapDiskFolder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskFolder, providedIn: 'root' });
|
|
2232
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskFolder, decorators: [{
|
|
2233
|
+
type: Injectable,
|
|
2234
|
+
args: [{
|
|
2235
|
+
providedIn: 'root'
|
|
2236
|
+
}]
|
|
2237
|
+
}] });
|
|
2238
|
+
|
|
2239
|
+
class BXRestDiskNavvyFolder {
|
|
2240
|
+
constructor(BXRestDiskFolder, BXRestMapDiskFolder
|
|
2241
|
+
// private diskFileBaseMap: diskFileBaseMapServices
|
|
2242
|
+
) {
|
|
2243
|
+
this.BXRestDiskFolder = BXRestDiskFolder;
|
|
2244
|
+
this.BXRestMapDiskFolder = BXRestMapDiskFolder;
|
|
2245
|
+
}
|
|
2246
|
+
// uploadfile(id: number, fileContent: string[]) {
|
|
2247
|
+
// return this.httpPost(
|
|
2248
|
+
// this.url.uploadfile,
|
|
2249
|
+
// {
|
|
2250
|
+
// id: id, // Идентификатор папки. В текущем API загружать файл по пути к папке невозможно. Необходимо обязательно вычислить ID папки
|
|
2251
|
+
// fileContent: fileContent, // Аналогично 'DETAIL_PICTURE' в примере Обработка файлов (['имя файла', 'содержимое в base64'])
|
|
2252
|
+
// data: {
|
|
2253
|
+
// NAME: fileContent[0]
|
|
2254
|
+
// } // Обязательное поле NAME - имя нового файла
|
|
2255
|
+
// // generateUniqueName Необязательный, по умолчанию false. При указании true, для загружаемого файла будет уникализировано имя, добавлением суффикса (1), (2) и т.п.
|
|
2256
|
+
// // rights Необязательный, по умолчанию пустой массив. Массив прав доступа на загружаемый файл.
|
|
2257
|
+
// }
|
|
2258
|
+
// )
|
|
2259
|
+
// }
|
|
2260
|
+
getchildren(id) {
|
|
2261
|
+
return this.BXRestDiskFolder.getchildren(id).pipe(map(v => {
|
|
2262
|
+
if (v && v.result) {
|
|
2263
|
+
return this.BXRestMapDiskFolder.getContent(BXRestMapResult(v));
|
|
2264
|
+
}
|
|
2265
|
+
return { file: [], folder: [] };
|
|
2266
|
+
}));
|
|
2267
|
+
}
|
|
2268
|
+
}
|
|
2269
|
+
BXRestDiskNavvyFolder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskNavvyFolder, deps: [{ token: BXRestDiskFolder }, { token: BXRestMapDiskFolder }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2270
|
+
BXRestDiskNavvyFolder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskNavvyFolder, providedIn: 'root' });
|
|
2271
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskNavvyFolder, decorators: [{
|
|
2272
|
+
type: Injectable,
|
|
2273
|
+
args: [{
|
|
2274
|
+
providedIn: 'root'
|
|
2275
|
+
}]
|
|
2276
|
+
}], ctorParameters: function () { return [{ type: BXRestDiskFolder }, { type: BXRestMapDiskFolder }]; } });
|
|
2277
|
+
|
|
2278
|
+
class BXRestMapDiskStorage extends BXRestMapDiskBase {
|
|
2279
|
+
getchildren(arr) {
|
|
2280
|
+
return this.separationFoldersAndFiles(arr);
|
|
2281
|
+
}
|
|
2282
|
+
}
|
|
2283
|
+
BXRestMapDiskStorage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskStorage, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
2284
|
+
BXRestMapDiskStorage.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskStorage, providedIn: 'root' });
|
|
2285
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMapDiskStorage, decorators: [{
|
|
2286
|
+
type: Injectable,
|
|
2287
|
+
args: [{
|
|
2288
|
+
providedIn: 'root'
|
|
2289
|
+
}]
|
|
2290
|
+
}] });
|
|
2291
|
+
|
|
2292
|
+
class BXRestDiskStorage {
|
|
2293
|
+
constructor(http) {
|
|
2294
|
+
this.http = http;
|
|
2295
|
+
this.url = {
|
|
2296
|
+
getfields: [$disk, $storage, $getFields],
|
|
2297
|
+
get: [$disk, $storage, $get],
|
|
2298
|
+
rename: [$disk, $storage, $rename],
|
|
2299
|
+
// Допустимо переименование только хранилища приложения (см. disk.storage.getforapp)
|
|
2300
|
+
getlist: [$disk, $storage, $getlist],
|
|
2301
|
+
gettypes: [$disk, $storage, $getTypes],
|
|
2302
|
+
addfolder: [$disk, $storage, 'addfolder'],
|
|
2303
|
+
getchildren: [$disk, $storage, $getchildren],
|
|
2304
|
+
// которые находятся непосредственно в корне хранилища
|
|
2305
|
+
uploadfile: [$disk, $storage, $uploadfile],
|
|
2306
|
+
getforapp: [$disk, $storage, 'getforapp'] // Возвращает описание хранилища,
|
|
2307
|
+
// с которым может работать приложение для хранения своих данных (файлов и папок)
|
|
2308
|
+
};
|
|
2309
|
+
}
|
|
2310
|
+
getforapp() {
|
|
2311
|
+
return this.http.post(this.url.getforapp, {}, 'get root app folder');
|
|
2312
|
+
}
|
|
2313
|
+
// TODO: разобраться с фильтром
|
|
2314
|
+
getchildren(param) {
|
|
2315
|
+
return this.http.post(this.url.getchildren, param, 'get root app folders and files');
|
|
2316
|
+
}
|
|
2317
|
+
// TODO: разобраться что возвращает и что вставлять
|
|
2318
|
+
addfolder(param) {
|
|
2319
|
+
return this.http.post(this.url.addfolder, param);
|
|
2320
|
+
}
|
|
2321
|
+
uploadfile(param) {
|
|
2322
|
+
return this.http.post(this.url.uploadfile, param);
|
|
2323
|
+
}
|
|
2324
|
+
}
|
|
2325
|
+
BXRestDiskStorage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskStorage, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2326
|
+
BXRestDiskStorage.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskStorage, providedIn: 'root' });
|
|
2327
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestDiskStorage, decorators: [{
|
|
2328
|
+
type: Injectable,
|
|
2329
|
+
args: [{
|
|
2330
|
+
providedIn: 'root'
|
|
2331
|
+
}]
|
|
2332
|
+
}], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
|
|
2333
|
+
|
|
2334
|
+
class BXRestNavvyDiskStorage {
|
|
2335
|
+
// BXDiskFolder$ = new Observable<BXDiskFolderStore>()
|
|
2336
|
+
constructor(BXRestDiskStorage, BXRestMapDiskStorage
|
|
2337
|
+
// private store: Store<{ BXDiskFolder: BXDiskFolderStore }>,
|
|
2338
|
+
) {
|
|
2339
|
+
this.BXRestDiskStorage = BXRestDiskStorage;
|
|
2340
|
+
this.BXRestMapDiskStorage = BXRestMapDiskStorage;
|
|
2341
|
+
// this.BXDiskFolder$ = this.store.select('BXDiskFolder')
|
|
2342
|
+
}
|
|
2343
|
+
getforapp() {
|
|
2344
|
+
// return this.BXDiskFolder$.pipe(
|
|
2345
|
+
// take(1),
|
|
2346
|
+
// mergeMap(
|
|
2347
|
+
// saveData => {
|
|
2348
|
+
// if (saveData.folder.app) {
|
|
2349
|
+
// return of(saveData.folder.app)
|
|
2350
|
+
// }
|
|
2351
|
+
return this.BXRestDiskStorage.getforapp().pipe(map(v => BXRestMapResult(v)));
|
|
2352
|
+
// }
|
|
2353
|
+
// )
|
|
2354
|
+
// )
|
|
2355
|
+
}
|
|
2356
|
+
// TODO: разобраться с фильтром позже
|
|
2357
|
+
getchildren(param) {
|
|
2358
|
+
return this.BXRestDiskStorage.getchildren(param).pipe(map(v => BXRestMapResult(v)), map(v => {
|
|
2359
|
+
if (v && v.length) {
|
|
2360
|
+
return this.BXRestMapDiskStorage.getchildren(v);
|
|
2361
|
+
}
|
|
2362
|
+
return { file: [], folder: [] };
|
|
2363
|
+
}));
|
|
2364
|
+
}
|
|
2365
|
+
// TODO: разобраться что возвращает и что вставлять
|
|
2366
|
+
addfolder(param) {
|
|
2367
|
+
return this.BXRestDiskStorage.addfolder(param).pipe(map(v => BXRestMapResult(v)));
|
|
2368
|
+
}
|
|
2369
|
+
uploadfile(param) {
|
|
2370
|
+
return this.BXRestDiskStorage.uploadfile(param);
|
|
2371
|
+
}
|
|
2372
|
+
}
|
|
2373
|
+
BXRestNavvyDiskStorage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskStorage, deps: [{ token: BXRestDiskStorage }, { token: BXRestMapDiskStorage }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2374
|
+
BXRestNavvyDiskStorage.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskStorage, providedIn: 'root' });
|
|
2375
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskStorage, decorators: [{
|
|
2376
|
+
type: Injectable,
|
|
2377
|
+
args: [{
|
|
2378
|
+
providedIn: 'root'
|
|
2379
|
+
}]
|
|
2380
|
+
}], ctorParameters: function () { return [{ type: BXRestDiskStorage }, { type: BXRestMapDiskStorage }]; } });
|
|
2381
|
+
|
|
2382
|
+
class BXRestNavvyDiskOperation {
|
|
2383
|
+
constructor(folder, disk, storage) {
|
|
2384
|
+
this.folder = folder;
|
|
2385
|
+
this.disk = disk;
|
|
2386
|
+
this.storage = storage;
|
|
2387
|
+
}
|
|
2388
|
+
// данные файла в base64
|
|
2389
|
+
loadFileInAppFolder(file) {
|
|
2390
|
+
return this.storage.getforapp().pipe(take$1(1), mergeMap$1(infoFolder => {
|
|
2391
|
+
if (infoFolder) {
|
|
2392
|
+
return this.storage.uploadfile({
|
|
2393
|
+
id: infoFolder.ID,
|
|
2394
|
+
fileContent: [file.name, file.val],
|
|
2395
|
+
data: {
|
|
2396
|
+
NAME: file.name
|
|
2397
|
+
},
|
|
2398
|
+
generateUniqueName: true
|
|
2399
|
+
}).pipe(map(v => BXRestMapResult(v)));
|
|
2400
|
+
}
|
|
2401
|
+
return of(undefined);
|
|
2402
|
+
}));
|
|
2403
|
+
}
|
|
2404
|
+
getOfCreateRootContentFolderApp(folderName) {
|
|
2405
|
+
return this.getOfCreateRootFolderApp(folderName).pipe(mergeMap$1(v => {
|
|
2406
|
+
if (v) {
|
|
2407
|
+
return this.folder.getchildren(v.ID);
|
|
2408
|
+
}
|
|
2409
|
+
return of(undefined);
|
|
2410
|
+
}));
|
|
2411
|
+
}
|
|
2412
|
+
getRootFoldersApp() {
|
|
2413
|
+
// return this.BXDiskFolder$.pipe(
|
|
2414
|
+
// take(1),
|
|
2415
|
+
// mergeMap(
|
|
2416
|
+
// saveData => {
|
|
2417
|
+
// if (saveData.content.root.app) {
|
|
2418
|
+
// return of(saveData.content.root.app)
|
|
2419
|
+
// }
|
|
2420
|
+
return this.storage.getforapp().pipe(mergeMap$1(v => {
|
|
2421
|
+
if (v && v.ID) {
|
|
2422
|
+
return this.storage.getchildren({ id: v.ID });
|
|
2423
|
+
// .pipe(
|
|
2424
|
+
// tap(v => {
|
|
2425
|
+
// if (v) {
|
|
2426
|
+
// this.store.dispatch(saveContentRootAppInfo({value: v}))
|
|
2427
|
+
// }
|
|
2428
|
+
// })
|
|
2429
|
+
// )
|
|
2430
|
+
}
|
|
2431
|
+
return of(undefined);
|
|
2432
|
+
}));
|
|
2433
|
+
// }
|
|
2434
|
+
// )
|
|
2435
|
+
// )
|
|
2436
|
+
}
|
|
2437
|
+
/**
|
|
2438
|
+
* Получать или создать папку, если её нет, с определенным именем для приложения
|
|
2439
|
+
* @param folderName
|
|
2440
|
+
*/
|
|
2441
|
+
getOfCreateRootFolderApp(folderName) {
|
|
2442
|
+
return this.getRootFoldersApp().pipe(mergeMap$1(v => {
|
|
2443
|
+
if (v) {
|
|
2444
|
+
if (v.folder.length) {
|
|
2445
|
+
let find = v.folder.find(i => i.NAME === folderName);
|
|
2446
|
+
if (find) {
|
|
2447
|
+
return of(find);
|
|
2448
|
+
}
|
|
2449
|
+
}
|
|
2450
|
+
}
|
|
2451
|
+
return this.storage.getforapp().pipe(mergeMap$1(v => {
|
|
2452
|
+
if (v && v.ID) {
|
|
2453
|
+
return this.storage.addfolder({ id: v.ID, data: { NAME: folderName } });
|
|
2454
|
+
}
|
|
2455
|
+
return of(undefined);
|
|
2456
|
+
}));
|
|
2457
|
+
}));
|
|
2458
|
+
}
|
|
2459
|
+
}
|
|
2460
|
+
BXRestNavvyDiskOperation.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskOperation, deps: [{ token: BXRestDiskNavvyFolder }, { token: BXRestNavvyDiskFile }, { token: BXRestNavvyDiskStorage }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2461
|
+
BXRestNavvyDiskOperation.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskOperation, providedIn: 'root' });
|
|
2462
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDiskOperation, decorators: [{
|
|
2463
|
+
type: Injectable,
|
|
2464
|
+
args: [{
|
|
2465
|
+
providedIn: 'root'
|
|
2466
|
+
}]
|
|
2467
|
+
}], ctorParameters: function () { return [{ type: BXRestDiskNavvyFolder }, { type: BXRestNavvyDiskFile }, { type: BXRestNavvyDiskStorage }]; } });
|
|
2468
|
+
|
|
2469
|
+
class BXRestNavvyDisk {
|
|
2470
|
+
constructor(file, folder, operation) {
|
|
2471
|
+
this.file = file;
|
|
2472
|
+
this.folder = folder;
|
|
2473
|
+
this.operation = operation;
|
|
2474
|
+
}
|
|
2475
|
+
}
|
|
2476
|
+
BXRestNavvyDisk.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDisk, deps: [{ token: BXRestNavvyDiskFile }, { token: BXRestDiskNavvyFolder }, { token: BXRestNavvyDiskOperation }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2477
|
+
BXRestNavvyDisk.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDisk, providedIn: 'root' });
|
|
2478
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvyDisk, decorators: [{
|
|
2479
|
+
type: Injectable,
|
|
2480
|
+
args: [{
|
|
2481
|
+
providedIn: 'root'
|
|
2482
|
+
}]
|
|
2483
|
+
}], ctorParameters: function () { return [{ type: BXRestNavvyDiskFile }, { type: BXRestDiskNavvyFolder }, { type: BXRestNavvyDiskOperation }]; } });
|
|
1735
2484
|
|
|
1736
2485
|
class BXRest {
|
|
1737
|
-
constructor(user, lists) {
|
|
2486
|
+
constructor(user, lists, tasks, disk) {
|
|
1738
2487
|
this.user = user;
|
|
1739
2488
|
this.lists = lists;
|
|
2489
|
+
this.tasks = tasks;
|
|
2490
|
+
this.disk = disk;
|
|
1740
2491
|
}
|
|
1741
2492
|
}
|
|
1742
|
-
BXRest.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRest, deps: [{ token: BXRestUser }, { token: BXRestLists }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2493
|
+
BXRest.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRest, deps: [{ token: BXRestUser }, { token: BXRestLists }, { token: BXRestTasks }, { token: BXRestDisk }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1743
2494
|
BXRest.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRest, providedIn: 'root' });
|
|
1744
2495
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRest, decorators: [{
|
|
1745
2496
|
type: Injectable,
|
|
1746
2497
|
args: [{
|
|
1747
2498
|
providedIn: 'root'
|
|
1748
2499
|
}]
|
|
1749
|
-
}], ctorParameters: function () { return [{ type: BXRestUser }, { type: BXRestLists }]; } });
|
|
2500
|
+
}], ctorParameters: function () { return [{ type: BXRestUser }, { type: BXRestLists }, { type: BXRestTasks }, { type: BXRestDisk }]; } });
|
|
2501
|
+
class BXRestNavvy {
|
|
2502
|
+
constructor(user, lists, tasks, disk) {
|
|
2503
|
+
this.user = user;
|
|
2504
|
+
this.lists = lists;
|
|
2505
|
+
this.tasks = tasks;
|
|
2506
|
+
this.disk = disk;
|
|
2507
|
+
}
|
|
2508
|
+
}
|
|
2509
|
+
BXRestNavvy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvy, deps: [{ token: BXRestNavvyUser }, { token: BXRestNavvyLists }, { token: BXRestNavvyTasks }, { token: BXRestNavvyDisk }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2510
|
+
BXRestNavvy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvy, providedIn: 'root' });
|
|
2511
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestNavvy, decorators: [{
|
|
2512
|
+
type: Injectable,
|
|
2513
|
+
args: [{
|
|
2514
|
+
providedIn: 'root'
|
|
2515
|
+
}]
|
|
2516
|
+
}], ctorParameters: function () { return [{ type: BXRestNavvyUser }, { type: BXRestNavvyLists }, { type: BXRestNavvyTasks }, { type: BXRestNavvyDisk }]; } });
|
|
2517
|
+
class BXRestMap {
|
|
2518
|
+
constructor(lists) {
|
|
2519
|
+
this.lists = lists;
|
|
2520
|
+
}
|
|
2521
|
+
}
|
|
2522
|
+
BXRestMap.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMap, deps: [{ token: BXRestMapLists }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2523
|
+
BXRestMap.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMap, providedIn: 'root' });
|
|
2524
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BXRestMap, decorators: [{
|
|
2525
|
+
type: Injectable,
|
|
2526
|
+
args: [{
|
|
2527
|
+
providedIn: 'root'
|
|
2528
|
+
}]
|
|
2529
|
+
}], ctorParameters: function () { return [{ type: BXRestMapLists }]; } });
|
|
1750
2530
|
|
|
1751
2531
|
/*
|
|
1752
2532
|
* Public API Surface of bx-rest
|
|
@@ -1756,5 +2536,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
1756
2536
|
* Generated bundle index. Do not edit.
|
|
1757
2537
|
*/
|
|
1758
2538
|
|
|
1759
|
-
export { BXRest };
|
|
2539
|
+
export { BXRest, BXRestMap, BXRestMapResult, BXRestNavvy, REST_SETTINGS };
|
|
1760
2540
|
//# sourceMappingURL=bx-rest.mjs.map
|