tnx-shared 5.1.322 → 5.1.323

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 (46) hide show
  1. package/bundles/tnx-shared.umd.js +169 -285
  2. package/bundles/tnx-shared.umd.js.map +1 -1
  3. package/bundles/tnx-shared.umd.min.js +1 -1
  4. package/bundles/tnx-shared.umd.min.js.map +1 -1
  5. package/classes/base/data-form-base.d.ts.map +1 -1
  6. package/classes/base/list-base.d.ts +1 -0
  7. package/classes/base/list-base.d.ts.map +1 -1
  8. package/components/congviec-picker/congviec-picker.component.d.ts +10 -24
  9. package/components/congviec-picker/congviec-picker.component.d.ts.map +1 -1
  10. package/components/crud/crud-form/crud-form.component.d.ts.map +1 -1
  11. package/components/file-explorer/services/my-drive.service.d.ts +6 -6
  12. package/components/file-explorer/services/my-drive.service.d.ts.map +1 -1
  13. package/congviec/congviec/congviec-form/congviec-form.component.d.ts +1 -1
  14. package/congviec/congviec/congviec-form/congviec-form.component.d.ts.map +1 -1
  15. package/congviec/congviec/congviec.component.d.ts +8 -2
  16. package/congviec/congviec/congviec.component.d.ts.map +1 -1
  17. package/esm2015/classes/base/data-form-base.js +9 -3
  18. package/esm2015/classes/base/list-base.js +5 -1
  19. package/esm2015/components/chat/chat-box/chat-box.component.js +2 -2
  20. package/esm2015/components/congviec-picker/congviec-picker.component.js +20 -124
  21. package/esm2015/components/crud/crud-form/crud-form.component.js +2 -4
  22. package/esm2015/components/datetime-picker/datetime-picker.component.js +1 -1
  23. package/esm2015/components/file-explorer/services/file-explorer-new.service.js +2 -2
  24. package/esm2015/components/file-explorer/services/file-explorer.service.js +2 -2
  25. package/esm2015/components/file-explorer/services/my-drive.service.js +6 -6
  26. package/esm2015/components/file-explorer/signature-detail/signature-detail.component.js +2 -2
  27. package/esm2015/congviec/congviec/congviec-form/congviec-form.component.js +4 -4
  28. package/esm2015/congviec/congviec/congviec.component.js +41 -6
  29. package/esm2015/tnx-shared.js +86 -88
  30. package/fesm2015/tnx-shared.js +83 -183
  31. package/fesm2015/tnx-shared.js.map +1 -1
  32. package/package.json +2 -2
  33. package/tnx-shared.d.ts +85 -87
  34. package/tnx-shared.d.ts.map +1 -1
  35. package/tnx-shared.metadata.json +1 -1
  36. package/components/congviec-picker/services/congviec.service.d.ts +0 -10
  37. package/components/congviec-picker/services/congviec.service.d.ts.map +0 -1
  38. package/components/congviec-picker/services/congviec.service.ngfactory.d.ts.map +0 -1
  39. package/components/congviec-picker/services/taskworkflowhistories.service.d.ts +0 -11
  40. package/components/congviec-picker/services/taskworkflowhistories.service.d.ts.map +0 -1
  41. package/components/congviec-picker/services/taskworkflowhistories.service.ngfactory.d.ts.map +0 -1
  42. package/components/file-explorer/models/request-model.d.ts +0 -5
  43. package/components/file-explorer/models/request-model.d.ts.map +0 -1
  44. package/esm2015/components/congviec-picker/services/congviec.service.js +0 -26
  45. package/esm2015/components/congviec-picker/services/taskworkflowhistories.service.js +0 -28
  46. package/esm2015/components/file-explorer/models/request-model.js +0 -3
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@angular/forms'), require('@ngx-translate/core'), require('angular-split'), require('ng2-currency-mask'), require('ngx-device-detector'), require('ngx-extended-pdf-viewer'), require('ngx-img-fallback'), require('ngx-mask'), require('ngx-perfect-scrollbar'), require('tn-custom-primeng/accordion'), require('tn-custom-primeng/autocomplete'), require('tn-custom-primeng/blockui'), require('tn-custom-primeng/breadcrumb'), require('tn-custom-primeng/button'), require('tn-custom-primeng/calendar'), require('tn-custom-primeng/card'), require('tn-custom-primeng/chart'), require('tn-custom-primeng/checkbox'), require('tn-custom-primeng/chips'), require('tn-custom-primeng/colorpicker'), require('tn-custom-primeng/confirmdialog'), require('tn-custom-primeng/contextmenu'), require('tn-custom-primeng/dataview'), require('tn-custom-primeng/dialog'), require('tn-custom-primeng/dropdown'), require('tn-custom-primeng/fieldset'), require('tn-custom-primeng/fileupload'), require('tn-custom-primeng/focustrap'), require('tn-custom-primeng/inputmask'), require('tn-custom-primeng/inputswitch'), require('tn-custom-primeng/inputtext'), require('tn-custom-primeng/inputtextarea'), require('tn-custom-primeng/menu'), require('tn-custom-primeng/menubar'), require('tn-custom-primeng/multiselect'), require('tn-custom-primeng/overlaypanel'), require('tn-custom-primeng/paginator'), require('tn-custom-primeng/panel'), require('tn-custom-primeng/progressspinner'), require('tn-custom-primeng/radiobutton'), require('tn-custom-primeng/scrollpanel'), require('tn-custom-primeng/selectbutton'), require('tn-custom-primeng/sidebar'), require('tn-custom-primeng/slider'), require('tn-custom-primeng/spinner'), require('tn-custom-primeng/splitbutton'), require('tn-custom-primeng/steps'), require('tn-custom-primeng/table'), require('tn-custom-primeng/tabview'), require('tn-custom-primeng/toast'), require('tn-custom-primeng/tooltip'), require('tn-custom-primeng/tree'), require('tn-custom-primeng/treetable'), require('tn-custom-primeng/tristatecheckbox'), require('@angular/router'), require('rxjs'), require('rxjs/operators'), require('@angular/common/http'), require('fast-safe-stringify'), require('moment'), require('underscore'), require('uuid'), require('angular-oauth2-oidc'), require('tn-custom-primeng/api'), require('@aspnet/signalr'), require('file-saver'), require('print-js'), require('jwt-decode'), require('@angular/platform-browser'), require('jquery'), require('nanoid'), require('@angular/animations'), require('hammerjs'), require('ng2-signalr'), require('tn-custom-primeng/dom'), require('qrcode'), require('jsplumb'), require('rtf.js'), require('@angular/common/locales/vi'), require('@angular/platform-browser/animations')) :
3
- typeof define === 'function' && define.amd ? define('tnx-shared', ['exports', '@angular/common', '@angular/core', '@angular/forms', '@ngx-translate/core', 'angular-split', 'ng2-currency-mask', 'ngx-device-detector', 'ngx-extended-pdf-viewer', 'ngx-img-fallback', 'ngx-mask', 'ngx-perfect-scrollbar', 'tn-custom-primeng/accordion', 'tn-custom-primeng/autocomplete', 'tn-custom-primeng/blockui', 'tn-custom-primeng/breadcrumb', 'tn-custom-primeng/button', 'tn-custom-primeng/calendar', 'tn-custom-primeng/card', 'tn-custom-primeng/chart', 'tn-custom-primeng/checkbox', 'tn-custom-primeng/chips', 'tn-custom-primeng/colorpicker', 'tn-custom-primeng/confirmdialog', 'tn-custom-primeng/contextmenu', 'tn-custom-primeng/dataview', 'tn-custom-primeng/dialog', 'tn-custom-primeng/dropdown', 'tn-custom-primeng/fieldset', 'tn-custom-primeng/fileupload', 'tn-custom-primeng/focustrap', 'tn-custom-primeng/inputmask', 'tn-custom-primeng/inputswitch', 'tn-custom-primeng/inputtext', 'tn-custom-primeng/inputtextarea', 'tn-custom-primeng/menu', 'tn-custom-primeng/menubar', 'tn-custom-primeng/multiselect', 'tn-custom-primeng/overlaypanel', 'tn-custom-primeng/paginator', 'tn-custom-primeng/panel', 'tn-custom-primeng/progressspinner', 'tn-custom-primeng/radiobutton', 'tn-custom-primeng/scrollpanel', 'tn-custom-primeng/selectbutton', 'tn-custom-primeng/sidebar', 'tn-custom-primeng/slider', 'tn-custom-primeng/spinner', 'tn-custom-primeng/splitbutton', 'tn-custom-primeng/steps', 'tn-custom-primeng/table', 'tn-custom-primeng/tabview', 'tn-custom-primeng/toast', 'tn-custom-primeng/tooltip', 'tn-custom-primeng/tree', 'tn-custom-primeng/treetable', 'tn-custom-primeng/tristatecheckbox', '@angular/router', 'rxjs', 'rxjs/operators', '@angular/common/http', 'fast-safe-stringify', 'moment', 'underscore', 'uuid', 'angular-oauth2-oidc', 'tn-custom-primeng/api', '@aspnet/signalr', 'file-saver', 'print-js', 'jwt-decode', '@angular/platform-browser', 'jquery', 'nanoid', '@angular/animations', 'hammerjs', 'ng2-signalr', 'tn-custom-primeng/dom', 'qrcode', 'jsplumb', 'rtf.js', '@angular/common/locales/vi', '@angular/platform-browser/animations'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global['tnx-shared'] = {}, global.ng.common, global.ng.core, global.ng.forms, global.i2, global.angularSplit, global.ng2CurrencyMask, global.ngxDeviceDetector, global.ngxExtendedPdfViewer, global.ngxImgFallback, global.ngxMask, global.ngxPerfectScrollbar, global.accordion, global.autocomplete, global.blockui, global.breadcrumb, global.button, global.calendar, global.card, global.chart, global.checkbox, global.chips, global.colorpicker, global.confirmdialog, global.contextmenu, global.dataview, global.dialog, global.dropdown, global.fieldset, global.fileupload, global.focustrap, global.inputmask, global.inputswitch, global.inputtext, global.inputtextarea, global.menu, global.menubar, global.multiselect, global.overlaypanel, global.paginator, global.panel, global.progressspinner, global.radiobutton, global.scrollpanel, global.selectbutton, global.sidebar, global.slider, global.spinner, global.splitbutton, global.steps, global.table, global.tabview, global.toast, global.tooltip, global.tree, global.treetable, global.tristatecheckbox, global.ng.router, global.rxjs, global.rxjs.operators, global.ng.common.http, global.stringify, global.moment_, global._, global.uuid, global.i4, global.i1, global.signalR, global.FileSaver, global.printJS$3, global.JWT_, global.ng.platformBrowser, global.jQuery_, global.nanoid_, global.ng.animations, global.Hammer, global.ng2Signalr, global.dom, global.QRCode, global.jsplumb, global.rtf_js, global.ng.common.locales.vi, global.ng.platformBrowser.animations));
5
- }(this, (function (exports, i3, i0, forms, i2, angularSplit, ng2CurrencyMask, ngxDeviceDetector, ngxExtendedPdfViewer, ngxImgFallback, ngxMask, ngxPerfectScrollbar, accordion, autocomplete, blockui, breadcrumb, button, calendar, card, chart, checkbox, chips, colorpicker, confirmdialog, contextmenu, dataview, dialog, dropdown, fieldset, fileupload, focustrap, inputmask, inputswitch, inputtext, inputtextarea, menu, menubar, multiselect, overlaypanel, paginator, panel, progressspinner, radiobutton, scrollpanel, selectbutton, sidebar, slider, spinner, splitbutton, steps, table, tabview, toast, tooltip, tree, treetable, tristatecheckbox, i3$1, rxjs, operators, i1$1, stringify, moment_, _, uuid, i4, i1, signalR, FileSaver, printJS$3, JWT_, platformBrowser, jQuery_, nanoid_, animations, Hammer, ng2Signalr, dom, QRCode, jsplumb, rtf_js, localeVi, animations$1) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@angular/forms'), require('@ngx-translate/core'), require('angular-split'), require('ng2-currency-mask'), require('ngx-device-detector'), require('ngx-extended-pdf-viewer'), require('ngx-img-fallback'), require('ngx-mask'), require('ngx-perfect-scrollbar'), require('tn-custom-primeng/accordion'), require('tn-custom-primeng/autocomplete'), require('tn-custom-primeng/blockui'), require('tn-custom-primeng/breadcrumb'), require('tn-custom-primeng/button'), require('tn-custom-primeng/calendar'), require('tn-custom-primeng/card'), require('tn-custom-primeng/chart'), require('tn-custom-primeng/checkbox'), require('tn-custom-primeng/chips'), require('tn-custom-primeng/colorpicker'), require('tn-custom-primeng/confirmdialog'), require('tn-custom-primeng/contextmenu'), require('tn-custom-primeng/dataview'), require('tn-custom-primeng/dialog'), require('tn-custom-primeng/dropdown'), require('tn-custom-primeng/fieldset'), require('tn-custom-primeng/fileupload'), require('tn-custom-primeng/focustrap'), require('tn-custom-primeng/inputmask'), require('tn-custom-primeng/inputswitch'), require('tn-custom-primeng/inputtext'), require('tn-custom-primeng/inputtextarea'), require('tn-custom-primeng/menu'), require('tn-custom-primeng/menubar'), require('tn-custom-primeng/multiselect'), require('tn-custom-primeng/overlaypanel'), require('tn-custom-primeng/paginator'), require('tn-custom-primeng/panel'), require('tn-custom-primeng/progressspinner'), require('tn-custom-primeng/radiobutton'), require('tn-custom-primeng/scrollpanel'), require('tn-custom-primeng/selectbutton'), require('tn-custom-primeng/sidebar'), require('tn-custom-primeng/slider'), require('tn-custom-primeng/spinner'), require('tn-custom-primeng/splitbutton'), require('tn-custom-primeng/steps'), require('tn-custom-primeng/table'), require('tn-custom-primeng/tabview'), require('tn-custom-primeng/toast'), require('tn-custom-primeng/tooltip'), require('tn-custom-primeng/tree'), require('tn-custom-primeng/treetable'), require('tn-custom-primeng/tristatecheckbox'), require('@angular/router'), require('rxjs'), require('rxjs/operators'), require('@angular/common/http'), require('fast-safe-stringify'), require('moment'), require('underscore'), require('uuid'), require('angular-oauth2-oidc'), require('tn-custom-primeng/api'), require('@aspnet/signalr'), require('file-saver'), require('print-js'), require('jwt-decode'), require('@angular/platform-browser'), require('jquery'), require('@angular/animations'), require('hammerjs'), require('ng2-signalr'), require('tn-custom-primeng/dom'), require('qrcode'), require('jsplumb'), require('nanoid'), require('rtf.js'), require('@angular/common/locales/vi'), require('@angular/platform-browser/animations')) :
3
+ typeof define === 'function' && define.amd ? define('tnx-shared', ['exports', '@angular/common', '@angular/core', '@angular/forms', '@ngx-translate/core', 'angular-split', 'ng2-currency-mask', 'ngx-device-detector', 'ngx-extended-pdf-viewer', 'ngx-img-fallback', 'ngx-mask', 'ngx-perfect-scrollbar', 'tn-custom-primeng/accordion', 'tn-custom-primeng/autocomplete', 'tn-custom-primeng/blockui', 'tn-custom-primeng/breadcrumb', 'tn-custom-primeng/button', 'tn-custom-primeng/calendar', 'tn-custom-primeng/card', 'tn-custom-primeng/chart', 'tn-custom-primeng/checkbox', 'tn-custom-primeng/chips', 'tn-custom-primeng/colorpicker', 'tn-custom-primeng/confirmdialog', 'tn-custom-primeng/contextmenu', 'tn-custom-primeng/dataview', 'tn-custom-primeng/dialog', 'tn-custom-primeng/dropdown', 'tn-custom-primeng/fieldset', 'tn-custom-primeng/fileupload', 'tn-custom-primeng/focustrap', 'tn-custom-primeng/inputmask', 'tn-custom-primeng/inputswitch', 'tn-custom-primeng/inputtext', 'tn-custom-primeng/inputtextarea', 'tn-custom-primeng/menu', 'tn-custom-primeng/menubar', 'tn-custom-primeng/multiselect', 'tn-custom-primeng/overlaypanel', 'tn-custom-primeng/paginator', 'tn-custom-primeng/panel', 'tn-custom-primeng/progressspinner', 'tn-custom-primeng/radiobutton', 'tn-custom-primeng/scrollpanel', 'tn-custom-primeng/selectbutton', 'tn-custom-primeng/sidebar', 'tn-custom-primeng/slider', 'tn-custom-primeng/spinner', 'tn-custom-primeng/splitbutton', 'tn-custom-primeng/steps', 'tn-custom-primeng/table', 'tn-custom-primeng/tabview', 'tn-custom-primeng/toast', 'tn-custom-primeng/tooltip', 'tn-custom-primeng/tree', 'tn-custom-primeng/treetable', 'tn-custom-primeng/tristatecheckbox', '@angular/router', 'rxjs', 'rxjs/operators', '@angular/common/http', 'fast-safe-stringify', 'moment', 'underscore', 'uuid', 'angular-oauth2-oidc', 'tn-custom-primeng/api', '@aspnet/signalr', 'file-saver', 'print-js', 'jwt-decode', '@angular/platform-browser', 'jquery', '@angular/animations', 'hammerjs', 'ng2-signalr', 'tn-custom-primeng/dom', 'qrcode', 'jsplumb', 'nanoid', 'rtf.js', '@angular/common/locales/vi', '@angular/platform-browser/animations'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global['tnx-shared'] = {}, global.ng.common, global.ng.core, global.ng.forms, global.i2, global.angularSplit, global.ng2CurrencyMask, global.ngxDeviceDetector, global.ngxExtendedPdfViewer, global.ngxImgFallback, global.ngxMask, global.ngxPerfectScrollbar, global.accordion, global.autocomplete, global.blockui, global.breadcrumb, global.button, global.calendar, global.card, global.chart, global.checkbox, global.chips, global.colorpicker, global.confirmdialog, global.contextmenu, global.dataview, global.dialog, global.dropdown, global.fieldset, global.fileupload, global.focustrap, global.inputmask, global.inputswitch, global.inputtext, global.inputtextarea, global.menu, global.menubar, global.multiselect, global.overlaypanel, global.paginator, global.panel, global.progressspinner, global.radiobutton, global.scrollpanel, global.selectbutton, global.sidebar, global.slider, global.spinner, global.splitbutton, global.steps, global.table, global.tabview, global.toast, global.tooltip, global.tree, global.treetable, global.tristatecheckbox, global.ng.router, global.rxjs, global.rxjs.operators, global.ng.common.http, global.stringify, global.moment_, global._, global.uuid, global.i4, global.i1, global.signalR, global.FileSaver, global.printJS$3, global.JWT_, global.ng.platformBrowser, global.jQuery_, global.ng.animations, global.Hammer, global.ng2Signalr, global.dom, global.QRCode, global.jsplumb, global.nanoid, global.rtf_js, global.ng.common.locales.vi, global.ng.platformBrowser.animations));
5
+ }(this, (function (exports, i3, i0, forms, i2, angularSplit, ng2CurrencyMask, ngxDeviceDetector, ngxExtendedPdfViewer, ngxImgFallback, ngxMask, ngxPerfectScrollbar, accordion, autocomplete, blockui, breadcrumb, button, calendar, card, chart, checkbox, chips, colorpicker, confirmdialog, contextmenu, dataview, dialog, dropdown, fieldset, fileupload, focustrap, inputmask, inputswitch, inputtext, inputtextarea, menu, menubar, multiselect, overlaypanel, paginator, panel, progressspinner, radiobutton, scrollpanel, selectbutton, sidebar, slider, spinner, splitbutton, steps, table, tabview, toast, tooltip, tree, treetable, tristatecheckbox, i3$1, rxjs, operators, i1$1, stringify, moment_, _, uuid, i4, i1, signalR, FileSaver, printJS$3, JWT_, platformBrowser, jQuery_, animations, Hammer, ng2Signalr, dom, QRCode, jsplumb, nanoid, rtf_js, localeVi, animations$1) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -28,12 +28,9 @@
28
28
 
29
29
  var stringify__default = /*#__PURE__*/_interopDefaultLegacy(stringify);
30
30
  var moment___default = /*#__PURE__*/_interopDefaultLegacy(moment_);
31
- var moment___namespace = /*#__PURE__*/_interopNamespace(moment_);
32
- var printJS__namespace = /*#__PURE__*/_interopNamespace(printJS$3);
33
31
  var printJS__default = /*#__PURE__*/_interopDefaultLegacy(printJS$3);
34
32
  var JWT___namespace = /*#__PURE__*/_interopNamespace(JWT_);
35
- var jQuery___namespace = /*#__PURE__*/_interopNamespace(jQuery_);
36
- var nanoid___namespace = /*#__PURE__*/_interopNamespace(nanoid_);
33
+ var jQuery___default = /*#__PURE__*/_interopDefaultLegacy(jQuery_);
37
34
  var QRCode__default = /*#__PURE__*/_interopDefaultLegacy(QRCode);
38
35
  var localeVi__default = /*#__PURE__*/_interopDefaultLegacy(localeVi);
39
36
 
@@ -7544,7 +7541,7 @@
7544
7541
  }());
7545
7542
 
7546
7543
  // fix for build prod
7547
- var printJS = printJS__namespace;
7544
+ var printJS = printJS__default['default'];
7548
7545
  var FileExplorerService = /** @class */ (function () {
7549
7546
  function FileExplorerService(_http, _authenService, _commonSerivce, _moduleConfigService, _notifierService) {
7550
7547
  this._http = _http;
@@ -14086,8 +14083,7 @@
14086
14083
 
14087
14084
  var _d;
14088
14085
  // fix for build prod
14089
- var nanoid = nanoid___namespace;
14090
- var jQuery$1 = jQuery___namespace;
14086
+ var jQuery$1 = jQuery___default['default'];
14091
14087
  var operatorContrast = (_d = {},
14092
14088
  _d[exports.Operator.greater] = exports.Operator.lower,
14093
14089
  _d[exports.Operator.greaterThanEqual] = exports.Operator.lowerThanEqual,
@@ -18045,7 +18041,10 @@
18045
18041
  return [4 /*yield*/, this.onAfterSave(response)];
18046
18042
  case 1:
18047
18043
  _a.sent();
18048
- this.onSaved.emit();
18044
+ this.onSaved.emit({
18045
+ id: this.model.data.id,
18046
+ insert: true
18047
+ });
18049
18048
  return [3 /*break*/, 3];
18050
18049
  case 2:
18051
18050
  this.handleInsertError();
@@ -18086,7 +18085,10 @@
18086
18085
  return [4 /*yield*/, this.onAfterSave(response)];
18087
18086
  case 1:
18088
18087
  _a.sent();
18089
- this.onSaved.emit();
18088
+ this.onSaved.emit({
18089
+ id: this.model.data.id,
18090
+ insert: false
18091
+ });
18090
18092
  return [3 /*break*/, 3];
18091
18093
  case 2:
18092
18094
  this.handleUpdateError();
@@ -24989,6 +24991,7 @@
24989
24991
  _this.getPromiseDeleteItem(rowData)
24990
24992
  .then(function (response) {
24991
24993
  if (response.success) {
24994
+ _this.beforeReloadAfterDelete([rowData.id]);
24992
24995
  if (_this.setting.showVersionButton) {
24993
24996
  _this.context.fireEvent(ComCtxConstants.COMMON.RELOAD_DATA_VERSION, {}, true);
24994
24997
  }
@@ -25019,6 +25022,7 @@
25019
25022
  if (_this.setting.baseService) {
25020
25023
  _this.getPromiseDeleteItems(items).then(function (response) {
25021
25024
  if (response.success) {
25025
+ _this.beforeReloadAfterDelete(items.map(function (q) { return q.id; }));
25022
25026
  _this._triggerProcessData();
25023
25027
  _this._notifierService.showDeleteDataSuccess();
25024
25028
  }
@@ -25029,6 +25033,8 @@
25029
25033
  }
25030
25034
  });
25031
25035
  };
25036
+ ListBase.prototype.beforeReloadAfterDelete = function (ids) {
25037
+ };
25032
25038
  ListBase.prototype.onBeforeCancel = function () {
25033
25039
  };
25034
25040
  ListBase.prototype._handleSaved = function () {
@@ -27392,7 +27398,7 @@
27392
27398
  ]; };
27393
27399
 
27394
27400
  // fix for build prod
27395
- var printJS$1 = printJS__namespace;
27401
+ var printJS$1 = printJS__default['default'];
27396
27402
  var MyDriveService = /** @class */ (function (_super) {
27397
27403
  __extends(MyDriveService, _super);
27398
27404
  function MyDriveService(_http, _injector, _moduleConfig, _authenService, _commonSerivce, _moduleConfigService) {
@@ -27845,7 +27851,7 @@
27845
27851
  ]; };
27846
27852
 
27847
27853
  // fix for build prod
27848
- var moment$1 = moment___namespace;
27854
+ var moment$1 = moment___default['default'];
27849
27855
  var ChatBoxComponent = /** @class */ (function (_super) {
27850
27856
  __extends(ChatBoxComponent, _super);
27851
27857
  function ChatBoxComponent(injector, _chatService, _messageBoardService, _userService, _checkControlVisible, _signalrService, _fileService, _crudService, _notifierService, _moduleConfigService) {
@@ -28597,7 +28603,7 @@
28597
28603
  };
28598
28604
 
28599
28605
  // fix for build prod
28600
- var printJS$2 = printJS__namespace;
28606
+ var printJS$2 = printJS__default['default'];
28601
28607
  var FileExplorerNewService = /** @class */ (function (_super) {
28602
28608
  __extends(FileExplorerNewService, _super);
28603
28609
  function FileExplorerNewService(http, injector, _moduleConfigService) {
@@ -33775,187 +33781,32 @@
33775
33781
  greeting: [{ type: i0.Input }]
33776
33782
  };
33777
33783
 
33778
- var CongViecService$1 = /** @class */ (function (_super) {
33779
- __extends(CongViecService, _super);
33780
- function CongViecService(http, injector, _moduleConfigService) {
33781
- var _this = _super.call(this, http, injector, _moduleConfigService.getConfig().environment.apiDomain.vanbanEndpoint + "/" + _moduleConfigService.getConfig().environment.apiVersion + "/vanbanden") || this;
33782
- _this.endPoint = _moduleConfigService.getConfig().environment.apiDomain.vanbanEndpoint;
33783
- _this._moduleConfig = _moduleConfigService.getConfig();
33784
- return _this;
33785
- }
33786
- return CongViecService;
33787
- }(BaseService));
33788
- CongViecService$1.ɵprov = i0.ɵɵdefineInjectable({ factory: function CongViecService_Factory() { return new CongViecService$1(i0.ɵɵinject(i1$1.HttpClient), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(ModuleConfigService)); }, token: CongViecService$1, providedIn: "root" });
33789
- CongViecService$1.decorators = [
33790
- { type: i0.Injectable, args: [{
33791
- providedIn: 'root'
33792
- },] }
33793
- ];
33794
- CongViecService$1.ctorParameters = function () { return [
33795
- { type: i1$1.HttpClient },
33796
- { type: i0.Injector },
33797
- { type: ModuleConfigService }
33798
- ]; };
33799
-
33800
- var TaskWorkflowHistoriesService = /** @class */ (function (_super) {
33801
- __extends(TaskWorkflowHistoriesService, _super);
33802
- function TaskWorkflowHistoriesService(http, injector, _moduleConfigService) {
33803
- var _this = _super.call(this, http, injector, _moduleConfigService.getConfig().environment.apiDomain.canboEndpoint + "/" + _moduleConfigService.getConfig().environment.apiVersion + "/TaskWorkflowHistories") || this;
33804
- _this._moduleConfigService = _moduleConfigService;
33805
- _this.entityName = 'TaskWorkflowHistories';
33806
- _this.serviceCode = 'canbo';
33807
- _this.endPoint = _moduleConfigService.getConfig().environment.apiDomain.canboEndpoint;
33808
- return _this;
33809
- }
33810
- return TaskWorkflowHistoriesService;
33811
- }(BaseService));
33812
- TaskWorkflowHistoriesService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TaskWorkflowHistoriesService_Factory() { return new TaskWorkflowHistoriesService(i0.ɵɵinject(i1$1.HttpClient), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(ModuleConfigService)); }, token: TaskWorkflowHistoriesService, providedIn: "root" });
33813
- TaskWorkflowHistoriesService.decorators = [
33814
- { type: i0.Injectable, args: [{
33815
- providedIn: 'root'
33816
- },] }
33817
- ];
33818
- TaskWorkflowHistoriesService.ctorParameters = function () { return [
33819
- { type: i1$1.HttpClient },
33820
- { type: i0.Injector },
33821
- { type: ModuleConfigService }
33822
- ]; };
33823
-
33824
33784
  var CongViecPickerComponent = /** @class */ (function (_super) {
33825
33785
  __extends(CongViecPickerComponent, _super);
33826
- function CongViecPickerComponent(_injector, _congViecService, _moduleConfigService, _taskWorkflowHistoriesService) {
33786
+ function CongViecPickerComponent(_injector, _notifierService) {
33827
33787
  var _this = _super.call(this, _injector) || this;
33828
- _this._congViecService = _congViecService;
33829
- _this._taskWorkflowHistoriesService = _taskWorkflowHistoriesService;
33788
+ _this._notifierService = _notifierService;
33830
33789
  _this.onChanged = new i0.EventEmitter();
33831
- _this.onXoaCongViec = new i0.EventEmitter();
33832
- _this.onReady = new i0.EventEmitter();
33833
- _this.environment = {};
33834
- _this.enumWFNhomTrangThai = exports.WorkflowCoreStatusEnum;
33835
- _this.labelWFStatusCore = LabelWorkflowCoreStatus;
33836
- _this.environment = _moduleConfigService.getConfig().environment;
33790
+ _this.idCongViecs = [];
33791
+ _this.formState = exports.FormState;
33837
33792
  return _this;
33838
33793
  }
33839
33794
  CongViecPickerComponent.prototype.ngOnInit = function () {
33840
- this.loadDetailFromQueryParam = true;
33841
- this.model.ready = false;
33842
- this.setting.baseService = this._congViecService;
33843
- this.setting.hiddenSettingPermission = true;
33844
- this.setting.hiddenSettingWorkflow = true;
33845
- this.setting.showEditLink = false;
33846
- this.setting.modelSchemas = [
33847
- new ModelSchema({ field: 'name', name: 'Tên công việc', fullName: 'Tên công việc', description: 'Tên công việc' }),
33848
- new ModelSchema({ field: 'description', name: 'Nội dung', fullName: 'Nội dung', description: 'Nội dung' }),
33849
- new ModelSchema({ field: 'startDate', dataType: 'date', name: 'Từ ngày', fullName: '', description: '' }),
33850
- new ModelSchema({ field: 'dueDate', dataType: 'date', name: 'Đến ngày', fullName: '', description: '' })
33851
- ];
33852
- this.setting.cols = [
33853
- new ColumnSchemaBase({
33854
- field: 'name'
33855
- }),
33856
- new ColumnSchemaBase({
33857
- field: 'description',
33858
- dataType: 'html'
33859
- }),
33860
- new ColumnSchemaBase({
33861
- field: 'status',
33862
- dataType: 'status',
33863
- label: this._translateService.instant('Trạng thái'),
33864
- allowFilter: false
33865
- }),
33866
- new ColumnSchemaBase({
33867
- field: 'startDate',
33868
- width: '110px'
33869
- }),
33870
- new ColumnSchemaBase({
33871
- field: 'dueDate',
33872
- width: '125px'
33873
- })
33874
- ];
33875
- this.setting.fieldSearchText = ['name', 'description'];
33876
- this.setting.objectName = ' công việc';
33877
- _super.prototype.ngOnInit.call(this);
33878
- };
33879
- CongViecPickerComponent.prototype.modifyGridInfo = function (gridInfo) {
33880
- return __awaiter(this, void 0, void 0, function () {
33881
- return __generator(this, function (_a) {
33882
- if (!this.idCongViecs || this.idCongViecs.length == 0)
33883
- return [2 /*return*/, false];
33884
- gridInfo.filters.push(this.newFilter('instanceId', exports.Operator.in, this.idCongViecs)
33885
- // this.newFilter('entity', Operator.equal, 'task'),
33886
- // this.newFilter('serviceCode', Operator.equal, 'task')
33887
- );
33888
- return [2 /*return*/];
33889
- });
33890
- });
33891
- };
33892
- CongViecPickerComponent.prototype.afterGetData = function () {
33893
- return __awaiter(this, void 0, void 0, function () {
33894
- var lstInstanceIdVanBan, wfCoreHistoriesRs_1;
33895
- return __generator(this, function (_a) {
33896
- switch (_a.label) {
33897
- case 0:
33898
- lstInstanceIdVanBan = this.model.dataSource.map(function (x) { return x.instanceId; });
33899
- if (!lstInstanceIdVanBan.length) return [3 /*break*/, 2];
33900
- return [4 /*yield*/, this._taskWorkflowHistoriesService.getAll([this.newFilter('idVanBan', exports.Operator.in, lstInstanceIdVanBan)])];
33901
- case 1:
33902
- wfCoreHistoriesRs_1 = _a.sent();
33903
- if (wfCoreHistoriesRs_1.success && wfCoreHistoriesRs_1.data) {
33904
- this.model.dataSource.forEach(function (item) {
33905
- var itemMapping = wfCoreHistoriesRs_1.data.find(function (x) { return x.idVanBan == item.instanceId; });
33906
- if (itemMapping) {
33907
- item.status = itemMapping.workflowCoreStatus;
33908
- }
33909
- });
33910
- }
33911
- _a.label = 2;
33912
- case 2: return [2 /*return*/];
33913
- }
33914
- });
33915
- });
33916
- };
33917
- CongViecPickerComponent.prototype.getPromiseGetData = function (gridInfo) {
33918
- return this._congViecService.getByGridRequestWithBodyOld(gridInfo, 'CongViec');
33919
- };
33920
- CongViecPickerComponent.prototype.navigateToCongviec = function () {
33921
- var subPathTaoCongViec = this.environment.clientTemplateParam.taoMoiVanBan
33922
- .replace('{{serviceCode}}', this.control.serviceCode)
33923
- .replace('{{entity}}', this.control.entity)
33924
- .replace('{{entityKey}}', this.control.entityKey)
33925
- .replace('{{state}}', JSON.stringify(this.control.state));
33926
- window.open("" + this.environment.clientDomain.congViecDomain + subPathTaoCongViec, '_blank');
33927
- };
33928
- CongViecPickerComponent.prototype.navigateToViewCongViec = function (rowData) {
33929
- var subPathViewCongViec = this.environment.clientTemplateParam.viewVanBan
33930
- .replace('{{taskId}}', rowData.id)
33931
- .replace('{{serviceCode}}', this.control.serviceCode)
33932
- .replace('{{entity}}', this.control.entity)
33933
- .replace('{{entityKey}}', this.control.entityKey);
33934
- window.open(this.environment.clientDomain.congViecDomain + "/" + subPathViewCongViec, '_blank');
33935
33795
  };
33936
- CongViecPickerComponent.prototype.xoaCongviec = function (rowData) {
33937
- this._xoaCongviec([rowData]);
33938
- };
33939
- CongViecPickerComponent.prototype.xoaCongviecSelected = function () {
33940
- this._xoaCongviec(this.model.selectedItems);
33796
+ CongViecPickerComponent.prototype.handleIdsChange = function (ids) {
33797
+ this.idCongViecs = ids;
33798
+ this.fireEvent();
33941
33799
  };
33942
- CongViecPickerComponent.prototype._xoaCongviec = function (rowDatas) {
33943
- this.onXoaCongViec.emit({
33944
- ids: rowDatas.map(function (item) { return item.id; }),
33945
- rowDatas: rowDatas
33946
- });
33800
+ CongViecPickerComponent.prototype.fireEvent = function () {
33801
+ this.onChange(this.idCongViecs);
33802
+ this.onChanged.emit(this.idCongViecs);
33947
33803
  };
33948
33804
  CongViecPickerComponent.prototype.writeValue = function (obj) {
33949
33805
  if (obj == null) {
33950
- this.model.dataSource = [];
33951
- this.model.ready = false;
33806
+ this.idCongViecs = [];
33952
33807
  }
33953
33808
  else {
33954
33809
  this.idCongViecs = obj;
33955
- this.model.ready = true;
33956
- if (this.crudList) {
33957
- this.reload();
33958
- }
33959
33810
  }
33960
33811
  };
33961
33812
  CongViecPickerComponent.prototype.registerOnChange = function (fn) {
@@ -33968,11 +33819,11 @@
33968
33819
  this.control.disabled = isDisabled;
33969
33820
  };
33970
33821
  return CongViecPickerComponent;
33971
- }(DataListBase));
33822
+ }(ComponentBase));
33972
33823
  CongViecPickerComponent.decorators = [
33973
33824
  { type: i0.Component, args: [{
33974
33825
  selector: 'congviec-picker',
33975
- template: "<crud-list #crudList [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\"\r\n [style]=\"{'min-height': '300px'}\" (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"_add($event)\"\r\n (onEdit)=\"_edit($event)\" (onView)=\"_view($event)\" (onDelete)=\"_delete($event)\"\r\n (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_unmarkLoading()\">\r\n <ng-template #toolbar>\r\n <button type=\"button\" pButton pRipple label=\"Th\u00EAm m\u1EDBi\" icon=\"pi pi-plus\" class=\"p-button-text\"\r\n (click)=\"navigateToCongviec()\"></button>\r\n </ng-template>\r\n\r\n <ng-template #status let-rowData=\"rowData\">\r\n <span>{{labelWFStatusCore[rowData.status]}}</span>\r\n </ng-template>\r\n\r\n <ng-template #function let-rowData=\"rowData\">\r\n <button type=\"button\" pButton icon=\"pi pi-eye\"\r\n class=\"p-button-text p-button-rounded p-button-success link-or-action\" pTooltip=\"Xem chi ti\u1EBFt v\u0103n b\u1EA3n\"\r\n tooltipPosition=\"top\" (click)=\"navigateToViewCongViec(rowData)\"></button>\r\n </ng-template>\r\n</crud-list>",
33826
+ template: "<base-congviec [isChildView]=\"true\" [formState]=\"formState.EDIT\" [ids]=\"idCongViecs\"\r\n (idsChange)=\"handleIdsChange($event)\"></base-congviec>",
33976
33827
  providers: [
33977
33828
  ComponentContextService,
33978
33829
  {
@@ -33986,15 +33837,11 @@
33986
33837
  ];
33987
33838
  CongViecPickerComponent.ctorParameters = function () { return [
33988
33839
  { type: i0.Injector },
33989
- { type: CongViecService$1 },
33990
- { type: ModuleConfigService },
33991
- { type: TaskWorkflowHistoriesService }
33840
+ { type: NotifierService }
33992
33841
  ]; };
33993
33842
  CongViecPickerComponent.propDecorators = {
33994
33843
  control: [{ type: i0.Input }],
33995
- onChanged: [{ type: i0.Output }],
33996
- onXoaCongViec: [{ type: i0.Output }],
33997
- onReady: [{ type: i0.Output }]
33844
+ onChanged: [{ type: i0.Output }]
33998
33845
  };
33999
33846
 
34000
33847
  var LocalCacheService = /** @class */ (function () {
@@ -40946,7 +40793,7 @@
40946
40793
  };
40947
40794
 
40948
40795
  // fix for build prod
40949
- var moment$2 = moment___namespace;
40796
+ var moment$2 = moment___default['default'];
40950
40797
  var SignatureDetailComponent = /** @class */ (function (_super) {
40951
40798
  __extends(SignatureDetailComponent, _super);
40952
40799
  function SignatureDetailComponent(injector) {
@@ -48222,7 +48069,7 @@
48222
48069
  _this.onBlur = new i0.EventEmitter();
48223
48070
  _this.onChanged = new i0.EventEmitter();
48224
48071
  _this.model = '';
48225
- _this.id = nanoid_.nanoid(8);
48072
+ _this.id = nanoid.nanoid(8);
48226
48073
  _this.dataEquation = {};
48227
48074
  _this.isShow = false;
48228
48075
  _this.isAddNews = false;
@@ -53966,7 +53813,7 @@
53966
53813
  _this._dmLinhVucCongViecService = _dmLinhVucCongViecService;
53967
53814
  _this._dmPriorityService = _dmPriorityService;
53968
53815
  _this._workflowPermissionDetailService = _workflowPermissionDetailService;
53969
- _this.onAfterSaved = new i0.EventEmitter();
53816
+ _this.onAfterInserted = new i0.EventEmitter();
53970
53817
  _this.autoFocus = true;
53971
53818
  _this.enumFormState = exports.FormState;
53972
53819
  _this.enumLoaiDanhSachCongViec = exports.EnumLoaiDanhSachCongViec;
@@ -54243,7 +54090,7 @@
54243
54090
  };
54244
54091
  BaseCongViecFormComponent.prototype.onAfterSave = function (res) {
54245
54092
  if (this.model.formState == exports.FormState.ADD && res && res.success && res.data) {
54246
- this.onAfterSaved.emit(res.data);
54093
+ this.onAfterInserted.emit(res.data);
54247
54094
  }
54248
54095
  };
54249
54096
  BaseCongViecFormComponent.prototype.onTabChange = function (evt) {
@@ -54278,7 +54125,7 @@
54278
54125
  crudList: [{ type: i0.Input }],
54279
54126
  control: [{ type: i0.Input }],
54280
54127
  tenCongViec: [{ type: i0.Input }],
54281
- onAfterSaved: [{ type: i0.Output }]
54128
+ onAfterInserted: [{ type: i0.Output }]
54282
54129
  };
54283
54130
 
54284
54131
  var CongViecThayDoiService = /** @class */ (function (_super) {
@@ -54362,6 +54209,7 @@
54362
54209
  _this.isFromDashboard = false;
54363
54210
  _this.formState = exports.FormState.VIEW;
54364
54211
  _this.isChildView = false;
54212
+ _this.idsChange = new i0.EventEmitter();
54365
54213
  _this.searchSchema = {};
54366
54214
  _this.searchData = {};
54367
54215
  _this.dicWorkflowByLoaiCongViec = {};
@@ -54378,6 +54226,19 @@
54378
54226
  }
54379
54227
  return _this;
54380
54228
  }
54229
+ Object.defineProperty(BaseCongViecComponent.prototype, "ids", {
54230
+ get: function () {
54231
+ return this._ids;
54232
+ },
54233
+ set: function (value) {
54234
+ this._ids = value;
54235
+ if (this.model.baseReady) {
54236
+ this._triggerProcessData();
54237
+ }
54238
+ },
54239
+ enumerable: false,
54240
+ configurable: true
54241
+ });
54381
54242
  BaseCongViecComponent.prototype.ngOnInit = function () {
54382
54243
  var _this = this;
54383
54244
  this.setting.popupSize.width = 1360;
@@ -54499,6 +54360,8 @@
54499
54360
  return __generator(this, function (_b) {
54500
54361
  switch (_b.label) {
54501
54362
  case 0:
54363
+ if (this.ids && !this.ids.length)
54364
+ return [2 /*return*/, false];
54502
54365
  if (!gridInfo.sorts || !gridInfo.sorts.length) {
54503
54366
  gridInfo.sorts = [{ field: 'created', dir: -1 }];
54504
54367
  }
@@ -54520,6 +54383,9 @@
54520
54383
  gridInfo.filters.push(this.newFilter(KeyFilterStateByMenuCongViec, exports.Operator.equal, this.stateCode));
54521
54384
  }
54522
54385
  }
54386
+ if (this.ids) {
54387
+ gridInfo.filters.push(this.newFilter('id', exports.Operator.in, this.ids));
54388
+ }
54523
54389
  if (!(this.loaiDanhSach == exports.EnumLoaiDanhSachCongViec.CongViecLienQuan)) return [3 /*break*/, 5];
54524
54390
  gridInfo.filters = [];
54525
54391
  return [4 /*yield*/, this.getIdsCongViecLienQuan()];
@@ -54683,7 +54549,18 @@
54683
54549
  this._congViecThayDoiService.triggerSyncTaskPermission()
54684
54550
  .then(function (res) { return _this.handleResponse(res, 'Đồng bộ thành công'); });
54685
54551
  };
54686
- BaseCongViecComponent.prototype.onAfterSaved = function (id) {
54552
+ BaseCongViecComponent.prototype.handleSaved = function (data) {
54553
+ this.showDetailForm = false;
54554
+ // Là form truyền id từ bên ngoài vào
54555
+ // Sẽ cần update ngược lại ids nếu là case thêm mới bản ghi
54556
+ // và reload
54557
+ if (this.ids && data.insert) {
54558
+ this.ids.push(data.id);
54559
+ this.idsChange.emit(this.ids);
54560
+ }
54561
+ this.crudList.reload();
54562
+ };
54563
+ BaseCongViecComponent.prototype.handleAfterInserted = function (id) {
54687
54564
  if (this.loaiDanhSach == exports.EnumLoaiDanhSachCongViec.CongViecLienQuan) {
54688
54565
  var items = [{
54689
54566
  id: this._commonService.guid(),
@@ -54700,6 +54577,13 @@
54700
54577
  this.insertCongViecCon(model);
54701
54578
  }
54702
54579
  };
54580
+ BaseCongViecComponent.prototype.beforeReloadAfterDelete = function (ids) {
54581
+ if (this.ids) {
54582
+ var newIds = this.ids.filter(function (q) { return ids.some(function (x) { return x == q; }); });
54583
+ this.ids = newIds;
54584
+ this.idsChange.emit(this.ids);
54585
+ }
54586
+ };
54703
54587
  BaseCongViecComponent.prototype.processDelete = function (ids) {
54704
54588
  var _this = this;
54705
54589
  if (ids === void 0) { ids = []; }
@@ -54780,7 +54664,7 @@
54780
54664
  BaseCongViecComponent.decorators = [
54781
54665
  { type: i0.Component, args: [{
54782
54666
  selector: 'base-congviec',
54783
- template: "<crud-list #crudList [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\" [hiddenAdd]=\"hiddenAdd\"\r\n [hiddenEdit]=\"hiddenEdit\" [hiddenDelete]=\"hiddenDelete\" [hiddenCopyLink]=\"true\" [hiddenAdd]=\"isFromDashboard\"\r\n [showScrollHorizontal]=\"true\" [menuButtons]=\"getMenuButtons\" (onCopyLink)=\"_copyLink($event)\"\r\n (onCopyLinkMultiple)=\"_copyLinkMultiple()\" (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"addCongViec($event)\"\r\n (onEdit)=\"_edit($event)\" (onView)=\"_edit($event)\" (onDelete)=\"_delete($event)\"\r\n (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_unmarkLoading()\"\r\n (onChangedStatusWorkflow)=\"handleChangedStatusWorkflow($event)\">\r\n <ng-template #buttonAfterToolbar>\r\n <button *ngIf=\"loaiDanhSach > 0 && !isPicker\" type=\"button\" pButton pRipple label=\"Ch\u1ECDn c\u00F4ng vi\u1EC7c\"\r\n icon=\"pi pi-plus\" class=\"p-button-text p-button-success\" (click)=\"onChonCongViec()\"></button>\r\n <button type=\"button\" pButton style=\"display: none\" icon=\"pi pi-replay\" label=\"\u0110\u1ED3ng b\u1ED9 quy\u1EC1n\"\r\n class=\"p-button-text\" (click)=\"triggerSyncPermission()\"></button>\r\n </ng-template>\r\n <ng-template #congViecInfo let-rowData=\"rowData\">\r\n <div class=\"container-task-info\">\r\n <div class=\"cell-task-info\">\r\n {{rowData.ten}}\r\n </div>\r\n <div class=\"percent-done\">\r\n <div class=\"detail transition-width\" [ngStyle]=\"{\r\n width: rowData.percentWidth\r\n }\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #idPriority let-rowData=\"rowData\">\r\n <div class=\"priority\">\r\n <span [ngStyle]=\"{\r\n color: rowData.priorityColor,\r\n background: rowData.priorityBackground\r\n }\">{{rowData.stridPriority}}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template *ngIf=\"loaiDanhSach > 0\" #function let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <button type=\"button\" pButton pRipple pTooltip=\"{{'FORM.DELETE' | translate}}\" tooltipPosition=\"top\"\r\n class=\"p-button-rounded p-button-text p-button-danger link-or-action\" icon=\"pi pi-trash\"\r\n (click)=\"deleteCongViecTheoLoaiDanhSach(rowData)\"></button>\r\n </ng-template>\r\n</crud-list>\r\n\r\n<tn-dialog *ngIf=\"loaiCongViecModel.showEditForm\" [styleClass]=\"'tn-form-dialog'\"\r\n [header]=\"loaiCongViecModel.header | translate\" [popupSize]=\"loaiCongViecModel.popupSize\"\r\n (onHide)=\"loaiCongViecModel.showEditForm = false\">\r\n <div class=\"p-col-12\">\r\n <div class=\"p-grid\">\r\n <div class=\"p-md-10 tn-dropdown p-fluid\">\r\n <dropdown [control]=\"searchSchema.loaiCongViec\" [(value)]=\"searchData.loaiCongViec\"></dropdown>\r\n </div>\r\n <div class=\"p-md-2\">\r\n <button type=\"button\" pButton class=\"p-button-primary p-col-12\" label=\"Ok\"\r\n (click)=\"showFormAddTask($event)\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"showDetailForm\" #dialog [styleClass]=\"'congviec-form tn-form-dialog'\"\r\n [header]=\"setting.popupHeader | translate\" [popupSize]=\"setting.popupSize\" [useDefaultScrollBar]=\"true\"\r\n (onHide)=\"showDetailForm = false\">\r\n <base-congviec-form #formBase [parentModel]=\"model\" [parentSetting]=\"setting\" [parentContext]=\"context\"\r\n [model]=\"formModel\" [crudList]=\"crudList\" [itemId]=\"itemId\" (onSaved)=\"showDetailForm = false;crudList.reload()\"\r\n (onCancel)=\"_handleCancel($event)\" (onAfterSaved)=\"onAfterSaved($event)\">\r\n </base-congviec-form>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"showPickerForm\" #dialog [styleClass]=\"'congviec-form tn-form-dialog'\"\r\n [header]=\"'Ch\u1ECDn c\u00F4ng vi\u1EC7c' | translate\" [popupSize]=\"setting.popupSize\" [showFooter]=\"true\"\r\n [useDefaultScrollBar]=\"true\" (onHide)=\"showPickerForm = false\">\r\n <base-congviec #congViecPicker [isPicker]=\"true\" [formState]=\"formState\" [loaiDanhSach]=\"loaiDanhSach\"\r\n [idCongViec]=\"idCongViec\">\r\n </base-congviec>\r\n <ng-template #footer>\r\n <button type=\"button\" pButton icon=\"pi pi-save\" class=\"p-button-text\" [label]=\"'Ch\u1ECDn' | translate\"\r\n (click)=\"onSelectCongViec()\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"showPickerForm=false\"></button>\r\n </ng-template>\r\n</tn-dialog>",
54667
+ template: "<crud-list #crudList [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\" [hiddenAdd]=\"hiddenAdd\"\r\n [hiddenEdit]=\"hiddenEdit\" [hiddenDelete]=\"hiddenDelete\" [hiddenCopyLink]=\"true\" [hiddenAdd]=\"isFromDashboard\"\r\n [showScrollHorizontal]=\"true\" [menuButtons]=\"getMenuButtons\" (onCopyLink)=\"_copyLink($event)\"\r\n (onCopyLinkMultiple)=\"_copyLinkMultiple()\" (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"addCongViec($event)\"\r\n (onEdit)=\"_edit($event)\" (onView)=\"_edit($event)\" (onDelete)=\"_delete($event)\"\r\n (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_unmarkLoading()\"\r\n (onChangedStatusWorkflow)=\"handleChangedStatusWorkflow($event)\">\r\n <ng-template #buttonAfterToolbar>\r\n <button *ngIf=\"loaiDanhSach > 0 && !isPicker\" type=\"button\" pButton pRipple label=\"Ch\u1ECDn c\u00F4ng vi\u1EC7c\"\r\n icon=\"pi pi-plus\" class=\"p-button-text p-button-success\" (click)=\"onChonCongViec()\"></button>\r\n <button type=\"button\" pButton style=\"display: none\" icon=\"pi pi-replay\" label=\"\u0110\u1ED3ng b\u1ED9 quy\u1EC1n\"\r\n class=\"p-button-text\" (click)=\"triggerSyncPermission()\"></button>\r\n </ng-template>\r\n <ng-template #congViecInfo let-rowData=\"rowData\">\r\n <div class=\"container-task-info\">\r\n <div class=\"cell-task-info\">\r\n {{rowData.ten}}\r\n </div>\r\n <div class=\"percent-done\">\r\n <div class=\"detail transition-width\" [ngStyle]=\"{\r\n width: rowData.percentWidth\r\n }\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #idPriority let-rowData=\"rowData\">\r\n <div class=\"priority\">\r\n <span [ngStyle]=\"{\r\n color: rowData.priorityColor,\r\n background: rowData.priorityBackground\r\n }\">{{rowData.stridPriority}}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template *ngIf=\"loaiDanhSach > 0\" #function let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <button type=\"button\" pButton pRipple pTooltip=\"{{'FORM.DELETE' | translate}}\" tooltipPosition=\"top\"\r\n class=\"p-button-rounded p-button-text p-button-danger link-or-action\" icon=\"pi pi-trash\"\r\n (click)=\"deleteCongViecTheoLoaiDanhSach(rowData)\"></button>\r\n </ng-template>\r\n</crud-list>\r\n\r\n<tn-dialog *ngIf=\"loaiCongViecModel.showEditForm\" [styleClass]=\"'tn-form-dialog'\"\r\n [header]=\"loaiCongViecModel.header | translate\" [popupSize]=\"loaiCongViecModel.popupSize\"\r\n (onHide)=\"loaiCongViecModel.showEditForm = false\">\r\n <div class=\"p-col-12\">\r\n <div class=\"p-grid\">\r\n <div class=\"p-md-10 tn-dropdown p-fluid\">\r\n <dropdown [control]=\"searchSchema.loaiCongViec\" [(value)]=\"searchData.loaiCongViec\"></dropdown>\r\n </div>\r\n <div class=\"p-md-2\">\r\n <button type=\"button\" pButton class=\"p-button-primary p-col-12\" label=\"Ok\"\r\n (click)=\"showFormAddTask($event)\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"showDetailForm\" #dialog [styleClass]=\"'congviec-form tn-form-dialog'\"\r\n [header]=\"setting.popupHeader | translate\" [popupSize]=\"setting.popupSize\" [useDefaultScrollBar]=\"true\"\r\n (onHide)=\"showDetailForm = false\">\r\n <base-congviec-form #formBase [parentModel]=\"model\" [parentSetting]=\"setting\" [parentContext]=\"context\"\r\n [model]=\"formModel\" [crudList]=\"crudList\" [itemId]=\"itemId\" (onSaved)=\"handleSaved($event)\"\r\n (onCancel)=\"_handleCancel($event)\" (onAfterInserted)=\"handleAfterInserted($event)\">\r\n </base-congviec-form>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"showPickerForm\" #dialog [styleClass]=\"'congviec-form tn-form-dialog'\"\r\n [header]=\"'Ch\u1ECDn c\u00F4ng vi\u1EC7c' | translate\" [popupSize]=\"setting.popupSize\" [showFooter]=\"true\"\r\n [useDefaultScrollBar]=\"true\" (onHide)=\"showPickerForm = false\">\r\n <base-congviec #congViecPicker [isPicker]=\"true\" [formState]=\"formState\" [loaiDanhSach]=\"loaiDanhSach\"\r\n [idCongViec]=\"idCongViec\">\r\n </base-congviec>\r\n <ng-template #footer>\r\n <button type=\"button\" pButton icon=\"pi pi-save\" class=\"p-button-text\" [label]=\"'Ch\u1ECDn' | translate\"\r\n (click)=\"onSelectCongViec()\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"showPickerForm=false\"></button>\r\n </ng-template>\r\n</tn-dialog>",
54784
54668
  providers: [ComponentContextService],
54785
54669
  styles: [".container-task-info .percent-done{background-color:#f0f0f0;border-radius:2px;height:5px;margin-top:5px;overflow:hidden;position:relative}.container-task-info .percent-done .detail{background:#3eb839;border-radius:2px;font-size:13px;height:5px;left:0;position:absolute;text-align:center;top:0}.priority{text-align:center}.priority>span{border-radius:3px;font-size:.8em;padding:3px 7px}"]
54786
54670
  },] }
@@ -54808,9 +54692,11 @@
54808
54692
  isPicker: [{ type: i0.Input }],
54809
54693
  loaiDanhSach: [{ type: i0.Input }],
54810
54694
  idCongViec: [{ type: i0.Input }],
54695
+ ids: [{ type: i0.Input }],
54811
54696
  isFromDashboard: [{ type: i0.Input }],
54812
54697
  formState: [{ type: i0.Input }],
54813
- isChildView: [{ type: i0.Input }]
54698
+ isChildView: [{ type: i0.Input }],
54699
+ idsChange: [{ type: i0.Output }]
54814
54700
  };
54815
54701
 
54816
54702
  var BaseDmLinhVucCongViecFormComponent = /** @class */ (function (_super) {
@@ -59617,96 +59503,94 @@
59617
59503
  exports.ɵc = EntityPickerService;
59618
59504
  exports.ɵca = VanbanDenPickerComponent;
59619
59505
  exports.ɵcb = CongViecPickerComponent;
59620
- exports.ɵcc = CongViecService$1;
59621
- exports.ɵcd = TaskWorkflowHistoriesService;
59622
- exports.ɵce = SettingsComponent;
59623
- exports.ɵcf = SettingsRowComponent;
59624
- exports.ɵcg = SettingsWorkflowComponent;
59625
- exports.ɵch = SettingsWorkflowNo1Component;
59626
- exports.ɵci = SimpleWorkflowFormComponent;
59627
- exports.ɵcj = ProcessWorkflowTargetComponent;
59628
- exports.ɵck = DmChucVuService;
59629
- exports.ɵcl = ChoYKienFormComponent;
59630
- exports.ɵcm = SplashComponentV1Component;
59631
- exports.ɵcn = SplashComponentV2Component;
59632
- exports.ɵco = StateMachinesConnectionReceiverComponent;
59633
- exports.ɵcp = StateMachinesConnectionReceiverConditionComponent;
59634
- exports.ɵcq = StateMachinesConnectionReceiverDepartmentComponent;
59635
- exports.ɵcr = StateMachinesConnectionReceiverGroupComponent;
59636
- exports.ɵcs = StateMachinesConnectionReceiverUserComponent;
59637
- exports.ɵct = StateMachinesConnectionReceiverRoleComponent;
59638
- exports.ɵcu = StateMachinesConnectionSenderComponent;
59639
- exports.ɵcv = StartWorkflowComponent;
59640
- exports.ɵcw = ShareLinkByPermissionComponent;
59641
- exports.ɵcx = WorkflowSettingNewComponent;
59642
- exports.ɵcy = PermissionSharingComponent;
59643
- exports.ɵcz = WorkflowPermissionService;
59506
+ exports.ɵcc = SettingsComponent;
59507
+ exports.ɵcd = SettingsRowComponent;
59508
+ exports.ɵce = SettingsWorkflowComponent;
59509
+ exports.ɵcf = SettingsWorkflowNo1Component;
59510
+ exports.ɵcg = SimpleWorkflowFormComponent;
59511
+ exports.ɵch = ProcessWorkflowTargetComponent;
59512
+ exports.ɵci = DmChucVuService;
59513
+ exports.ɵcj = ChoYKienFormComponent;
59514
+ exports.ɵck = SplashComponentV1Component;
59515
+ exports.ɵcl = SplashComponentV2Component;
59516
+ exports.ɵcm = StateMachinesConnectionReceiverComponent;
59517
+ exports.ɵcn = StateMachinesConnectionReceiverConditionComponent;
59518
+ exports.ɵco = StateMachinesConnectionReceiverDepartmentComponent;
59519
+ exports.ɵcp = StateMachinesConnectionReceiverGroupComponent;
59520
+ exports.ɵcq = StateMachinesConnectionReceiverUserComponent;
59521
+ exports.ɵcr = StateMachinesConnectionReceiverRoleComponent;
59522
+ exports.ɵcs = StateMachinesConnectionSenderComponent;
59523
+ exports.ɵct = StartWorkflowComponent;
59524
+ exports.ɵcu = ShareLinkByPermissionComponent;
59525
+ exports.ɵcv = WorkflowSettingNewComponent;
59526
+ exports.ɵcw = PermissionSharingComponent;
59527
+ exports.ɵcx = WorkflowPermissionService;
59528
+ exports.ɵcy = TnCheckboxComponent;
59529
+ exports.ɵcz = TnDialogComponent;
59644
59530
  exports.ɵd = ExceptionHandlerService;
59645
- exports.ɵda = TnCheckboxComponent;
59646
- exports.ɵdb = TnDialogComponent;
59647
- exports.ɵdc = TnColorPickerComponent;
59648
- exports.ɵdd = TnTinymceComponent;
59649
- exports.ɵde = TnTabViewComponent;
59650
- exports.ɵdf = TableDetailFormComponent;
59651
- exports.ɵdg = FileIconPipe;
59652
- exports.ɵdh = FileSizePipe;
59653
- exports.ɵdi = QuickAddFormComponent;
59654
- exports.ɵdj = PreventShiftTabDirective;
59655
- exports.ɵdk = TnTemplateDirective;
59656
- exports.ɵdl = UserPickerComponent;
59657
- exports.ɵdm = UserPickerBoxComponent;
59658
- exports.ɵdn = CoCauToChucTestService;
59659
- exports.ɵdo = TnAppHelpComponent;
59660
- exports.ɵdp = PathNameService;
59661
- exports.ɵdq = HelperCurrentPageComponent;
59662
- exports.ɵdr = TnAppNotificationListComponent;
59663
- exports.ɵds = TnAppNotificationComponent;
59664
- exports.ɵdt = MyDriveService;
59665
- exports.ɵdu = FileVersionService;
59666
- exports.ɵdv = FileExplorerNewService;
59667
- exports.ɵdw = FileManagerService;
59668
- exports.ɵdx = FolderFormComponent;
59669
- exports.ɵdy = FileFormComponent;
59670
- exports.ɵdz = FileViewerComponent;
59531
+ exports.ɵda = TnColorPickerComponent;
59532
+ exports.ɵdb = TnTinymceComponent;
59533
+ exports.ɵdc = TnTabViewComponent;
59534
+ exports.ɵdd = TableDetailFormComponent;
59535
+ exports.ɵde = FileIconPipe;
59536
+ exports.ɵdf = FileSizePipe;
59537
+ exports.ɵdg = QuickAddFormComponent;
59538
+ exports.ɵdh = PreventShiftTabDirective;
59539
+ exports.ɵdi = TnTemplateDirective;
59540
+ exports.ɵdj = UserPickerComponent;
59541
+ exports.ɵdk = UserPickerBoxComponent;
59542
+ exports.ɵdl = CoCauToChucTestService;
59543
+ exports.ɵdm = TnAppHelpComponent;
59544
+ exports.ɵdn = PathNameService;
59545
+ exports.ɵdo = HelperCurrentPageComponent;
59546
+ exports.ɵdp = TnAppNotificationListComponent;
59547
+ exports.ɵdq = TnAppNotificationComponent;
59548
+ exports.ɵdr = MyDriveService;
59549
+ exports.ɵds = FileVersionService;
59550
+ exports.ɵdt = FileExplorerNewService;
59551
+ exports.ɵdu = FileManagerService;
59552
+ exports.ɵdv = FolderFormComponent;
59553
+ exports.ɵdw = FileFormComponent;
59554
+ exports.ɵdx = FileViewerComponent;
59555
+ exports.ɵdy = FileVersionListComponent;
59556
+ exports.ɵdz = WorkflowHistoryComponent;
59671
59557
  exports.ɵe = CanBo_HoSoService;
59672
- exports.ɵea = FileVersionListComponent;
59673
- exports.ɵeb = WorkflowHistoryComponent;
59674
- exports.ɵec = EntityWorkflowHistoryService;
59675
- exports.ɵed = WorkflowHistoryDialogComponent;
59676
- exports.ɵee = WorkflowHistoryNewComponent;
59677
- exports.ɵef = WorkflowSettingComponent;
59678
- exports.ɵeg = EntityWorkflowSettingService;
59679
- exports.ɵeh = WorkflowSettingDialogComponent;
59680
- exports.ɵei = WorkflowPermissionComponent;
59681
- exports.ɵej = WorkflowPermissionFormComponent;
59682
- exports.ɵek = ReferenceTextBoxComponent;
59683
- exports.ɵel = QrCodeGeneratorComponent;
59684
- exports.ɵem = AccessDeniedV1Component;
59685
- exports.ɵen = AddNewsComponent;
59686
- exports.ɵeo = ArticleService;
59687
- exports.ɵep = NewsCategoryService;
59688
- exports.ɵeq = NotFoundComponent;
59689
- exports.ɵer = UniversalLinkProcessorComponent;
59690
- exports.ɵes = SignatureDetailComponent;
59691
- exports.ɵet = ChatService;
59692
- exports.ɵeu = ContentsService;
59693
- exports.ɵev = StatusExtendsService;
59694
- exports.ɵew = MessageBoardService;
59695
- exports.ɵex = KySoSimDanhSachChuKyComponent;
59696
- exports.ɵey = KySoSimChuKyUserService;
59697
- exports.ɵez = FileKySoSimComponent;
59558
+ exports.ɵea = EntityWorkflowHistoryService;
59559
+ exports.ɵeb = WorkflowHistoryDialogComponent;
59560
+ exports.ɵec = WorkflowHistoryNewComponent;
59561
+ exports.ɵed = WorkflowSettingComponent;
59562
+ exports.ɵee = EntityWorkflowSettingService;
59563
+ exports.ɵef = WorkflowSettingDialogComponent;
59564
+ exports.ɵeg = WorkflowPermissionComponent;
59565
+ exports.ɵeh = WorkflowPermissionFormComponent;
59566
+ exports.ɵei = ReferenceTextBoxComponent;
59567
+ exports.ɵej = QrCodeGeneratorComponent;
59568
+ exports.ɵek = AccessDeniedV1Component;
59569
+ exports.ɵel = AddNewsComponent;
59570
+ exports.ɵem = ArticleService;
59571
+ exports.ɵen = NewsCategoryService;
59572
+ exports.ɵeo = NotFoundComponent;
59573
+ exports.ɵep = UniversalLinkProcessorComponent;
59574
+ exports.ɵeq = SignatureDetailComponent;
59575
+ exports.ɵer = ChatService;
59576
+ exports.ɵes = ContentsService;
59577
+ exports.ɵet = StatusExtendsService;
59578
+ exports.ɵeu = MessageBoardService;
59579
+ exports.ɵev = KySoSimDanhSachChuKyComponent;
59580
+ exports.ɵew = KySoSimChuKyUserService;
59581
+ exports.ɵex = FileKySoSimComponent;
59582
+ exports.ɵey = KySoSimSignPDFService;
59583
+ exports.ɵez = TaiLieuCuaToiComponent;
59698
59584
  exports.ɵf = AfterViewCheckedComponent;
59699
- exports.ɵfa = KySoSimSignPDFService;
59700
- exports.ɵfb = TaiLieuCuaToiComponent;
59701
- exports.ɵfc = KhaiThacTaiLieuDungChungComponent;
59702
- exports.ɵfd = DanhMucDungChungService;
59703
- exports.ɵfe = TnTemplateComponent;
59704
- exports.ɵff = LoadingPageV1Component;
59705
- exports.ɵfg = CheckReadyComponent;
59706
- exports.ɵfh = SendAccessTokenInterceptor;
59707
- exports.ɵfi = LogInterceptor;
59708
- exports.ɵfj = PermissionUtilsInterceptor;
59709
- exports.ɵfk = TraceInterceptor;
59585
+ exports.ɵfa = KhaiThacTaiLieuDungChungComponent;
59586
+ exports.ɵfb = DanhMucDungChungService;
59587
+ exports.ɵfc = TnTemplateComponent;
59588
+ exports.ɵfd = LoadingPageV1Component;
59589
+ exports.ɵfe = CheckReadyComponent;
59590
+ exports.ɵff = SendAccessTokenInterceptor;
59591
+ exports.ɵfg = LogInterceptor;
59592
+ exports.ɵfh = PermissionUtilsInterceptor;
59593
+ exports.ɵfi = TraceInterceptor;
59710
59594
  exports.ɵg = AdvanceSearchComponent;
59711
59595
  exports.ɵh = AppRootMenuComponent;
59712
59596
  exports.ɵi = AppTopBarComponent;