private async Task <IActionResult> TakeToWork() { var WhoItWorkNow = HelpDeskFunction.WhoItWorkNow(HelpDeskId); HelpDesk = HelpDeskFunction.GetHelpDesk(HelpDeskId); if (WhoItWorkNow == null || WhoItWorkNow != null && WhoItWorkNow.Follower.Id == FollowerId) { var Inwork = HelpDeskFunction.TakeToWork(HelpDeskId, FollowerId); await SendHelpDesk(HelpDeskId); //уведомляем сотрудников о том что заявку взяли в работу BotMessage = new HelpDeskActionNotifiMessage(HelpDesk, Inwork); await SendMessageAllBotEmployeess(BotMessage.BuildMsg()); return(OkResult); } if (WhoItWorkNow != null && WhoItWorkNow.Id != FollowerId) // заявка в обработке у другого пользователя. Отправляем сообщение с вопрос о переназначении { BotMessage = new OverridePerformerConfirmMessage(HelpDesk, WhoItWorkNow); await EditMessage(BotMessage.BuildMsg()); } return(OkResult); }
private async Task <IActionResult> TakeOrder() { var Order = OrderFunction.GetOrder(OrderId); //Заказ ни кем не обрабатывается if (Order != null && Order.OrdersInWork.Count == 0 || Order != null && Order.OrdersInWork.Count > 0 && Order.OrdersInWork.LastOrDefault().InWork == false) { Order.OrdersInWork.Add(OrderFunction.InsertOrderInWork(OrderId, FollowerId)); BotMessage = new AdminOrderMessage(Order, FollowerId); await EditMessage(BotMessage.BuildMsg()); //уведомляем всех о том что кто-то взял заказ работу BotMessage = new OrderActionNotifiMessage(Order, Order.OrdersInWork.LastOrDefault()); await SendMessageAllBotEmployeess(BotMessage.BuildMsg()); return(OkResult); } //заявка в обработке у тек. пользователя if (Order != null && Order.OrdersInWork.Count > 0 && Order.OrdersInWork.LastOrDefault().InWork == true && Order.OrdersInWork.LastOrDefault().FollowerId == FollowerId) { BotMessage = new AdminOrderMessage(Order, FollowerId); await EditMessage(BotMessage.BuildMsg()); return(OkResult); } //заказ в обработке у кого то другого. Отправляем сообщение с вопрос о переназначении исполнителя if (Order != null && Order.OrdersInWork.Count > 0 && Order.OrdersInWork.LastOrDefault().InWork == true && Order.OrdersInWork.LastOrDefault().FollowerId != FollowerId) { BotMessage = new OverridePerformerConfirmMessage(Order, Order.OrdersInWork.LastOrDefault()); var mess = BotMessage.BuildMsg(); await EditMessage(mess); return(OkResult); } else { return(OkResult); } }