// GET: api/Drivers public IEnumerable <DriverApiModel> GetDrivers() { List <DriverApiModel> drivers = new List <DriverApiModel>(); var config = new MapperConfiguration(cfg => cfg.CreateMap <Driver, DriverApiModel>()); var mapper = config.CreateMapper(); foreach (var driver in db.Drivers) { DriverApiModel model = mapper.Map <DriverApiModel>(driver); drivers.Add(model); } return(drivers); }
public async Task <IHttpActionResult> GetDriver(int id) { Driver driver = await db.Drivers.FindAsync(id); if (driver == null) { return(NotFound()); } var config = new MapperConfiguration(cfg => cfg.CreateMap <Driver, DriverApiModel>()); var mapper = config.CreateMapper(); DriverApiModel model = mapper.Map <DriverApiModel>(driver); return(Ok(driver)); }
public async Task <IHttpActionResult> PutDriver(DriverApiModel model) { var config = new MapperConfiguration(cfg => cfg.CreateMap <DriverApiModel, Driver>()); var mapper = config.CreateMapper(); Driver driver = mapper.Map <Driver>(model); db.Entry(driver).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { throw; } return(StatusCode(HttpStatusCode.NoContent)); }
public async Task UpdateDriver(DriverApiModel driver) { HttpClientHandler httpClientHandler = new HttpClientHandler(); httpClientHandler.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) => { return(true); }; var json = JsonConvert.SerializeObject(driver); HttpContent content = new StringContent(json, Encoding.UTF8, "application/json"); using (var client = new HttpClient(httpClientHandler)) { client.BaseAddress = new Uri(General.BASE_URL + "/"); try { HttpResponseMessage responseMessage = await client.PutAsync("Drivers", content); } catch (Exception e) { throw e; } } }
private async System.Threading.Tasks.Task ConfirmAsync(DeliveryApiModel delivery, DriverApiModel driver, CustomerOrderModel order, OrderStatusModel completedStatus) { // Delivery delivery.Status = "Completed"; delivery.ConfirmationType = "Confirmed by QR Scan"; delivery.TimeDelivered = DateTime.Now; // Driver driver.Status = "Active"; // Order order.OrderStatus = completedStatus; order.OrderStatusId = completedStatus.Id; await deliveryLogic.UpdateDelivery(delivery); await driverLogic.UpdateDriver(driver); await orderLogic.UpdateOrder(order); }