public async Task <ActionResult> CompletedOrders(int?idOrder) { if (idOrder == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var order = Mapper.Map <OrderServicesCarWashView>(await _order.GetId(idOrder)); var services = Mapper.Map <IEnumerable <ServisesCarWashOrderView> >(await _servisesCarWash.GetAllId(idOrder)); var employee = Mapper.Map <IEnumerable <OrderCarWashWorkersView> >(await _orderCarWashWorkers.GetTableInclud(idOrder)); if (order.typeOfOrder == (int)TypeOfOrder.TireFitting) { ViewBag.TireService = Mapper.Map <IEnumerable <TireServiceView> >(await _tireService.SelectTireServices(idOrder.Value)); ViewBag.TireChangeService = Mapper.Map <IEnumerable <TireChangeServiceView> >(await _tireChangeService.SelectTireService(idOrder.Value)); } ViewBag.ServicesOrder = services; ViewBag.Employee = employee; return(View(order)); }
// Начисление ЗП и изменения статуса заказа public async Task ChangeOrderStatusAndPayroll(int idOrder, int typeServese, int idPaymentState, int idStatusOrder, int?idAdmin, int?idTeamLead, List <string> idBrigade = null) { var order = await _orderServicesCarWash.GetId(idOrder); var converter = idBrigade == null ? await _orderCarWashWorkers.GetTableInclud(idOrder) : ConvertListToIEnumerable(idBrigade); // Close Order await CloseOrder(idPaymentState, order, idStatusOrder); // Начисление заработной платы сотрудникам await Payroll(order, converter, typeServese); // Начисление заработной платы Администраору await AdminWage(order, (int)TypeService.Sales, idAdmin.Value); // Наичление заработной платы Тим лидеру await AdminWage(order, typeServese, idTeamLead.Value); }
public async Task <IEnumerable <DayResultModelBll> > TotalForEachEmployee() { var result = await _orderCarWashWorkersServices.GetTableInclud(DateTime.Now.Month, DateTime.Now.Year); return(GrupDayResult(result)); }
public async Task <ActionResult> CloseOrder(int OrderId) { var tireService = Mapper.Map <IEnumerable <TireServiceView> >(await _tireService.SelectTireServices(OrderId)); var tireChangeService = Mapper.Map <IEnumerable <TireChangeServiceView> >(await _tireChangeService.SelectTireService(OrderId)); var orderCarWash = Mapper.Map <IEnumerable <OrderCarWashWorkersBll> >(await _orderCarWash.GetTableInclud(OrderId)); var orderService = Mapper.Map <OrderServicesCarWashView>(await _orderServices.GetId(OrderId)); var client = Mapper.Map <ClientsOfCarWashView>(await _clientsOfCarWash.GetId(orderService.IdClientsOfCarWash)); double tireServiceSum = 0; double discont = client.discont ?? 0; double tireChangeServiceSum = 0; foreach (var item in tireChangeService) { tireChangeServiceSum += item.price.Value * item.numberOfTires.Value; } if (orderCarWash == null || orderCarWash.Count() == 0) { var brigade = Mapper.Map <IEnumerable <BrigadeForTodayView> >(await _brigade.GetDateTimeNow()); ViewBag.Brigade = brigade; ViewBag.BrigadeOrder = 0; } else { ViewBag.Brigade = orderCarWash; ViewBag.BrigadeOrder = 1; } if (tireService != null) { tireServiceSum = tireService.Sum(x => x.priceTireFitting).Value; ViewBag.TireService = tireService; ViewBag.TireServiceSum = tireServiceSum; } ViewBag.TireChangeServiceSum = tireChangeServiceSum; ViewBag.TireChangeService = tireChangeService; ViewBag.OrderService = orderService; ViewBag.OrderServiceID = OrderId; ViewBag.Client = client; ViewBag.Discont = client.discont; double totalDiscont = ((tireChangeServiceSum + tireServiceSum) / 100) * discont; ViewBag.Total = (tireChangeServiceSum + tireServiceSum) - totalDiscont; return(View()); }