public ActionResult ADD_TICKET([FromBody] ADD_TICKET_MODEL Ticket) { Ticket.Client_Id = User.GetClaimType("Id"); var result = service.ADD_TICKET(Ticket); if (result.Status == false) { return(BadRequest(result)); } return(Ok(result)); }
public IREQUEST_RESULT ADD_TICKET(ADD_TICKET_MODEL ticket) { try { ticket.Created_Date = DateTime.Now; if (ticket.Ticket_Number == -1) { var TimeOfNow = DateTime.Now.TimeOfDay; var Config = context.Configuration.FirstOrDefault(); //CHECK IF HAS TICKET BEFORE var SelectedTicket = context.Tickets.FirstOrDefault(t => t.Branch_Departement_Id == ticket.Branch_Departement_Id && t.Client_Id == ticket.Client_Id && t.State_Id != 3 && t.Created_Date.Date == DateTime.Now.Date); if (SelectedTicket != null) { request_result.Status = false; request_result.Error_AR = "يوجد حجز مسبق في نفس اليوم"; request_result.Error_EN = "There is already already ticket Requested"; request_result.Data = SelectedTicket; return(request_result); } //CHECK IF During the Working Time if (Config.Start_Reserving_Time > TimeOfNow || Config.End_Reserving_Time < TimeOfNow) { request_result.Status = false; request_result.Error_AR = "لا يمكن الحجز في هذا الموعد"; request_result.Error_EN = "Time not available for Reservation"; request_result.Data = null; return(request_result); } var CurrentNumber = context.Tickets.Where(t => t.Branch_Departement_Id == ticket.Branch_Departement_Id && t.Created_Date.Date == DateTime.Now.Date) .Select(t => t.Ticket_Number).DefaultIfEmpty(0).Max(); ticket.Ticket_Number = CurrentNumber + 1; Ticket newTicket = mapper.Map <Ticket>(ticket); newTicket.State_Id = 1; context.Tickets.Add(newTicket); context.SaveChanges(); notification_service.Notifiy_New_Ticket(newTicket); request_result.Data = newTicket; } return(request_result); } catch (Exception ex) { request_result.Status = false; request_result.Error_AR = ex.Message + " : " + ex.Source; request_result.Error_EN = ex.Message + " : " + ex.Source; request_result.Data = null; return(request_result); } }