Sfoglia il codice sorgente

refactoring

master
Florian Eisenmenger 1 anno fa
parent
commit
abd5dd61e2
7 ha cambiato i file con 63 aggiunte e 79 eliminazioni
  1. +6
    -10
      matsen-tool/src/app/_components/search-select/search-select.component.ts
  2. +4
    -1
      matsen-tool/src/app/_views/contacts/contacts-detail/contacts-detail.component.ts
  3. +5
    -5
      matsen-tool/src/app/_views/posts/new-post/new-post.component.html
  4. +4
    -4
      matsen-tool/src/app/_views/posts/post-list/post-list.component.html
  5. +25
    -30
      matsen-tool/src/app/_views/posts/post-list/post-list.component.ts
  6. +6
    -6
      matsen-tool/src/app/_views/tasks/task-list/task-list.component.html
  7. +13
    -23
      matsen-tool/src/app/_views/tasks/task-list/task-list.component.ts

+ 6
- 10
matsen-tool/src/app/_components/search-select/search-select.component.ts Vedi File

@@ -1,17 +1,13 @@
import {AfterViewInit, Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core'; import {AfterViewInit, Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';
import {PagingComponent} from "@app/_components/paging/paging.component";
import {FormGroup} from "@angular/forms"; import {FormGroup} from "@angular/forms";
import {SearchInputColDef} from "@app/_components/search-input/search-input-col-def";
import {MatSort, Sort} from "@angular/material/sort";
import {OrderFilter} from "@app/_models/orderFilter";
import {ListComponent} from "@app/_components/list/list.component"; import {ListComponent} from "@app/_components/list/list.component";
import {ListColDefinition} from "@app/_components/list/list-col-definition"; import {ListColDefinition} from "@app/_components/list/list-col-definition";
import {Observable} from "rxjs"; import {Observable} from "rxjs";


@Component({ @Component({
selector: 'app-search-select',
templateUrl: './search-select.component.html',
styleUrl: './search-select.component.scss'
selector: 'app-search-select',
templateUrl: './search-select.component.html',
styleUrl: './search-select.component.scss'
}) })
export class SearchSelectComponent implements OnInit, AfterViewInit { export class SearchSelectComponent implements OnInit, AfterViewInit {
@Input() public formId!: string; @Input() public formId!: string;
@@ -24,8 +20,8 @@ export class SearchSelectComponent implements OnInit, AfterViewInit {
@Input() public displayedDataSubResource!: string; @Input() public displayedDataSubResource!: string;
@Input() public listColDefinitions!: ListColDefinition[]; @Input() public listColDefinitions!: ListColDefinition[];
@Output() rowSelected = new EventEmitter<any>(); @Output() rowSelected = new EventEmitter<any>();
@ViewChild('paragraphRef', { static: false }) paragraphRef!: ElementRef;
@ViewChild("listComponent", { static: false }) listComponent!: ListComponent;
@ViewChild('paragraphRef', {static: false}) paragraphRef!: ElementRef;
@ViewChild("listComponent", {static: false}) listComponent!: ListComponent;
protected readonly SearchSelectComponent = SearchSelectComponent; protected readonly SearchSelectComponent = SearchSelectComponent;


protected selectedRowIndex: number | null = null; protected selectedRowIndex: number | null = null;
@@ -47,7 +43,7 @@ export class SearchSelectComponent implements OnInit, AfterViewInit {


ngAfterViewInit(): void { ngAfterViewInit(): void {
if (this.dataSet !== undefined) { if (this.dataSet !== undefined) {
this.paragraphRef.nativeElement.textContent = this.dataSet[this.displayedDataField];
this.paragraphRef.nativeElement.textContent = this.dataSet[this.displayedDataField];
} }
} }




+ 4
- 1
matsen-tool/src/app/_views/contacts/contacts-detail/contacts-detail.component.ts Vedi File

@@ -103,7 +103,10 @@ export class ContactsDetailComponent implements OnInit, AfterViewInit {
} }


openModalEditContact() { openModalEditContact() {
let data: any = {'contact': this.contact}
let data: any = {
'contact': this.contact,
'partner': this.partner
}
if (this.contact.birthday !== undefined) { if (this.contact.birthday !== undefined) {
data.birthdayValue = this.appHelperService.convertDate(this.contact.birthday); data.birthdayValue = this.appHelperService.convertDate(this.contact.birthday);
} }


+ 5
- 5
matsen-tool/src/app/_views/posts/new-post/new-post.component.html Vedi File

@@ -17,8 +17,8 @@


<div class="mb-3"> <div class="mb-3">
<label for="product" class="form-label">{{ 'form.product' | translate }}:</label> <label for="product" class="form-label">{{ 'form.product' | translate }}:</label>
<ng-container *ngIf="posting.saleIri === null || posting.saleIri === undefined">
<app-search-select *ngIf="posting.id === null || posting.id === undefined"
<ng-container *ngIf="posting.saleIri === undefined">
<app-search-select *ngIf="posting.id === undefined"
#productSearchSelect #productSearchSelect
[formId]="'productIri'" [formId]="'productIri'"
[formLabelLangKey]="'form.product'" [formLabelLangKey]="'form.product'"
@@ -28,13 +28,13 @@
[listColDefinitions]="SearchSelectComponent.getDefaultColDefProducts()" [listColDefinitions]="SearchSelectComponent.getDefaultColDefProducts()"
> >
</app-search-select> </app-search-select>
<input id="product" type="hidden" *ngIf="posting.id === null || posting.id === undefined"
<input id="product" type="hidden" *ngIf="posting.id === undefined"
formControlName="product"/> formControlName="product"/>
</ng-container> </ng-container>
<input type="text" <input type="text"
*ngIf="posting.saleIri !== null && posting.saleIri !== undefined && (posting.id === null || posting.id === undefined)"
*ngIf="posting.saleIri !== undefined && (posting.id === undefined)"
class="form-control" disabled value="{{product.name}}"/> class="form-control" disabled value="{{product.name}}"/>
<input type="text" *ngIf="posting.id !== null && posting.id !== undefined" class="form-control"
<input type="text" *ngIf="posting.id !== undefined" class="form-control"
disabled value="{{posting.product?.name}}"/> disabled value="{{posting.product?.name}}"/>
</div> </div>




+ 4
- 4
matsen-tool/src/app/_views/posts/post-list/post-list.component.html Vedi File

@@ -1,7 +1,7 @@
<div class="spt-container"> <div class="spt-container">
<div class="posts"> <div class="posts">
<div *ngIf="!this.user" class="top-btn"> <div *ngIf="!this.user" class="top-btn">
<button class="btn btn-primary" (click)="openModalNewPost()">+ {{ 'basic.new-post' | translate }}</button>
<button class="btn btn-primary" (click)="openModalNewEditPost()">+ {{ 'basic.new-post' | translate }}</button>
</div> </div>
<app-paging #pagingComponent <app-paging #pagingComponent
[getDataFunction]="getPostsData" [getDataFunction]="getPostsData"
@@ -31,7 +31,7 @@
<p class="m-0" [innerHTML]="appHelperService.getSafeLongtext(post.message)"></p> <p class="m-0" [innerHTML]="appHelperService.getSafeLongtext(post.message)"></p>
<span *ngIf="post.owner?.id === currentUser?.id" class="position-absolute bi bi-pencil p-2" <span *ngIf="post.owner?.id === currentUser?.id" class="position-absolute bi bi-pencil p-2"
data-type="user-tool" data-type="user-tool"
data-action="edit" (click)="openModalEditPost(post)"></span>
data-action="edit" (click)="openModalNewEditPost(post)"></span>
<div class="spt-comments-box d-flex justify-content-end mt-1 position-absolute"> <div class="spt-comments-box d-flex justify-content-end mt-1 position-absolute">
<span *ngIf="post?.numComments !== undefined && post?.numComments !== null && post?.numComments !== 0" <span *ngIf="post?.numComments !== undefined && post?.numComments !== null && post?.numComments !== 0"
role="button" class="badge bg-secondary p-2 me-2" role="button" class="badge bg-secondary p-2 me-2"
@@ -43,7 +43,7 @@
({{ post.numComments }})</ng-container> ({{ post.numComments }})</ng-container>
</span> </span>
<span role="button" class="badge bg-secondary p-2" <span role="button" class="badge bg-secondary p-2"
(click)="openModalNewComment(post)">{{ 'basic.comment-it' | translate }}</span>
(click)="openModalNewEditComment(post)">{{ 'basic.comment-it' | translate }}</span>
</div> </div>
</div> </div>
</div> </div>
@@ -61,7 +61,7 @@
<span *ngIf="comment.owner?.id === currentUser?.id" <span *ngIf="comment.owner?.id === currentUser?.id"
class="position-absolute bi bi-pencil p-2" class="position-absolute bi bi-pencil p-2"
data-type="user-tool" data-action="edit" data-type="user-tool" data-action="edit"
(click)="openModalEditComment(comment)"></span>
(click)="openModalNewEditComment(undefined, comment)"></span>
</div> </div>
</div> </div>
</div> </div>


+ 25
- 30
matsen-tool/src/app/_views/posts/post-list/post-list.component.ts Vedi File

@@ -2,7 +2,7 @@ import {AfterViewInit, Component, Input, OnInit, ViewChild} from '@angular/core'
import {Subscription} from "rxjs"; import {Subscription} from "rxjs";
import { import {
CommentJsonld, CommentService, CommentJsonld, CommentService,
ContactJsonld,
ContactJsonld, DocumentJsonld,
PartnerJsonld, PartnerJsonld,
PartnerProductJsonld, PartnerProductJsonld,
PostJsonld, PostJsonld,
@@ -16,6 +16,7 @@ import {PagingComponent} from "@app/_components/paging/paging.component";
import {NewCommentComponent} from "@app/_views/posts/new-comment/new-comment.component"; import {NewCommentComponent} from "@app/_views/posts/new-comment/new-comment.component";
import {User} from "@app/_models"; import {User} from "@app/_models";
import {AccountService} from "@app/_services"; import {AccountService} from "@app/_services";
import {NewDocumentComponent} from "@app/_views/documents/new-document/new-document.component";


@Component({ @Component({
selector: 'app-post-list', selector: 'app-post-list',
@@ -133,40 +134,34 @@ export class PostListComponent implements OnInit, AfterViewInit {
this.getPostData(postIri); this.getPostData(postIri);
} }


openModalNewPost() {
let postInputs: any = {};
let post: PostJsonld = {} as PostJsonld;
openModalNewEditPost(post?: PostJsonld) {
const postInputs: any = {};
const posting: PostJsonld = post || {} as PostJsonld;


if (this.partner !== undefined) {
post.partnerIri = this.partner?.id;
postInputs['partner'] = this.partner;
}
if (this.contact !== undefined) {
post.contactIri = this.contact.id;
}
if (this.sale !== undefined) {
post.partnerIri = this.sale?.partnerIri;
post.productIri = this.sale?.productIri;
post.saleIri = this.sale?.id;
postInputs['product'] = this.sale.product;
if (!post) {
if (this.partner) {
posting.partnerIri = this.partner.id;
postInputs['partner'] = this.partner;
}
if (this.contact) {
posting.contactIri = this.contact.id;
}
if (this.sale) {
posting.partnerIri = this.sale.partnerIri;
posting.productIri = this.sale.productIri;
posting.saleIri = this.sale.id;
postInputs['product'] = this.sale.product;
}
} }
postInputs['posting'] = post;
this.appHelperService.openModal(NewPostComponent, postInputs, this.getPostsData);
}


openModalEditPost(post: PostJsonld) {
this.appHelperService.openModal(NewPostComponent, { 'posting': post }, this.getPostsData);
postInputs['posting'] = posting;
this.appHelperService.openModal(NewPostComponent, postInputs, this.getPostsData);
} }


openModalNewComment(post: PostJsonld) {
let comment: CommentJsonld = {} as CommentJsonld;
comment.postIri = post.id;
this.appHelperService.openModal(NewCommentComponent, { 'comment': comment }, this.afterCommentCreation, post.id);
}
openModalNewEditComment(post?: PostJsonld, comment?: CommentJsonld) {
const commentData: CommentJsonld = comment || { postIri: post?.id } as CommentJsonld;
const postId = comment ? comment.postIri : post?.id;


openModalEditComment(comment: CommentJsonld) {
this.appHelperService.openModal(NewCommentComponent, { 'comment': comment }, this.afterCommentCreation, comment.postIri);
this.appHelperService.openModal(NewCommentComponent, { 'comment': commentData }, this.afterCommentCreation, postId);
} }


} }

+ 6
- 6
matsen-tool/src/app/_views/tasks/task-list/task-list.component.html Vedi File

@@ -1,6 +1,6 @@
<div class="spt-container"> <div class="spt-container">
<div class="top-btn"> <div class="top-btn">
<button *ngIf="partner" class="btn btn-primary" (click)="openModalNewTask()">
<button *ngIf="partner" class="btn btn-primary" (click)="openModalNewEditTask()">
+ {{ 'basic.new-task' | translate }} + {{ 'basic.new-task' | translate }}
</button> </button>
</div> </div>
@@ -29,7 +29,7 @@
class="position-absolute bi bi-pencil p-2" class="position-absolute bi bi-pencil p-2"
data-type="user-tool" data-type="user-tool"
data-action="edit" data-action="edit"
(click)="openModalEditTask(task)"
(click)="openModalNewEditTask(task)"
> >
</span> </span>
<span class="importance" [attr.data-importance]="task.prio"></span> <span class="importance" [attr.data-importance]="task.prio"></span>
@@ -65,7 +65,7 @@
({{ task.numTaskNotes }})</ng-container> ({{ task.numTaskNotes }})</ng-container>
</span> </span>
<span role="button" class="badge bg-secondary p-2" <span role="button" class="badge bg-secondary p-2"
(click)="openModalNewTaskNote(task)">{{ 'basic.comment-it' | translate }}</span>
(click)="openModalNewEditTaskNote(task)">{{ 'basic.comment-it' | translate }}</span>
</div> </div>
</div> </div>
</div> </div>
@@ -92,7 +92,7 @@
<span *ngIf="task.createdBy?.id === currentUser?.id" <span *ngIf="task.createdBy?.id === currentUser?.id"
class="position-absolute bi bi-pencil p-2" class="position-absolute bi bi-pencil p-2"
data-type="user-tool" data-action="edit" data-type="user-tool" data-action="edit"
(click)="openModalEditTask(task)"></span>
(click)="openModalNewEditTask(task)"></span>
<div class="spt-comments-box d-flex justify-content-end mt-1 position-absolute"> <div class="spt-comments-box d-flex justify-content-end mt-1 position-absolute">
<span *ngIf="task.numTaskNotes !== undefined && task.numTaskNotes !== null && task.numTaskNotes > 0" <span *ngIf="task.numTaskNotes !== undefined && task.numTaskNotes !== null && task.numTaskNotes > 0"
role="button" class="spt-btn-low badge bg-secondary p-2 me-2" role="button" class="spt-btn-low badge bg-secondary p-2 me-2"
@@ -104,7 +104,7 @@
({{ task.numTaskNotes }})</ng-container> ({{ task.numTaskNotes }})</ng-container>
</span> </span>
<span role="button" class="badge bg-secondary p-2" <span role="button" class="badge bg-secondary p-2"
(click)="openModalNewTaskNote(task)">{{ 'basic.comment-it' | translate }}</span>
(click)="openModalNewEditTaskNote(task)">{{ 'basic.comment-it' | translate }}</span>
</div> </div>
</div> </div>
</div> </div>
@@ -132,7 +132,7 @@
<span *ngIf="taskNote.owner?.id === currentUser?.id" <span *ngIf="taskNote.owner?.id === currentUser?.id"
class="position-absolute bi bi-pencil p-2" class="position-absolute bi bi-pencil p-2"
data-type="user-tool" data-action="edit" data-type="user-tool" data-action="edit"
(click)="openModalEditTaskNote(taskNote, task)"></span>
(click)="openModalNewEditTaskNote(task, taskNote)"></span>
</div> </div>
</div> </div>
</div> </div>


+ 13
- 23
matsen-tool/src/app/_views/tasks/task-list/task-list.component.ts Vedi File

@@ -131,33 +131,23 @@ export class TaskListComponent implements OnInit, AfterViewInit {
this.getTaskData(taskIri); this.getTaskData(taskIri);
} }


openModalNewTask() {
let postInputs: any = {};
let task: TaskJsonld = {} as TaskJsonld;
task.partnerIri = this.partner.id;
task.completed = false;
if (this.partner !== undefined) {
postInputs['partner'] = this.partner;
}
postInputs['task'] = task;
this.appHelperService.openModal(NewTaskComponent, postInputs, this.getTasksData);
}

openModalEditTask(task: TaskJsonld) {
this.appHelperService.openModal(NewTaskComponent, {'task': task}, this.getTasksData);
openModalNewEditTask(task?: TaskJsonld) {
const taskInputs: any = {
partner: this.partner,
task: task || {
partnerIri: this.partner?.id,
completed: false
} as TaskJsonld
};

this.appHelperService.openModal(NewTaskComponent, taskInputs, this.getTasksData);
} }


openModalNewTaskNote(task: TaskJsonld) {
let taskNote: TaskNoteJsonld = {} as TaskNoteJsonld;
taskNote.taskIri = task.id ?? null;
this.appHelperService.openModal(
NewTaskNoteComponent, {'taskNote': taskNote, 'task': task}, this.afterCommentCreation, task.id
);
}
openModalNewEditTaskNote(task: TaskJsonld, taskNote?: TaskNoteJsonld) {
const taskNoteData: TaskNoteJsonld = taskNote || { taskIri: task.id ?? null } as TaskNoteJsonld;


openModalEditTaskNote(taskNote: TaskNoteJsonld, task: TaskJsonld) {
this.appHelperService.openModal( this.appHelperService.openModal(
NewTaskNoteComponent, {'taskNote': taskNote, 'task': task}, this.afterCommentCreation, task.id
NewTaskNoteComponent, { 'taskNote': taskNoteData, 'task': task }, this.afterCommentCreation, task.id
); );
} }




Caricamento…
Annulla
Salva