bx-rest 0.4.5 → 0.4.7

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 (72) hide show
  1. package/README.md +118 -0
  2. package/consts/part-name-methods.d.ts +1 -0
  3. package/esm2022/consts/part-name-methods.mjs +2 -1
  4. package/esm2022/map/app.mjs +4 -2
  5. package/esm2022/map/disk/base.mjs +18 -16
  6. package/esm2022/map/disk/storage.mjs +4 -4
  7. package/esm2022/map/task/elapseditem.mjs +2 -1
  8. package/esm2022/map/timeman.mjs +37 -0
  9. package/esm2022/map/user.mjs +2 -2
  10. package/esm2022/request/calendar/event.mjs +1 -1
  11. package/esm2022/request/disk/file.mjs +7 -7
  12. package/esm2022/request/disk/storage.mjs +16 -16
  13. package/esm2022/request/task/commentitem.mjs +5 -5
  14. package/esm2022/request/task/elapseditem.mjs +6 -6
  15. package/esm2022/request/timeman.mjs +52 -0
  16. package/esm2022/request-navvy/calendar/event.mjs +2 -2
  17. package/esm2022/request-navvy/disk/file.mjs +3 -3
  18. package/esm2022/request-navvy/disk/interlayer/storage.mjs +11 -11
  19. package/esm2022/request-navvy/disk/operation.mjs +7 -10
  20. package/esm2022/request-navvy/disk/storage.mjs +9 -9
  21. package/esm2022/request-navvy/server.mjs +2 -2
  22. package/esm2022/request-navvy/task/elapseditem.mjs +51 -42
  23. package/esm2022/request-navvy/task/operation/elapseditem.mjs +63 -54
  24. package/esm2022/request-navvy/task.mjs +6 -6
  25. package/esm2022/request-navvy/timeman.mjs +24 -0
  26. package/esm2022/request-navvy/user.mjs +3 -3
  27. package/esm2022/rest.mjs +29 -25
  28. package/esm2022/services/Navvy/NavvySimple.mjs +2 -2
  29. package/esm2022/services/Navvy/NavvySupport.mjs +1 -2
  30. package/esm2022/services/navvy.mjs +1 -1
  31. package/esm2022/typification/rest/task/access/getaccess.mjs +1 -1
  32. package/esm2022/typification/rest/task/commentitem/add.mjs +1 -1
  33. package/esm2022/typification/rest/tasks/task/list.mjs +1 -1
  34. package/esm2022/typification/rest/timeman/status.mjs +2 -0
  35. package/fesm2022/bx-rest.mjs +312 -226
  36. package/fesm2022/bx-rest.mjs.map +1 -1
  37. package/map/app.d.ts +1 -1
  38. package/map/disk/base.d.ts +1 -1
  39. package/map/disk/storage.d.ts +2 -2
  40. package/map/task/elapseditem.d.ts +1 -1
  41. package/map/timeman.d.ts +7 -0
  42. package/map/user.d.ts +1 -1
  43. package/package.json +1 -1
  44. package/request/disk/file.d.ts +5 -5
  45. package/request/disk/storage.d.ts +11 -11
  46. package/request/task/commentitem.d.ts +3 -3
  47. package/request/task/elapseditem.d.ts +3 -3
  48. package/request/timeman.d.ts +17 -0
  49. package/request-navvy/app.d.ts +1 -1
  50. package/request-navvy/calendar/event.d.ts +1 -1
  51. package/request-navvy/disk/file.d.ts +1 -1
  52. package/request-navvy/disk/folder.d.ts +8 -8
  53. package/request-navvy/disk/interlayer/storage.d.ts +4 -4
  54. package/request-navvy/disk/storage.d.ts +5 -5
  55. package/request-navvy/server.d.ts +1 -1
  56. package/request-navvy/task/elapseditem.d.ts +9 -7
  57. package/request-navvy/task/operation/elapseditem.d.ts +3 -3
  58. package/request-navvy/task.d.ts +4 -4
  59. package/request-navvy/tasks/task.d.ts +1 -1
  60. package/request-navvy/timeman.d.ts +14 -0
  61. package/request-navvy/user.d.ts +3 -3
  62. package/rest.d.ts +6 -2
  63. package/services/Navvy/NavvySimple.d.ts +2 -2
  64. package/services/navvy.d.ts +2 -2
  65. package/typification/rest/task/access/getaccess.d.ts +4 -1
  66. package/typification/rest/task/commentitem/add.d.ts +9 -1
  67. package/typification/rest/tasks/task/list.d.ts +4 -4
  68. package/typification/rest/timeman/status.d.ts +28 -0
  69. package/esm2022/services/permission.mjs +0 -43
  70. package/esm2022/typification/permission.mjs +0 -2
  71. package/services/permission.d.ts +0 -9
  72. package/typification/permission.d.ts +0 -27
@@ -53,7 +53,6 @@ class NavvySupport {
53
53
  }
54
54
  mapAndError(request) {
55
55
  return request.pipe(map(v => BXRestMapResult(v)), catchError(err => {
56
- // this.snackBar.error(errorText)
57
56
  return throwError(() => err);
58
57
  }));
59
58
  }
@@ -78,7 +77,7 @@ class NavvySimple extends NavvySupport {
78
77
  // ) as ReturnTypeNavvy<Observable<iBXRestAnswer<T | undefined>>, Observable<iBXRestAnswer<R | undefined>>>
79
78
  // }
80
79
  result() {
81
- return this.mapAndError(this.func).pipe(map(v => (v && this.map) ? this.map.call(this.mapClass, v) : v));
80
+ return this.mapAndError(this.func).pipe(map(v => (this.map) ? this.map.call(this.mapClass, v) : v));
82
81
  }
83
82
  }
84
83
 
@@ -409,7 +408,8 @@ const $updateTitle = 'updateTitle';
409
408
  const $updateColor = 'updateColor';
410
409
  const $updateAvatar = 'updateAvatar';
411
410
  const $setOwner = 'setOwner';
412
- const $mute = 'mute';
411
+ const $mute = 'mute';
412
+ const $timeMan = 'timeman';
413
413
 
