Merge pull request #136 in TEA/mina-sidor-fa-web from bugfix/TV-692 to next
Squashed commit of the following: commit 6a676d613edfef092ec860200e7b585db5af04b8 Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se> Date: Mon Sep 27 14:11:14 2021 +0200 Added changelog commit ec1f9adf30e985db625021d4a5b6d8d8a42fd559 Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se> Date: Mon Sep 27 13:12:19 2021 +0200 Updated sokandeId to genomforandeReferens to fetch data for deltagare
This commit is contained in:
48
CHANGELOG.md
48
CHANGELOG.md
@@ -1,31 +1,37 @@
|
||||
## 2.0.1
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **deltagare:** Now fetching data using "genomforandeReferens" instead of "sokandeId" to avoid wrong data. [TV-692](https://jira.arbetsformedlingen.se/browse/TV-692)
|
||||
|
||||
## [2.0.0](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/compare/diff?targetBranch=refs%2Ftags%2Fv1.5.0&sourceBranch=refs%2Ftags%2Fv2.0.0) (2021-09-24)
|
||||
|
||||
### Features
|
||||
|
||||
* **avvikelserapport:** added max width to select and text area elements. [TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-max-width ([ed2e19a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/ed2e19a47d79701ce7030118e8bc68683271ffd9))
|
||||
* **avrop:** Changed intro-text inside avrop. ([TV-518](https://jira.arbetsformedlingen.se/browse/TV-518)) ([fc2916f](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/fc2916fb0d6e37fc71df96b5e008fccd43075bd1))
|
||||
* **avvikelserapport:** changed router navigation, cleanup /[TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-2 to develop ([2236cc9](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/2236cc9ec85f2f3420f01d4ea5b8002d778149e6)), closes [TV-407-2](https://jira.arbetsformedlingen.se/browse/TV-407-2) [TV-407-2](https://jira.arbetsformedlingen.se/browse/TV-407-2)
|
||||
* **avvikelserapport:** fixed validation for dayOrPartOfDay [TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-fix ([71b00c6](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/71b00c6e90fdb553af0f6accc881e41f8716b21b))
|
||||
* **avrop:** Implemented custom filters for avrop. ([TV-344](https://jira.arbetsformedlingen.se/browse/TV-344)) ([1feed30](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/1feed30f6fdad8cfff507c96dae86bb4fa82279c))
|
||||
* **employees:** Implemented loader inside employees-list when pagination/filtering. ([TV-597](https://jira.arbetsformedlingen.se/browse/TV-597)) ([bc8b09d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/bc8b09d0dcfdcd53dfa930a76e29dc216e76346f))
|
||||
* **deltagare:** Implemented role-check and fetching data when needed. ([TV-639](https://jira.arbetsformedlingen.se/browse/TV-639)) ([62fb35c](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/62fb35ca7e685675c0caf33734dd68cf8225d93e))
|
||||
* **avvikelserapport:** implementerat report layout för avvikelserapport. [TV-667](https://jira.arbetsformedlingen.se/browse/TV-667) ([454699b](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/454699b78571e98d924a9242f30fcf8325a51621)), closes [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [origin/feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-624](https://jira.arbetsformedlingen.se/browse/TV-624)
|
||||
* **Deltagarlista:** Lade till startdatum, slutdatum, avbrott samt Visa händelser, som öppnar en modal med en deltagares händelser ([TV-606](https://jira.arbetsformedlingen.se/browse/TV-606)) ([68c5c8d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/68c5c8d4a8fdcf4a497abb85de9298c26fdafcaf))
|
||||
* **deltagare:** Moved around content between tabs inside deltagare-card. ([TV-638](https://jira.arbetsformedlingen.se/browse/TV-638)) ([14739fb](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/14739fb9e1d06897e5805d1f5c3c5a5194be80c3))
|
||||
* **employee:** Now possible to edit employee and remove data, also changed validation-rules. ([TV-631](https://jira.arbetsformedlingen.se/browse/TV-631)) ([1bbfd57](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/1bbfd57910a1cb19f94cec4feab6c85ac1ffd166))
|
||||
* **avvikelserapport:** show selected questions in preview, renaming. [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633)-2 ([71a98f5](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/71a98f52573edcacd6a1125e0a7c23473bfdec4d)), closes [TV-633-2](https://jira.arbetsformedlingen.se/browse/TV-633-2) [TV-633-2](https://jira.arbetsformedlingen.se/browse/TV-633-2)
|
||||
* **employee-invite:** Updated validation of email-addresses and changed text for assigned users. ([TV-628](https://jira.arbetsformedlingen.se/browse/TV-628)) ([84f8737](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/84f8737ec4da773f1256a5673aaf70860462cfa9))
|
||||
* Uppdatering av rolltexter ([5c30fc7](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/5c30fc7e5070c65f35f32ea817d566dbd6148058))
|
||||
* **employee:** Utförande verksamheter select is now wrapping long text instead of ellipsis. Also when toggling the "Alla utförande verksamheter" checkbox the select is resetted. ([TV-620](https://jira.arbetsformedlingen.se/browse/TV-620)) ([91eeb1d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/91eeb1d8dc7f50a429ef2cd988c16be732225acb))
|
||||
- **avvikelserapport:** added max width to select and text area elements. [TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-max-width ([ed2e19a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/ed2e19a47d79701ce7030118e8bc68683271ffd9))
|
||||
- **avrop:** Changed intro-text inside avrop. ([TV-518](https://jira.arbetsformedlingen.se/browse/TV-518)) ([fc2916f](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/fc2916fb0d6e37fc71df96b5e008fccd43075bd1))
|
||||
- **avvikelserapport:** changed router navigation, cleanup /[TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-2 to develop ([2236cc9](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/2236cc9ec85f2f3420f01d4ea5b8002d778149e6)), closes [TV-407-2](https://jira.arbetsformedlingen.se/browse/TV-407-2) [TV-407-2](https://jira.arbetsformedlingen.se/browse/TV-407-2)
|
||||
- **avvikelserapport:** fixed validation for dayOrPartOfDay [TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-fix ([71b00c6](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/71b00c6e90fdb553af0f6accc881e41f8716b21b))
|
||||
- **avrop:** Implemented custom filters for avrop. ([TV-344](https://jira.arbetsformedlingen.se/browse/TV-344)) ([1feed30](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/1feed30f6fdad8cfff507c96dae86bb4fa82279c))
|
||||
- **employees:** Implemented loader inside employees-list when pagination/filtering. ([TV-597](https://jira.arbetsformedlingen.se/browse/TV-597)) ([bc8b09d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/bc8b09d0dcfdcd53dfa930a76e29dc216e76346f))
|
||||
- **deltagare:** Implemented role-check and fetching data when needed. ([TV-639](https://jira.arbetsformedlingen.se/browse/TV-639)) ([62fb35c](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/62fb35ca7e685675c0caf33734dd68cf8225d93e))
|
||||
- **avvikelserapport:** implementerat report layout för avvikelserapport. [TV-667](https://jira.arbetsformedlingen.se/browse/TV-667) ([454699b](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/454699b78571e98d924a9242f30fcf8325a51621)), closes [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [origin/feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-624](https://jira.arbetsformedlingen.se/browse/TV-624)
|
||||
- **Deltagarlista:** Lade till startdatum, slutdatum, avbrott samt Visa händelser, som öppnar en modal med en deltagares händelser ([TV-606](https://jira.arbetsformedlingen.se/browse/TV-606)) ([68c5c8d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/68c5c8d4a8fdcf4a497abb85de9298c26fdafcaf))
|
||||
- **deltagare:** Moved around content between tabs inside deltagare-card. ([TV-638](https://jira.arbetsformedlingen.se/browse/TV-638)) ([14739fb](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/14739fb9e1d06897e5805d1f5c3c5a5194be80c3))
|
||||
- **employee:** Now possible to edit employee and remove data, also changed validation-rules. ([TV-631](https://jira.arbetsformedlingen.se/browse/TV-631)) ([1bbfd57](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/1bbfd57910a1cb19f94cec4feab6c85ac1ffd166))
|
||||
- **avvikelserapport:** show selected questions in preview, renaming. [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633)-2 ([71a98f5](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/71a98f52573edcacd6a1125e0a7c23473bfdec4d)), closes [TV-633-2](https://jira.arbetsformedlingen.se/browse/TV-633-2) [TV-633-2](https://jira.arbetsformedlingen.se/browse/TV-633-2)
|
||||
- **employee-invite:** Updated validation of email-addresses and changed text for assigned users. ([TV-628](https://jira.arbetsformedlingen.se/browse/TV-628)) ([84f8737](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/84f8737ec4da773f1256a5673aaf70860462cfa9))
|
||||
- Uppdatering av rolltexter ([5c30fc7](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/5c30fc7e5070c65f35f32ea817d566dbd6148058))
|
||||
- **employee:** Utförande verksamheter select is now wrapping long text instead of ellipsis. Also when toggling the "Alla utförande verksamheter" checkbox the select is resetted. ([TV-620](https://jira.arbetsformedlingen.se/browse/TV-620)) ([91eeb1d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/91eeb1d8dc7f50a429ef2cd988c16be732225acb))
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **employees:** Currentpage is now set to default page inside pagination-component. ([TV-596](https://jira.arbetsformedlingen.se/browse/TV-596)) ([9155cdc](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/9155cdc9ac343168e25afc4fd2fa9d0920ba45ac))
|
||||
* Fix mock-api login functionality ([52cd7ad](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/52cd7ad6f4282b737756bf1b6d8a2e946218378b))
|
||||
* **edit-employee:** Removed duplicate border-color on utförande verksamheter button which falsly overrode styling. ([TV-590](https://jira.arbetsformedlingen.se/browse/TV-590)) ([0f60300](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/0f60300d972766ea790f375206e6d6c40468311b))
|
||||
* Sidans titel ändras nu korrekt när man går tillbaka till startsidan. ([TV-643](https://jira.arbetsformedlingen.se/browse/TV-643)) ([0302b1a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/0302b1a1ad672351a702878a411d5bce988af6ba))
|
||||
* **my-account:** Typo fix inside my-account. ([TV-593](https://jira.arbetsformedlingen.se/browse/TV-593)) ([3bfb8d8](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/3bfb8d8be14b573b59986f6304b8ee82b8269eed))
|
||||
* Ändra ordning på sidornas title så att sidans innehåll kommer först ([TV-644](https://jira.arbetsformedlingen.se/browse/TV-644)) ([caf235a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/caf235a2b400e244d4134667385612f8f786d9a9))
|
||||
- **employees:** Currentpage is now set to default page inside pagination-component. ([TV-596](https://jira.arbetsformedlingen.se/browse/TV-596)) ([9155cdc](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/9155cdc9ac343168e25afc4fd2fa9d0920ba45ac))
|
||||
- Fix mock-api login functionality ([52cd7ad](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/52cd7ad6f4282b737756bf1b6d8a2e946218378b))
|
||||
- **edit-employee:** Removed duplicate border-color on utförande verksamheter button which falsly overrode styling. ([TV-590](https://jira.arbetsformedlingen.se/browse/TV-590)) ([0f60300](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/0f60300d972766ea790f375206e6d6c40468311b))
|
||||
- Sidans titel ändras nu korrekt när man går tillbaka till startsidan. ([TV-643](https://jira.arbetsformedlingen.se/browse/TV-643)) ([0302b1a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/0302b1a1ad672351a702878a411d5bce988af6ba))
|
||||
- **my-account:** Typo fix inside my-account. ([TV-593](https://jira.arbetsformedlingen.se/browse/TV-593)) ([3bfb8d8](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/3bfb8d8be14b573b59986f6304b8ee82b8269eed))
|
||||
- Ändra ordning på sidornas title så att sidans innehåll kommer först ([TV-644](https://jira.arbetsformedlingen.se/browse/TV-644)) ([caf235a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/caf235a2b400e244d4134667385612f8f786d9a9))
|
||||
|
||||
## 1.5.1
|
||||
|
||||
|
||||
@@ -30,7 +30,9 @@
|
||||
<tbody>
|
||||
<tr class="deltagare-list__row" *ngFor="let singleDeltagare of deltagare">
|
||||
<th scope="row">
|
||||
<a [routerLink]="singleDeltagare.id" class="deltagare-list__link">{{ singleDeltagare.fullName }}</a>
|
||||
<a [routerLink]="singleDeltagare.genomforandeReferens" class="deltagare-list__link"
|
||||
>{{ singleDeltagare.fullName }}</a
|
||||
>
|
||||
</th>
|
||||
<td>{{ singleDeltagare.tjanst }}</td>
|
||||
<td>{{ singleDeltagare.utforandeVerksamhet }}</td>
|
||||
|
||||
@@ -8,18 +8,21 @@ const routes: Routes = [
|
||||
component: DeltagareComponent,
|
||||
},
|
||||
{
|
||||
path: ':deltagareId',
|
||||
path: ':genomforandeReferens',
|
||||
data: { title: 'Deltagareinformation' },
|
||||
loadChildren: () => import('./pages/deltagare-card/deltagare-card.module').then(m => m.DeltagareCardModule),
|
||||
},
|
||||
{
|
||||
path: 'rapportera/:deltagareId',
|
||||
path: 'rapportera/:genomforandeReferens',
|
||||
data: { title: 'Skapa rapport' },
|
||||
// eslint-disable-next-line max-len
|
||||
loadChildren: () => import('./pages/deltagare-report/pages/deltagare-avvikelse/deltagare-avvikelse.module').then(m => m.DeltagareAvvikelseModule),
|
||||
loadChildren: () =>
|
||||
import('./pages/deltagare-report/pages/deltagare-avvikelse/deltagare-avvikelse.module').then(
|
||||
m => m.DeltagareAvvikelseModule
|
||||
),
|
||||
},
|
||||
{
|
||||
path: 'planering/:deltagareId',
|
||||
path: 'planering/:genomforandeReferens',
|
||||
data: { title: 'Skapa gemensam planering' },
|
||||
loadChildren: () =>
|
||||
import('./pages/deltagare-report/deltagare-gemensam-planering/deltagare-gemensam-planering.module').then(
|
||||
@@ -27,7 +30,7 @@ const routes: Routes = [
|
||||
),
|
||||
},
|
||||
{
|
||||
path: 'periodisk-redovisning/:deltagareId',
|
||||
path: 'periodisk-redovisning/:genomforandeReferens',
|
||||
data: { title: 'Skapa periodisk redovisning' },
|
||||
loadChildren: () =>
|
||||
import('./pages/deltagare-report/pages/periodisk-redovisning/periodisk-redovisning.module').then(
|
||||
@@ -40,4 +43,4 @@ const routes: Routes = [
|
||||
imports: [RouterModule.forChild(routes)],
|
||||
exports: [RouterModule],
|
||||
})
|
||||
export class DeltagareRoutingModule { }
|
||||
export class DeltagareRoutingModule {}
|
||||
|
||||
@@ -16,10 +16,13 @@
|
||||
Du måste välja en rapporttyp
|
||||
</digi-form-validation-message>
|
||||
</form>
|
||||
<div class="deltagare-tab-reports__cta-wrapper" *ngIf="currentDeltagareId$ | async as currentDeltagareId">
|
||||
<div
|
||||
class="deltagare-tab-reports__cta-wrapper"
|
||||
*ngIf="currentGenomforandeReferens$ | async as currentGenomforandeReferens"
|
||||
>
|
||||
<digi-ng-link-button
|
||||
afText="Skapa ny rapport"
|
||||
(click)="onFormSubmitted($event, reportsFormControl.value, currentDeltagareId)"
|
||||
(click)="onFormSubmitted($event, reportsFormControl.value, currentGenomforandeReferens)"
|
||||
></digi-ng-link-button>
|
||||
</div>
|
||||
<div>
|
||||
|
||||
@@ -19,13 +19,21 @@ export class DeltagareTabReportsComponent {
|
||||
private _type$ = new BehaviorSubject<FormSelectItem>(null);
|
||||
readonly reportsFormControlName = 'reports';
|
||||
|
||||
public currentDeltagareId$: Observable<string> = this.activatedRoute.params.pipe(
|
||||
map(params => params.deltagareId as string),
|
||||
distinctUntilChanged(([prevDeltagareId], [currDeltagareId]) => prevDeltagareId === currDeltagareId)
|
||||
public currentGenomforandeReferens$: Observable<string> = this.activatedRoute.params.pipe(
|
||||
map(params => params.genomforandeReferens as string),
|
||||
distinctUntilChanged(
|
||||
([prevGenomforandeReferens], [currGenomforandeReferens]) => prevGenomforandeReferens === currGenomforandeReferens
|
||||
)
|
||||
);
|
||||
|
||||
reportsData$: Observable<ReportsData> = combineLatest([this.currentDeltagareId$, this._limit$, this._page$]).pipe(
|
||||
switchMap(([deltagareId, limit, page]) => this.deltagareCardService.fetchReports$(limit, page, deltagareId)),
|
||||
reportsData$: Observable<ReportsData> = combineLatest([
|
||||
this.currentGenomforandeReferens$,
|
||||
this._limit$,
|
||||
this._page$,
|
||||
]).pipe(
|
||||
switchMap(([genomforandeReferens, limit, page]) =>
|
||||
this.deltagareCardService.fetchReports$(limit, page, genomforandeReferens)
|
||||
),
|
||||
shareReplay(1)
|
||||
);
|
||||
|
||||
@@ -51,20 +59,20 @@ export class DeltagareTabReportsComponent {
|
||||
return this.reportPickerFormGroup?.get(this.reportsFormControlName);
|
||||
}
|
||||
|
||||
onFormSubmitted(event: Event, reportType: string, deltagareId: string): void {
|
||||
onFormSubmitted(event: Event, reportType: string, genomforandeReferens: string): void {
|
||||
event.preventDefault();
|
||||
|
||||
switch (reportType) {
|
||||
case 'planering':
|
||||
if (this.reportsFormControl.valid) {
|
||||
this.router.navigate(['/deltagare/planering', deltagareId]).catch(error => {
|
||||
this.router.navigate(['/deltagare/planering', genomforandeReferens]).catch(error => {
|
||||
console.error(error);
|
||||
});
|
||||
}
|
||||
break;
|
||||
case 'avvikelse':
|
||||
if (this.reportsFormControl.valid) {
|
||||
this.router.navigate(['/deltagare/rapportera', deltagareId]).catch(error => {
|
||||
this.router.navigate(['/deltagare/rapportera', genomforandeReferens]).catch(error => {
|
||||
console.error(error);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -28,40 +28,42 @@ export class DeltagareCardComponent {
|
||||
private _userRoles: Role[] = this.userService.userRolesSnapshot;
|
||||
|
||||
public activeTab$: Observable<string> = this._activeTab$.asObservable();
|
||||
public currentDeltagareId$: Observable<string> = this.activatedRoute.params.pipe(
|
||||
map(params => params.deltagareId as string),
|
||||
distinctUntilChanged(([prevDeltagareId], [currDeltagareId]) => prevDeltagareId === currDeltagareId)
|
||||
public currentGenomforandeReferens$: Observable<string> = this.activatedRoute.params.pipe(
|
||||
map(params => params.genomforandeReferens as string),
|
||||
distinctUntilChanged(
|
||||
([prevGenomforandeReferens], [currGenomforandeReferens]) => prevGenomforandeReferens === currGenomforandeReferens
|
||||
)
|
||||
);
|
||||
contactInformation$: Observable<ContactInformation> = combineLatest([this.currentDeltagareId$]).pipe(
|
||||
switchMap(([deltagareId]) => this.deltagareCardService.fetchContactInformation$(deltagareId)),
|
||||
contactInformation$: Observable<ContactInformation> = this.currentGenomforandeReferens$.pipe(
|
||||
switchMap(genomforandeReferens => this.deltagareCardService.fetchContactInformation$(genomforandeReferens)),
|
||||
shareReplay(1)
|
||||
);
|
||||
avropInformation$: Observable<Avrop> = combineLatest([this.currentDeltagareId$, this._activeTab$]).pipe(
|
||||
switchMap(([deltagareId]) => this.deltagareCardService.fetchAvropInformation$(deltagareId)),
|
||||
avropInformation$: Observable<Avrop> = this.currentGenomforandeReferens$.pipe(
|
||||
switchMap(genomforandeReferens => this.deltagareCardService.fetchAvropInformation$(genomforandeReferens)),
|
||||
shareReplay(1)
|
||||
);
|
||||
workExperiences$: Observable<WorkExperience[]> = this.currentDeltagareId$.pipe(
|
||||
switchMap(([deltagareId]) => this.deltagareCardService.fetchWorkExperiences$(deltagareId)),
|
||||
workExperiences$: Observable<WorkExperience[]> = this.currentGenomforandeReferens$.pipe(
|
||||
switchMap(genomforandeReferens => this.deltagareCardService.fetchWorkExperiences$(genomforandeReferens)),
|
||||
shareReplay(1)
|
||||
);
|
||||
highestEducation$: Observable<HighestEducation> = this.currentDeltagareId$.pipe(
|
||||
switchMap(([deltagareId]) => this.deltagareCardService.fetchHighestEducation$(deltagareId)),
|
||||
highestEducation$: Observable<HighestEducation> = this.currentGenomforandeReferens$.pipe(
|
||||
switchMap(genomforandeReferens => this.deltagareCardService.fetchHighestEducation$(genomforandeReferens)),
|
||||
shareReplay(1)
|
||||
);
|
||||
educations$: Observable<Education[]> = this.currentDeltagareId$.pipe(
|
||||
switchMap(([deltagareId]) => this.deltagareCardService.fetchEducations$(deltagareId)),
|
||||
educations$: Observable<Education[]> = this.currentGenomforandeReferens$.pipe(
|
||||
switchMap(genomforandeReferens => this.deltagareCardService.fetchEducations$(genomforandeReferens)),
|
||||
shareReplay(1)
|
||||
);
|
||||
driversLicense$: Observable<DriversLicense> = this.currentDeltagareId$.pipe(
|
||||
switchMap(([deltagareId]) => this.deltagareCardService.fetchDriversLicense$(deltagareId)),
|
||||
driversLicense$: Observable<DriversLicense> = this.currentGenomforandeReferens$.pipe(
|
||||
switchMap(genomforandeReferens => this.deltagareCardService.fetchDriversLicense$(genomforandeReferens)),
|
||||
shareReplay(1)
|
||||
);
|
||||
workLanguages$: Observable<string[]> = this.currentDeltagareId$.pipe(
|
||||
switchMap(([deltagareId]) => this.deltagareCardService.fetchWorkLanguages$(deltagareId)),
|
||||
workLanguages$: Observable<string[]> = this.currentGenomforandeReferens$.pipe(
|
||||
switchMap(genomforandeReferens => this.deltagareCardService.fetchWorkLanguages$(genomforandeReferens)),
|
||||
shareReplay(1)
|
||||
);
|
||||
disabilities$: Observable<Disability[]> = this.currentDeltagareId$.pipe(
|
||||
switchMap(([deltagareId]) => this.deltagareCardService.fetchDisabilities$(deltagareId)),
|
||||
disabilities$: Observable<Disability[]> = this.currentGenomforandeReferens$.pipe(
|
||||
switchMap(genomforandeReferens => this.deltagareCardService.fetchDisabilities$(genomforandeReferens)),
|
||||
shareReplay(1)
|
||||
);
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ import {
|
||||
EndTimeIsRequiredCheck,
|
||||
MotiveringIsRequiredCheck,
|
||||
OrsakerIsRequiredCheck,
|
||||
StartTimeIsRequiredCheck
|
||||
StartTimeIsRequiredCheck,
|
||||
} from '@msfa-utils/validators/avvikelse-form-validator';
|
||||
import { RequiredValidator } from '@msfa-utils/validators/required.validator';
|
||||
import { BehaviorSubject, Observable } from 'rxjs';
|
||||
@@ -35,14 +35,14 @@ import { avvikelseAlternatives, dayOrPartOfDay } from './report-alternatives';
|
||||
selector: 'msfa-deltagare-avvikelse',
|
||||
templateUrl: './deltagare-avvikelse.component.html',
|
||||
styleUrls: ['./deltagare-avvikelse.component.scss'],
|
||||
changeDetection: ChangeDetectionStrategy.OnPush
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
})
|
||||
export class DeltagareAvvikelseComponent implements OnInit {
|
||||
readonly alternativeFormControlName = 'alternative';
|
||||
readonly descriptionFormControlName = 'description'
|
||||
readonly descriptionFormControlName = 'description';
|
||||
readonly dateFormControlName = 'date';
|
||||
readonly dayOrPartOfDayFormControlName = 'dayOrPartOfDay';
|
||||
readonly orsakerFormControlName = 'orsaker'
|
||||
readonly orsakerFormControlName = 'orsaker';
|
||||
readonly andraKandaOrsakerFormControlName = 'andraKandaOrsaker';
|
||||
readonly fraga1FormControlName = 'fraga1';
|
||||
readonly fraga2FormControlName = 'fraga2';
|
||||
@@ -52,10 +52,11 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
private _showSuccessNotification$ = new BehaviorSubject<boolean>(false);
|
||||
private _showDangerNotification$ = new BehaviorSubject<boolean>(false);
|
||||
|
||||
contactInformation$: Observable<ContactInformationCompact> = this.activatedRoute.params
|
||||
.pipe(
|
||||
switchMap(({ deltagareId }) => this.deltagareAvvikelseService.getContactInformationCompact$(deltagareId))
|
||||
contactInformation$: Observable<ContactInformationCompact> = this.activatedRoute.params.pipe(
|
||||
switchMap(({ genomforandeReferens }) =>
|
||||
this.deltagareAvvikelseService.getContactInformationCompact$(genomforandeReferens)
|
||||
)
|
||||
);
|
||||
franvaroOrsaker$: Observable<OrsaksKoderFranvaro[]>;
|
||||
avvikelseOrsaker$: Observable<OrsaksKoderAvvikelse[]>;
|
||||
andraKandaOrsaker$: Observable<KandaAvvikelseKoder[]>;
|
||||
@@ -77,47 +78,51 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
constructor(
|
||||
private deltagareAvvikelseService: DeltagareAvvikelseService,
|
||||
private router: Router,
|
||||
private activatedRoute: ActivatedRoute) { }
|
||||
private activatedRoute: ActivatedRoute
|
||||
) {}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.contactInformation$
|
||||
.pipe(
|
||||
first(),
|
||||
)
|
||||
.subscribe(contactInformation => {
|
||||
this.contactInformation = contactInformation;
|
||||
});
|
||||
this.contactInformation$.pipe(first()).subscribe(contactInformation => {
|
||||
this.contactInformation = contactInformation;
|
||||
});
|
||||
|
||||
this.avvikelseFormGroup = new FormGroup({
|
||||
alternative: new FormControl(null, [RequiredValidator()]),
|
||||
description: new FormControl(''),
|
||||
date: new FormControl(this.todayDate),
|
||||
dayOrPartOfDay: new FormControl(null),
|
||||
orsakerFormGroup: new FormGroup({
|
||||
orsaker: new FormControl([]),
|
||||
andraKandaOrsaker: new FormControl([])
|
||||
}),
|
||||
fragorFormGroup: new FormGroup({
|
||||
fraga1: new FormControl(''),
|
||||
fraga2: new FormControl('')
|
||||
}),
|
||||
timepickerFormGroup: new FormGroup({
|
||||
startTime: new FormControl(''),
|
||||
endTime: new FormControl('')
|
||||
})
|
||||
}, {
|
||||
validators:
|
||||
[
|
||||
DescriptionIsRequiredCheck.CheckIfRequired('description', 'orsakerFormGroup', 'andraKandaOrsaker', KandaOrsakerEnum.AnnanOrsak),
|
||||
this.avvikelseFormGroup = new FormGroup(
|
||||
{
|
||||
alternative: new FormControl(null, [RequiredValidator()]),
|
||||
description: new FormControl(''),
|
||||
date: new FormControl(this.todayDate),
|
||||
dayOrPartOfDay: new FormControl(null),
|
||||
orsakerFormGroup: new FormGroup({
|
||||
orsaker: new FormControl([]),
|
||||
andraKandaOrsaker: new FormControl([]),
|
||||
}),
|
||||
fragorFormGroup: new FormGroup({
|
||||
fraga1: new FormControl(''),
|
||||
fraga2: new FormControl(''),
|
||||
}),
|
||||
timepickerFormGroup: new FormGroup({
|
||||
startTime: new FormControl(''),
|
||||
endTime: new FormControl(''),
|
||||
}),
|
||||
},
|
||||
{
|
||||
validators: [
|
||||
DescriptionIsRequiredCheck.CheckIfRequired(
|
||||
'description',
|
||||
'orsakerFormGroup',
|
||||
'andraKandaOrsaker',
|
||||
KandaOrsakerEnum.AnnanOrsak
|
||||
),
|
||||
OrsakerIsRequiredCheck.CheckIfRequired('orsakerFormGroup', 'orsaker'),
|
||||
AnnanKandOrsakeIsRequiredCheck.CheckIfRequired('orsakerFormGroup', 'andraKandaOrsaker'),
|
||||
DateIsRequiredCheck.CheckIfRequired('date'),
|
||||
DayOrPartOfDayIsRequiredCheck.CheckIfRequired('dayOrPartOfDay'),
|
||||
StartTimeIsRequiredCheck.CheckIfRequired('timepickerFormGroup', 'startTime'),
|
||||
EndTimeIsRequiredCheck.CheckIfRequired('timepickerFormGroup', 'endTime'),
|
||||
MotiveringIsRequiredCheck.CheckIfRequired('fraga1')
|
||||
]
|
||||
})
|
||||
MotiveringIsRequiredCheck.CheckIfRequired('fraga1'),
|
||||
],
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
get alternativeFormControl(): AbstractControl | undefined {
|
||||
@@ -168,22 +173,23 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
arbetssokande: {
|
||||
personnummer: this.contactInformation.personnummer.toString(),
|
||||
fornamn: this.contactInformation.fornamn.toString(),
|
||||
efternamn: this.contactInformation.efternamn.toString()
|
||||
efternamn: this.contactInformation.efternamn.toString(),
|
||||
},
|
||||
sokandeId: +this.activatedRoute.snapshot.params['deltagareId']
|
||||
}
|
||||
sokandeId: +this.activatedRoute.snapshot.params['genomforandeReferens'],
|
||||
};
|
||||
|
||||
if (this.alternativeFormControl.value as string === Alternative.AVVIKELSE) {
|
||||
if ((this.alternativeFormControl.value as string) === Alternative.AVVIKELSE) {
|
||||
postAvvikelse['avvikelsealternativ'] = this.avvikelse;
|
||||
} else if (this.alternativeFormControl.value as string == Alternative.FRANVARO) {
|
||||
} else if ((this.alternativeFormControl.value as string) == Alternative.FRANVARO) {
|
||||
postAvvikelse['franvaro'] = this.franvaro;
|
||||
}
|
||||
|
||||
this.deltagareAvvikelseService.createAvvikelse$(postAvvikelse, this.alternativeFormControl.value as string)
|
||||
this.deltagareAvvikelseService
|
||||
.createAvvikelse$(postAvvikelse, this.alternativeFormControl.value as string)
|
||||
.subscribe({
|
||||
error: () => this._showDangerNotification$.next(true),
|
||||
next: () => this._showSuccessNotification$.next(true),
|
||||
complete: () => this.avvikelseFormGroup.reset()
|
||||
complete: () => this.avvikelseFormGroup.reset(),
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -193,17 +199,17 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
avvikelseorsakskod: this.orsakerFormControl.value as string,
|
||||
datum: this.dateFormControl.value as string,
|
||||
heldag: this.dayOrPartOfDayFormControl.value === DayOrPartOfDay.HELDAG ? true : false,
|
||||
starttid: this.startTimeFormControl.value as string || '9:00',
|
||||
sluttid: this.endTimeFormControl.value as string || '16:00',
|
||||
starttid: (this.startTimeFormControl.value as string) || '9:00',
|
||||
sluttid: (this.endTimeFormControl.value as string) || '16:00',
|
||||
forvantad_narvaro: {
|
||||
starttid: '',
|
||||
sluttid: ''
|
||||
sluttid: '',
|
||||
},
|
||||
alternativ_for_kanda_orsaker: {
|
||||
typ: this.andraKandaOrsakerFormControl.value as string || '',
|
||||
motivering: this.descriptionFormControl.value as string
|
||||
}
|
||||
}
|
||||
typ: (this.andraKandaOrsakerFormControl.value as string) || '',
|
||||
motivering: this.descriptionFormControl.value as string,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
get avvikelse(): AvvikelseAlternativ {
|
||||
@@ -211,63 +217,64 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
avvikelseorsakskod: this.orsakerFormControl.value as string,
|
||||
frageformular: [
|
||||
{
|
||||
fraga: this.avvikelseFormGroup.get('orsakerFormGroup').get('orsaker').value as string + '_1',
|
||||
svar: this.fraga1FormControl.value as string
|
||||
fraga: (this.avvikelseFormGroup.get('orsakerFormGroup').get('orsaker').value as string) + '_1',
|
||||
svar: this.fraga1FormControl.value as string,
|
||||
},
|
||||
{
|
||||
fraga: this.fraga2FormControl.value as string !== '' ?
|
||||
this.avvikelseFormGroup.get('orsakerFormGroup').get('orsaker').value as string + '_2' : '',
|
||||
svar: this.fraga2FormControl.value as string
|
||||
}
|
||||
fraga:
|
||||
(this.fraga2FormControl.value as string) !== ''
|
||||
? (this.avvikelseFormGroup.get('orsakerFormGroup').get('orsaker').value as string) + '_2'
|
||||
: '',
|
||||
svar: this.fraga2FormControl.value as string,
|
||||
},
|
||||
],
|
||||
rapporteringsdatum: this.dateFormControl.value as string
|
||||
}
|
||||
rapporteringsdatum: this.dateFormControl.value as string,
|
||||
};
|
||||
}
|
||||
|
||||
setAlternative(): void {
|
||||
if (this.alternativeFormControl.value as string == Alternative.FRANVARO) {
|
||||
if ((this.alternativeFormControl.value as string) == Alternative.FRANVARO) {
|
||||
this.franvaroOrsaker$ = this.deltagareAvvikelseService.getOrsaksKoderFranvaro$();
|
||||
this.andraKandaOrsaker$ = this.deltagareAvvikelseService.getAndraKandaOrsaker$();
|
||||
}
|
||||
|
||||
if (this.alternativeFormControl.value as string == Alternative.AVVIKELSE) {
|
||||
if ((this.alternativeFormControl.value as string) == Alternative.AVVIKELSE) {
|
||||
this.avvikelseOrsaker$ = this.deltagareAvvikelseService.getOrsaksKoderAvvikelse$();
|
||||
this.fragor1$ = this.deltagareAvvikelseService.getFragorForAvvikelser$()
|
||||
.pipe(
|
||||
map((fragor: FragorForAvvikelser[]) => {
|
||||
return fragor.filter((fraga: FragorForAvvikelser) => fraga.id.includes('_1'))
|
||||
}
|
||||
)
|
||||
);
|
||||
this.fragor1$ = this.deltagareAvvikelseService.getFragorForAvvikelser$().pipe(
|
||||
map((fragor: FragorForAvvikelser[]) => {
|
||||
return fragor.filter((fraga: FragorForAvvikelser) => fraga.id.includes('_1'));
|
||||
})
|
||||
);
|
||||
|
||||
this.fragor2$ = this.deltagareAvvikelseService.getFragorForAvvikelser$()
|
||||
.pipe(
|
||||
map((fragor: FragorForAvvikelser[]) => {
|
||||
return fragor.filter((fraga: FragorForAvvikelser) => {
|
||||
this.setIfRequiredDescription(fraga);
|
||||
return fraga.id.includes('_2')
|
||||
})
|
||||
})
|
||||
)
|
||||
this.fragor2$ = this.deltagareAvvikelseService.getFragorForAvvikelser$().pipe(
|
||||
map((fragor: FragorForAvvikelser[]) => {
|
||||
return fragor.filter((fraga: FragorForAvvikelser) => {
|
||||
this.setIfRequiredDescription(fraga);
|
||||
return fraga.id.includes('_2');
|
||||
});
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
this.clearControlOnAlternativeChange();
|
||||
}
|
||||
|
||||
private setIfRequiredDescription(fraga: FragorForAvvikelser) {
|
||||
fraga.id === '19_2' || fraga.id === '20_2' ?
|
||||
fraga.descriptionIsRequired = false :
|
||||
fraga.descriptionIsRequired = true;
|
||||
fraga.id === '19_2' || fraga.id === '20_2'
|
||||
? (fraga.descriptionIsRequired = false)
|
||||
: (fraga.descriptionIsRequired = true);
|
||||
}
|
||||
|
||||
setOrsakerChanged(): void {
|
||||
this.avvikelseFormGroup.markAsUntouched();
|
||||
if (this.alternativeFormControl.value as string === Alternative.AVVIKELSE) {
|
||||
if ((this.alternativeFormControl.value as string) === Alternative.AVVIKELSE) {
|
||||
this.selectedOrsaksKod = this.avvikelseFormGroup.get('orsakerFormGroup').get('orsaker').value as string;
|
||||
}
|
||||
|
||||
this.avvikelseFormGroup.get('orsakerFormGroup').get('orsaker').valueChanges
|
||||
.subscribe(value => {
|
||||
this.avvikelseFormGroup
|
||||
.get('orsakerFormGroup')
|
||||
.get('orsaker')
|
||||
.valueChanges.subscribe(value => {
|
||||
if (value !== null) {
|
||||
this.avvikelseFormGroup.get('orsakerFormGroup').get('andraKandaOrsaker').reset();
|
||||
}
|
||||
@@ -275,14 +282,18 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
}
|
||||
|
||||
get showDescription(): boolean {
|
||||
return this.alternativeFormControl.value as string == Alternative.FRANVARO &&
|
||||
return (
|
||||
(this.alternativeFormControl.value as string) == Alternative.FRANVARO &&
|
||||
+this.orsakerFormControl.value === FranvaroOrsaksKodEnum.AnnanKandOrsak &&
|
||||
+this.andraKandaOrsakerFormControl.value === KandaOrsakerEnum.AnnanOrsak
|
||||
);
|
||||
}
|
||||
|
||||
get showFragor(): boolean {
|
||||
return this.alternativeFormControl.value as string === Alternative.AVVIKELSE &&
|
||||
this.orsakerFormControl.value as boolean;
|
||||
return (
|
||||
(this.alternativeFormControl.value as string) === Alternative.AVVIKELSE &&
|
||||
(this.orsakerFormControl.value as boolean)
|
||||
);
|
||||
}
|
||||
|
||||
get showDatePicker(): boolean {
|
||||
@@ -290,12 +301,17 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
}
|
||||
|
||||
get showDayOrPartOfDayPicker(): boolean {
|
||||
return this.alternativeFormControl.value as string === Alternative.FRANVARO && this.orsakerFormControl.value as boolean;
|
||||
return (
|
||||
(this.alternativeFormControl.value as string) === Alternative.FRANVARO &&
|
||||
(this.orsakerFormControl.value as boolean)
|
||||
);
|
||||
}
|
||||
|
||||
get showTimePicker(): boolean {
|
||||
return this.alternativeFormControl.value as string === Alternative.FRANVARO &&
|
||||
this.dayOrPartOfDayFormControl.value as string === DayOrPartOfDay.DEL_AV_DAG
|
||||
return (
|
||||
(this.alternativeFormControl.value as string) === Alternative.FRANVARO &&
|
||||
(this.dayOrPartOfDayFormControl.value as string) === DayOrPartOfDay.DEL_AV_DAG
|
||||
);
|
||||
}
|
||||
|
||||
get nextStep(): number {
|
||||
@@ -314,7 +330,7 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
}
|
||||
|
||||
backToDeltagare(): void {
|
||||
void this.router.navigate(['./deltagare', this.activatedRoute.snapshot.params['deltagareId']]);
|
||||
void this.router.navigate(['./deltagare', this.activatedRoute.snapshot.params['genomforandeReferens']]);
|
||||
}
|
||||
|
||||
private clearControlOnAlternativeChange(): void {
|
||||
@@ -324,5 +340,4 @@ export class DeltagareAvvikelseComponent implements OnInit {
|
||||
this.dayOrPartOfDayFormControl.reset();
|
||||
this.avvikelseFormGroup?.get('timepickerFormGroup').reset();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,16 +1,15 @@
|
||||
import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
|
||||
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
import { ContactInformationCompact } from '@msfa-models/api/contact-information.response.model';
|
||||
import { Observable } from 'rxjs';
|
||||
import { switchMap } from 'rxjs/operators';
|
||||
import { DeltagareAvvikelseService } from '../../pages/deltagare-report/services/deltagare-avvikelse.service';
|
||||
|
||||
|
||||
@Component({
|
||||
selector: 'msfa-report-layout',
|
||||
templateUrl: './report-layout.component.html',
|
||||
styleUrls: ['./report-layout.component.scss'],
|
||||
changeDetection: ChangeDetectionStrategy.OnPush
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
})
|
||||
export class ReportLayoutComponent {
|
||||
@Input() reportTitle = 'Report Title';
|
||||
@@ -25,14 +24,11 @@ export class ReportLayoutComponent {
|
||||
@Input() showSuccessNotification = false;
|
||||
@Input() showDangerNotification = false;
|
||||
|
||||
contactInformation$: Observable<ContactInformationCompact> = this.activatedRoute.params
|
||||
.pipe(
|
||||
switchMap(({ deltagareId }) => this.deltagareAvvikelseService.getContactInformationCompact$(deltagareId))
|
||||
);
|
||||
|
||||
constructor(
|
||||
private deltagareAvvikelseService: DeltagareAvvikelseService,
|
||||
private activatedRoute: ActivatedRoute
|
||||
) { }
|
||||
contactInformation$: Observable<ContactInformationCompact> = this.activatedRoute.params.pipe(
|
||||
switchMap(({ genomforandeReferens }) =>
|
||||
this.deltagareAvvikelseService.getContactInformationCompact$(genomforandeReferens)
|
||||
)
|
||||
);
|
||||
|
||||
constructor(private deltagareAvvikelseService: DeltagareAvvikelseService, private activatedRoute: ActivatedRoute) {}
|
||||
}
|
||||
|
||||
@@ -73,14 +73,14 @@ export class DeltagareApiService {
|
||||
);
|
||||
}
|
||||
|
||||
public fetchReports$(limit: number, page: number, deltagareId: string): Observable<ReportsData> {
|
||||
public fetchReports$(limit: number, page: number, genomforandeReferens: string): Observable<ReportsData> {
|
||||
return of({ data: [], meta: null });
|
||||
|
||||
// TODO: When the API/Mock-API has implemented the endpoint, we can remove use following code
|
||||
// to make API-requests.
|
||||
|
||||
// const params: { [param: string]: string | string[] } = {
|
||||
// id: deltagareId.toString(),
|
||||
// id: genomforandeReferens.toString(),
|
||||
// limit: limit.toString(),
|
||||
// page: page.toString(),
|
||||
// };
|
||||
|
||||
@@ -16,31 +16,31 @@ import { DeltagareApiService } from './api/deltagare.api.service';
|
||||
export class DeltagareCardService {
|
||||
constructor(private deltagareApiService: DeltagareApiService) {}
|
||||
|
||||
public fetchContactInformation$(deltagareId: string): Observable<ContactInformation> {
|
||||
return this.deltagareApiService.fetchContactInformation$(deltagareId);
|
||||
public fetchContactInformation$(genomforandeReferens: string): Observable<ContactInformation> {
|
||||
return this.deltagareApiService.fetchContactInformation$(genomforandeReferens);
|
||||
}
|
||||
public fetchAvropInformation$(deltagareId: string): Observable<Avrop> {
|
||||
return this.deltagareApiService.fetchAvropInformation$(deltagareId);
|
||||
public fetchAvropInformation$(genomforandeReferens: string): Observable<Avrop> {
|
||||
return this.deltagareApiService.fetchAvropInformation$(genomforandeReferens);
|
||||
}
|
||||
public fetchWorkExperiences$(deltagareId: string): Observable<WorkExperience[]> {
|
||||
return this.deltagareApiService.fetchWorkExperiences$(deltagareId);
|
||||
public fetchWorkExperiences$(genomforandeReferens: string): Observable<WorkExperience[]> {
|
||||
return this.deltagareApiService.fetchWorkExperiences$(genomforandeReferens);
|
||||
}
|
||||
public fetchHighestEducation$(deltagareId: string): Observable<HighestEducation> {
|
||||
return this.deltagareApiService.fetchHighestEducation$(deltagareId);
|
||||
public fetchHighestEducation$(genomforandeReferens: string): Observable<HighestEducation> {
|
||||
return this.deltagareApiService.fetchHighestEducation$(genomforandeReferens);
|
||||
}
|
||||
public fetchEducations$(deltagareId: string): Observable<Education[]> {
|
||||
return this.deltagareApiService.fetchEducations$(deltagareId);
|
||||
public fetchEducations$(genomforandeReferens: string): Observable<Education[]> {
|
||||
return this.deltagareApiService.fetchEducations$(genomforandeReferens);
|
||||
}
|
||||
public fetchDriversLicense$(deltagareId: string): Observable<DriversLicense> {
|
||||
return this.deltagareApiService.fetchDriversLicense$(deltagareId);
|
||||
public fetchDriversLicense$(genomforandeReferens: string): Observable<DriversLicense> {
|
||||
return this.deltagareApiService.fetchDriversLicense$(genomforandeReferens);
|
||||
}
|
||||
public fetchWorkLanguages$(deltagareId: string): Observable<string[]> {
|
||||
return this.deltagareApiService.fetchWorkLanguages$(deltagareId);
|
||||
public fetchWorkLanguages$(genomforandeReferens: string): Observable<string[]> {
|
||||
return this.deltagareApiService.fetchWorkLanguages$(genomforandeReferens);
|
||||
}
|
||||
public fetchDisabilities$(deltagareId: string): Observable<Disability[]> {
|
||||
return this.deltagareApiService.fetchDisabilities$(deltagareId);
|
||||
public fetchDisabilities$(genomforandeReferens: string): Observable<Disability[]> {
|
||||
return this.deltagareApiService.fetchDisabilities$(genomforandeReferens);
|
||||
}
|
||||
public fetchReports$(limit: number, page: number, deltagareId: string): Observable<ReportsData> {
|
||||
return this.deltagareApiService.fetchReports$(limit, page, deltagareId);
|
||||
public fetchReports$(limit: number, page: number, genomforandeReferens: string): Observable<ReportsData> {
|
||||
return this.deltagareApiService.fetchReports$(limit, page, genomforandeReferens);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,32 +1,37 @@
|
||||
## 2.0.1
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **deltagare:** Now fetching data using "genomforandeReferens" instead of "sokandeId" to avoid wrong data. [TV-692](https://jira.arbetsformedlingen.se/browse/TV-692)
|
||||
|
||||
## [2.0.0](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/compare/diff?targetBranch=refs%2Ftags%2Fv1.5.0&sourceBranch=refs%2Ftags%2Fv2.0.0) (2021-09-24)
|
||||
|
||||
### Features
|
||||
|
||||
* **avvikelserapport:** added max width to select and text area elements. [TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-max-width ([ed2e19a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/ed2e19a47d79701ce7030118e8bc68683271ffd9))
|
||||
* **avrop:** Changed intro-text inside avrop. ([TV-518](https://jira.arbetsformedlingen.se/browse/TV-518)) ([fc2916f](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/fc2916fb0d6e37fc71df96b5e008fccd43075bd1))
|
||||
* **avvikelserapport:** changed router navigation, cleanup /[TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-2 to develop ([2236cc9](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/2236cc9ec85f2f3420f01d4ea5b8002d778149e6)), closes [TV-407-2](https://jira.arbetsformedlingen.se/browse/TV-407-2) [TV-407-2](https://jira.arbetsformedlingen.se/browse/TV-407-2)
|
||||
* **avvikelserapport:** fixed validation for dayOrPartOfDay [TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-fix ([71b00c6](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/71b00c6e90fdb553af0f6accc881e41f8716b21b))
|
||||
* **avrop:** Implemented custom filters for avrop. ([TV-344](https://jira.arbetsformedlingen.se/browse/TV-344)) ([1feed30](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/1feed30f6fdad8cfff507c96dae86bb4fa82279c))
|
||||
* **employees:** Implemented loader inside employees-list when pagination/filtering. ([TV-597](https://jira.arbetsformedlingen.se/browse/TV-597)) ([bc8b09d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/bc8b09d0dcfdcd53dfa930a76e29dc216e76346f))
|
||||
* **deltagare:** Implemented role-check and fetching data when needed. ([TV-639](https://jira.arbetsformedlingen.se/browse/TV-639)) ([62fb35c](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/62fb35ca7e685675c0caf33734dd68cf8225d93e))
|
||||
* **avvikelserapport:** implementerat report layout för avvikelserapport. [TV-667](https://jira.arbetsformedlingen.se/browse/TV-667) ([454699b](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/454699b78571e98d924a9242f30fcf8325a51621)), closes [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [origin/feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-624](https://jira.arbetsformedlingen.se/browse/TV-624)
|
||||
* **Deltagarlista:** Lade till startdatum, slutdatum, avbrott samt Visa händelser, som öppnar en modal med en deltagares händelser ([TV-606](https://jira.arbetsformedlingen.se/browse/TV-606)) ([68c5c8d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/68c5c8d4a8fdcf4a497abb85de9298c26fdafcaf))
|
||||
* **deltagare:** Moved around content between tabs inside deltagare-card. ([TV-638](https://jira.arbetsformedlingen.se/browse/TV-638)) ([14739fb](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/14739fb9e1d06897e5805d1f5c3c5a5194be80c3))
|
||||
* **employee:** Now possible to edit employee and remove data, also changed validation-rules. ([TV-631](https://jira.arbetsformedlingen.se/browse/TV-631)) ([1bbfd57](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/1bbfd57910a1cb19f94cec4feab6c85ac1ffd166))
|
||||
* **avvikelserapport:** show selected questions in preview, renaming. [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633)-2 ([71a98f5](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/71a98f52573edcacd6a1125e0a7c23473bfdec4d)), closes [TV-633-2](https://jira.arbetsformedlingen.se/browse/TV-633-2) [TV-633-2](https://jira.arbetsformedlingen.se/browse/TV-633-2)
|
||||
* **employee-invite:** Updated validation of email-addresses and changed text for assigned users. ([TV-628](https://jira.arbetsformedlingen.se/browse/TV-628)) ([84f8737](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/84f8737ec4da773f1256a5673aaf70860462cfa9))
|
||||
* Uppdatering av rolltexter ([5c30fc7](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/5c30fc7e5070c65f35f32ea817d566dbd6148058))
|
||||
* **employee:** Utförande verksamheter select is now wrapping long text instead of ellipsis. Also when toggling the "Alla utförande verksamheter" checkbox the select is resetted. ([TV-620](https://jira.arbetsformedlingen.se/browse/TV-620)) ([91eeb1d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/91eeb1d8dc7f50a429ef2cd988c16be732225acb))
|
||||
|
||||
- **avvikelserapport:** added max width to select and text area elements. [TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-max-width ([ed2e19a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/ed2e19a47d79701ce7030118e8bc68683271ffd9))
|
||||
- **avrop:** Changed intro-text inside avrop. ([TV-518](https://jira.arbetsformedlingen.se/browse/TV-518)) ([fc2916f](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/fc2916fb0d6e37fc71df96b5e008fccd43075bd1))
|
||||
- **avvikelserapport:** changed router navigation, cleanup /[TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-2 to develop ([2236cc9](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/2236cc9ec85f2f3420f01d4ea5b8002d778149e6)), closes [TV-407-2](https://jira.arbetsformedlingen.se/browse/TV-407-2) [TV-407-2](https://jira.arbetsformedlingen.se/browse/TV-407-2)
|
||||
- **avvikelserapport:** fixed validation for dayOrPartOfDay [TV-407](https://jira.arbetsformedlingen.se/browse/TV-407)-fix ([71b00c6](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/71b00c6e90fdb553af0f6accc881e41f8716b21b))
|
||||
- **avrop:** Implemented custom filters for avrop. ([TV-344](https://jira.arbetsformedlingen.se/browse/TV-344)) ([1feed30](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/1feed30f6fdad8cfff507c96dae86bb4fa82279c))
|
||||
- **employees:** Implemented loader inside employees-list when pagination/filtering. ([TV-597](https://jira.arbetsformedlingen.se/browse/TV-597)) ([bc8b09d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/bc8b09d0dcfdcd53dfa930a76e29dc216e76346f))
|
||||
- **deltagare:** Implemented role-check and fetching data when needed. ([TV-639](https://jira.arbetsformedlingen.se/browse/TV-639)) ([62fb35c](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/62fb35ca7e685675c0caf33734dd68cf8225d93e))
|
||||
- **avvikelserapport:** implementerat report layout för avvikelserapport. [TV-667](https://jira.arbetsformedlingen.se/browse/TV-667) ([454699b](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/454699b78571e98d924a9242f30fcf8325a51621)), closes [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [origin/feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [feature/TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [feature/TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-634](https://jira.arbetsformedlingen.se/browse/TV-634) [TV-624](https://jira.arbetsformedlingen.se/browse/TV-624)
|
||||
- **Deltagarlista:** Lade till startdatum, slutdatum, avbrott samt Visa händelser, som öppnar en modal med en deltagares händelser ([TV-606](https://jira.arbetsformedlingen.se/browse/TV-606)) ([68c5c8d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/68c5c8d4a8fdcf4a497abb85de9298c26fdafcaf))
|
||||
- **deltagare:** Moved around content between tabs inside deltagare-card. ([TV-638](https://jira.arbetsformedlingen.se/browse/TV-638)) ([14739fb](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/14739fb9e1d06897e5805d1f5c3c5a5194be80c3))
|
||||
- **employee:** Now possible to edit employee and remove data, also changed validation-rules. ([TV-631](https://jira.arbetsformedlingen.se/browse/TV-631)) ([1bbfd57](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/1bbfd57910a1cb19f94cec4feab6c85ac1ffd166))
|
||||
- **avvikelserapport:** show selected questions in preview, renaming. [TV-633](https://jira.arbetsformedlingen.se/browse/TV-633)-2 ([71a98f5](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/71a98f52573edcacd6a1125e0a7c23473bfdec4d)), closes [TV-633-2](https://jira.arbetsformedlingen.se/browse/TV-633-2) [TV-633-2](https://jira.arbetsformedlingen.se/browse/TV-633-2)
|
||||
- **employee-invite:** Updated validation of email-addresses and changed text for assigned users. ([TV-628](https://jira.arbetsformedlingen.se/browse/TV-628)) ([84f8737](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/84f8737ec4da773f1256a5673aaf70860462cfa9))
|
||||
- Uppdatering av rolltexter ([5c30fc7](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/5c30fc7e5070c65f35f32ea817d566dbd6148058))
|
||||
- **employee:** Utförande verksamheter select is now wrapping long text instead of ellipsis. Also when toggling the "Alla utförande verksamheter" checkbox the select is resetted. ([TV-620](https://jira.arbetsformedlingen.se/browse/TV-620)) ([91eeb1d](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/91eeb1d8dc7f50a429ef2cd988c16be732225acb))
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **employees:** Currentpage is now set to default page inside pagination-component. ([TV-596](https://jira.arbetsformedlingen.se/browse/TV-596)) ([9155cdc](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/9155cdc9ac343168e25afc4fd2fa9d0920ba45ac))
|
||||
* Fix mock-api login functionality ([52cd7ad](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/52cd7ad6f4282b737756bf1b6d8a2e946218378b))
|
||||
* **edit-employee:** Removed duplicate border-color on utförande verksamheter button which falsly overrode styling. ([TV-590](https://jira.arbetsformedlingen.se/browse/TV-590)) ([0f60300](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/0f60300d972766ea790f375206e6d6c40468311b))
|
||||
* Sidans titel ändras nu korrekt när man går tillbaka till startsidan. ([TV-643](https://jira.arbetsformedlingen.se/browse/TV-643)) ([0302b1a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/0302b1a1ad672351a702878a411d5bce988af6ba))
|
||||
* **my-account:** Typo fix inside my-account. ([TV-593](https://jira.arbetsformedlingen.se/browse/TV-593)) ([3bfb8d8](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/3bfb8d8be14b573b59986f6304b8ee82b8269eed))
|
||||
* Ändra ordning på sidornas title så att sidans innehåll kommer först ([TV-644](https://jira.arbetsformedlingen.se/browse/TV-644)) ([caf235a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/caf235a2b400e244d4134667385612f8f786d9a9))
|
||||
- **employees:** Currentpage is now set to default page inside pagination-component. ([TV-596](https://jira.arbetsformedlingen.se/browse/TV-596)) ([9155cdc](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/9155cdc9ac343168e25afc4fd2fa9d0920ba45ac))
|
||||
- Fix mock-api login functionality ([52cd7ad](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/52cd7ad6f4282b737756bf1b6d8a2e946218378b))
|
||||
- **edit-employee:** Removed duplicate border-color on utförande verksamheter button which falsly overrode styling. ([TV-590](https://jira.arbetsformedlingen.se/browse/TV-590)) ([0f60300](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/0f60300d972766ea790f375206e6d6c40468311b))
|
||||
- Sidans titel ändras nu korrekt när man går tillbaka till startsidan. ([TV-643](https://jira.arbetsformedlingen.se/browse/TV-643)) ([0302b1a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/0302b1a1ad672351a702878a411d5bce988af6ba))
|
||||
- **my-account:** Typo fix inside my-account. ([TV-593](https://jira.arbetsformedlingen.se/browse/TV-593)) ([3bfb8d8](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/3bfb8d8be14b573b59986f6304b8ee82b8269eed))
|
||||
- Ändra ordning på sidornas title så att sidans innehåll kommer först ([TV-644](https://jira.arbetsformedlingen.se/browse/TV-644)) ([caf235a](https://bitbucket.arbetsformedlingen.se/projects/tea/repos/mina-sidor-fa-web/commits/caf235a2b400e244d4134667385612f8f786d9a9))
|
||||
|
||||
## 1.5.1
|
||||
|
||||
|
||||
Reference in New Issue
Block a user