public static void DeliveryStatusUpdate(Common.OrderDetails orderDetails) { if (OrderDb.orders.Where(o => o.id == orderDetails.OrderId && o.userID == orderDetails.UserId).FirstOrDefault() != null) { OrderDb.orders.Where(o => o.id == orderDetails.OrderId && o.userID == orderDetails.UserId).FirstOrDefault().isDeliveryDone = orderDetails.IsDeliverySuccessful; } }
public async Task <ActionResult> DeliverProduct([FromBody] DeliveryModel deliveryModel) { try { //deliver product var identity = (System.Security.Claims.ClaimsIdentity)HttpContext.User.Identity; var userId = identity.Claims.FirstOrDefault(c => c.Type == "userId").Value; DeliveryDb.deliveryList.Add(new DeliveryModel(DeliveryDb.deliveryList.Count + 1, deliveryModel.orderId, userId, deliveryModel.DeliveredBy, deliveryModel.DeliveryStatus)); //change status in order Uri uri = new Uri($"rabbitmq://{_config.GetValue<string>("RabbitMQHostName")}/delStatus"); var endPoint = await _bus.GetSendEndpoint(uri); var order = new Common.OrderDetails(); order.OrderId = deliveryModel.orderId; order.UserId = deliveryModel.userId; order.IsDeliverySuccessful = deliveryModel.DeliveryStatus; await endPoint.Send(order); _log.LogInformation("Order has been delivered."); return(Ok("Order Delivered")); } catch (Exception ex) { _log.LogInformation("Order can't be delivered."); return(Ok("Order can't be delivered.")); } }