public JsonResult ObtenerTurnos(byte idTipoBoca, string idPlanta, string estado) { List <Object> eventos = new List <Object>(); List <TrnFeriado> feriados = new List <TrnFeriado>(); List <TrnTurno> turnos = new List <TrnTurno>(); TrnTurno trnFeriado = new TrnTurno(configuration); trnFeriado.Empid = configuration.GetSection("empid").Value; //Toma los feriados por planta y a su vez que el idcalendarioferiado del evento corresponda con el asignado a la boca feriados = trnFeriado.ObtenerFeriados(idPlanta); TrnTurno trnTurno = new TrnTurno(configuration); trnTurno.Empid = configuration.GetSection("empid").Value; trnTurno.Provid = configuration.GetSection("provid").Value; //Toma los turnos asignados a un proveedor, por tipo de boca, y que pertenezcan a la planta turnos = trnTurno.ObtenerTurnos(idTipoBoca, idPlanta, estado); eventos.AddRange(feriados); eventos.AddRange(turnos); //eventos.AddRange(HorariosOcupados(idTipoBoca, codigo)); return(Json(eventos)); }
public DateTime TraerFechaDesdeEvento(int eventID) { TrnTurno trnTurno = _context.Turno.Where(a => a.EventID == eventID).FirstOrDefault(); if (trnTurno != null) { return(trnTurno.Start); } else { return(DateTime.Now); } }
private string TraerColorPorEstados(TrnTurno e) { string color = ""; TrnBocaTipo trnTipoBoca = _context.TrnBocaTipo.Where(a => a.IdTipoBoca == e.IdTipoBoca && a.Empid == configuration.GetSection("empid").Value).FirstOrDefault(); if (trnTipoBoca.Codigo.Trim() == "D") { color = "lightGreen"; } else if (trnTipoBoca.Codigo.Trim() == "R" && !e.ConfirmadoAdherente) { color = "#FA9C99"; //Rojo claro } return(color); }
private string TraerColorPorEstados(TrnTurno e) { string color = ""; TrnBocaTipo trnTipoBoca = _context.TrnBocaTipo.Where(a => a.IdTipoBoca == e.IdTipoBoca && a.Empid == configuration.GetSection("empid").Value).FirstOrDefault(); if (trnTipoBoca.Codigo.Trim() == "R") { color = "orange"; } else { color = "yellow"; } return(color); }
public JsonResult GrabarTurno(TrnTurno e, string idPlanta) { var status = false; var errorFeriado = false; var errorBoca = true; var errorEvento = true; int idBoca = 0; string empid = configuration.GetSection("empid").Value; string provid = configuration.GetSection("provid").Value; TrnFeriado trnFeriado = new TrnFeriado(configuration); TrnTurno trnTurno = new TrnTurno(configuration); //REVISAR SI NO ES FERIADO EL DIA EN EL CUAL QUIERE INGRESAR EL TURNO if (!trnFeriado.EsFeriado(empid, e.Start, e.End)) { //VERIFICAR Y BUSCAR BOCA DISPONIBLE CON EL TIPO DE BOCA SELECCIONADO //PRIMERO BUSCO TODAS LAS BOCAS DISPONIBLES PARA EL TIPO DE BOCA SELECCIONADO List <TrnBoca> trnBocasPorTipo = _context.TrnBoca.Where(a => a.IdTipoBoca == e.IdTipoBoca && a.Empid == empid && a.Estado == true).ToList(); foreach (TrnBoca item in trnBocasPorTipo) { //Si entra quiere decir que encuentra boca por lo tanto no existe error en bocas errorBoca = false; //DE TODAS LAS BOCAS ME FIJO EN CUALQUIERA QUE NO HAYA EVENTOS PARA LA FECHA Y HORA SELECCIONADA //ENTONCES SI NO EXISTE UN EVENTO PARA ESA BOCA Y FECHA/HORA SELECCIONADA TOMO EL ID if (!trnTurno.ExisteEvento(empid, idPlanta, e.EventID, item.IdBoca, e.IdTipoBoca, e.Start, e.End)) { idBoca = item.IdBoca; errorEvento = false; break; } } if (idBoca != 0 && !errorEvento) { if (e.EventID > 0) { var v = _context.Turno.Where(a => a.EventID == e.EventID).FirstOrDefault(); if (v != null) { TransporteTipo transporte = _context.TransporteTipo.Where(a => a.IdTransporteTipo == v.IdTransporteTipo && a.Empid == v.Empid).FirstOrDefault(); v.Provid = provid; v.Empid = empid; v.Subject = e.Subject; v.Start = e.Start; v.End = e.End; v.Description = e.Description; v.IsFullDay = e.IsFullDay; v.ThemeColor = TraerColorPorEstados(e); v.IdTransporteTipo = e.IdTransporteTipo; v.TransporteTipo = transporte == null? "":transporte.Nombre; v.KGPrevistos = e.KGPrevistos; v.PalletsPrevistos = e.PalletsPrevistos; v.IdTipoBoca = e.IdTipoBoca; v.IdBoca = idBoca; v.ConfirmadoProveedor = e.ConfirmadoProveedor; } } else { e.TransporteTipo = e.TransporteTipo == null ? "" : e.TransporteTipo; e.ThemeColor = TraerColorPorEstados(e); e.Empid = empid; e.Provid = provid; e.IdBoca = idBoca; _context.Turno.Add(e); } _context.SaveChanges(); status = true; ViewBag.Message = "El turno se guardó correctamente!"; ViewBag.ResultMessageCss = "alert-success"; } } else { errorFeriado = true; } var jsonResult = new { status = status, errorFeriado = errorFeriado, errorEvento = errorEvento, errorBoca = errorBoca, start = e.Start }; return(Json(jsonResult)); }