public IHttpActionResult SendPackage(PackageDto package) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var customer = context.Customers.FirstOrDefault(c => c.User.UserName == User.Identity.Name); if (customer == null) { return(BadRequest()); } package.Status = PackageStatus.AtClientsLocation; package.Cost = pricingStrategy.GetCost(package); var newPackage = Mapper.Map <Package>(package); context.Packages.Add(newPackage); customer.Packages.Add(newPackage); context.PackageEvents.Add(new PackageEvent { Package = newPackage, EventType = PackageEventType.ReadyToPickFromSender }); context.SaveChanges(); return(Ok()); }
public IHttpActionResult RegisterPackage(PackageDto package) { if (!ModelState.IsValid) { return(BadRequest()); } package.Status = PackageStatus.InWarehouse; package.Cost = pricingStrategy.GetCost(package); var newPackage = Mapper.Map <Package>(package); context.Packages.Add(newPackage); context.PackageEvents.Add(new PackageEvent { EventType = PackageEventType.RegisteredInWarehouse, Package = newPackage }); context.SaveChanges(); return(Ok()); }