Przeglądaj źródła

task date

master
Florian Eisenmenger 1 rok temu
rodzic
commit
1156dcac3c
5 zmienionych plików z 42 dodań i 17 usunięć
  1. +8
    -0
      matsen-tool/src/app/_helpers/api.converter.ts
  2. +1
    -1
      matsen-tool/src/app/partners/partners-detail/partners-detail.component.html
  3. +3
    -1
      matsen-tool/src/app/partners/partners-detail/partners-detail.component.ts
  4. +2
    -5
      matsen-tool/src/app/tasks/new-task/new-task.component.html
  5. +28
    -10
      matsen-tool/src/app/tasks/new-task/new-task.component.ts

+ 8
- 0
matsen-tool/src/app/_helpers/api.converter.ts Wyświetl plik

@@ -10,4 +10,12 @@ export class ApiConverter {
} }
return ""; return "";
} }

public static convertDate(dateString: string | null) {
if (dateString !== null) {
const date = new Date(dateString);
return date.toISOString().slice(0, 16);
}
return "";
}
} }

+ 1
- 1
matsen-tool/src/app/partners/partners-detail/partners-detail.component.html Wyświetl plik

@@ -111,7 +111,7 @@
aria-controls="collapseExample"> aria-controls="collapseExample">
<h3 class="m-0">{{task.partner}}</h3> <h3 class="m-0">{{task.partner}}</h3>
<span class="info d-flex position-absolute"> <span class="info d-flex position-absolute">
<span class="due-date">{{ task.dueAt | date:'dd.MM.YYYY HH:mm' }}</span>
<span class="due-date">{{ task.dueAt | date:'dd.MM.YYYY HH:mm':'GMT+0000' }}</span>
<span class="importance" [attr.data-importance]="task.prio"></span> <span class="importance" [attr.data-importance]="task.prio"></span>
</span> </span>
<h2 class="m-0">{{task.headline}}</h2> <h2 class="m-0">{{task.headline}}</h2>


+ 3
- 1
matsen-tool/src/app/partners/partners-detail/partners-detail.component.ts Wyświetl plik

