/** * @ngdoc personBudgivningarService * @name fasit.services.#personBudgivningarService * @personBudgivningarService * * @description * Service som hanterar personbudgivningar - en lista på alla budgivningar från personen * */ angular.module('fbMocks') .factory('budService', ['$resource', 'resourceService', '$q', function ( $resource: ng.resource.IResourceService, resourceService: fb.IResourceService, $q: ng.IQService ): fb.IBudService { var mockBase: fb.MockBase = new fb.MockBase($q); var bud = $resource('/WebApi/api/bud/:aktivitetId', null, { get: { method: 'GET', cache: false }, save: { method: 'PUT', cache: false, }, remove: { method: 'DELETE', cache: false, } }); var stoppa = function (maeklarObjektId: number, budTyp: number): fb.Budgivning { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, '')) }; return new fb.Budgivning(res); }; var saettNy = function (maeklarObjektId: number, budTyp: number): fb.ResourceBase { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, '')) }; return new fb.ResourceBase(res); }; var annullera = function (bud: fb.Bud): fb.Bud { bud.Status = new fb.ChangeTrack(4); return bud; }; var godkaenn = function (budId: number): fb.Bud { var bud = new fb.Bud({}); bud.BudGodkaennt = new fb.ChangeTrack(true); return bud; }; var avvisa = function (budId: number, avslagsTyp: number): fb.Bud { var bud = new fb.Bud({}); switch (avslagsTyp) { case 0: bud.Status = new fb.ChangeTrack(4); break; case 1: break; case 2: break; default: break; } return bud; }; var get = function (id: number): fb.Bud { var res = resourceService.get(bud, { PersonBudgivningarId: id }); var ret = new fb.Bud(res); return ret; }; var query = function (maeklarObjektId: number): fb.Budgivning { var bud = [{ BudId: 1, Alias: "ave", PersonId: 1000, Bud: 710000, BudAvgivet: '2014-08-11', Status: 0, BudText: '', Villkor:'' }, { Alias: "ove", BudId: 0, PersonId: 1000, Bud: 709000, BudAvgivet: '2014-08-11', Status: 0, BudText: '', Villkor: '' }, { Alias: "ave", BudId: 0, PersonId: 1000, Bud: 708000, BudAvgivet: '2014-08-11', Status: 0, BudText: '', Villkor: '' }, { Alias: "res", BudId: 0, PersonId: 1000, Bud: 707000, BudAvgivet: '2014-08-11', Status: 4, BudText: '', Villkor: 'Att banken godkänner' }, { Alias: "ove", BudId: 0, PersonId: 1000, Bud: 706000, BudAvgivet: '2014-08-11', Status: 0, BudText: '', Villkor: '' }, { Alias: "ave", BudId: 0, PersonId: 1000, Bud: 705000, BudAvgivet: '2014-08-11', Status: 0, BudText: '', Villkor: '' }, { Alias: "ove", BudId: 0, PersonId: 1000, Bud: 704000, BudAvgivet: '2014-08-11', Status: 0, BudText: '', Villkor: 'Godkänd elbesiktning' }, { Alias: "ave", BudId: 0, PersonId: 1000, Bud: 703000, BudAvgivet: '2014-08-11', Status: 0, BudText: '', Villkor: '' }, { Alias: "ove", BudId: 0, PersonId: 1000, Bud: 700000, BudAvgivet: '2014-08-11', Status: 0, BudText: '', Villkor: '' } ]; return new fb.Budgivning({ AktivitetId: 1000, Bud: bud, BudgivningKod: 2000 }); }; var add = function (bud: fb.Bud): fb.Bud { bud.BudId = new fb.ChangeTrack(999); return bud; }; var save = function (bud: fb.Bud): fb.Bud { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.SAVE, '')) }; return new fb.Bud(res); }; var remove = function (bud: fb.Bud): fb.ResourceBase { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.REMOVE, '')) }; return new fb.Bud(res); }; var starta = function (maeklarObjektId: number, budTyp: number): fb.Budgivning { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.ADD, '')) }; return new fb.Budgivning(res); }; var foerstaBudFoerObjekt = function(maeklarObjId: number, personalId: number): any { var res = { $promise: mockBase.createRequest(mockBase.requestIdentifier(fb.RequestType.GET, '/firstbidonobject/')) }; return res; }; return { starta: starta, stoppa: stoppa, laeggBud: add, annullera: annullera, godkaenn: godkaenn, avvisa: avvisa, get: get, query: query, saettBudgivningTyp: saettNy, save: save, remove: remove, foerstaBudFoerObjekt: foerstaBudFoerObjekt }; }]);