414
414
  var partNameMethods$1 = /*#__PURE__*/Object.freeze({
415
415
  __proto__: null,
@@ -498,6 +498,7 @@ var partNameMethods$1 = /*#__PURE__*/Object.freeze({
498
498
  $template: $template,
499
499
  $terminate: $terminate,
500
500
  $time: $time,
501
+ $timeMan: $timeMan,
501
502
  $type: $type,
502
503
  $update: $update,
503
504
  $updateAvatar: $updateAvatar,
@@ -1469,17 +1470,17 @@ class BXRestTaskElapsedItem {
1469
1470
  constructor(http) {
1470
1471
  this.http = http;
1471
1472
  this.url = {
1472
- getmanifest: [$task, $elapseditem, $getmanifest],
1473
- getlist: [$task, $elapseditem, $getlist],
1473
+ getManifest: [$task, $elapseditem, $getmanifest],
1474
+ getList: [$task, $elapseditem, $getlist],
1474
1475
  get: [$task, $elapseditem, $get],
1475
1476
  add: [$task, $elapseditem, $add],
1476
1477
  delete: [$task, $elapseditem, $delete],
1477
- isactionallowed: [$task, $elapseditem, $isactionallowed],
1478
+ isActionAllowed: [$task, $elapseditem, $isactionallowed],
1478
1479
  update: [$task, $elapseditem, $update], // Изменяет параметры записи о затраченном времени
1479
1480
  };
1480
1481
  }
1481
1482
  getList(param = {}) {
1482
- return this.http.post(this.url.getlist, param);
1483
+ return this.http.post(this.url.getList, param);
1483
1484
  }
1484
1485
  add(param) {
1485
1486
  return this.http.post(this.url.add, param, {
@@ -1511,7 +1512,7 @@ class BXRestTaskElapsedItem {
1511
1512
  * @param param
1512
1513
  */
1513
1514
  isActionAllowed(param) {
1514
- return this.http.post(this.url.isactionallowed, param);
1515
+ return this.http.post(this.url.isActionAllowed, param);
1515
1516
  }
1516
1517
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskElapsedItem, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
1517
1518
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTaskElapsedItem, providedIn: 'root' }); }
@@ -1527,13 +1528,13 @@ class BXRestTaskCommentItem {
1527
1528
  constructor(http) {
1528
1529
  this.http = http;
1529
1530
  this.url = {
1530
- getmanifest: [$task, $commentitem, $getmanifest],
1531
- getlist: [$task, $commentitem, $getlist],
1531
+ getManifest: [$task, $commentitem, $getmanifest],
1532
+ getList: [$task, $commentitem, $getlist],
1532
1533
  get: [$task, $commentitem, $get],
1533
1534
  add: [$task, $commentitem, $add],
1534
1535
  update: [$task, $commentitem, $update],
1535
1536
  delete: [$task, $commentitem, $delete],
1536
- isactionallowed: [$task, $commentitem, $isactionallowed], // Проверяет, разрешено ли действие
1537
+ isActionAllowed: [$task, $commentitem, $isactionallowed], // Проверяет, разрешено ли действие
1537
1538
  };
1538
1539
  }
1539
1540
  add(param) {
@@ -1546,7 +1547,7 @@ class BXRestTaskCommentItem {
1546
1547
  return this.http.post(this.url.get, param);
1547
1548
  }
1548
1549
  getlist(param) {
1549
- return this.http.post(this.url.getlist, param);
1550
+ return this.http.post(this.url.getList, param);
1550
1551
  }
1551
1552
  del(param) {
1552
1553
  return this.http.post(this.url.delete, param);
@@ -1807,15 +1808,15 @@ class BXRestDiskFile {
1807
1808
  constructor(http) {
1808
1809
  this.http = http;
1809
1810
  this.url = {
1810
- getfields: [$disk, $file, $getFields],
1811
+ getFields: [$disk, $file, $getFields],
1811
1812
  get: [$disk, $file, $get],
1812
1813
  rename: [$disk, $file, $rename],
1813
- copyto: [$disk, $file, $copyto],
1814
+ copyTo: [$disk, $file, $copyto],
1814
1815
  moveto: [$disk, $file, $moveto],
1815
1816
  delete: [$disk, $file, $delete],
1816
- markdeleted: [$disk, $file, $markdeleted],
1817
+ markDeleted: [$disk, $file, $markdeleted],
1817
1818
  restore: [$disk, $file, $restore],
1818
- uploadversion: [$disk, $file, 'uploadversion'],
1819
+ uploadVersion: [$disk, $file, 'uploadversion'],
1819
1820
  getVersions: [$disk, $file, 'getVersions'],
1820
1821
  restoreFromVersion: [$disk, $file, 'restoreFromVersion'],
1821
1822
  getExternalLink: [$disk, $file, 'getexternallink'] // Возвращает публичную ссылку на файл
@@ -1824,8 +1825,8 @@ class BXRestDiskFile {
1824
1825
  get(id) {
1825
1826
  return this.http.post(this.url.get, { id: id });
1826
1827
  }
1827
- markdeleted(id) {
1828
- return this.http.post(this.url.markdeleted, { id: id });
1828
+ markDeleted(id) {
1829
+ return this.http.post(this.url.markDeleted, { id: id });
1829
1830
  }
1830
1831
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestDiskFile, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
1831
1832
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestDiskFile, providedIn: 'root' }); }
@@ -2449,6 +2450,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
2449
2450
  }]
2450
2451
  }], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
2451
2452
 
2453
+ class BXRestTimeMan {
2454
+ constructor(http) {
2455
+ this.http = http;
2456
+ this.url = {
2457
+ settings: [$timeMan, $settings],
2458
+ status: [$timeMan, $status],
2459
+ open: [$timeMan, 'open'],
2460
+ close: [$timeMan, 'close'],
2461
+ pause: [$timeMan, $pause], // Приостановить рабочий день
2462
+ // networkrange: {
2463
+ // check: this.baseUrl + 'networkrange.check', // Метод для проверки IP-адреса на вхождение в диапазоны сетевых адресов офисной сети
2464
+ // get: this.baseUrl + 'networkrange.get', // Метод для получения диапазонов сетевых адресов, входящих в офисную сеть
2465
+ // set: this.baseUrl + 'networkrange.set' // Метод для установки диапазонов сетевых адресов, входящих в офисную сеть. 18.5.0
2466
+ // },
2467
+ // timecontrol: {
2468
+ // report: {
2469
+ // add: this.baseUrl + 'timecontrol.report.add', // Метод для отправки отчета о выявленном отсутствии
2470
+ // get: this.baseUrl + 'timecontrol.reports.get', // Метод для получения отчета о выявленных отсутствиях
2471
+ // settings: {
2472
+ // get: this.baseUrl + 'timecontrol.reports.settings.get' // Метод для получения пользовательских настроек для построения интерфейса отчетов инструмента контроля времени
2473
+ // },
2474
+ // users: {
2475
+ // get: this.baseUrl + 'timecontrol.reports.users.get' // Метод для получения списка пользователей, относящихся к указанному подразделению. 18.5.0
2476
+ // }
2477
+ // },
2478
+ // settings: {
2479
+ // get: this.baseUrl + 'timecontrol.settings.get', // Метод для получения настроек инструмента контроля времени
2480
+ // set: this.baseUrl + 'timecontrol.settings.set' // Метод для установки настроек инструмента контроля времени
2481
+ // },
2482
+ // },
2483
+ // schedule: {
2484
+ // get: this.baseUrl + 'schedule.get' // Метод позволяет получить рабочий график по его идентификатору
2485
+ // }
2486
+ };
2487
+ }
2488
+ status(param = undefined) {
2489
+ return this.http.post(this.url.status, param);
2490
+ }
2491
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTimeMan, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
2492
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTimeMan, providedIn: 'root' }); }
2493
+ }
2494
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestTimeMan, decorators: [{
2495
+ type: Injectable,
2496
+ args: [{
2497
+ providedIn: 'root'
2498
+ }]
2499
+ }], ctorParameters: function () { return [{ type: HttpBXServices }]; } });
2500
+
2452
2501
  class BaseMapServices extends BaseServices {
2453
2502
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BaseMapServices, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2454
2503
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BaseMapServices, providedIn: 'root' }); }
@@ -2468,7 +2517,7 @@ class BXRestMapUser extends BaseMapServices {
2468
2517
  return (v) ? v.map(i => this.userHttpToTrace(i)) : undefined;
2469
2518
  }
