public List <CC_MATERIAL_QUEBRADIZO_CTRL> ConsultarReporteRangoFecha(DateTime fechaDesde, DateTime FechaHasta)
        {
            using (ASIS_PRODEntities db = new ASIS_PRODEntities())
            {
                var listado = db.CC_MATERIAL_QUEBRADIZO_CTRL.Where(x => x.EstadoRegistro == clsAtributos.EstadoRegistroActivo &&
                                                                   x.Fecha >= fechaDesde && x.Fecha <= FechaHasta).OrderByDescending(c => c.Fecha).ToList();

                CC_MATERIAL_QUEBRADIZO_CTRL        cabecera;
                List <CC_MATERIAL_QUEBRADIZO_CTRL> listaCabecera = new List <CC_MATERIAL_QUEBRADIZO_CTRL>();
                if (listado.Any())
                {
                    foreach (var item in listado)
                    {
                        cabecera                        = new CC_MATERIAL_QUEBRADIZO_CTRL();
                        cabecera.IdMaterial             = item.IdMaterial;
                        cabecera.Fecha                  = item.Fecha;
                        cabecera.ObservacionCtrl        = item.ObservacionCtrl;
                        cabecera.EstadoReporte          = item.EstadoReporte;
                        cabecera.FechaIngresoLog        = item.FechaIngresoLog;
                        cabecera.UsuarioIngresoLog      = item.UsuarioIngresoLog;
                        cabecera.UsuarioModificacionLog = item.UsuarioModificacionLog;
                        cabecera.FechaModificacionLog   = item.FechaModificacionLog;
                        cabecera.FechaAprobado          = item.FechaAprobado;
                        cabecera.AprobadoPor            = item.AprobadoPor;
                        cabecera.Turno                  = item.Turno;
                        listaCabecera.Add(cabecera);
                    }
                }
                return(listaCabecera);
            }
        }
        public int GuardarModificarMaterialQuebradizo(CC_MATERIAL_QUEBRADIZO_CTRL guardarModificar, int siAprobar)
        {
            int valor = 0;//GUARDDADO NUEVO

            using (ASIS_PRODEntities db = new ASIS_PRODEntities())
            {
                var validarNombreRepetido = db.CC_MATERIAL_QUEBRADIZO_CTRL.FirstOrDefault(x => x.Fecha == guardarModificar.Fecha && x.Turno == guardarModificar.Turno && x.EstadoRegistro == clsAtributos.EstadoRegistroActivo);
                if (siAprobar != 1 && validarNombreRepetido != null && guardarModificar.IdMaterial != validarNombreRepetido.IdMaterial)
                {
                    valor = 5;
                    return(valor);
                }

                var model = db.CC_MATERIAL_QUEBRADIZO_CTRL.FirstOrDefault(x => x.IdMaterial == guardarModificar.IdMaterial && x.EstadoRegistro == clsAtributos.EstadoRegistroActivo);
                if (model != null)
                {
                    if (siAprobar == 1)
                    {
                        model.EstadoReporte = guardarModificar.EstadoReporte;
                        model.AprobadoPor   = guardarModificar.UsuarioIngresoLog;
                        model.FechaAprobado = guardarModificar.FechaAprobado;
                        valor = 2;//APRROBADO
                    }
                    else
                    {
                        if (guardarModificar.Fecha != DateTime.MinValue)
                        {
                            model.Turno           = guardarModificar.Turno;
                            model.Fecha           = guardarModificar.Fecha;
                            model.ObservacionCtrl = guardarModificar.ObservacionCtrl;
                            valor = 1;//ACTUALIZAR
                        }
                        else
                        {
                            valor = 3; //ERROR DE FECHA
                        }
                    }
                    model.FechaModificacionLog    = guardarModificar.FechaIngresoLog;
                    model.TerminalModificacionLog = guardarModificar.TerminalIngresoLog;
                    model.UsuarioModificacionLog  = guardarModificar.UsuarioIngresoLog;
                }
                else
                {
                    if (guardarModificar.Fecha != DateTime.MinValue)
                    {
                        db.CC_MATERIAL_QUEBRADIZO_CTRL.Add(guardarModificar);
                    }
                    else
                    {
                        valor = 3;
                    }
                }
                db.SaveChanges();
                return(valor);
            }
        }
        public int EliminarMaterialQuebradizo(CC_MATERIAL_QUEBRADIZO_CTRL guardarModificar)
        {
            int valor = 0;

            using (ASIS_PRODEntities db = new ASIS_PRODEntities())
            {
                var model = db.CC_MATERIAL_QUEBRADIZO_CTRL.FirstOrDefault(x => x.IdMaterial == guardarModificar.IdMaterial);
                if (model != null)
                {
                    model.EstadoRegistro          = guardarModificar.EstadoRegistro;
                    model.FechaModificacionLog    = guardarModificar.FechaIngresoLog;
                    model.TerminalModificacionLog = guardarModificar.TerminalIngresoLog;
                    model.UsuarioModificacionLog  = guardarModificar.UsuarioIngresoLog;
                    valor = 1;
                    db.SaveChanges();
                }
                return(valor);
            }
        }
        public CC_MATERIAL_QUEBRADIZO_CTRL ConsultarCabeceraTurno(string turno, DateTime fechaControl)
        {
            using (ASIS_PRODEntities db = new ASIS_PRODEntities())
            {
                CC_MATERIAL_QUEBRADIZO_CTRL listado;

                if (turno == "0")
                {
                    listado = db.CC_MATERIAL_QUEBRADIZO_CTRL.FirstOrDefault(x => x.Fecha.Year == fechaControl.Year && x.Fecha.Month == fechaControl.Month &&
                                                                            x.Fecha.Day == fechaControl.Day &&
                                                                            x.EstadoRegistro == clsAtributos.EstadoRegistroActivo);
                }
                else
                {
                    listado = db.CC_MATERIAL_QUEBRADIZO_CTRL.FirstOrDefault(x => x.Fecha.Year == fechaControl.Year && x.Fecha.Month == fechaControl.Month &&
                                                                            x.Fecha.Day == fechaControl.Day && x.Turno == turno &&
                                                                            x.EstadoRegistro == clsAtributos.EstadoRegistroActivo);
                }
                CC_MATERIAL_QUEBRADIZO_CTRL cabecera;
                if (listado != null)
                {
                    cabecera                   = new CC_MATERIAL_QUEBRADIZO_CTRL();
                    cabecera.IdMaterial        = listado.IdMaterial;
                    cabecera.Fecha             = listado.Fecha;
                    cabecera.ObservacionCtrl   = listado.ObservacionCtrl;
                    cabecera.EstadoReporte     = listado.EstadoReporte;
                    cabecera.FechaIngresoLog   = listado.FechaIngresoLog;
                    cabecera.UsuarioIngresoLog = listado.UsuarioIngresoLog;
                    cabecera.FechaAprobado     = listado.FechaAprobado;
                    cabecera.AprobadoPor       = listado.AprobadoPor;
                    cabecera.Turno             = listado.Turno;
                    return(cabecera);
                }
                return(listado);
            }
        }
        public CC_MATERIAL_QUEBRADIZO_CTRL ConsultarEstadoReporte(int idMaterial)
        {
            using (ASIS_PRODEntities db = new ASIS_PRODEntities())
            {
                CC_MATERIAL_QUEBRADIZO_CTRL listado;
                listado = db.CC_MATERIAL_QUEBRADIZO_CTRL.FirstOrDefault(x => x.IdMaterial == idMaterial && x.EstadoRegistro == clsAtributos.EstadoRegistroActivo);

                CC_MATERIAL_QUEBRADIZO_CTRL cabecera;
                if (listado != null)
                {
                    cabecera                   = new CC_MATERIAL_QUEBRADIZO_CTRL();
                    cabecera.IdMaterial        = listado.IdMaterial;
                    cabecera.Fecha             = listado.Fecha;
                    cabecera.ObservacionCtrl   = listado.ObservacionCtrl;
                    cabecera.EstadoReporte     = listado.EstadoReporte;
                    cabecera.FechaIngresoLog   = listado.FechaIngresoLog;
                    cabecera.UsuarioIngresoLog = listado.UsuarioIngresoLog;
                    cabecera.FechaAprobado     = listado.FechaAprobado;
                    cabecera.AprobadoPor       = listado.AprobadoPor;
                    return(cabecera);
                }
                return(listado);
            }
        }