@@ -183,6 +183,7 @@ export class PartnersDetailComponent implements OnInit, AfterViewInit {
data => { data => {
this.tasks = data["hydra:member"]; this.tasks = data["hydra:member"];
this.tasksLength = Number(data["hydra:totalItems"]); this.tasksLength = Number(data["hydra:totalItems"]);
console.log(this.tasks);
} }
); );
} }
@@ -272,10 +273,11 @@ export class PartnersDetailComponent implements OnInit, AfterViewInit {
openModalEditTask(task: TaskJsonld) { openModalEditTask(task: TaskJsonld) {
const modalRefTaskEdit = this.modalService.open(NewTaskComponent, this.modalOptions); const modalRefTaskEdit = this.modalService.open(NewTaskComponent, this.modalOptions);
modalRefTaskEdit.componentInstance.task = task; modalRefTaskEdit.componentInstance.task = task;
modalRefTaskEdit.componentInstance.dueAtValue = ApiConverter.convertDate(task.dueAt);
modalRefTaskEdit.componentInstance.submit.subscribe((modalStatus: ModalStatus) => { modalRefTaskEdit.componentInstance.submit.subscribe((modalStatus: ModalStatus) => {
if (modalStatus === ModalStatus.Submitted) { if (modalStatus === ModalStatus.Submitted) {
modalRefTaskEdit.dismiss(); modalRefTaskEdit.dismiss();
this.getPostsData();
this.getTasksData();
} }
}); });
} }


+ 2
- 5
matsen-tool/src/app/tasks/new-task/new-task.component.html Wyświetl plik

@@ -28,12 +28,9 @@
</div> </div>
</div> </div>





<div class="mb-3"> <div class="mb-3">
<label for="dueAt" class="form-label">{{'form.due-date' | translate}}:</label>
<input type="date" class="form-control" id="dueAt" formControlName="dueAt" />
<label for="dueAtValue" class="form-label">{{'form.due-date' | translate}}:</label>
<input type="datetime-local" value="{{ dueAtValue }}" class="form-control" id="dueAtValue" (change)="onDueAtChange($event)" />
<div class="form-text" *ngIf="taskForm.get('dueAt')?.invalid && taskForm.get('dueAt')?.touched"> <div class="form-text" *ngIf="taskForm.get('dueAt')?.invalid && taskForm.get('dueAt')?.touched">
{{'form.due-date' | translate}} {{'form.mandatory' | translate}}. {{'form.due-date' | translate}} {{'form.mandatory' | translate}}.
</div> </div>


+ 28
- 10
matsen-tool/src/app/tasks/new-task/new-task.component.ts Wyświetl plik

@@ -1,5 +1,5 @@
import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core'; import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';
import {TaskJsonld, TaskService} from "@app/core/api/v1";
import {TaskJsonld, TaskService, UserJsonld, UserService} from "@app/core/api/v1";
import {ModalStatus} from "@app/_helpers/modal.states"; import {ModalStatus} from "@app/_helpers/modal.states";
import {FormGroupInitializer} from "@app/_helpers/formgroup.initializer"; import {FormGroupInitializer} from "@app/_helpers/formgroup.initializer";
import {FormGroup} from "@angular/forms"; import {FormGroup} from "@angular/forms";
@@ -19,12 +19,13 @@ export class NewTaskComponent implements OnInit {


protected taskForm: FormGroup; protected taskForm: FormGroup;
protected taskSub: Subscription; protected taskSub: Subscription;
protected dueAtValue: string;


protected users = [ protected users = [
{ id: '/api/users/1', name: 'Daniel Knudsen' },
{ id: '/api/users/2', name: 'Florian Eisenmenger' },
{ id: '/api/users/3', name: 'Francis Donelly' },
{ id: '/api/users/4', name: 'Jaylen Schmitt' },
{ id: '/api/users/63', name: 'Daniel Knudsen' },
{ id: '/api/users/64', name: 'Florian Eisenmenger' },
{ id: '/api/users/65', name: 'Francis Donielly' },
{ id: '/api/users/66', name: 'Jaylen Schmiett' },
]; ];


protected formatter = (apiData: any) => apiData.name; protected formatter = (apiData: any) => apiData.name;
@@ -34,25 +35,42 @@ export class NewTaskComponent implements OnInit {
debounceTime(200), debounceTime(200),
distinctUntilChanged(), distinctUntilChanged(),
filter((term) => term.length >= 2), filter((term) => term.length >= 2),
map((term) => this.users.filter((state) => new RegExp(term, 'mi').test(state.name)).slice(0, 10)),
map((term) => this.users.filter((user) => new RegExp(term, 'mi').test(user.name)).slice(0, 10)),
// map((term) => {
// this.userService.usersGetCollection(0, 50, term, term).subscribe(data => {
// const users: Array<UserJsonld> = data["hydra:member"];
// let res: { id: any; name: any }[] = [];
// users.forEach(user => {
// res.push({
// id: user.id,
// name: user.firstName + " " + user.lastName
// });
// });
// return res;
// });
// })
); );


constructor( constructor(
private taskService: TaskService
private taskService: TaskService,
private userService: UserService
) { ) {
this.taskForm = taskForm; this.taskForm = taskForm;
this.taskSub = new Subscription(); this.taskSub = new Subscription();
this.dueAtValue = "";
} }


ngOnInit(): void { ngOnInit(): void {
console.log(this.task);
console.log(this.dueAtValue);
this.taskForm = FormGroupInitializer.initFormGroup(this.taskForm, this.task); this.taskForm = FormGroupInitializer.initFormGroup(this.taskForm, this.task);
} }


onAssignedToSelect(selectedItem: any): void { onAssignedToSelect(selectedItem: any): void {
this.taskForm.get('assignedTo')?.setValue(selectedItem.item.id); this.taskForm.get('assignedTo')?.setValue(selectedItem.item.id);
console.log(selectedItem);
console.log(this.taskForm);
}

onDueAtChange(selectedItem: any) {
this.taskForm.get('dueAt')?.setValue(selectedItem.target.value);
} }


onSubmit() { onSubmit() {


Ładowanie…
Anuluj
Zapisz