UNPKG

mp-common

Version:

This is XPO MarketPlace common libary

142 lines (126 loc) 15.4 kB
import { Injectable } from '@angular/core'; import { Headers, Http, Response } from '@angular/http'; import 'rxjs/add/operator/toPromise'; import { AppSettings } from 'app/core/app-settings'; import { User } from '../../shared'; const userLists: User[] = [ { id: 1, firstName: "Rebecca1", lastName: "Solomon", email: "rebecca.solomon1@pepsi.com", phoneNumber: "0000-000-0001", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 2, firstName: "User22", lastName: "End2", email: "user22@pepsi.com", phoneNumber: "0000-000-0002", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 2, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Admin" }, { divisionId: 11, roleId: 3, divisionName: "Amazon", roleName: "Seller" }] }, { id: 3, firstName: "User33", lastName: "End3", email: "user33@pepsi.com", phoneNumber: "0000-000-0003", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 4, firstName: "User24", lastName: "End2", email: "user24@pepsi.com", phoneNumber: "0000-000-0004", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 5, firstName: "User35", lastName: "End3", email: "user35@pepsi.com", phoneNumber: "0000-000-0005", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 2, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Admin" }] }, { id: 6, firstName: "User26", lastName: "End2", email: "user26@pepsi.com", phoneNumber: "0000-000-0006", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 7, firstName: "User37", lastName: "End3", email: "user37@pepsi.com", phoneNumber: "0000-000-0007", roles: [ { divisionId: 11, roleId: 3, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Dispatcher" }] }, { id: 8, firstName: "User28", lastName: "End2", email: "user28@pepsi.com", phoneNumber: "0000-000-0008", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 9, firstName: "User39", lastName: "End3", email: "user39@pepsi.com", phoneNumber: "0000-000-0009", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 3, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Dispatcher" }] }, { id: 10, firstName: "User210", lastName: "End2", email: "user210@pepsi.com", phoneNumber: "0000-000-0010", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 11, firstName: "User311", lastName: "End3", email: "user311@pepsi.com", phoneNumber: "0000-000-0011", roles: [ { divisionId: 10, roleId: 1, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Driver" }] }, { id: 12, firstName: "User212", lastName: "End2", email: "user212@pepsi.com", phoneNumber: "0000-000-0012", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 13, firstName: "User313", lastName: "End3", email: "user313@pepsi.com", phoneNumber: "0000-000-0013", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 14, firstName: "User214", lastName: "End2", email: "user214@pepsi.com", phoneNumber: "0000-000-0014", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 15, firstName: "User315", lastName: "End3", email: "user315@pepsi.com", phoneNumber: "0000-000-0015", roles: [ { divisionId: 11, roleId: 3, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Dispatcher" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 16, firstName: "User216", lastName: "End2", email: "user216@pepsi.com", phoneNumber: "0000-000-0016", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 3, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Dispatcher" }] }, { id: 17, firstName: "User317", lastName: "End3", email: "user317@pepsi.com", phoneNumber: "0000-000-0017", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 18, firstName: "User218", lastName: "End2", email: "user218@pepsi.com", phoneNumber: "0000-000-0018", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 19, firstName: "User319", lastName: "End3", email: "user319@pepsi.com", phoneNumber: "0000-000-0019", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 20, firstName: "User220", lastName: "End2", email: "user220@pepsi.com", phoneNumber: "0000-000-0020", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 21, firstName: "User221", lastName: "End2", email: "user221@pepsi.com", phoneNumber: "0000-000-0021", roles: [ { divisionId: 10, roleId: 1, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Driver" }] }, { id: 22, firstName: "User322", lastName: "End3", email: "user322@pepsi.com", phoneNumber: "0000-000-0022", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 23, firstName: "User223", lastName: "End2", email: "user223@pepsi.com", phoneNumber: "0000-000-0023", roles: [ { divisionId: 10, roleId: 1, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Driver" }] }, { id: 24, firstName: "User324", lastName: "End3", email: "user324@pepsi.com", phoneNumber: "0000-000-0024", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 25, firstName: "User225", lastName: "End2", email: "user225@pepsi.com", phoneNumber: "0000-000-0025", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 26, firstName: "User126", lastName: "End3", email: "user326@pepsi.com", phoneNumber: "0000-000-0026", roles: [ { divisionId: 10, roleId: 3, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Dispatcher" }] }, { id: 27, firstName: "User027", lastName: "End2", email: "user227@pepsi.com", phoneNumber: "0000-000-0027", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 28, firstName: "User128", lastName: "End3", email: "user328@pepsi.com", phoneNumber: "0000-000-0028", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 29, firstName: "User229", lastName: "End2", email: "user229@pepsi.com", phoneNumber: "0000-000-0029", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 3, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Dispatcher" }] }, { id: 30, firstName: "User330", lastName: "End3", email: "user330@pepsi.com", phoneNumber: "0000-000-0030", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 31, firstName: "User331", lastName: "End3", email: "user331@pepsi.com", phoneNumber: "0000-000-0031", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 32, firstName: "User232", lastName: "End2", email: "user232@pepsi.com", phoneNumber: "0000-000-0032", roles: [ { divisionId: 10, roleId: 1, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Driver" }] }, { id: 33, firstName: "User333", lastName: "End3", email: "user333@pepsi.com", phoneNumber: "0000-000-0033", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 34, firstName: "User234", lastName: "End2", email: "user234@pepsi.com", phoneNumber: "0000-000-0034", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 35, firstName: "User135", lastName: "End3", email: "user335@pepsi.com", phoneNumber: "0000-000-0035", roles: [ { divisionId: 10, roleId: 3, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Dispatcher" }] }, { id: 36, firstName: "User036", lastName: "End2", email: "user236@pepsi.com", phoneNumber: "0000-000-0036", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 3, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Dispatcher" }] }, { id: 37, firstName: "User137", lastName: "End3", email: "user337@pepsi.com", phoneNumber: "0000-000-0037", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 38, firstName: "User238", lastName: "End2", email: "user238@pepsi.com", phoneNumber: "0000-000-0038", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 39, firstName: "User339", lastName: "End3", email: "user339@pepsi.com", phoneNumber: "0000-000-0039", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 40, firstName: "User340", lastName: "End3", email: "user340@pepsi.com", phoneNumber: "0000-000-0040", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 41, firstName: "User241", lastName: "End2", email: "user241@pepsi.com", phoneNumber: "0000-000-0041", roles: [ { divisionId: 10, roleId: 1, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Driver" }] }, { id: 42, firstName: "User342", lastName: "End3", email: "user342@pepsi.com", phoneNumber: "0000-000-0042", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 43, firstName: "User243", lastName: "End2", email: "user243@pepsi.com", phoneNumber: "0000-000-0043", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 44, firstName: "User144", lastName: "End3", email: "user344@pepsi.com", phoneNumber: "0000-000-0044", roles: [ { divisionId: 10, roleId: 3, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Dispatcher" }] }, { id: 45, firstName: "User045", lastName: "End2", email: "user245@pepsi.com", phoneNumber: "0000-000-0045", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 3, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Dispatcher" }] }, { id: 46, firstName: "User146", lastName: "End3", email: "user346@pepsi.com", phoneNumber: "0000-000-0046", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 47, firstName: "User247", lastName: "End2", email: "user247@pepsi.com", phoneNumber: "0000-000-0047", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }, { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 48, firstName: "User348", lastName: "End3", email: "user348@pepsi.com", phoneNumber: "0000-000-0048", roles: [ { divisionId: 10, roleId: 2, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Admin" }] }, { id: 49, firstName: "User349", lastName: "End3", email: "user349@pepsi.com", phoneNumber: "0000-000-0049", roles: [ { divisionId: 11, roleId: 1, divisionName: "Pepsi Beverage Company(1-1-PEPSSTM2)", roleName: "Driver" }] }, { id: 50, firstName: "User250", lastName: "End2", email: "user250@pepsi.com", phoneNumber: "0000-000-0050", roles: [ { divisionId: 10, roleId: 1, divisionName: "Pepsi Co. (0-1-PEPSI)", roleName: "Driver" }] }, ]; @Injectable() export class UserService { editUserInfo: User; setEditUserInfo(editUserInfo: User) { this.editUserInfo = editUserInfo; } getEditUserInfo(): Promise<User> { return new Promise((resolve, reject) => { resolve(this.editUserInfo); }); } constructor(private http: Http, private appSettings: AppSettings) { } get(id: string): Promise<User> { let url = this.getUri(`${id}`); return new Promise((resolve, reject) => { }); } /* Need to work on service to be called. This is just a stub */ getUsers(): Promise<Array<User>> { let url = this.getUri(`query for user lists`); return new Promise((resolve, reject) => { resolve(userLists); }); } saveUser(user: User): Promise<String> { let url = this.getUri(`query to save user`); return new Promise((resolve, reject) => { resolve('user saved'); }); } getEditDetails(userid): Promise<User> { let editUserInfo: User; for (let userInfo of userLists) { if (userInfo.id == userid) { editUserInfo = new User(userInfo.id, userInfo.firstName, userInfo.lastName, userInfo.email, userInfo.phoneNumber, userInfo.roles); } } return new Promise((resolve, reject) => { resolve(editUserInfo); }); } search(): Promise<Array<User>> { let url = this.getUri('query'); return this.http .post(url, { headers: this.getHeaders() }) .toPromise() .then((response) => { return response.json().Items as User[]; }) .catch(this.handleError); } // Constructs the headers collection to use private getHeaders(obj?: any) { const headers = new Headers(); headers.append('Content-Type', 'application/json'); for (let h in obj || {}) { headers.append(h, obj[ h ]); } return headers; } // Constructrs the uri to use for the endpoint private getUri(endpoint?: string): string { return this.appSettings.apiUrl + 'Users/' + endpoint; } private handleError(error: any): Promise<any> { console.error('An error occurred', error); return Promise.reject(error.message || error); } }