2470
2519
  current(v) {
2471
- return this.userHttpToTrace(v);
2520
+ return (v) ? this.userHttpToTrace(v) : undefined;
2472
2521
  }
2473
2522
  userHttpToTrace(user) {
2474
2523
  let res = Object.assign(clone(user), {
@@ -2573,10 +2622,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
2573
2622
  }], ctorParameters: function () { return [{ type: BXRestUserUserfield }]; } });
2574
2623
 
2575
2624
  class BXRestNavvyUser {
2576
- constructor(BXRestUserMap, BXRestUser, userfield) {
2625
+ constructor(BXRestUserMap, BXRestUser, userField) {
2577
2626
  this.BXRestUserMap = BXRestUserMap;
2578
2627
  this.BXRestUser = BXRestUser;
2579
- this.userfield = userfield;
2628
+ this.userField = userField;
2580
2629
  this.def = {
2581
2630
  params: { ACTIVE: 1, start: 0 }
2582
2631
  };
@@ -2898,48 +2947,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
2898
2947
  }]
2899
2948
  }], ctorParameters: function () { return [{ type: BXRestNavvyListsElement }, { type: BXRestNavvyListsField }, { type: BXRestMapLists }, { type: BXRestLists }]; } });
2900
2949
 
2901
- class Permission {
2902
- static get() {
2903
- return SessionStorage.getItem('permission');
2904
- }
2905
- static set(param) {
2906
- SessionStorage.setItem('permission', Object.assign(this.get(), param));
2907
- }
2908
- static setTaskElapsedItem(idTask, ElapsedItem) {
2909
- let permission = Permission.get();
2910
- if (permission.tasks) {
2911
- let findTask = permission.tasks.find(i => i.id === idTask);
2912
- if (findTask) {
2913
- let findTaskElapsedItem = findTask.elapsedItem.find(i => i.id === ElapsedItem.id);
2914
- if (findTaskElapsedItem) {
2915
- if (ElapsedItem.verified.edit) {
2916
- findTaskElapsedItem.verified.edit = ElapsedItem.verified.edit;
2917
- findTaskElapsedItem.edit = ElapsedItem.edit;
2918
- }
2919
- if (ElapsedItem.verified.del) {
2920
- findTaskElapsedItem.verified.del = ElapsedItem.verified.del;
2921
- findTaskElapsedItem.del = ElapsedItem.del;
2922
- }
2923
- }
2924
- else {
2925
- findTask.elapsedItem.push(ElapsedItem);
2926
- }
2927
- }
2928
- SessionStorage.setItem('permission', permission);
2929
- }
2930
- }
2931
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: Permission, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2932
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: Permission, providedIn: 'root' }); }
2933
- }
2934
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: Permission, decorators: [{
2935
- type: Injectable,
2936
- args: [{
2937
- providedIn: 'root'
2938
- }]
2939
- }] });
2940
-
2941
2950
  class BXRestMapTaskElapsedItem extends BaseMapServices {
2942
2951
  update(p) {
2952
+ console.log('update', p);
2943
2953
  return (p == null);
2944
2954
  }
2945
2955
  getList(v) {
@@ -3344,7 +3354,8 @@ class BXRestNavvyOperationElapsedItem {
3344
3354
  };
3345
3355
  })).pipe(map(v => {
3346
3356
  if (v && v.length) {
3347
- return this.http.mapBranchResultWithoutKey(v).map(i => this.BXRestMapElapsedItem.getList(i)).filter((i) => i !== undefined).flat();
3357
+ const res = this.http.mapBranchResultWithoutKey(v);
3358
+ return this.BXRestMapElapsedItem.getList(res);
3348
3359
  }
3349
3360
  return undefined;
3350
3361
  }));
@@ -3366,7 +3377,7 @@ class BXRestNavvyOperationElapsedItem {
3366
3377
  .map(i => {
3367
3378
  return {
3368
3379
  [i]: {
3369
- name: this.http.getNameMethod([$tasks, $task, $getaccess]),
3380
+ name: this.http.getNameMethod([$task, $elapseditem, $isactionallowed]),
3370
3381
  param: {
3371
3382
  TASKID: i,
3372
3383
  ITEMID: 1,
@@ -3389,58 +3400,67 @@ class BXRestNavvyOperationElapsedItem {
3389
3400
  }));
3390
3401
  }
3391
3402
  checkPermissionAddElapsedTimeToTask(idTask) {
3392
- let permission = Permission.get();
3393
- if (permission?.tasks?.length) {
3394
- let findTask = permission.tasks.find(i => i.id === idTask);
3395
- if (findTask?.permission) {
3396
- return of(findTask.permission['ELAPSEDTIME.ADD']);
3403
+ // let permission = Permission.get()
3404
+ // if (permission?.tasks?.length) {
3405
+ // let findTask = permission.tasks.find(i => i.id === idTask)
3406
+ // if (findTask?.permission) {
3407
+ // return of(findTask.permission['ELAPSEDTIME.ADD'])
3408
+ // }
3409
+ return this.BXRestNavvyUser.current().result().pipe(mergeMap(self => {
3410
+ if (self) {
3411
+ return this.BXRestNavvyTasks.task.getAccess({
3412
+ id: idTask,
3413
+ users: [self.ID]
3414
+ }).result().pipe(
3415
+ // tap(v => {
3416
+ // if (v && v[self.ID]) {
3417
+ // Permission.set({
3418
+ // tasks: [{id: idTask, permission: v[self.ID], elapsedItem: []}]
3419
+ // })
3420
+ // }
3421
+ // }),
3422
+ map(v => {
3423
+ return (v && v[self.ID]) ? v[self.ID]['ELAPSEDTIME.ADD'] : false;
3424
+ }));
3397
3425
  }
3398
- return this.BXRestNavvyUser.current().result().pipe(mergeMap(self => {
3399
- if (self) {
3400
- return this.BXRestNavvyTasks.task.getAccess({
3401
- id: idTask,
3402
- users: [self.ID]
3403
- }).result().pipe(tap(v => {
3404
- if (v && v[self.ID]) {
3405
- Permission.set({
3406
- tasks: [{ id: idTask, permission: v[self.ID], elapsedItem: [] }]
3407
- });
3408
- }
3409
- }), map(v => {
3410
- return (v && v[self.ID]) ? v[self.ID]['ELAPSEDTIME.ADD'] : false;
3411
- }));
3412
- }
3413
- return of(undefined);
3414
- }));
3415
- }
3416
- return of(undefined);
3426
+ return of(undefined);
3427
+ }));
3428
+ // }
3429
+ // return of(undefined)
3417
3430
  }
3431
+ // вообще метод похоже даже на вредный в какомто смысле
3418
3432
  checkPermissionReadTask(idTask) {
3419
- let permission = Permission.get();
3420
- if (permission?.tasks?.length) {
3421
- let findTask = permission.tasks.find(i => i.id === idTask);
3422
- if (findTask?.permission) {
3423
- return of(findTask.permission.ACCEPT);
3433
+ // let permission = Permission.get()
3434
+ // if (permission?.tasks?.length) {
3435
+ // let findTask = permission.tasks.find(i => i.id === idTask)
3436
+ // if (findTask?.permission) {
3437
+ // return of(findTask.permission.ACCEPT)
3438
+ // }
3439
+ // console.log('idTask', idTask)
3440
+ return this.BXRestNavvyUser.current().result().pipe(mergeMap(self => {
3441
+ console.log('self', self);
3442
+ if (self) {
3443
+ return this.BXRestNavvyTasks.task.getAccess({
3444
+ id: idTask,
3445
+ users: [self.ID]
3446
+ }).result().pipe(
3447
+ // tap(v => {
3448
+ // if (v && v[self.ID]) {
3449
+ // Permission.set({
3450
+ // tasks: [{id: idTask, permission: v[self.ID], elapsedItem: []}]
3451
+ // })
3452
+ // }
3453
+ // }),
3454
+ map(v => {
3455
+ console.log('v', v);
3456
+ return (v && v[self.ID]) ? !!v[self.ID] : false; // отдельного флага на чтение нет, выходит что если права отдались то и права есть
3457
+ }));
3424
3458
  }
3425
- return this.BXRestNavvyUser.current().result().pipe(mergeMap(self => {
3426
- if (self) {
3427
- return this.BXRestNavvyTasks.task.getAccess({
3428
- id: idTask,
3429
- users: [self.ID]
3430
- }).result().pipe(tap(v => {
3431
- if (v && v[self.ID]) {
3432
- Permission.set({
3433
- tasks: [{ id: idTask, permission: v[self.ID], elapsedItem: [] }]
3434
- });
3435
- }
3436
- }), map(v => {
3437
- return (v && v[self.ID]) ? v[self.ID].ACCEPT : false;
3438
- }));
3439
- }
3440
- return of(undefined);
3441
- }));
3442
- }
3443
- return of(undefined);
3459
+ return of(undefined);
3460
+ }));
3461
+ // }
3462
+ //
3463
+ // return of(undefined)
3444
3464
  }
3445
3465
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyOperationElapsedItem, deps: [{ token: HttpBXServices }, { token: BXRestNavvyDelegateElapsedItem }, { token: BXRestMapTaskElapsedItem }, { token: BXRestNavvyUser }, { token: BXRestNavvyTasks }], target: i0.ɵɵFactoryTarget.Injectable }); }
3446
3466
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyOperationElapsedItem, providedIn: 'root' }); }
@@ -3452,7 +3472,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
3452
3472
  }]
