angular.module('fbMocks') .factory('intressentService', ['$q', function ($q: ng.IQService): fb.IMockIntressentService { 'use strict'; var intressentLista: fb.List; var mockBase: fb.MockBase = new fb.MockBase($q); function resolve(type: fb.RequestType, identifier: string, returnValue: any): void { mockBase.resolve(mockBase.requestIdentifier(type, identifier), returnValue); } function reject(type: fb.RequestType, identifier: string, returnValue: any): void { mockBase.reject(mockBase.requestIdentifier(type, identifier), returnValue); } function getPendingRequests(): string[] { return mockBase.getPendingRequests(); } function query(MaeklarObjektId: number, roll?: number): fb.List { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.GET, MaeklarObjektId + "")) }; return new fb.List(res, fb.Objektintressent); } function queryParter(MaeklarObjektId: number): fb.List { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.GET, MaeklarObjektId + "")) }; return new fb.List(res, fb.ObjIntressentPartDO); } function get(objektIntressentId: number, roll?: number): fb.NyObjektIntressent { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.GET, objektIntressentId + "")) }; return new fb.NyObjektIntressent(res); } function add(nyObjektIntressent: fb.NyObjektIntressent) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, '')) }; return new fb.NyObjektIntressent(res); } function addPart(maeklarObjektId: number, part: fb.NewObjIntressentPartDO[]) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, '')) }; return new fb.List(res, fb.ObjIntressentPartDO); } function save(objektIntressent: fb.NyObjektIntressent) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.SAVE, objektIntressent.PersonId.toString())) }; return new fb.NyObjektIntressent(res); } function savePart(objektIntressent: fb.ObjIntressentPartDO) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.SAVE, objektIntressent.PersonId.toString())) }; return new fb.ObjIntressentPartDO(res); } function remove(objektIntressent: fb.Objektintressent, roll?: number): fb.ResourceBase { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.REMOVE, objektIntressent.PersonId.value.toString())) }; return new fb.ResourceBase(res); } function removeProjektIntressent(objektIntressent: fb.Objektintressent, roll?: number): fb.ProjektIntressentDO { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.REMOVE, objektIntressent.PersonId.value.toString())) }; return new fb.ProjektIntressentDO(res); } function removeParter(maeklarObjektId: number, parter: fb.ObjIntressentPartDO[]) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, '/MultipleDelete/' + maeklarObjektId)) }; return new fb.ResourceBase(res); } function saettIntressegrad(ObjektIntressentIntressegradDO: fb.ObjektIntressentIntressegradDO) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.REMOVE, ObjektIntressentIntressegradDO.MaeklarObjektId.toString())) }; return new fb.ResourceBase(res); } function addParter(parter: fb.NyObjektIntressent[]) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, '/Parter')) }; return new fb.List(res, fb.NyObjektIntressent); } function getSaeljare(maeklarObjektId: number) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.GET, '/Saeljare')) }; return new fb.List(res, fb.Saeljare); } function saveSaeljare(saeljare: fb.Saeljare) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.SAVE, '/Saeljare')) }; return new fb.Saeljare(res); } function bytRoll(part: fb.ObjIntressentBytRollDO) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.SAVE, '/BytRoll')) }; return new fb.ObjIntressentBytRollDO(res); } function bytPrimaerKontakt(part: fb.ObjIntressentBytPrimaerKontaktDO) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.SAVE, '/BytPrimaerKontakt')) }; return new fb.ObjIntressentBytPrimaerKontaktDO(res); } function haemtaObjIntressentOchRollMedPersonalIdOchMaeklarObjId(maeklarObjId: number, personalId: number): any { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.GET, '/GetByPersonAndMaeklarObjekt')) }; return res; } //Ny ProjektIntressent function getProjektIntressenter(maeklarObjektId: number) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.GET, '/ProjektIntressenterPaaProjekt')) }; return new fb.List(res, fb.Projektintressent); } //Ny ProjektIntressent function intressekopplaProjektIntressentTillFleraObjektIProjekt(person: fb.Projektintressent, maeklarObjektId: number, objektlista: any) { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.SAVE, '/ProjektIntressent')) }; return new fb.Projektintressent(res); } return { resolve: resolve, reject: reject, getPendingRequests: getPendingRequests, query: query, queryParter: queryParter, get: get, add: add, addPart: addPart, save: save, savePart: savePart, remove: remove, removeProjektIntressent: removeProjektIntressent, removeParter: removeParter, saettIntressegrad: saettIntressegrad, addParter: addParter, getSaeljare: getSaeljare, saveSaeljare: saveSaeljare, bytRoll: bytRoll, bytPrimaerKontakt: bytPrimaerKontakt, haemtaObjIntressentOchRollMedPersonalIdOchMaeklarObjId: haemtaObjIntressentOchRollMedPersonalIdOchMaeklarObjId, getProjektIntressenter: getProjektIntressenter, intressekopplaProjektIntressentTillFleraObjektIProjekt: intressekopplaProjektIntressentTillFleraObjektIProjekt, kopiera: null }; }]);