public HttpResponseMessage Post(ConsumableUsage value) { HttpResponseMessage response = null; ValidateModel(value); if (!ModelState.IsValid) { response = Request.CreateResponse(HttpStatusCode.BadRequest, GetModelErrors()); return(response); } try { service.Save(value); response = Request.CreateResponse(HttpStatusCode.Created, value); string uri = Url.Link("DefaultApi", new { id = value.Id }); response.Headers.Location = new Uri(uri); } catch (Exception ex) { response = Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message); } return(response); }
public void Can_SaveNewConsumable() { var consumable = new Consumable { Id = Guid.NewGuid(), Name = "Zat 1", Type = (byte)ConsumableType.Feed, Unit = "liter", UnitPrice = 10000 }; var house = new HenHouse { Id = Guid.NewGuid(), Name = "House 1", Depreciation = 100, Active = true, PurchaseCost = 100000 }; using (var conn = factory.OpenDbConnection()) { conn.InsertParam(house); conn.InsertParam(consumable); } var usage = new Models.ConsumableUsage { Total = 10000, Date = DateTime.Today, Details = new List <ConsumableUsageDetail> { new ConsumableUsageDetail { ConsumableId = consumable.Id, Count = 10, HouseId = house.Id, SubTotal = 10000, UnitPrice = 100000 } } }; service.Save(usage); using (var conn = factory.OpenDbConnection()) { var usageData = conn.FirstOrDefault <Models.Data.ConsumableUsage>(c => c.Date == usage.Date); var details = conn.Where <Models.Data.ConsumableUsageDetail>(new { UsageId = usageData.Id }); Compare(usageData, details, usage); } }
public override void Execute(object parameter) { try { usageService.Save(Usage); messageBroker.Publish(CommonMessages.SaveUsageSuccess, Usage); } catch (Exception ex) { messageBroker.Publish(CommonMessages.SaveUsageFailed, new Error { Data = Usage, Exception = ex }); } }