3453
3473
  }], ctorParameters: function () { return [{ type: HttpBXServices }, { type: BXRestNavvyDelegateElapsedItem }, { type: BXRestMapTaskElapsedItem }, { type: BXRestNavvyUser }, { type: BXRestNavvyTasks }]; } });
3454
3474
 
3455
- class BXRestNavvyElapseditem {
3475
+ class BXRestNavvyElapsedItem {
3456
3476
  constructor(BXRestElapsedItem, BXRestMapElapsedItem, delegate, operation) {
3457
3477
  this.BXRestElapsedItem = BXRestElapsedItem;
3458
3478
  this.BXRestMapElapsedItem = BXRestMapElapsedItem;
@@ -3472,7 +3492,13 @@ class BXRestNavvyElapseditem {
3472
3492
  return this.delegate.getList(param);
3473
3493
  }
3474
3494
  add(param) {
3495
+ return new NavvySimple(this, this.BXRestMapElapsedItem, this.addBase.call(this, param));
3496
+ // return this.Navvy.simpleWithArg(this.addBase.bind(this), param)
3497
+ }
3498
+ addBase(param) {
3499
+ console.log('this.operation', this.operation);
3475
3500
  return this.operation.checkPermissionReadTask(param.TASKID).pipe(mergeMap(allowedReadTask => {
3501
+ console.log('allowedReadTask', allowedReadTask);
3476
3502
  if (allowedReadTask) {
3477
3503
  return this.operation.checkPermissionAddElapsedTimeToTask(param.TASKID).pipe(mergeMap(allowed => {
3478
3504
  if (allowed) {
@@ -3494,21 +3520,19 @@ class BXRestNavvyElapseditem {
3494
3520
  * @param param
3495
3521
  */
3496
3522
  update(param) {
3497
- return this.Navvy.simple(() => this.operation.checkPermissionReadTask(param.TASKID).pipe(mergeMap(allowedReadTask => {
3523
+ const func = () => this.operation.checkPermissionReadTask(param.TASKID).pipe(mergeMap((allowedReadTask) => {
3498
3524
  if (allowedReadTask) {
3499
3525
  return this.isAllowedModify(param.TASKID, param.ITEMID).pipe(mergeMap(allowed => {
3500
3526
  if (allowed) {
3501
3527
  return this.BXRestElapsedItem.update(param);
3502
3528
  }
3503
- else {
3504
- return throwError(() => new Error('Отсутствуют права на изменение записи затраченного времени'));
3505
- }
3529
+ return throwError(() => new Error('Отсутствуют права на изменение записи затраченного времени'));
3506
3530
  }));
3507
3531
  }
3508
- else {
3509
- return throwError(() => new Error('Отсутствуют права на чтение задачи'));
3510
- }
3511
- })), this.BXRestMapElapsedItem.update);
3532
+ return throwError(() => new Error('Отсутствуют права на чтение задачи'));
3533
+ }));
3534
+ console.log('this.BXRestMapElapsedItem.update', this.BXRestMapElapsedItem.update);
3535
+ return new NavvySimple(this, this.BXRestMapElapsedItem, func.call(this), this.BXRestMapElapsedItem.update);
3512
3536
  }
3513
3537
  /*
3514
3538
  getAll(
@@ -3570,40 +3594,45 @@ class BXRestNavvyElapseditem {
3570
3594
  )
3571
3595
  }
3572
3596
  */
3597
+ // TODO: разобраться что это за ебатня в комментах и вписать нормальной комент если она нужна
3573
3598
  isAllowedModify(idTask, idItem) {
3574
- let permission = Permission.get();
3575
- if (permission?.tasks?.length) {
3576
- let findTask = permission.tasks.find(i => i.id === idTask);
3577
- if (findTask) {
3578
- let find = findTask.elapsedItem.find(i => i.id === idItem);
3579
- if (find && find.verified.edit) {
3580
- return of(find.edit);
3581
- }
3582
- }
3583
- }
3599
+ // let permission = Permission.get()
3600
+ // if (permission?.tasks?.length) {
3601
+ // let findTask = permission.tasks.find(i => i.id === idTask)
3602
+ // if (findTask) {
3603
+ // let find = findTask.elapsedItem.find(i => i.id === idItem)
3604
+ // if (find && find.verified.edit) {
3605
+ // return of(find.edit)
3606
+ // }
3607
+ // }
3608
+ // }
3584
3609
  return this.isActionAllowed({
3585
3610
  TASKID: idTask,
3586
- ITEMID: 2,
3587
- ACTIONID: idItem
3588
- }).result().pipe(tap(v => {
3589
- if (v !== undefined) {
3590
- Permission.setTaskElapsedItem(idTask, {
3591
- id: idItem,
3592
- edit: v,
3593
- del: false,
3594
- verified: {
3595
- edit: true,
3596
- del: false,
3597
- }
3598
- });
3599
- }
3600
- }));
3611
+ ITEMID: idItem,
3612
+ ACTIONID: 2
3613
+ }).result();
3614
+ // .pipe(
3615
+ // tap(v => {
3616
+ // if (v !== undefined) {
3617
+ // Permission.setTaskElapsedItem(idTask,
3618
+ // {
3619
+ // id: idItem,
3620
+ // edit: v,
3621
+ // del: false,
3622
+ // verified: {
3623
+ // edit: true,
3624
+ // del: false,
3625
+ // }
3626
+ // })
3627
+ // }
3628
+ // })
3629
+ // )
3601
3630
  }
3602
3631
  isAllowedRemove(idTask, idItem) {
3603
3632
  return this.isActionAllowed({
3604
3633
  TASKID: idTask,
3605
- ITEMID: 3,
3606
- ACTIONID: idItem
3634
+ ITEMID: idItem,
3635
+ ACTIONID: 3
3607
3636
  }).result();
3608
3637
  }
3609
3638
  /**
@@ -3638,10 +3667,10 @@ class BXRestNavvyElapseditem {
3638
3667
  }
3639
3668
  })), v => (v === null));
3640
3669
  }
3641
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyElapseditem, deps: [{ token: BXRestTaskElapsedItem }, { token: BXRestMapTaskElapsedItem }, { token: BXRestNavvyDelegateElapsedItem }, { token: BXRestNavvyOperationElapsedItem }], target: i0.ɵɵFactoryTarget.Injectable }); }
3642
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyElapseditem, providedIn: 'root' }); }
3670
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyElapsedItem, deps: [{ token: BXRestTaskElapsedItem }, { token: BXRestMapTaskElapsedItem }, { token: BXRestNavvyDelegateElapsedItem }, { token: BXRestNavvyOperationElapsedItem }], target: i0.ɵɵFactoryTarget.Injectable }); }
3671
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyElapsedItem, providedIn: 'root' }); }
3643
3672
  }
3644
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyElapseditem, decorators: [{
3673
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyElapsedItem, decorators: [{
3645
3674
  type: Injectable,
3646
3675
  args: [{
3647
3676
  providedIn: 'root'
@@ -3779,12 +3808,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
3779
3808
  }], ctorParameters: function () { return [{ type: BXRestTaskPlanner }, { type: BXRestMapTaskPlaner }]; } });
3780
3809
 
3781
3810
  class BXRestNavvyTask {
3782
- constructor(elapseditem, commentitem, planner) {
3783
- this.elapseditem = elapseditem;
3784
- this.commentitem = commentitem;
3811
+ constructor(elapsedItem, commentItem, planner) {
3812
+ this.elapsedItem = elapsedItem;
3813
+ this.commentItem = commentItem;
3785
3814
  this.planner = planner;
3786
3815
  }
3787
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTask, deps: [{ token: BXRestNavvyElapseditem }, { token: BXRestNavvyTaskCommentItem }, { token: BXRestNavvyTaskPlanner }], target: i0.ɵɵFactoryTarget.Injectable }); }
3816
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTask, deps: [{ token: BXRestNavvyElapsedItem }, { token: BXRestNavvyTaskCommentItem }, { token: BXRestNavvyTaskPlanner }], target: i0.ɵɵFactoryTarget.Injectable }); }
3788
3817
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTask, providedIn: 'root' }); }
3789
3818
  }
3790
3819
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTask, decorators: [{
@@ -3792,7 +3821,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
3792
3821
  args: [{
3793
3822
  providedIn: 'root'
3794
3823
  }]
3795
- }], ctorParameters: function () { return [{ type: BXRestNavvyElapseditem }, { type: BXRestNavvyTaskCommentItem }, { type: BXRestNavvyTaskPlanner }]; } });
3824
+ }], ctorParameters: function () { return [{ type: BXRestNavvyElapsedItem }, { type: BXRestNavvyTaskCommentItem }, { type: BXRestNavvyTaskPlanner }]; } });
3796
3825
 
3797
3826
  class BXRestMapDiskBase extends BaseMapServices {
3798
3827
  separationFoldersAndFiles(arr) {
@@ -3839,22 +3868,24 @@ class BXRestMapDiskBase extends BaseMapServices {
3839
3868
  return object && object.TYPE && object.TYPE === 'folder';
3840
3869
  }
3841
3870
  FolderHttpToFolder(value) {
3842
- return {
3843
- ...value,
3844
- ...{
3845
- CREATED_BY: this.toNum(value.CREATED_BY),
3846
- CREATE_TIME: this.toDate(value.CREATE_TIME),
3847
- DELETED_BY: this.toNum(value.DELETED_BY),
3848
- DELETED_TYPE: this.toNum(value.DELETED_TYPE),
3849
- DELETE_TIME: this.toDate(value.CREATE_TIME),
3850
- ID: this.toNum(value.ID),
3851
- PARENT_ID: this.toNum(value.PARENT_ID),
3852
- REAL_OBJECT_ID: this.toNum(value.REAL_OBJECT_ID),
3853
- STORAGE_ID: this.toNum(value.STORAGE_ID),
3854
- UPDATED_BY: this.toNum(value.UPDATED_BY),
3855
- UPDATE_TIME: this.toDate(value.CREATE_TIME)
3871
+ return (value)
3872
+ ? {
3873
+ ...value,
3874
+ ...{
3875
+ CREATED_BY: this.toNum(value.CREATED_BY),
3876
+ CREATE_TIME: this.toDate(value.CREATE_TIME),
3877
+ DELETED_BY: this.toNum(value.DELETED_BY),
3878
+ DELETED_TYPE: this.toNum(value.DELETED_TYPE),
3879
+ DELETE_TIME: this.toDate(value.CREATE_TIME),
3880
+ ID: this.toNum(value.ID),
3881
+ PARENT_ID: this.toNum(value.PARENT_ID),
3882
+ REAL_OBJECT_ID: this.toNum(value.REAL_OBJECT_ID),
3883
+ STORAGE_ID: this.toNum(value.STORAGE_ID),
3884
+ UPDATED_BY: this.toNum(value.UPDATED_BY),
3885
+ UPDATE_TIME: this.toDate(value.CREATE_TIME)
3886
+ }
3856
3887
  }
3857
- };
3888
+ : undefined;
3858
3889
  }
3859
3890
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapDiskBase, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3860
3891
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapDiskBase, providedIn: 'root' }); }
@@ -4017,8 +4048,8 @@ class BXRestNavvyDiskFile {
4017
4048
  get(id) {
4018
4049
  return this.Navvy.simpleWithArg(this.BXRestDiskFile.get, id, this.BXRestMapDiskFile.get);
4019
4050
  }
4020
- markdeleted(id) {
4021
- return this.Navvy.simpleWithArg(this.BXRestDiskFile.markdeleted, id, this.BXRestMapDiskFile.markdeleted);
4051
+ markDeleted(id) {
4052
+ return this.Navvy.simpleWithArg(this.BXRestDiskFile.markDeleted, id, this.BXRestMapDiskFile.markdeleted);
4022
4053
  }
4023
4054
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyDiskFile, deps: [{ token: BXRestDiskFile }, { token: BXRestMapDiskFile }], target: i0.ɵɵFactoryTarget.Injectable }); }
4024
4055
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyDiskFile, providedIn: 'root' }); }
@@ -4031,11 +4062,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4031
4062
  }], ctorParameters: function () { return [{ type: BXRestDiskFile }, { type: BXRestMapDiskFile }]; } });
4032
4063
 
4033
4064
  class BXRestMapDiskStorage extends BXRestMapDiskBase {
4034
- getchildren(arr) {
4065
+ getChildren(arr) {
4035
4066
  return (arr) ? this.separationFoldersAndFiles(arr) : { file: [], folder: [] };
4036
4067
  }
4037
- addfolder(value) {
4038
- return this.FolderHttpToFolder(value);
4068
+ addFolder(value) {
4069
+ return (value) ? this.FolderHttpToFolder(value) : undefined;
4039
4070
  }
4040
4071
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapDiskStorage, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4041
4072
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapDiskStorage, providedIn: 'root' }); }
@@ -4051,32 +4082,32 @@ class BXRestDiskStorage {
4051
4082
  constructor(http) {
4052
4083
  this.http = http;
4053
4084
  this.url = {
4054
- getfields: [$disk, $storage, $getFields],
4085
+ getFields: [$disk, $storage, $getFields],
4055
4086
  get: [$disk, $storage, $get],
4056
4087
  rename: [$disk, $storage, $rename],
4057
4088
  // Допустимо переименование только хранилища приложения (см. disk.storage.getforapp)
4058
- getlist: [$disk, $storage, $getlist],
4059
- gettypes: [$disk, $storage, $getTypes],
4060
- addfolder: [$disk, $storage, 'addfolder'],
4061
- getchildren: [$disk, $storage, $getchildren],
4089
+ getList: [$disk, $storage, $getlist],
4090
+ getTypes: [$disk, $storage, $getTypes],
4091
+ addFolder: [$disk, $storage, 'addfolder'],
4092
+ getChildren: [$disk, $storage, $getchildren],
4062
4093
  // которые находятся непосредственно в корне хранилища
4063
- uploadfile: [$disk, $storage, $uploadfile],
4064
- getforapp: [$disk, $storage, 'getforapp'] // Возвращает описание хранилища,
4094
+ uploadFile: [$disk, $storage, $uploadfile],
4095
+ getForApp: [$disk, $storage, 'getforapp'] // Возвращает описание хранилища,
4065
4096
  // с которым может работать приложение для хранения своих данных (файлов и папок)
4066
4097
  };
4067
4098
  }
4068
- getforapp() {
4069
- return this.http.post(this.url.getforapp, {});
4099
+ getForApp() {
4100
+ return this.http.post(this.url.getForApp, {});
4070
4101
  }
4071
- getchildren(param) {
4072
- return this.http.post(this.url.getchildren, param);
4102
+ getChildren(param) {
4103
+ return this.http.post(this.url.getChildren, param);
4073
4104
  }
4074
4105
  // TODO: Сделать нормальное описание параметров
4075
- addfolder(param) {
4076
- return this.http.post(this.url.addfolder, param);
4106
+ addFolder(param) {
4107
+ return this.http.post(this.url.addFolder, param);
4077
4108
  }
4078
- uploadfile(param) {
4079
- return this.http.post(this.url.uploadfile, param);
4109
+ uploadFile(param) {
4110
+ return this.http.post(this.url.uploadFile, param);
4080
4111
  }
4081
4112
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestDiskStorage, deps: [{ token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
4082
4113
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestDiskStorage, providedIn: 'root' }); }
@@ -4092,15 +4123,15 @@ class BXRestNavvyInterlayerDiskStorage {
4092
4123
  constructor(BXRestDiskStorage) {
4093
4124
  this.BXRestDiskStorage = BXRestDiskStorage;
4094
4125
  }
4095
- getforapp() {
4096
- let res = SessionStorage.getItem(this.constructor.name + this.getforapp.name);
4126
+ getForApp() {
4127
+ let res = SessionStorage.getItem(this.constructor.name + this.getForApp.name);
4097
4128
  if (res) {
4098
4129
  return of(res);
4099
4130
  }
4100
4131
  else {
4101
- return this.BXRestDiskStorage.getforapp().pipe(tap(v => {
4132
+ return this.BXRestDiskStorage.getForApp().pipe(tap(v => {
4102
4133
  if (v) {
4103
- SessionStorage.setItem(this.constructor.name + this.getforapp.name, v);
4134
+ SessionStorage.setItem(this.constructor.name + this.getForApp.name, v);
4104
4135
  }
4105
4136
  }), shareReplay(1));
4106
4137
  }
@@ -4123,15 +4154,15 @@ class BXRestNavvyInterlayerDiskStorage {
4123
4154
  }
4124
4155
  }
4125
4156
  */
4126
- getchildren(param) {
4127
- return this.BXRestDiskStorage.getchildren(param);
4157
+ getChildren(param) {
4158
+ return this.BXRestDiskStorage.getChildren(param);
4128
4159
  }
4129
4160
  // TODO: разобраться что возвращает и что вставлять
4130
- addfolder(param) {
4131
- return this.BXRestDiskStorage.addfolder(param);
4161
+ addFolder(param) {
4162
+ return this.BXRestDiskStorage.addFolder(param);
4132
4163
  }
4133
- uploadfile(param) {
4134
- return this.BXRestDiskStorage.uploadfile(param);
4164
+ uploadFile(param) {
4165
+ return this.BXRestDiskStorage.uploadFile(param);
4135
4166
  }
4136
4167
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyInterlayerDiskStorage, deps: [{ token: BXRestDiskStorage }], target: i0.ɵɵFactoryTarget.Injectable }); }
4137
4168
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyInterlayerDiskStorage, providedIn: 'root' }); }
@@ -4149,8 +4180,8 @@ class BXRestNavvyDiskStorage {
4149
4180
  this.BXRestMapDiskStorage = BXRestMapDiskStorage;
4150
4181
  this.Navvy = new Navvy(this.BXRestNavvyInterlayerDiskStorage, this.BXRestMapDiskStorage);
4151
4182
  }
4152
- getforapp() {
4153
- return this.Navvy.simple(this.BXRestNavvyInterlayerDiskStorage.getforapp);
4183
+ getForApp() {
4184
+ return this.Navvy.simple(this.BXRestNavvyInterlayerDiskStorage.getForApp);
4154
4185
  }
4155
4186
  /*
4156
4187
  private getforappEnd(){
@@ -4170,14 +4201,14 @@ class BXRestNavvyDiskStorage {
4170
4201
  }
4171
4202
  }
4172
4203
  */
4173
- getchildren(param) {
4174
- return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.getchildren, param, this.BXRestMapDiskStorage.getchildren);
4204
+ getChildren(param) {
4205
+ return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.getChildren, param, this.BXRestMapDiskStorage.getChildren);
4175
4206
  }
4176
- addfolder(param) {
4177
- return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.addfolder, param, this.BXRestMapDiskStorage.addfolder);
4207
+ addFolder(param) {
4208
+ return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.addFolder, param, this.BXRestMapDiskStorage.addFolder);
4178
4209
  }
4179
- uploadfile(param) {
4180
- return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.uploadfile, param);
4210
+ uploadFile(param) {
4211
+ return this.Navvy.simpleWithArg(this.BXRestNavvyInterlayerDiskStorage.uploadFile, param);
4181
4212
  }
4182
4213
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyDiskStorage, deps: [{ token: BXRestNavvyInterlayerDiskStorage }, { token: BXRestMapDiskStorage }], target: i0.ɵɵFactoryTarget.Injectable }); }
4183
4214
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyDiskStorage, providedIn: 'root' }); }
@@ -4197,9 +4228,9 @@ class BXRestNavvyDiskOperation {
4197
4228
  }
4198
4229
  // данные файла в base64
4199
4230
  loadFileInAppFolder(file) {
4200
- return this.storage.getforapp().result().pipe(mergeMap$1(infoFolder => {
4231
+ return this.storage.getForApp().result().pipe(mergeMap$1(infoFolder => {
4201
4232
  if (infoFolder) {
4202
- return this.storage.uploadfile({
4233
+ return this.storage.uploadFile({
4203
4234
  id: infoFolder.ID,
4204
4235
  fileContent: [file.name, file.val],
4205
4236
  data: {
@@ -4227,15 +4258,12 @@ class BXRestNavvyDiskOperation {
4227
4258
  // if (saveData.content.root.app) {
4228
4259
  // return of(saveData.content.root.app)
4229
4260
  // }
4230
- return this.storage.getforapp().result().pipe(mergeMap$1(v => {
4261
+ return this.storage.getForApp().result().pipe(mergeMap$1(v => {
4231
4262
  if (v && v.ID) {
4232
- return this.storage.getchildren({ id: v.ID }).result();
4263
+ return this.storage.getChildren({ id: v.ID }).result();
4233
4264
  }
4234
4265
  return of(undefined);
4235
4266
  }));
4236
- // }
4237
- // )
4238
- // )
4239
4267
  }
4240
4268
  /**
4241
4269
  * Получать или создать папку, если её нет, с определенным именем для приложения
@@ -4251,9 +4279,9 @@ class BXRestNavvyDiskOperation {
4251
4279
  }
4252
4280
  }
4253
4281
  }
4254
- return this.storage.getforapp().result().pipe(mergeMap$1(v => {
4282
+ return this.storage.getForApp().result().pipe(mergeMap$1(v => {
4255
4283
  if (v && v.ID) {
4256
- return this.storage.addfolder({ id: v.ID, data: { NAME: folderName } }).result();
4284
+ return this.storage.addFolder({ id: v.ID, data: { NAME: folderName } }).result();
4257
4285
  }
4258
4286
  return throwError(() => new Error('Отсутствуют права добавление записи затраченного времени'));
4259
4287
  }));
@@ -4600,7 +4628,7 @@ class BXRestNavvyRestCalendarEvent {
4600
4628
  constructor(BXRestCalendarEvent, eventMap) {
4601
4629
  this.BXRestCalendarEvent = BXRestCalendarEvent;
4602
4630
  this.eventMap = eventMap;
4603
- this.Navvy = new Navvy(this.eventMap, undefined);
4631
+ this.Navvy = new Navvy(BXRestCalendarEvent, eventMap);
4604
4632
  }
4605
4633
  get(param) {
4606
4634
  return this.Navvy.simpleWithArg(this.BXRestCalendarEvent.get, param, this.eventMap.get);
@@ -4732,7 +4760,7 @@ class BXRestNavvyServer {
4732
4760
  constructor(BXRestServer, BXRestMapServer) {
4733
4761
  this.BXRestServer = BXRestServer;
4734
4762
  this.BXRestMapServer = BXRestMapServer;
4735
- this.Navvy = new Navvy(this.BXRestServer, BXRestMapServer);
4763
+ this.Navvy = new Navvy(BXRestServer, BXRestMapServer);
4736
4764
  }
4737
4765
  time() {
4738
4766
  return this.Navvy.simple(this.BXRestServer.time, this.BXRestMapServer.time);
@@ -4842,7 +4870,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4842
4870
 
4843
4871
  class BXRestMapApp extends BaseMapServices {
4844
4872
  info(value) {
4845
- return { ...value, ...{ ID: this.toNum(value.ID), PAYMENT_EXPIRED: value.PAYMENT_EXPIRED === 'Y' } };
4873
+ return (value)
4874
+ ? { ...value, ...{ ID: this.toNum(value.ID), PAYMENT_EXPIRED: value.PAYMENT_EXPIRED === 'Y' } }
4875
+ : undefined;
4846
4876
  }
4847
4877
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapApp, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4848
4878
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapApp, providedIn: 'root' }); }
@@ -4876,6 +4906,60 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4876
4906
  }]
4877
4907
  }], ctorParameters: function () { return [{ type: BXRestApp }, { type: BXRestMapApp }]; } });
4878
4908
 
4909
+ class BXRestMapTimeMan {
4910
+ status(status) {
4911
+ if (status) {
4912
+ const duration = status.DURATION.split(':');
4913
+ const time_leaks = status.TIME_LEAKS.split(':');
4914
+ return {
4915
+ STATUS: status.STATUS,
4916
+ TIME_START: (status.TIME_START) ? new Date(status.TIME_START) : undefined,
4917
+ TIME_FINISH: (status.TIME_FINISH) ? new Date(status.TIME_FINISH) : undefined,
4918
+ DURATION: (duration.length && duration.length == 3)
4919
+ ? Number(duration[0]) * 60 * 60 + Number(duration[1]) * 60 + Number(duration[2]) : 0,
4920
+ TIME_LEAKS: (time_leaks.length && time_leaks.length == 3)
4921
+ ? Number(time_leaks[0]) * 60 * 60 + Number(time_leaks[1]) * 60 + Number(time_leaks[2]) : 0,
4922
+ ACTIVE: status.ACTIVE,
4923
+ IP_OPEN: status.IP_CLOSE,
4924
+ IP_CLOSE: status.IP_CLOSE,
4925
+ LAT_OPEN: status.LAT_OPEN,
4926
+ LON_OPEN: status.LON_OPEN,
4927
+ LAT_CLOSE: status.LAT_CLOSE,
4928
+ LON_CLOSE: status.LON_CLOSE,
4929
+ TZ_OFFSET: status.TZ_OFFSET
4930
+ };
4931
+ }
4932
+ return undefined;
4933
+ }
4934
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTimeMan, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4935
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTimeMan, providedIn: 'root' }); }
4936
+ }
4937
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestMapTimeMan, decorators: [{
4938
+ type: Injectable,
4939
+ args: [{
4940
+ providedIn: 'root'
4941
+ }]
4942
+ }] });
4943
+
4944
+ class BXRestNavvyTimeMan {
4945
+ constructor(BXRestTimeMan, BXRestMapTimeMan) {
4946
+ this.BXRestTimeMan = BXRestTimeMan;
4947
+ this.BXRestMapTimeMan = BXRestMapTimeMan;
4948
+ this.Navvy = new Navvy(BXRestTimeMan, BXRestMapTimeMan);
4949
+ }
4950
+ status(param = undefined) {
4951
+ return this.Navvy.simpleWithArg(this.BXRestTimeMan.status, param, this.BXRestMapTimeMan.status);
4952
+ }
4953
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTimeMan, deps: [{ token: BXRestTimeMan }, { token: BXRestMapTimeMan }], target: i0.ɵɵFactoryTarget.Injectable }); }
4954
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTimeMan, providedIn: 'root' }); }
4955
+ }
4956
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvyTimeMan, decorators: [{
4957
+ type: Injectable,
4958
+ args: [{
4959
+ providedIn: 'root'
4960
+ }]
4961
+ }], ctorParameters: function () { return [{ type: BXRestTimeMan }, { type: BXRestMapTimeMan }]; } });
4962
+
4879
4963
  class BXRestMaps extends BaseMapServices {
4880
4964
  profile(user) {
4881
4965
  return (user) ? { ...user, ...{ ID: this.toNum(user.ID) } } : undefined;
@@ -4891,7 +4975,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4891
4975
  }] });
4892
4976
 
4893
4977
  class BXRest {
4894
- constructor(user, lists, task, tasks, disk, bizProc, log, calendar, sonet_group, server, department, im, app, http) {
4978
+ constructor(user, lists, task, tasks, disk, bizProc, log, calendar, sonet_group, server, department, im, app, timeMan, http) {
4895
4979
  this.user = user;
4896
4980
  this.lists = lists;
4897
4981
  this.task = task;
@@ -4905,12 +4989,13 @@ class BXRest {
4905
4989
  this.department = department;
4906
4990
  this.im = im;
4907
4991
  this.app = app;
4992
+ this.timeMan = timeMan;
4908
4993
  this.http = http;
4909
4994
  }
4910
4995
  profile() {
4911
4996
  return this.http.post(['profile']);
4912
4997
  }
4913
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRest, deps: [{ token: BXRestUser }, { token: BXRestLists }, { token: BXRestTask }, { token: BXRestTasks }, { token: BXRestDisk }, { token: BXRestBizProc }, { token: BXRestLog }, { token: BXRestCalendar }, { token: BXRestSonetGroup }, { token: BXRestServer }, { token: BXRestDepartment }, { token: BXRestIm }, { token: BXRestApp }, { token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
4998
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRest, deps: [{ token: BXRestUser }, { token: BXRestLists }, { token: BXRestTask }, { token: BXRestTasks }, { token: BXRestDisk }, { token: BXRestBizProc }, { token: BXRestLog }, { token: BXRestCalendar }, { token: BXRestSonetGroup }, { token: BXRestServer }, { token: BXRestDepartment }, { token: BXRestIm }, { token: BXRestApp }, { token: BXRestTimeMan }, { token: HttpBXServices }], target: i0.ɵɵFactoryTarget.Injectable }); }
4914
4999
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRest, providedIn: 'root' }); }
4915
5000
  }
4916
5001
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRest, decorators: [{
@@ -4918,9 +5003,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4918
5003
  args: [{
4919
5004
  providedIn: 'root'
4920
5005
  }]
4921
- }], ctorParameters: function () { return [{ type: BXRestUser }, { type: BXRestLists }, { type: BXRestTask }, { type: BXRestTasks }, { type: BXRestDisk }, { type: BXRestBizProc }, { type: BXRestLog }, { type: BXRestCalendar }, { type: BXRestSonetGroup }, { type: BXRestServer }, { type: BXRestDepartment }, { type: BXRestIm }, { type: BXRestApp }, { type: HttpBXServices }]; } });
5006
+ }], ctorParameters: function () { return [{ type: BXRestUser }, { type: BXRestLists }, { type: BXRestTask }, { type: BXRestTasks }, { type: BXRestDisk }, { type: BXRestBizProc }, { type: BXRestLog }, { type: BXRestCalendar }, { type: BXRestSonetGroup }, { type: BXRestServer }, { type: BXRestDepartment }, { type: BXRestIm }, { type: BXRestApp }, { type: BXRestTimeMan }, { type: HttpBXServices }]; } });
4922
5007
  class BXRestNavvy {
4923
- constructor(user, lists, task, tasks, disk, bizProc, log, calendar, sonet_group, server, department, im, app, BXRest, BXRestMap) {
5008
+ constructor(user, lists, task, tasks, disk, bizProc, log, calendar, sonet_group, server, department, im, app, timeMan, BXRest, BXRestMap) {
4924
5009
  this.user = user;
4925
5010
  this.lists = lists;
4926
5011
  this.task = task;
@@ -4934,6 +5019,7 @@ class BXRestNavvy {
4934
5019
  this.department = department;
4935
5020
  this.im = im;
4936
5021
  this.app = app;
5022
+ this.timeMan = timeMan;
4937
5023
  this.BXRest = BXRest;
4938
5024
  this.BXRestMap = BXRestMap;
4939
5025
  this.Navvy = new Navvy(this.BXRest, this.BXRestMap);
@@ -4941,7 +5027,7 @@ class BXRestNavvy {
4941
5027
  profile() {
4942
5028
  return this.Navvy.simple(this.BXRest.profile, this.BXRestMap.profile);
4943
5029
  }
4944
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvy, deps: [{ token: BXRestNavvyUser }, { token: BXRestNavvyLists }, { token: BXRestNavvyTask }, { token: BXRestNavvyTasks }, { token: BXRestNavvyDisk }, { token: BXRestNavvyBizProc }, { token: BXRestNavvyLog }, { token: BXRestNavvyCalendar }, { token: BXRestNavvySonetGroup }, { token: BXRestNavvyServer }, { token: BXRestNavvyDepartment }, { token: BXRestNavvyIm }, { token: BXRestNavvyApp }, { token: BXRest }, { token: BXRestMaps }], target: i0.ɵɵFactoryTarget.Injectable }); }
5030
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvy, deps: [{ token: BXRestNavvyUser }, { token: BXRestNavvyLists }, { token: BXRestNavvyTask }, { token: BXRestNavvyTasks }, { token: BXRestNavvyDisk }, { token: BXRestNavvyBizProc }, { token: BXRestNavvyLog }, { token: BXRestNavvyCalendar }, { token: BXRestNavvySonetGroup }, { token: BXRestNavvyServer }, { token: BXRestNavvyDepartment }, { token: BXRestNavvyIm }, { token: BXRestNavvyApp }, { token: BXRestNavvyTimeMan }, { token: BXRest }, { token: BXRestMaps }], target: i0.ɵɵFactoryTarget.Injectable }); }
4945
5031
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvy, providedIn: 'root' }); }
4946
5032
  }
4947
5033
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: BXRestNavvy, decorators: [{
@@ -4949,7 +5035,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImpo
4949
5035
  args: [{
4950
5036
  providedIn: 'root'
4951
5037
  }]
4952
- }], ctorParameters: function () { return [{ type: BXRestNavvyUser }, { type: BXRestNavvyLists }, { type: BXRestNavvyTask }, { type: BXRestNavvyTasks }, { type: BXRestNavvyDisk }, { type: BXRestNavvyBizProc }, { type: BXRestNavvyLog }, { type: BXRestNavvyCalendar }, { type: BXRestNavvySonetGroup }, { type: BXRestNavvyServer }, { type: BXRestNavvyDepartment }, { type: BXRestNavvyIm }, { type: BXRestNavvyApp }, { type: BXRest }, { type: BXRestMaps }]; } });
5038
+ }], ctorParameters: function () { return [{ type: BXRestNavvyUser }, { type: BXRestNavvyLists }, { type: BXRestNavvyTask }, { type: BXRestNavvyTasks }, { type: BXRestNavvyDisk }, { type: BXRestNavvyBizProc }, { type: BXRestNavvyLog }, { type: BXRestNavvyCalendar }, { type: BXRestNavvySonetGroup }, { type: BXRestNavvyServer }, { type: BXRestNavvyDepartment }, { type: BXRestNavvyIm }, { type: BXRestNavvyApp }, { type: BXRestNavvyTimeMan }, { type: BXRest }, { type: BXRestMaps }]; } });
4953
5039
  class BXRestMap {
4954
5040
  constructor(lists) {
4955
5041
  this.lists = lists;