BZ 530163 - New functionality "fetch responsibilities"
diff --git a/src/app/common-components/main-navigation/main-navigation.component.html b/src/app/common-components/main-navigation/main-navigation.component.html index dd68691..b3c569b 100644 --- a/src/app/common-components/main-navigation/main-navigation.component.html +++ b/src/app/common-components/main-navigation/main-navigation.component.html
@@ -43,7 +43,10 @@ </a> <ul class="dropdown-menu" style="left: auto; right: auto; top: 40px;"> <li class="dropdown"> - <a (click)="openDialogShiftChange()">Schicht übergeben</a> + <a (click)="openDialogShiftChange(false)">Schicht übergeben</a> + </li> + <li class="dropdown"> + <a (click)="openDialogShiftChange(true)">Schicht holen</a> </li> <li class="dropdown"> <a (click)="openDialogLogout()">Abmelden</a>
diff --git a/src/app/common-components/main-navigation/main-navigation.component.spec.ts b/src/app/common-components/main-navigation/main-navigation.component.spec.ts index f6114b3..f338d63 100644 --- a/src/app/common-components/main-navigation/main-navigation.component.spec.ts +++ b/src/app/common-components/main-navigation/main-navigation.component.spec.ts
@@ -10,6 +10,7 @@ import { MdDialogModule, MaterialModule, MdDialog } from '@angular/material'; import { SessionContext } from '../../common/session-context'; import { MainNavigationComponent } from './main-navigation.component'; +import { MessageService } from 'app/services/message.service'; //import { LogoutComponent } from '../../dialogs/logout/logout.component'; class FakeRouter { @@ -52,7 +53,8 @@ providers: [ { provide: Router, useValue: routerStub }, { provide: MdDialog, useClass: MdDialog }, - { provide: SessionContext, useValue: sessionContext } + { provide: SessionContext, useValue: sessionContext }, + { provide: MessageService } ] }) .compileComponents();
diff --git a/src/app/common-components/main-navigation/main-navigation.component.ts b/src/app/common-components/main-navigation/main-navigation.component.ts index 23d1527..e422d98 100644 --- a/src/app/common-components/main-navigation/main-navigation.component.ts +++ b/src/app/common-components/main-navigation/main-navigation.component.ts
@@ -3,6 +3,7 @@ import { MdDialog, MdDialogConfig } from '@angular/material'; import { LogoutComponent } from '../../dialogs/logout/logout.component'; import { ShiftChangeComponent } from '../../dialogs/shift-change/shift-change.component'; +import { MessageService } from '../../services/message.service'; import { Router } from '@angular/router'; @Component({ @@ -19,8 +20,9 @@ constructor( public sessionContext: SessionContext, public dialog: MdDialog, - public router: Router - ) { } + public router: Router, + private messageService: MessageService + ) { } ngOnInit() { this.dialogConfig.disableClose = true; @@ -33,14 +35,27 @@ }); } - openDialogShiftChange() { + openDialogShiftChange( fetchResponsibility: boolean ) { const dialogRef = this.dialog.open(ShiftChangeComponent, this.dialogConfig); - dialogRef.afterClosed().subscribe(result => { - if (dialogRef.componentInstance.isChangingShift) { - this.openDialogLogout(); - } - }); + dialogRef.componentInstance.isFetchingResp = fetchResponsibility; + + dialogRef.afterClosed().subscribe(() => this.onDialogShiftClosed( dialogRef.componentInstance.isFetchingResp, + dialogRef.componentInstance.isChangingShift )); } + + + onDialogShiftClosed( isFetching: boolean, isChangingShift: boolean ) { + if ( isChangingShift ) { + if ( isFetching ) { + this.sessionContext.setfilterMatrix(null); + this.router.navigate(['logout']); +// this.messageService.respChangedForCurrentUser$.emit(true); + } else { + this.openDialogLogout(); + } + } + } + goToSearchPage() { this.router.navigate(['/search']);
diff --git a/src/app/common/globals.ts b/src/app/common/globals.ts index d4f75b9..0af4819 100644 --- a/src/app/common/globals.ts +++ b/src/app/common/globals.ts
@@ -1,5 +1,5 @@ export class Globals { - static FRONTEND_VERSION = '1.0.1'; + static FRONTEND_VERSION = '1.0.2'; static SESSION_TOKEN_TAG = 'X-XSRF-TOKEN'; static CURRENT_USER = 'CURRENT_USER'; static ALL_USERS = 'ALL_USERS';
diff --git a/src/app/dialogs/responsibility/responsibility.component.ts b/src/app/dialogs/responsibility/responsibility.component.ts index af54ea7..efef139 100644 --- a/src/app/dialogs/responsibility/responsibility.component.ts +++ b/src/app/dialogs/responsibility/responsibility.component.ts
@@ -42,6 +42,7 @@ this.responsiblitySelection = []; this.messageService.deactivateMessage(); this.dialogRef.close(); + //this.messageService.respConfirmed$.emit(true); } else { const message = 'Ihre Verantwortlichkeiten haben sich geändert. ' + 'Bitte prüfen Sie Ihre Eingaben und versuchen Sie es erneut.'; @@ -54,9 +55,6 @@ this.messageService.emitError('Verantwortlichkeiten', ErrorType.update); } ); - function setResp(respCs: TerritoryResponsibility[]): void { - - } } responsibilitiesSelectionChanged() {
diff --git a/src/app/dialogs/shift-change/shift-change.component.css b/src/app/dialogs/shift-change/shift-change.component.css index 3a708e1..90d1507 100644 --- a/src/app/dialogs/shift-change/shift-change.component.css +++ b/src/app/dialogs/shift-change/shift-change.component.css
@@ -22,4 +22,18 @@ } .shc-table-col{ width: 70px; + vertical-align: top; +} +.shc-table-data{ + text-align: left; +} +.curr-resp-label { + color : #337ab7; +} +.curr-new-resp-label { + color : #999999; +} +.important-text { + color: #a94442; + font-style: bold; } \ No newline at end of file
diff --git a/src/app/dialogs/shift-change/shift-change.component.html b/src/app/dialogs/shift-change/shift-change.component.html index 449b2a6..5650984 100644 --- a/src/app/dialogs/shift-change/shift-change.component.html +++ b/src/app/dialogs/shift-change/shift-change.component.html
@@ -1,7 +1,6 @@ <header> - <h2> - Schichtübergabe - </h2> + <h2 *ngIf="!isFetchingResp">Schichtübergabe</h2> + <h2 *ngIf="isFetchingResp">Schichtübernahme</h2> </header> <div> @@ -16,7 +15,7 @@ {{sessionContext.bannerMessage.text}} </div> <div class="panel-body" style="max-width: 450px;"> - <multiselect class="customMultiSelect" [data]="allUsersButLoggedIn" [(ngModel)]="preSelectedUsers" [settings]="dropdownSettings" + <multiselect class="customMultiSelect" *ngIf="!isFetchingResp" [data]="allRelevantUsers" [(ngModel)]="preSelectedUsers" [settings]="dropdownSettings" ngDefaultControl></multiselect> </div> <form #shiftForm="ngForm" novalidate> @@ -35,43 +34,67 @@ <tbody> <tr *ngFor="let responsibilityContainer of responsibilityContainers"> <td class="shc-table-col">{{ responsibilityContainer.gridTerritoryDescription }}</td> - <td class="shc-table-col"> + <td class="shc-table-col shc-table-data"> <div class="form-group"> + <span class="curr-resp-label" *ngIf="isFetchingResp"> + Aktuell: {{sessionContext.getUserMap().findAndRenderUser(getResponsibilityAll(responsibilityContainer,'S').responsibleUser)}} <br> + </span> + <span class="curr-new-resp-label" *ngIf="isFetchingResp && isNewUserPresent(getResponsibilityAll(responsibilityContainer,'S'))"> + Geplant: {{sessionContext.getUserMap().findAndRenderUser(getResponsibilityAll(responsibilityContainer,'S').newResponsibleUser)}} + </span> <select [(ngModel)]="getResponsiblity(responsibilityContainer,'S').newResponsibleUser" *ngIf="responsibilityContainer && getResponsiblity(responsibilityContainer,'S')" style="height:30px !important" class="form-control shc-table-select" name="'responsibleUserSelectionS_{{getResponsiblity(responsibilityContainer,'S').id}}'" (change)="checkIfPersonSelected()"> <option></option> - <option *ngFor="let user of preSelectedUsers" value="{{user.username}}">{{user.itemName}}</option> + <option *ngFor="let user of preSelectedUsers" value="{{user.username}}">{{user.name}}</option> </select> </div> </td> - <td class="shc-table-col"> + <td class="shc-table-col shc-table-data"> <div class="form-group"> - <select [(ngModel)]="getResponsiblity(responsibilityContainer,'G').newResponsibleUser" *ngIf="responsibilityContainer && getResponsiblity(responsibilityContainer,'G')" + <span class="curr-resp-label" *ngIf="isFetchingResp"> + Aktuell: {{sessionContext.getUserMap().findAndRenderUser(getResponsibilityAll(responsibilityContainer,'G').responsibleUser)}} <br> + </span> + <span class="curr-new-resp-label" *ngIf="isFetchingResp && isNewUserPresent(getResponsibilityAll(responsibilityContainer,'G'))"> + Geplant: {{sessionContext.getUserMap().findAndRenderUser(getResponsibilityAll(responsibilityContainer,'G').newResponsibleUser)}} + </span> + <select [(ngModel)]="getResponsiblity(responsibilityContainer,'G').newResponsibleUser" *ngIf="responsibilityContainer && getResponsiblity(responsibilityContainer,'G')" style="height:30px !important" class="form-control shc-table-select" name="'responsibleUserSelectionG_{{getResponsiblity(responsibilityContainer,'G').id}}'" (change)="checkIfPersonSelected()"> <option></option> - <option *ngFor="let user of preSelectedUsers" value="{{user.username}}">{{user.itemName}}</option> + <option *ngFor="let user of preSelectedUsers" value="{{user.username}}">{{user.name}}</option> </select> </div> </td> - <td class="shc-table-col"> + <td class="shc-table-col shc-table-data"> <div class="form-group"> + <span class="curr-resp-label" *ngIf="isFetchingResp"> + Aktuell: {{sessionContext.getUserMap().findAndRenderUser(getResponsibilityAll(responsibilityContainer,'F').responsibleUser)}} <br> + </span> + <span class="curr-new-resp-label" *ngIf="isFetchingResp && isNewUserPresent(getResponsibilityAll(responsibilityContainer,'F'))"> + Geplant: {{sessionContext.getUserMap().findAndRenderUser(getResponsibilityAll(responsibilityContainer,'F').newResponsibleUser)}} + </span> <select [(ngModel)]="getResponsiblity(responsibilityContainer,'F').newResponsibleUser" *ngIf="responsibilityContainer && getResponsiblity(responsibilityContainer,'F')" style="height:30px !important" class="form-control shc-table-select" name="'responsibleUserSelectionF_{{getResponsiblity(responsibilityContainer,'F').id}}'" (change)="checkIfPersonSelected()"> <option></option> - <option *ngFor="let user of preSelectedUsers" value="{{user.username}}" >{{user.itemName}}</option> + <option *ngFor="let user of preSelectedUsers" value="{{user.username}}" >{{user.name}}</option> </select> </div> </td> - <td class="shc-table-col"> + <td class="shc-table-col shc-table-data"> <div class="form-group"> + <span class="curr-resp-label" *ngIf="isFetchingResp"> + Aktuell: {{sessionContext.getUserMap().findAndRenderUser(getResponsibilityAll(responsibilityContainer,'W').responsibleUser)}} <br> + </span> + <span class="curr-new-resp-label" *ngIf="isFetchingResp && isNewUserPresent(getResponsibilityAll(responsibilityContainer,'W'))"> + Geplant: {{sessionContext.getUserMap().findAndRenderUser(getResponsibilityAll(responsibilityContainer,'W').newResponsibleUser)}} + </span> <select [(ngModel)]="getResponsiblity(responsibilityContainer,'W').newResponsibleUser" *ngIf="responsibilityContainer && getResponsiblity(responsibilityContainer,'W')" style="height:30px !important" class="form-control shc-table-select" name="'responsibleUserSelectionW_{{getResponsiblity(responsibilityContainer,'W').id}}'" (change)="checkIfPersonSelected()"> <option></option> - <option *ngFor="let user of preSelectedUsers" value="{{user.username}}" >{{user.itemName}}</option> + <option *ngFor="let user of preSelectedUsers" value="{{user.username}}" >{{user.name}}</option> </select> </div> </td> @@ -84,8 +107,11 @@ </div> </div> <div class="margin-top"> - <button class="btn btn-primary btn-sm" [disabled]="shiftChangeFormInValid" (click)="shiftChange(true)" autofocus>Übergeben</button> - <button class="btn btn-primary btn-sm" (click)="cancelChange()" autofocus>Stornieren</button> + <button *ngIf="!isFetchingResp" class="btn btn-primary btn-sm" [disabled]="shiftChangeFormInValid" (click)="shiftChange(true)" autofocus>Übergeben</button> + <button *ngIf="isFetchingResp" class="btn btn-primary btn-sm" [disabled]="shiftChangeFormInValid" (click)="shiftChange(true)" autofocus>Übernehmen</button> + + <button *ngIf="!isFetchingResp" class="btn btn-primary btn-sm" (click)="cancelChange()" autofocus>Stornieren</button> <button class="btn btn-primary btn-sm " (click)="dialogRef.close()">Abbrechen</button> </div> + <div class="important-text" *ngIf="!shiftChangeFormInValid && isFetchingResp"><span>Mit "Übernehmen" gelangen Sie auf die Logout-Seite und müssen die Anwendung neu starten!</span></div> </div> \ No newline at end of file
diff --git a/src/app/dialogs/shift-change/shift-change.component.spec.ts b/src/app/dialogs/shift-change/shift-change.component.spec.ts index b0b2337..f6a4aa0 100644 --- a/src/app/dialogs/shift-change/shift-change.component.spec.ts +++ b/src/app/dialogs/shift-change/shift-change.component.spec.ts
@@ -134,7 +134,7 @@ elLocal = de.nativeElement; const option = elLocal.options[elLocal.options.selectedIndex]; - expect(option.textContent).toBe(testUser.username); + expect(option.textContent).toBe(testUser.name); }); }); })); @@ -244,7 +244,7 @@ }); }); - component.shiftChange(false); + component.shiftChange(); fixture.detectChanges(); }));
diff --git a/src/app/dialogs/shift-change/shift-change.component.ts b/src/app/dialogs/shift-change/shift-change.component.ts index ca259e9..1ba6034 100644 --- a/src/app/dialogs/shift-change/shift-change.component.ts +++ b/src/app/dialogs/shift-change/shift-change.component.ts
@@ -19,7 +19,7 @@ export class ShiftChangeComponent implements OnInit { bannerMessageStatus = BannerMessageStatusEn; bannerMessage: BannerMessage = new BannerMessage(); - allUsersButLoggedIn: User[]= new Array<User>(); + allRelevantUsers: User[]= new Array<User>(); allUsers: User[]= new Array<User>(); preSelectedUsers: User[] = new Array<User>(); responsibilityContainers: TerritoryResponsibility[]= new Array<TerritoryResponsibility>(); @@ -27,6 +27,7 @@ isChangingShift = false; noUserSelected = true; shiftChangeFormInValid = true; + isFetchingResp = false; dropdownSettings = {}; @@ -57,6 +58,14 @@ } getResponsibilities(): void { + if ( !this.isFetchingResp ) { + this.getMyResponsibilities(); + } else { + this.getOtherResponsibilities(); + } + } + + getMyResponsibilities(): void { const self = this; this.responsibilityService.getResponsibilities().subscribe(resps => setUIRespValues(resps), error => { @@ -79,12 +88,46 @@ } } - getResponsiblity(responsibilityContainer: TerritoryResponsibility, branchName: string) { + getOtherResponsibilities(): void { + const self = this; + this.responsibilityService.getAllResponsibilities().subscribe(resps => setUIRespValues(resps), + error => { + console.log(error); + this.messageService.emitError('Schichtübergabe getResponsibilities', ErrorType.retrieve); + } + ); + function setUIRespValues(resps: TerritoryResponsibility[]) { + self.responsibilityContainers = resps; + } + } + + + getResponsibilityAll(responsibilityContainer: TerritoryResponsibility, branchName: string) { return responsibilityContainer.responsibilityList. find(responsibility => responsibility.branchName === branchName); } + getResponsiblity(responsibilityContainer: TerritoryResponsibility, branchName: string) { + const resp: Responsibility = this.getResponsibilityAll( responsibilityContainer, branchName ); + if ( this.isFetchingResp && + resp && + resp.responsibleUser === this.allRelevantUsers[0].username) { + return null; + } else { + return resp; + } + } + + getUsers() { + if ( !this.isFetchingResp ) { + this.getUsersExceptMe(); + } else { + this.getUsersCurrentUser(); + } + } + + private getUsersExceptMe() { const self = this; this.userService.getUsers().subscribe(resps => setUsers(resps), error => { @@ -94,12 +137,12 @@ ); function setUsers(_allUsers: User[]) { self.allUsers = _allUsers; - self.allUsersButLoggedIn = []; + self.allRelevantUsers = []; const currLoggedInUser = self.sessionContext.getCurrUser(); for (const user of _allUsers) { if (currLoggedInUser.id !== user.id) { - self.allUsersButLoggedIn.push(user); + self.allRelevantUsers.push(user); user.itemName = user.name; } } @@ -108,34 +151,51 @@ } + private getUsersCurrentUser() { + this.allRelevantUsers = []; + this.allRelevantUsers.push(this.sessionContext.getCurrUser()); + this.preSelectedUsers = []; + this.preSelectedUsers.push(this.sessionContext.getCurrUser()); + this.afterUsersLoaded(); + } + cancelChange(): void { for (const responsibilityContainer of this.responsibilityContainers) { for (const responsibility of responsibilityContainer.responsibilityList) { responsibility.newResponsibleUser = ''; } } - this.shiftChange(false); + this.shiftChange( false ); + } - shiftChange(filter: boolean): void { - const self = this; + shiftChange( saveOrStornoYN: boolean ): void { const filteredResponsibilityContainers = this.responsibilityContainers; + let foo: any; - this.responsibilityService.planResponsibilities(filteredResponsibilityContainers).subscribe(resps => setResp(resps), + if ( this.isFetchingResp && saveOrStornoYN) { + foo = this.responsibilityService.fetchResponsibilities(filteredResponsibilityContainers); + } else { + foo = this.responsibilityService.planResponsibilities(filteredResponsibilityContainers); + } + + foo.subscribe(resps => this.callbackSetResp(this, resps, saveOrStornoYN), error => { this.messageService.emitError('Schichtübergabe', ErrorType.update); this.dialogRef.close(); } ); - function setResp(respCs: TerritoryResponsibility[]) { - if (respCs['ret'] && respCs['ret'] === 'OK') { - self.dialogRef.close(); - } else { - const text = 'Ihre Verantwortlichkeiten haben sich geändert. ' + - 'Bitte prüfen Sie Ihre Eingaben und versuchen Sie es erneut.'; - self.messageService.emitInfo(text); - self.responsibilityContainers = respCs; - } + } + + private callbackSetResp(self: ShiftChangeComponent , respCs: TerritoryResponsibility[], saveOrStornoYN: boolean) { + if (respCs['ret'] && respCs['ret'] === 'OK') { + self.dialogRef.componentInstance.isChangingShift = saveOrStornoYN; + self.dialogRef.close(); + } else { + const text = 'Ihre Verantwortlichkeiten haben sich geändert. ' + + 'Bitte prüfen Sie Ihre Eingaben und versuchen Sie es erneut.'; + self.messageService.emitInfo(text); + this.responsibilityContainers = respCs; } } @@ -150,4 +210,9 @@ } } } + + isNewUserPresent( resp: Responsibility ): boolean { + return resp != null && resp.newResponsibleUser != null && resp.newResponsibleUser !== ''; + + } }
diff --git a/src/app/filter/filter.component.ts b/src/app/filter/filter.component.ts index 1086642..3dbc443 100644 --- a/src/app/filter/filter.component.ts +++ b/src/app/filter/filter.component.ts
@@ -55,14 +55,21 @@ ngOnInit() { this.user = this.sessionContext.getCurrUser(); + this.messageService.respConfirmed$.subscribe( dummy => this.onRespForCurrentUserChanged()); } + getResponsiblity(responsibilityContainer: TerritoryResponsibility, branchName: string): Responsibility { return responsibilityContainer. responsibilityList ? responsibilityContainer.responsibilityList. find(responsibility => responsibility.branchName === branchName) : null; } + onRespForCurrentUserChanged() { + this.getSessionFilterMatrix(); + this.filterExpanded = true; + } + initFilterMatrixWithDefaults() { this.filterMatrix = this.sessionContext.getfilterMatrix(); if (!this.filterMatrix) { @@ -101,20 +108,20 @@ } } - getUpdatedResponsibilities(oldResponsibilityContainerMatrix: TerritoryResponsibility[]) { - let updatedResponsibilityContainerMatrix: TerritoryResponsibility[] = []; + getUpdatedResponsibilities(oldMatrix: TerritoryResponsibility[]) { + let updatedMatrix: TerritoryResponsibility[] = []; this.responsibilityService.getAllResponsibilities().subscribe(resps => { - updatedResponsibilityContainerMatrix = resps; - for (const responsibilityContainer of updatedResponsibilityContainerMatrix) { - for (const responsibility of responsibilityContainer.responsibilityList) { - const oldResp = this.findResponsibilityById(oldResponsibilityContainerMatrix, responsibility.id); - responsibility.isActive = oldResp.isActive; + updatedMatrix = resps; + for (const updatedContainer of updatedMatrix) { + for (const updatedResp of updatedContainer.responsibilityList) { + const oldResp = this.findResponsibilityById(oldMatrix, updatedResp.id); + updatedResp.isActive = oldResp.isActive; } } - this.responsibilityContainerMatrix = updatedResponsibilityContainerMatrix; - const filterMatrix: FilterMatrix = new FilterMatrix(updatedResponsibilityContainerMatrix); + this.responsibilityContainerMatrix = updatedMatrix; + const filterMatrix: FilterMatrix = new FilterMatrix(updatedMatrix); this.messageService.matrixFilterChanged$.emit(filterMatrix.getNumFilterList()); }, error => {
diff --git a/src/app/pages/overview/overview.component.ts b/src/app/pages/overview/overview.component.ts index 246b2d3..465ce3f 100644 --- a/src/app/pages/overview/overview.component.ts +++ b/src/app/pages/overview/overview.component.ts
@@ -59,9 +59,8 @@ this.dialogConfig.disableClose = true; this.user = this.sessionContext.getCurrUser(); this.filterExpanded_ = this.sessionContext.getFilterExpansionState(); - //TODO muss oder darf dieses, vormals in login component, hier beim Erstaufruf implementiert werden??? - //this.messageService.loginLogoff$.emit(MessageDefines.MSG_LOG_IN_SUCCEEDED); this.getResponsibilities(); + this.messageService.respChangedForCurrentUser$.subscribe(b => this.getResponsibilities() ); } private getResponsibilities(): void { @@ -131,10 +130,10 @@ }); } - openDialogShiftChangeProtocol(responsibilitiesContainer: TerritoryResponsibility[]) { + openDialogShiftChangeProtocol(plannedRespContainer: TerritoryResponsibility[]) { const dialogRef = this.dialog.open(ShiftChangeProtocolComponent, this.dialogConfig); this.shiftChangeOpened = true; - dialogRef.componentInstance.setResponsibilitiesContainer(responsibilitiesContainer); + dialogRef.componentInstance.setResponsibilitiesContainer(plannedRespContainer); dialogRef.afterClosed().subscribe(result => { this.shiftChangeClosed = true; this.shiftChangeOpened = false;
diff --git a/src/app/services/message.service.ts b/src/app/services/message.service.ts index dc47db4..389b362 100644 --- a/src/app/services/message.service.ts +++ b/src/app/services/message.service.ts
@@ -15,6 +15,9 @@ public matrixFilterChanged$: EventEmitter<number[]> = new EventEmitter<number[]>(); public errorOccured$: EventEmitter<BannerMessage> = new EventEmitter<BannerMessage>(); + public respChangedForCurrentUser$: EventEmitter<boolean> = new EventEmitter<boolean>(); + public respConfirmed$: EventEmitter<boolean> = new EventEmitter<boolean>(); + public emitError(location: string, errorType?: ErrorType) { let message = ''; switch (errorType) {
diff --git a/src/app/services/responsibility.service.ts b/src/app/services/responsibility.service.ts index 741a8cf..810f644 100644 --- a/src/app/services/responsibility.service.ts +++ b/src/app/services/responsibility.service.ts
@@ -53,13 +53,22 @@ public planResponsibilities(responsibilities: TerritoryResponsibility[]) { const headers = new Headers(); - const url = super.getBaseUrl() + '/planResponsibilities/'; + const url = super.getBaseUrl() + '/postResponsibilities/'; this.createCommonHeaders(headers, this._sessionContext); return this._http.post(url, JSON.stringify(responsibilities), { headers: headers }) .map(res => super.extractData(res, this._sessionContext)) .catch(error => { return super.handleErrorPromise(error); }); } + public fetchResponsibilities(responsibilities: TerritoryResponsibility[]) { + const headers = new Headers(); + const url = super.getBaseUrl() + '/fetchResponsibilities/'; + this.createCommonHeaders(headers, this._sessionContext); + return this._http.post(url, JSON.stringify(responsibilities), { headers: headers }) + .map(res => super.extractData(res, this._sessionContext)) + .catch(error => { return super.handleErrorPromise(error); }); + } + public confirmResponsibilities(responsibilities: TerritoryResponsibility[]) { const headers = new Headers(); const url = super.getBaseUrl() + '/confirmResponsibilities/';