public OrderDeliveryDTO GetByRfid(string rfid, DateTime date, int shift) { var order = _orderRepository.GetByRfid(rfid, date, shift); if (order != null) { if (!order.IsDelivered) { var log = new DeliveryLog { Date = DateTime.Now, Status = 0, Description = "Побарана нарачка", EmployeeId = order.EmployeeId, OrderId = order.Id, SoftMealId = 0 }; _orderRepository.AddDeliveryLog(log); return(new OrderDeliveryDTO { OrderId = order.Id, SoftMealId = 0, IsDelivered = order.IsDelivered, ImageBase64 = order.Plan.Meal.MealImage.ImageBase64, Name = order.Plan.Meal.Name, NameForeign = order.Plan.Meal.NameForeign }); } else { var log = new DeliveryLog { Date = DateTime.Now, Status = 1, Description = "Веќе е подигната нарачка во оваа смена", EmployeeId = order.EmployeeId, OrderId = order.Id, SoftMealId = 0 }; _orderRepository.AddDeliveryLog(log); throw new Exception("Веќе е подигната нарачка во оваа смена"); } } else { var softMeal = _orderRepository.GetSoftMeal(rfid, date, shift); if (softMeal != null) { if (!softMeal.IsDelivered) { var log = new DeliveryLog { Date = DateTime.Now, Status = 2, Description = "Побаран сув оброк", EmployeeId = softMeal.EmployeeId, OrderId = 0, SoftMealId = softMeal.Id }; _orderRepository.AddDeliveryLog(log); return(new OrderDeliveryDTO { OrderId = 0, SoftMealId = softMeal.Id, IsDelivered = softMeal.IsDelivered, ImageBase64 = softMeal.SoftMealDetail.ImageBase64, Name = softMeal.SoftMealDetail.Name, NameForeign = softMeal.SoftMealDetail.NameForeign }); } else { var log = new DeliveryLog { Date = DateTime.Now, Status = 3, Description = "Веќе е подигнат сув оброк во оваа смена", EmployeeId = softMeal.EmployeeId, OrderId = 0, SoftMealId = softMeal.Id }; _orderRepository.AddDeliveryLog(log); throw new Exception("Веќе е подигнат сув оброк во оваа смена"); } } else { var employee = _employeeRepository.GetByRfid(rfid); var softMealDb = new SoftMeal { Date = date, EmployeeId = employee.Id, IsDelivered = false, Shift = shift, SoftMealDetailId = 1 }; _orderRepository.AddSoftMeal(softMealDb); var log = new DeliveryLog { Date = DateTime.Now, Status = 2, Description = "Побаран сув оброк", EmployeeId = softMealDb.EmployeeId, OrderId = 0, SoftMealId = softMealDb.Id }; _orderRepository.AddDeliveryLog(log); var softMealDetail = _orderRepository.GetSoftMealDetail(1); return(new OrderDeliveryDTO { OrderId = 0, SoftMealId = softMealDb.Id, IsDelivered = softMealDb.IsDelivered, ImageBase64 = softMealDetail.ImageBase64, Name = softMealDetail.Name, NameForeign = softMealDetail.NameForeign }); } } }
public void AddSoftMeal(SoftMeal softMeal) { _context.SoftMeals.Add(softMeal); _context.SaveChanges(); }