From 8a34916e2b6df4da82bc44f16a2b21befbcc4326 Mon Sep 17 00:00:00 2001 From: Boris Voropaev Date: Thu, 8 Feb 2024 11:16:01 +0300 Subject: [PATCH] regisrtry rk023 --- angular.json | 8 ++++ src/environments/tk023.env.dev.ts | 6 +-- .../component/layout/grid/grid.component.html | 2 +- .../layout/header/header.component.html | 11 +++-- .../entry-properties.component.html | 14 ++++++ .../entry-properties.component.scss | 0 .../properties/entry-properties.component.ts | 46 +++++++++++++++++++ .../entry/registry-entry.component.html | 7 +-- .../entries/entry/registry-entry.component.ts | 11 ++++- src/tk023/css/_grid.scss | 39 +++++++++++----- src/tk023/css/_main-menu.scss | 36 +++++++++++++-- src/tk023/css/_registry.scss | 1 - src/tk023/images/ico/burger.svg | 5 ++ 13 files changed, 158 insertions(+), 28 deletions(-) create mode 100644 src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.html create mode 100644 src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.scss create mode 100644 src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.ts create mode 100644 src/tk023/images/ico/burger.svg diff --git a/angular.json b/angular.json index e5f2cbf..2fd8be9 100644 --- a/angular.json +++ b/angular.json @@ -504,6 +504,10 @@ { "replace": "src/app/_modules/registries/registry/entries/entry/registry-entry.component.ts", "with": "src/tk023/component/registries/registry/entries/entry/registry-entry.component.ts" + }, + { + "replace": "src/app/_modules/registries/registry/entries/entry/properties/entry-properties.component.ts", + "with": "src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.ts" } ], "inlineStyleLanguage": "scss", @@ -575,6 +579,10 @@ { "replace": "src/app/_modules/registries/registry/entries/entry/registry-entry.component.ts", "with": "src/tk023/component/registries/registry/entries/entry/registry-entry.component.ts" + }, + { + "replace": "src/app/_modules/registries/registry/entries/entry/properties/entry-properties.component.ts", + "with": "src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.ts" } ], "inlineStyleLanguage": "scss", diff --git a/src/environments/tk023.env.dev.ts b/src/environments/tk023.env.dev.ts index 1949cb4..0190de2 100644 --- a/src/environments/tk023.env.dev.ts +++ b/src/environments/tk023.env.dev.ts @@ -4,9 +4,9 @@ export const environment = { production: false, - apiUrl: 'http://api.nircms.lc', - clientId: 4, - clientSecret: 'KmGnhqVbEi3wlzkEyXi1JeNg9FtswdOdKQHpOcAu', + apiUrl: 'http://api.neftegaz.lc', + clientId: 2, + clientSecret: 'l96iMO2w2V8NwhBzHbVFbLfvregctHVxWsD4Lo37', project: null, licence: 'POUFLO4YW7SU', defaultLocale: 'ru' diff --git a/src/tk023/component/layout/grid/grid.component.html b/src/tk023/component/layout/grid/grid.component.html index fe428cb..8f52949 100644 --- a/src/tk023/component/layout/grid/grid.component.html +++ b/src/tk023/component/layout/grid/grid.component.html @@ -1,7 +1,7 @@ -
+
diff --git a/src/tk023/component/layout/header/header.component.html b/src/tk023/component/layout/header/header.component.html index 3cb4391..8646554 100644 --- a/src/tk023/component/layout/header/header.component.html +++ b/src/tk023/component/layout/header/header.component.html @@ -1,16 +1,19 @@
- - + - + МТК 523 diff --git a/src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.html b/src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.html new file mode 100644 index 0000000..1bb8aa1 --- /dev/null +++ b/src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.html @@ -0,0 +1,14 @@ + + + + + + + +
{{field.title}} + + {{getValue(field)}}
diff --git a/src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.scss b/src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.ts b/src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.ts new file mode 100644 index 0000000..34fd00e --- /dev/null +++ b/src/tk023/component/registries/registry/entries/entry/properties/entry-properties.component.ts @@ -0,0 +1,46 @@ +import {Component, Input} from '@angular/core'; +import {RegistryEntriesService} from "@app/_services/registry-entries.service"; +import {ObjectsService} from "@app/_services"; +import {DatePipe} from "@angular/common"; + +@Component({ + selector: 'entry-properties', + templateUrl: 'entry-properties.component.html', + styleUrls: ['entry-properties.component.scss'] +}) +export class EntryPropertiesComponent { + @Input() entry: any; + @Input() bar: number; + @Input() expande: boolean; + + constructor(private entriesService: RegistryEntriesService, private objectsService: ObjectsService, private datePipe: DatePipe) { + } + + get fields() { + let fields = this.objectsService.parsedFields(this.entry.properties?.data) + .filter(field => {return field.value?.length || field.value?.id}); + if (!this.expande) fields = fields.slice(0,this.bar) + return fields + } + + ngOnInit() { + this.fetch(); + } + + fetch() { + let include = ['properties.groups.fields.value']; + this.entriesService.show(this.entry.id, {include: include.join(',')}).subscribe(res => { + this.entry = res.data; + }); + } + + + getValue(field: any) { + let value = Array.isArray(field.value) ? field.value : [field.value]; + return value.filter(val => {return val?.length || val?.id;}).map(val => { + if (field.type === 'date') return this.datePipe.transform(val, 'dd.MM.yyyy'); + else return val?.caption || val?.title || val; + }).join('; '); + } + +} diff --git a/src/tk023/component/registries/registry/entries/entry/registry-entry.component.html b/src/tk023/component/registries/registry/entries/entry/registry-entry.component.html index 76cddaf..7801e3e 100644 --- a/src/tk023/component/registries/registry/entries/entry/registry-entry.component.html +++ b/src/tk023/component/registries/registry/entries/entry/registry-entry.component.html @@ -3,7 +3,8 @@
{{title}} @@ -28,9 +29,9 @@
-
+
- +
diff --git a/src/tk023/component/registries/registry/entries/entry/registry-entry.component.ts b/src/tk023/component/registries/registry/entries/entry/registry-entry.component.ts index a9020c1..26cc349 100644 --- a/src/tk023/component/registries/registry/entries/entry/registry-entry.component.ts +++ b/src/tk023/component/registries/registry/entries/entry/registry-entry.component.ts @@ -19,7 +19,6 @@ export class RegistryEntryComponent { constructor(private entriesService: RegistryEntriesService, private formsService: FormsService, private listsService: ListsService, private datePipe: DatePipe) { } - get operationsListId() { return this.entry.id; } @@ -51,9 +50,17 @@ export class RegistryEntryComponent { return this.registry?.type?.options || this.entry?.registry?.data.type?.options; } + get bar(){ + switch(this.registry.type.name){ + case 'notice': return 2; + } + return 2 + } + ngOnInit() { - + console.log('registry', this.registry.type) + console.log('entry', this.entry) } diff --git a/src/tk023/css/_grid.scss b/src/tk023/css/_grid.scss index bb5754f..ed34be8 100644 --- a/src/tk023/css/_grid.scss +++ b/src/tk023/css/_grid.scss @@ -1,3 +1,12 @@ +.grid-design{ + display: flex; + flex-direction: column; + min-height: 100vh; + .content-sapce{ + flex-grow: 1; + } +} + .center{ align-items: center; } @@ -31,7 +40,6 @@ .content-grid{ padding: 32px 48px; display: flex; - justify-content: space-between; gap: 40px; left-content{ flex-basis: 272px; @@ -138,7 +146,7 @@ footer{ max-width: 100vw; } } - right-content, left-content{ + right-content{ display: none; } .jumbotron-edit-field{ @@ -146,16 +154,25 @@ footer{ } } - -@media screen and (max-width: 900px){ - .space{ - .layout-corral, .page-corral{ - padding: 0 24px; +@media screen and (max-width: 1048px){ + .content-grid{ + padding: 32px 24px; + left-content{ + display: none; } } - .copyright{ - flex-direction: column; - gap: 24px; + + footer{ + .footer{ + padding: 16px 24px 32px; + flex-direction: column; + flex-wrap: nowrap; + gap: 8px; + a, div{ + text-align: start !important; + } + + } } -} \ No newline at end of file +} diff --git a/src/tk023/css/_main-menu.scss b/src/tk023/css/_main-menu.scss index f257627..c20ba27 100644 --- a/src/tk023/css/_main-menu.scss +++ b/src/tk023/css/_main-menu.scss @@ -20,10 +20,13 @@ header{ gap: 32px; height: 108px; padding: 16px 48px 12px 48px; + .burger{ + display: none; + } .header-top-menu-logo{ margin-right: auto; } - .header-top-menu-ref{ + .header-top-menu-ref, .header-top-menu-login{ display: flex; align-items: end; gap: 8px; @@ -252,9 +255,7 @@ slider[side="left"]{ -@media screen and (max-width: 1330px){ -} @media screen and (max-width: 900px){ slider[side="left"]{ @@ -276,6 +277,35 @@ slider-menu{ } } +@media screen and (max-width: 1048px){ + header{ + border-bottom: 1px solid var(--light); + + .header.layout-corral{ + pages-menu{ + display: none; + } + .header-top-menu{ + justify-content: space-between; + height: 64px; + padding: 16px 24px 12px; + .burger{ + display: flex; + } + .header-top-menu-logo{ + margin: 0; + img{ + width: 118px; + height: 40px; + } + } + .header-top-menu-ref, locale, .btn{ + display: none; + } + } + } + } +} diff --git a/src/tk023/css/_registry.scss b/src/tk023/css/_registry.scss index 536b060..989ec98 100644 --- a/src/tk023/css/_registry.scss +++ b/src/tk023/css/_registry.scss @@ -164,7 +164,6 @@ registry-entry { display: inline-flex; align-items: flex-start; gap: 16px; - color: #000; } } .menu-entry{ diff --git a/src/tk023/images/ico/burger.svg b/src/tk023/images/ico/burger.svg new file mode 100644 index 0000000..276ed3b --- /dev/null +++ b/src/tk023/images/ico/burger.svg @@ -0,0 +1,5 @@ + + + + +