From fa7283cff15b25659fb3adf6c9f3d529d41f71ac Mon Sep 17 00:00:00 2001 From: hungdztrau123 Date: Thu, 23 May 2024 16:03:38 +0700 Subject: [PATCH] warehouse frontend --- src-ui/src/app/app-routing.module.ts | 12 ++ src-ui/src/app/app.module.ts | 4 + .../app-frame/app-frame.component.html | 7 + .../warehouse-edit-dialog.component.html | 31 +++ .../warehouse-edit-dialog.component.scss | 0 .../warehouse-edit-dialog.component.spec.ts | 64 ++++++ .../warehouse-edit-dialog.component.ts | 45 +++++ .../common/warehouse/warehouse.component.html | 8 + .../common/warehouse/warehouse.component.scss | 13 ++ .../warehouse/warehouse.component.spec.ts | 45 +++++ .../common/warehouse/warehouse.component.ts | 20 ++ .../statistics-widget.component.html | 8 + .../statistics-widget.component.ts | 1 + .../document-detail.component.html | 2 + .../document-detail.component.spec.ts | 55 ++++++ .../document-detail.component.ts | 47 +++++ .../bulk-editor/bulk-editor.component.html | 16 ++ .../bulk-editor/bulk-editor.component.spec.ts | 184 ++++++++++++++++++ .../bulk-editor/bulk-editor.component.ts | 91 +++++++++ .../document-card-large.component.html | 6 + .../document-card-large.component.ts | 3 + .../document-card-small.component.html | 7 + .../document-card-small.component.ts | 3 + .../document-list.component.html | 16 ++ .../document-list.component.spec.ts | 1 + .../document-list/document-list.component.ts | 5 + .../filter-editor.component.html | 10 + .../filter-editor.component.spec.ts | 162 +++++++++++++++ .../filter-editor/filter-editor.component.ts | 79 ++++++++ .../warehouse-list.component.spec.ts | 72 +++++++ .../warehouse-list.component.ts | 55 ++++++ src-ui/src/app/data/document-suggestions.ts | 2 + src-ui/src/app/data/document.ts | 5 + src-ui/src/app/data/filter-rule-type.ts | 23 +++ src-ui/src/app/data/warehouse.ts | 8 + src-ui/src/app/data/workflow-action.ts | 6 + .../app/services/permissions.service.spec.ts | 4 + .../src/app/services/permissions.service.ts | 1 + .../src/app/services/rest/document.service.ts | 15 ++ .../services/rest/warehouse.service.spec.ts | 4 + .../app/services/rest/warehouse.service.ts | 13 ++ src/documents/filters.py | 5 + src/documents/migrations/1047_warehouse.py | 30 --- .../1048_alter_warehouse_parent_warehouse.py | 19 ++ .../1049_alter_warehouse_parent_warehouse.py | 19 ++ .../1050_alter_warehouse_parent_warehouse.py | 19 ++ ...tions_warehouse_is_insensitive_and_more.py | 45 +++++ src/documents/models.py | 7 +- src/documents/serialisers.py | 15 +- src/documents/views.py | 11 +- 50 files changed, 1286 insertions(+), 37 deletions(-) create mode 100644 src-ui/src/app/components/common/edit-dialog/warehouse-edit-dialog/warehouse-edit-dialog.component.html create mode 100644 src-ui/src/app/components/common/edit-dialog/warehouse-edit-dialog/warehouse-edit-dialog.component.scss create mode 100644 src-ui/src/app/components/common/edit-dialog/warehouse-edit-dialog/warehouse-edit-dialog.component.spec.ts create mode 100644 src-ui/src/app/components/common/edit-dialog/warehouse-edit-dialog/warehouse-edit-dialog.component.ts create mode 100644 src-ui/src/app/components/common/warehouse/warehouse.component.html create mode 100644 src-ui/src/app/components/common/warehouse/warehouse.component.scss create mode 100644 src-ui/src/app/components/common/warehouse/warehouse.component.spec.ts create mode 100644 src-ui/src/app/components/common/warehouse/warehouse.component.ts create mode 100644 src-ui/src/app/components/manage/warehouse-list/warehouse-list.component.spec.ts create mode 100644 src-ui/src/app/components/manage/warehouse-list/warehouse-list.component.ts create mode 100644 src-ui/src/app/data/warehouse.ts create mode 100644 src-ui/src/app/services/rest/warehouse.service.spec.ts create mode 100644 src-ui/src/app/services/rest/warehouse.service.ts delete mode 100644 src/documents/migrations/1047_warehouse.py create mode 100644 src/documents/migrations/1048_alter_warehouse_parent_warehouse.py create mode 100644 src/documents/migrations/1049_alter_warehouse_parent_warehouse.py create mode 100644 src/documents/migrations/1050_alter_warehouse_parent_warehouse.py create mode 100644 src/documents/migrations/1051_alter_warehouse_options_warehouse_is_insensitive_and_more.py diff --git a/src-ui/src/app/app-routing.module.ts b/src-ui/src/app/app-routing.module.ts index 12b412f67..494a1506a 100644 --- a/src-ui/src/app/app-routing.module.ts +++ b/src-ui/src/app/app-routing.module.ts @@ -9,6 +9,7 @@ import { DocumentTypeListComponent } from './components/manage/document-type-lis import { LogsComponent } from './components/admin/logs/logs.component' import { SettingsComponent } from './components/admin/settings/settings.component' import { TagListComponent } from './components/manage/tag-list/tag-list.component' +import { WarehouseListComponent } from './components/manage/warehouse-list/warehouse-list.component' import { NotFoundComponent } from './components/not-found/not-found.component' import { DocumentAsnComponent } from './components/document-asn/document-asn.component' import { DirtyFormGuard } from './guards/dirty-form.guard' @@ -103,6 +104,17 @@ export const routes: Routes = [ }, }, }, + { + path: 'warehouses', + component: WarehouseListComponent, + canActivate: [PermissionsGuard], + data: { + requiredPermission: { + action: PermissionAction.View, + type: PermissionType.Warehouse, + }, + }, + }, { path: 'documenttypes', component: DocumentTypeListComponent, diff --git a/src-ui/src/app/app.module.ts b/src-ui/src/app/app.module.ts index 3cd66f6cd..08f961dce 100644 --- a/src-ui/src/app/app.module.ts +++ b/src-ui/src/app/app.module.ts @@ -12,6 +12,7 @@ import { DocumentListComponent } from './components/document-list/document-list. import { DocumentDetailComponent } from './components/document-detail/document-detail.component' import { DashboardComponent } from './components/dashboard/dashboard.component' import { TagListComponent } from './components/manage/tag-list/tag-list.component' +import { WarehouseListComponent } from './components/manage/warehouse-list/warehouse-list.component' import { DocumentTypeListComponent } from './components/manage/document-type-list/document-type-list.component' import { CorrespondentListComponent } from './components/manage/correspondent-list/correspondent-list.component' import { LogsComponent } from './components/admin/logs/logs.component' @@ -22,6 +23,7 @@ import { NotFoundComponent } from './components/not-found/not-found.component' import { ConfirmDialogComponent } from './components/common/confirm-dialog/confirm-dialog.component' import { CorrespondentEditDialogComponent } from './components/common/edit-dialog/correspondent-edit-dialog/correspondent-edit-dialog.component' import { TagEditDialogComponent } from './components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component' +import { WarehouseEditDialogComponent } from './components/common/edit-dialog/warehouse-edit-dialog/warehouse-edit-dialog.component' import { DocumentTypeEditDialogComponent } from './components/common/edit-dialog/document-type-edit-dialog/document-type-edit-dialog.component' import { TagComponent } from './components/common/tag/tag.component' import { ClearableBadgeComponent } from './components/common/clearable-badge/clearable-badge.component' @@ -388,6 +390,7 @@ function initializeApp(settings: SettingsService) { DocumentTypeListComponent, CorrespondentListComponent, StoragePathListComponent, + WarehouseListComponent, LogsComponent, SettingsComponent, NotFoundComponent, @@ -396,6 +399,7 @@ function initializeApp(settings: SettingsService) { TagEditDialogComponent, DocumentTypeEditDialogComponent, StoragePathEditDialogComponent, + WarehouseEditDialogComponent, TagComponent, ClearableBadgeComponent, PageHeaderComponent, diff --git a/src-ui/src/app/components/app-frame/app-frame.component.html b/src-ui/src/app/components/app-frame/app-frame.component.html index c1cc92264..3fe971ee6 100644 --- a/src-ui/src/app/components/app-frame/app-frame.component.html +++ b/src-ui/src/app/components/app-frame/app-frame.component.html @@ -203,6 +203,13 @@  Storage Paths +