public int GuardarModificarLavadoCisterna(CC_LAVADO_CISTERNA guardarmodificar, int siAprobar)
        {
            int valor = 0;

            using (ASIS_PRODEntities db = new ASIS_PRODEntities())
            {
                var model = db.CC_LAVADO_CISTERNA.FirstOrDefault(x => x.IdLavadoCisterna == guardarmodificar.IdLavadoCisterna && x.EstadoRegistro == guardarmodificar.EstadoRegistro);
                if (model != null)
                {
                    if (siAprobar == 0)
                    {
                        model.Fecha          = guardarmodificar.Fecha;
                        model.QuimUtilizados = guardarmodificar.QuimUtilizados;
                        model.Observacion    = guardarmodificar.Observacion;
                        valor = 1;
                    }
                    else if (siAprobar == 1)
                    {
                        model.EstadoReporte = guardarmodificar.EstadoReporte;
                        model.FechaAprobado = guardarmodificar.FechaAprobado;
                        model.AprobadoPor   = guardarmodificar.UsuarioIngresoLog;
                        valor = 2;
                    }
                    model.FechaModificacionLog    = guardarmodificar.FechaIngresoLog;
                    model.TerminalModificacionLog = guardarmodificar.TerminalIngresoLog;
                    model.UsuarioModificacionLog  = guardarmodificar.UsuarioIngresoLog;
                }
                else
                {
                    db.CC_LAVADO_CISTERNA.Add(guardarmodificar);
                }
                db.SaveChanges();
                return(valor);
            }
        }
 public List <CC_LAVADO_CISTERNA> ConsultarReporteCabecera(DateTime fechaDesde, DateTime fechaHasta)
 {
     using (ASIS_PRODEntities db = new ASIS_PRODEntities())
     {
         var lista = (from c in db.CC_LAVADO_CISTERNA
                      where (c.Fecha >= fechaDesde && c.Fecha <= fechaHasta && c.EstadoRegistro == clsAtributos.EstadoRegistroActivo)
                      orderby c.Fecha descending
                      select new { c.IdLavadoCisterna, c.Fecha, c.EstadoReporte, c.FechaIngresoLog, c.UsuarioIngresoLog, c.FechaAprobado, c.AprobadoPor, c.FechaModificacionLog, c.UsuarioModificacionLog }).ToList();
         List <CC_LAVADO_CISTERNA> listacabecera = new List <CC_LAVADO_CISTERNA>();
         CC_LAVADO_CISTERNA        cabecera;
         foreach (var item in lista)
         {
             cabecera = new CC_LAVADO_CISTERNA();
             cabecera.IdLavadoCisterna       = item.IdLavadoCisterna;
             cabecera.Fecha                  = item.Fecha;
             cabecera.EstadoReporte          = item.EstadoReporte;
             cabecera.FechaIngresoLog        = item.FechaIngresoLog;
             cabecera.UsuarioIngresoLog      = item.UsuarioIngresoLog;
             cabecera.FechaAprobado          = item.FechaAprobado;
             cabecera.FechaModificacionLog   = item.FechaModificacionLog;
             cabecera.UsuarioModificacionLog = item.UsuarioModificacionLog;
             cabecera.AprobadoPor            = item.AprobadoPor;
             listacabecera.Add(cabecera);
         }
         return(listacabecera);
     }
 }
 public JsonResult EliminarLavadoCisterna(CC_LAVADO_CISTERNA model, DateTime fechaDesde)
 {
     try
     {
         lsUsuario = User.Identity.Name.Split('_');
         if (!User.Identity.IsAuthenticated)
         {
             return(Json("101", JsonRequestBehavior.AllowGet));
         }
         clsDControlLavadoCisterna = new clsDControlLavadoCisterna();
         var consultarEstadoReporte = clsDControlLavadoCisterna.ConsultarLavadoCisterna(fechaDesde, Convert.ToDateTime("01-01-2020"), model.IdLavadoCisterna, 0);
         if (consultarEstadoReporte[0].EstadoReporteCab == false)
         {
             model.FechaIngresoLog    = DateTime.Now;
             model.EstadoRegistro     = clsAtributos.EstadoRegistroInactivo;
             model.TerminalIngresoLog = Request.UserHostAddress;
             model.UsuarioIngresoLog  = lsUsuario[0];
             var valor = clsDControlLavadoCisterna.EliminarLavadoCisterna(model);
             if (valor == 0)
             {
                 return(Json("0", JsonRequestBehavior.AllowGet));
             }
             else
             {
                 return(Json("1", JsonRequestBehavior.AllowGet));
             }
         }
         else
         {
             return(Json("2", JsonRequestBehavior.AllowGet));
         }
     }
     catch (DbEntityValidationException e)
     {
         Response.StatusCode = (int)HttpStatusCode.InternalServerError;
         clsDError           = new clsDError();
         lsUsuario           = User.Identity.Name.Split('_');
         string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(),
                                                 "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e);
         return(Json(Mensaje, JsonRequestBehavior.AllowGet));
     }
     catch (Exception ex)
     {
         Response.StatusCode = (int)HttpStatusCode.InternalServerError;
         clsDError           = new clsDError();
         lsUsuario           = User.Identity.Name.Split('_');
         string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(),
                                                 "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null);
         return(Json(Mensaje, JsonRequestBehavior.AllowGet));
     }
 }
 public JsonResult GuardarBandejaModificarLavadoCisterna(CC_LAVADO_CISTERNA model, int siAprobar)
 {
     try
     {
         lsUsuario = User.Identity.Name.Split('_');
         if (!User.Identity.IsAuthenticated)
         {
             return(Json("101", JsonRequestBehavior.AllowGet));
         }
         clsDControlLavadoCisterna = new clsDControlLavadoCisterna();
         model.FechaIngresoLog     = DateTime.Now;
         model.TerminalIngresoLog  = Request.UserHostAddress;
         model.EstadoRegistro      = clsAtributos.EstadoRegistroActivo;
         model.UsuarioIngresoLog   = lsUsuario[0];
         var valor = clsDControlLavadoCisterna.GuardarModificarLavadoCisterna(model, siAprobar);
         if (valor == 0)
         {
             return(Json("0", JsonRequestBehavior.AllowGet));
         }
         else if (valor == 1)
         {
             return(Json("1", JsonRequestBehavior.AllowGet));
         }
         else
         {
             return(Json("2", JsonRequestBehavior.AllowGet));
         }
     }
     catch (DbEntityValidationException e)
     {
         Response.StatusCode = (int)HttpStatusCode.InternalServerError;
         clsDError           = new clsDError();
         lsUsuario           = User.Identity.Name.Split('_');
         string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(),
                                                 "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e);
         return(Json(Mensaje, JsonRequestBehavior.AllowGet));
     }
     catch (Exception ex)
     {
         Response.StatusCode = (int)HttpStatusCode.InternalServerError;
         clsDError           = new clsDError();
         lsUsuario           = User.Identity.Name.Split('_');
         string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(),
                                                 "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null);
         return(Json(Mensaje, JsonRequestBehavior.AllowGet));
     }
 }
        public int EliminarLavadoCisterna(CC_LAVADO_CISTERNA registroEliminar)
        {
            int valor = 0;

            using (ASIS_PRODEntities db = new ASIS_PRODEntities()) {
                var model = db.CC_LAVADO_CISTERNA.FirstOrDefault(x => x.IdLavadoCisterna == registroEliminar.IdLavadoCisterna);
                if (model != null)
                {
                    model.EstadoRegistro          = registroEliminar.EstadoRegistro;
                    model.FechaModificacionLog    = registroEliminar.FechaIngresoLog;
                    model.TerminalModificacionLog = registroEliminar.TerminalIngresoLog;
                    model.UsuarioModificacionLog  = registroEliminar.UsuarioIngresoLog;
                    valor = 1;
                    db.SaveChanges();
                }
                return(valor);
            }
        }
        public JsonResult GuardarModificarLavadoCisterna(CC_LAVADO_CISTERNA model, string idMantCisterna, List <string> idIntermedia, int siAprobar, DateTime fechaDesde)
        {
            var splitIdMantCisterna = idMantCisterna.Split(';');

            try
            {
                lsUsuario = User.Identity.Name.Split('_');
                if (!User.Identity.IsAuthenticated)
                {
                    return(Json("101", JsonRequestBehavior.AllowGet));
                }
                clsDControlLavadoCisterna = new clsDControlLavadoCisterna();
                var  consultarEstadoReporte = clsDControlLavadoCisterna.ConsultarLavadoCisterna(fechaDesde, Convert.ToDateTime("01-01-2020"), model.IdLavadoCisterna, 4);
                bool estadoReporte          = false;
                if (consultarEstadoReporte.Count != 0)
                {
                    estadoReporte = consultarEstadoReporte[0].EstadoReporteCab;
                }
                if (estadoReporte == false)
                {
                    model.FechaIngresoLog    = DateTime.Now;
                    model.EstadoRegistro     = clsAtributos.EstadoRegistroActivo;
                    model.TerminalIngresoLog = Request.UserHostAddress;
                    model.UsuarioIngresoLog  = lsUsuario[0];
                    var valor = clsDControlLavadoCisterna.GuardarModificarLavadoCisterna(model, siAprobar);
                    //GUARDAR EN LA TABLA INTERMEDIA
                    int idCisterna = model.IdLavadoCisterna;
                    foreach (var item in splitIdMantCisterna)
                    {
                        if (!string.IsNullOrWhiteSpace(item))
                        {
                            CC_INTERMEDIA_CTRL_MANT_CISTERNA modelIntermedia = new CC_INTERMEDIA_CTRL_MANT_CISTERNA();
                            modelIntermedia.IdCtrlLavadoCisterna = Convert.ToInt32(idCisterna);
                            modelIntermedia.IdMantCisterna       = Convert.ToInt32(item);
                            modelIntermedia.FechaIngresoLog      = DateTime.Now;
                            modelIntermedia.EstadoRegistro       = clsAtributos.EstadoRegistroActivo;
                            modelIntermedia.TerminalIngresoLog   = Request.UserHostAddress;
                            modelIntermedia.UsuarioIngresoLog    = lsUsuario[0];
                            var guardar = clsDControlLavadoCisterna.GuardarModificarLavadoCisternaIntermedia(modelIntermedia);
                        }
                    }
                    //ELIMINO TODOS LOS REGISTROS DE LA TABLA INTERMEDIA QUE CORESPONDAN AL ITEM A ACTUALIZAR. SEGUN LA LISTA idIntermedia PARAMETRO DE ENTRADA
                    //HAGO ESTO YA QUE ES COMPLICADO ATUALIZAR UNO POR UNO, Y PEOR CUANDO EL USUARIO INGRESA 5 CISTERNAS Y LUEGO ACTUALIZA A 1.
                    if (idIntermedia != null)
                    {
                        foreach (var item in idIntermedia)
                        {
                            CC_INTERMEDIA_CTRL_MANT_CISTERNA modelIntermedia = new CC_INTERMEDIA_CTRL_MANT_CISTERNA();
                            modelIntermedia.IdIntermedia       = Convert.ToInt32(item);
                            modelIntermedia.FechaIngresoLog    = DateTime.Now;
                            modelIntermedia.EstadoRegistro     = clsAtributos.EstadoRegistroInactivo;
                            modelIntermedia.TerminalIngresoLog = Request.UserHostAddress;
                            modelIntermedia.UsuarioIngresoLog  = lsUsuario[0];
                            var guardar = clsDControlLavadoCisterna.EliminarLavadoCisternaIntermedia(modelIntermedia);
                        }
                    }
                    if (valor == 0)
                    {
                        return(Json("0", JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        return(Json("1", JsonRequestBehavior.AllowGet));
                    }
                }
                else
                {
                    return(Json("2", JsonRequestBehavior.AllowGet));
                }
            }
            catch (DbEntityValidationException e)
            {
                Response.StatusCode = (int)HttpStatusCode.InternalServerError;
                clsDError           = new clsDError();
                lsUsuario           = User.Identity.Name.Split('_');
                string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(),
                                                        "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), null, e);
                return(Json(Mensaje, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                Response.StatusCode = (int)HttpStatusCode.InternalServerError;
                clsDError           = new clsDError();
                lsUsuario           = User.Identity.Name.Split('_');
                string Mensaje = clsDError.ControlError(lsUsuario[0], Request.UserHostAddress, this.ControllerContext.RouteData.Values["controller"].ToString(),
                                                        "Metodo: " + this.ControllerContext.RouteData.Values["action"].ToString(), ex, null);
                return(Json(Mensaje, JsonRequestBehavior.AllowGet));
            }
        }