Example #1
0
        internal static registrokmhm obtenerEstimado(int equipoID, DateTime fecha)
        {
            registrokmhm anterior    = obtenerUltimo(equipoID, fecha);
            registrokmhm siguiente   = obtenerSiguiente(equipoID, fecha);
            registrokmhm masAnterior = new registrokmhm();

            registrokmhm resultado = new registrokmhm();

            resultado.equipoID = equipoID;
            resultado.fecha    = fecha;

            if (siguiente.fecha.Equals(new registrokmhm().fecha))
            {
                masAnterior = obtenerUltimo(equipoID, fecha.AddMonths(-3));

                TimeSpan diferencia          = anterior.fecha - masAnterior.fecha;
                int      diferenciaHorometro = anterior.horometro - masAnterior.horometro;

                resultado.horometro = (int)(masAnterior.horometro + (resultado.fecha - masAnterior.fecha).TotalDays
                                            * diferenciaHorometro / diferencia.TotalDays);
            }
            else
            {
                TimeSpan diferencia          = siguiente.fecha - anterior.fecha;
                int      diferenciaHorometro = siguiente.horometro - anterior.horometro;

                resultado.horometro = (int)(anterior.horometro + (resultado.fecha - anterior.fecha).TotalDays
                                            * diferenciaHorometro / diferencia.TotalDays);
            }
            return(resultado);
        }
Example #2
0
        public static int obtenerUltimoHorometro(int ID)
        {
            //reportCombustible ultimoReporteCombustible = reportCombustible.obtenerUltimo(ID);
            registrokmhm ultimoRegistroKMHM = registrokmhm.obtenerUltimo(ID);

            //mantencionPreventiva ultimaMantencionPreventiva = mantencionPreventiva.obtenerUltima(ID);
            return(ultimoRegistroKMHM.horometro);
        }
Example #3
0
        public static void actualizarRegistroKmHm(int equipoID, DateTime fecha, int horometro, int kilometraje)
        {
            Context db = new Context();
            db.registrokmhms.RemoveRange(db.registrokmhms.Where(s=>s.equipoID==equipoID && s.fecha==fecha));

            db.SaveChanges();

            registrokmhm nuevo = new registrokmhm();
            nuevo.equipoID = equipoID;
            nuevo.fecha=fecha;
            nuevo.horometro = horometro;
            nuevo.kilometraje = kilometraje;

            db.registrokmhms.Add(nuevo);
            db.SaveChanges();
        }
Example #4
0
        public static void actualizarRegistroKmHm(int equipoID, DateTime fecha, int horometro, int kilometraje)
        {
            Context db = new Context();

            db.registrokmhms.RemoveRange(db.registrokmhms.Where(s => s.equipoID == equipoID && s.fecha == fecha));

            db.SaveChanges();

            registrokmhm nuevo = new registrokmhm();

            nuevo.equipoID    = equipoID;
            nuevo.fecha       = fecha;
            nuevo.horometro   = horometro;
            nuevo.kilometraje = kilometraje;

            db.registrokmhms.Add(nuevo);
            db.SaveChanges();
        }
Example #5
0
        public static registrokmhm obtenerUltimo(int ID)
        {
            registrokmhm retorno = new registrokmhm();
            SqlConnection con = conexion.crearConexion();
            con.Open();

            using (SqlCommand command = new SqlCommand("SELECT TOP 1 registrokmhmID FROM registrokmhm "
                + "WHERE equipoID=@equipoID ORDER BY fecha DESC", con))
            {
                command.Parameters.Add("@equipoID", SqlDbType.Int).Value = ID;
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        retorno = new Context().registrokmhms.Find(int.Parse(reader[0].ToString()));
                    }
                }
            }

            con.Close();
            return retorno;
        }
Example #6
0
        public static registrokmhm obtenerUltimo(int ID)
        {
            registrokmhm  retorno = new registrokmhm();
            SqlConnection con     = conexion.crearConexion();

            con.Open();

            using (SqlCommand command = new SqlCommand("SELECT TOP 1 registrokmhmID FROM registrokmhm "
                                                       + "WHERE equipoID=@equipoID ORDER BY fecha DESC", con))
            {
                command.Parameters.Add("@equipoID", SqlDbType.Int).Value = ID;
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        retorno = new Context().registrokmhms.Find(int.Parse(reader[0].ToString()));
                    }
                }
            }

            con.Close();
            return(retorno);
        }
Example #7
0
        private static registrokmhm obtenerSiguiente(int equipoID, DateTime fin)
        {
            registrokmhm  retorno = new registrokmhm();
            SqlConnection con     = conexion.crearConexion();

            con.Open();

            using (SqlCommand command = new SqlCommand("SELECT TOP 1 registrokmhmID FROM registrokmhm "
                                                       + "WHERE equipoID=@equipoID AND fecha>@fecha ORDER BY fecha ASC", con))
            {
                command.Parameters.Add("@equipoID", SqlDbType.Int).Value   = equipoID;
                command.Parameters.Add("@fecha", SqlDbType.DateTime).Value = fin;
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        retorno = new Context().registrokmhms.Find(int.Parse(reader[0].ToString()));
                    }
                }
            }

            con.Close();
            return(retorno);
        }
        public ActionResult Edit([Bind(Include = "hojaRutaMantenedoresID,fecha,nombreMantenedor, numero")] hojaRutaMantenedores HojaRutaMantenedores,
            FormCollection post)
        {
            if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString())))
            {

                return RedirectToAction("Index", "Home");
            }

            HojaRutaMantenedores.fecha = Formateador.fechaFormatoGuardar(post["fecha"]);
            
            //Se elimina el detalle:
            hojaRutaMantenedores.eliminar(HojaRutaMantenedores.numero);

            //Se guarda el detalle:
            string[] equipoID = Request.Form.GetValues("equipoID");
            string[] lugar = Request.Form.GetValues("lugar");
            string[] horometro = Request.Form.GetValues("horometro");
            string[] trabajoRealizado = Request.Form.GetValues("trabajoRealizado");

            for (int i = 0; i < equipoID.Length; i++)
            {
                hojaRutaMantenedores nueva = new hojaRutaMantenedores();
                nueva.fecha = HojaRutaMantenedores.fecha;
                nueva.numero = HojaRutaMantenedores.numero;
                nueva.nombreMantenedor = HojaRutaMantenedores.nombreMantenedor;
                nueva.equipoID = int.Parse(equipoID[i]);
                nueva.lugar = lugar[i];
                nueva.horometro = int.Parse(horometro[i]);
                nueva.trabajoRealizado = trabajoRealizado[i];

                db.hojaRutaMantenedores.Add(nueva);

                registrokmhm nuevoRegistro = new registrokmhm();
                nuevoRegistro.equipoID = nueva.equipoID;
                nuevoRegistro.fecha = nueva.fecha;
                nuevoRegistro.horometro = nueva.horometro;
                nuevoRegistro.kilometraje = equipos.obtenerUltimoKilometraje(nueva.equipoID);
                //db.registrokmhms.Add(nuevoRegistro);
                registrokmhm.actualizarRegistroKmHm(nuevoRegistro);
            }

            db.SaveChanges();
            return RedirectToAction("Index");
        }
        public ActionResult Create([Bind(Include = "hojaRutaMantenedoresID,fecha,nombreMantenedor")] hojaRutaMantenedores HojaRutaMantenedores,
            FormCollection post)
        {
            if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString())))
            {

                return RedirectToAction("Index", "Home");
            }

            HojaRutaMantenedores.fecha = Formateador.fechaFormatoGuardar(post["fecha"]);
            HojaRutaMantenedores.numero = hojaRutaMantenedores.obtenerNuevoNumero();

            //Se guarda el detalle:
            string[] equipoID = Request.Form.GetValues("equipoID");
            string[] lugar = Request.Form.GetValues("lugar");
            string[] horometro = Request.Form.GetValues("horometro");
            string[] trabajoRealizado = Request.Form.GetValues("trabajoRealizado");

            for (int i = 0; i < equipoID.Length; i++)
            {
                hojaRutaMantenedores nueva = new hojaRutaMantenedores();
                nueva.fecha = HojaRutaMantenedores.fecha;
                nueva.numero = HojaRutaMantenedores.numero;
                nueva.nombreMantenedor = HojaRutaMantenedores.nombreMantenedor;
                nueva.equipoID = int.Parse(equipoID[i]);
                nueva.lugar = lugar[i];
                nueva.horometro = int.Parse(horometro[i]);
                nueva.trabajoRealizado = trabajoRealizado[i];

                db.hojaRutaMantenedores.Add(nueva);

                registrokmhm nuevoRegistro = new registrokmhm();
                nuevoRegistro.equipoID = nueva.equipoID;
                nuevoRegistro.fecha = nueva.fecha;
                nuevoRegistro.horometro = nueva.horometro;
                nuevoRegistro.kilometraje = equipos.obtenerUltimoKilometraje(nueva.equipoID);
                //db.registrokmhms.Add(nuevoRegistro);
                registrokmhm.actualizarRegistroKmHm(nuevoRegistro);
            }

            registro Registro = new registro();
            Registro.fecha = DateTime.Now;
            Registro.tipoAccion = "Crear";
            Registro.tipoDato = "hojaRutaMantenedores";
            Registro.usuario = db.Usuarios.Find(int.Parse(Session["ID"].ToString())).nombreUsuario + " / " + db.Usuarios.Find(int.Parse(Session["ID"].ToString())).nombreCompleto;
            Registro.usuarioID = int.Parse(Session["ID"].ToString());
            Registro.descripcion = Registro.usuario+" Crea nueva Hoja de Ruta de Mantenedores: " + HojaRutaMantenedores.numero;            
            db.Registros.Add(Registro);

            db.SaveChanges();
            return RedirectToAction("Index");
        }
Example #10
0
        private void arreglarDatosHMKM(string tipoDato, int equipoID)
        {
            Context db = new Context();
            List<registrokmhm> datos = db.registrokmhms.Where(s=>s.equipoID==equipoID).OrderByDescending(s=>s.fecha).ToList();

            registrokmhm anterior = new registrokmhm();

            foreach (registrokmhm registro in datos) 
            {
                if (tipoDato.Equals("hm") && registro.horometro == 0 && registro.kilometraje > 0
                    && registro.kilometraje<anterior.horometro) 
                {
                    registro.horometro = registro.kilometraje;
                    registro.kilometraje = 0;
                    db.Entry(registro).State = EntityState.Modified;
                    db.SaveChanges();
                }
                else if (tipoDato.Equals("km") && registro.horometro > 0 && registro.kilometraje == 0 
                    && registro.horometro<anterior.kilometraje) 
                {
                    registro.kilometraje = registro.horometro;
                    registro.horometro = 0;
                    db.Entry(registro).State = EntityState.Modified;
                    db.SaveChanges();
                }
                if(tipoDato.Equals("hm"))
                {
                    if (anterior.horometro > 0 && registro.horometro > anterior.horometro + 1000)
                    {
                        registro.kilometraje = registro.horometro;
                        registro.horometro = 0;
                        db.Entry(registro).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                }
                /*else if(tipoDato.Equals("km"))
                {
                    if (anterior.kilometraje > 0 && anterior.kilometraje - 1000 > registro.kilometraje)
                    {
                        registro.horometro = registro.kilometraje;
                        registro.kilometraje = 0;
                    }
                }//*/

                anterior = registro;
            }
        }
        public ActionResult Create([Bind(Include = "mantencionPreventivaID,equipoID,fecha,horometroActual,kilometrajeActual,horometroProximaMantencion,kilometrajeProximaMantencion,nota")] mantencionPreventiva mantencionPreventiva,
            FormCollection post)
        {
            if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString())))
            {
                return RedirectToAction("Index", "mantencionPreventiva");
            }

            mantencionPreventiva.fecha = Formateador.fechaFormatoGuardar(post["fecha"]);

            db.mantencionPreventivas.Add(mantencionPreventiva);

            registrokmhm nuevo = new registrokmhm();
            nuevo.equipoID = mantencionPreventiva.equipoID;
            nuevo.fecha = mantencionPreventiva.fecha;
            nuevo.horometro = mantencionPreventiva.horometroActual;
            nuevo.kilometraje = mantencionPreventiva.kilometrajeActual;

            //db.registrokmhms.Add(nuevo);
            registrokmhm.actualizarRegistroKmHm(nuevo.equipoID, nuevo.fecha, nuevo.horometro, nuevo.kilometraje);
            
            db.SaveChanges();
            return RedirectToAction("Index");
        }
        public ActionResult generarOTTrabajoPendiente([Bind(Include = "ordenDeTrabajoGeneralID,fechaOTAbierta,fechaOTCerrada,operador,faena,turno,idEquipo,horometro,kilometraje,tipoMantenimientoARealizar,horasMantenimientoNivelCombustible,horasMantenimientoFecha,horasMantenimientoHRInicio,horasMantenimientoHRTermino,horasMantenimientoHRSDetenido,trabajoRealizar,conclusionesTrabajoRealizado,estadoEquipo,trabajosPendientesPorRealizar,fechaTrabajosPendientesPorRealizar,numeroFolio,area,nombreMantenedor,nombreOperador,nombreSupervisor,tipoOTSegunMantenimiento, IDOTAnterior")] ordenDeTrabajoGeneral ordenDeTrabajoGeneral, 
            FormCollection form, HttpPostedFileBase file)
        {
            if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString())))
            {
                return RedirectToAction("Index", "Home");
            }
            ordenDeTrabajoGeneral.fechaOTAbierta = Formateador.fechaFormatoGuardar((string)form["fechaOTAbierta"]);
            ordenDeTrabajoGeneral.fechaOTCerrada = Formateador.fechaFormatoGuardar((string)form["fechaOTCerrada"]);
            ordenDeTrabajoGeneral.horasMantenimientoFecha = Formateador.fechaFormatoGuardar((string)form["horasMantenimientoFecha"]);
            ordenDeTrabajoGeneral.fechaTrabajosPendientesPorRealizar = Formateador.fechaFormatoGuardar((string)form["fechaTrabajosPendientesPorRealizar"]);

            equipos equipo = equipos.ObtenerConTipo(Convert.ToInt32(ordenDeTrabajoGeneral.idEquipo));
            ordenDeTrabajoGeneral.patenteEquipo = equipo.patenteEquipo;
            ordenDeTrabajoGeneral.tipoEquipo = equipo.tipoEquipo;
            ordenDeTrabajoGeneral.verificarTrabajoPendiente = "FALSE";

            ordenDeTrabajoGeneral anterior = db.ordenDeTrabajoGenerals.Find(ordenDeTrabajoGeneral.IDOTAnterior);
            anterior.verificarTrabajoPendiente = "TRUE";

            db.Entry(anterior).State = EntityState.Modified;

            db.ordenDeTrabajoGenerals.Add(ordenDeTrabajoGeneral);
            db.SaveChanges();

            int idOT = ordenDeTrabajoGeneral.ordenDeTrabajoGeneralID;
            string[] ejecutantesDelTrabajo = Request.Form.GetValues("ejecutanteDelTrabajo");
            string[] cargo = Request.Form.GetValues("cargo");
            string[] HH = Request.Form.GetValues("HH");
            for (int i = 0; i < ejecutantesDelTrabajo.Length; i++)
            {
                ejecutanteTrabajoOT ejecutanteTrabajoOT = new ejecutanteTrabajoOT();
                ejecutanteTrabajoOT.ordenDeTrabajoGeneralID = idOT;
                ejecutanteTrabajoOT.nombreTrabajador = ejecutantesDelTrabajo[i];
                ejecutanteTrabajoOT.cargo = cargo[i];
                if (HH[i].Equals(""))
                {
                    ejecutanteTrabajoOT.HH = 0;
                }
                else
                {
                    ejecutanteTrabajoOT.HH = Convert.ToInt32(HH[i]);
                }

                db.ejecutanteTrabajoOTs.Add(ejecutanteTrabajoOT);
            }







            string[] materialUtilizado = Request.Form.GetValues("materialUtilizado");
            string[] matUtcantidad = Request.Form.GetValues("matUtcantidad");
            string[] matUtNumeroParte = Request.Form.GetValues("matUtNumeroParte");
            if (!materialUtilizado[0].Equals(""))
            {


                for (int i = 0; i < materialUtilizado.Length; i++)
                {
                    materialesUtilizadosOT materialesUtilizadosOT = new materialesUtilizadosOT();
                    materialesUtilizadosOT.ordenDeTrabajoGeneralID = idOT;
                    materialesUtilizadosOT.nombreMaterial = materialUtilizado[i];
                    materialesUtilizadosOT.cantidad = Convert.ToDouble(matUtcantidad[i]);
                    materialesUtilizadosOT.materialID = Convert.ToInt32(matUtNumeroParte[i]);
                    materialesUtilizadosOT.precioActual = db.Productos.Find(Convert.ToInt32(matUtNumeroParte[i])).precioUnitario;
                    db.materialesUtilizadosOTs.Add(materialesUtilizadosOT);


                    Maestro maestro = new Maestro();
                    maestro.afiEquipo = equipo.numeroAFI;
                    maestro.fecha = ordenDeTrabajoGeneral.horasMantenimientoFecha;
                    maestro.descripcionProducto = materialUtilizado[i];
                    maestro.cantidadEntrante = 0;
                    maestro.cantidadSaliente = Convert.ToDouble(matUtcantidad[i]);
                    maestro.idOT = idOT;
                    maestro.ProductoID = matUtNumeroParte[i];
                    maestro.observaciones = "Agregada Automaticamente de OT:" + ordenDeTrabajoGeneral.numeroFolio;

                    Producto producto = db.Productos.Find(int.Parse(maestro.ProductoID));
                    producto.stockActual = producto.stockActual - maestro.cantidadSaliente;
                    db.Entry(producto).State = EntityState.Modified;
                    db.Maestros.Add(maestro);

                }
            }
            //save

            string[] materialRequerido = Request.Form.GetValues("materialRequerido");
            string[] matReqCantidad = Request.Form.GetValues("matReqCantidad");
            string[] matReqNumeroParte = Request.Form.GetValues("matReqNumeroParte");



            if (!materialRequerido[0].Equals(""))
            {
                pedidos pedido = new pedidos();
                pedido.fecha = Formateador.formatearFechaCompleta(DateTime.Now);
                pedido.estado = "NUEVA";
                pedido.nota = "Agregado Automaticamente desde OT:" + ordenDeTrabajoGeneral.numeroFolio;
                pedido.idOT = idOT;
                db.pedidos.Add(pedido);
                db.SaveChanges();

                for (int i = 0; i < materialRequerido.Length; i++)
                {
                    materialesRequeridosOT materialesRequeridosOT = new materialesRequeridosOT();
                    materialesRequeridosOT.ordenDeTrabajoGeneralID = idOT;
                    materialesRequeridosOT.nombreMaterial = materialRequerido[i];
                    materialesRequeridosOT.cantidad = Convert.ToDouble(matReqCantidad[i]);
                    materialesRequeridosOT.materialID = Convert.ToInt32(matReqNumeroParte[i]);
                    materialesRequeridosOT.precioActual = db.Productos.Find(Convert.ToInt32(matReqNumeroParte[i])).precioUnitario;
                    db.materialesRequeridosOTs.Add(materialesRequeridosOT);

                    detallePedido detallePedido = new detallePedido();
                    detallePedido.cantidad = Convert.ToInt32(materialesRequeridosOT.cantidad);
                    detallePedido.descripcion = materialesRequeridosOT.nombreMaterial;
                    detallePedido.numeroParte = db.Productos.Find(materialesRequeridosOT.materialID).numeroDeParte;
                    detallePedido.pedidosID = pedido.pedidosID;
                    detallePedido.tipoPedido = "DIRECTA";
                    detallePedido.detalleTipoPedido = db.Equipos.Find(Convert.ToInt32(ordenDeTrabajoGeneral.idEquipo)).numeroAFI.ToString();
                    db.detallePedidos.Add(detallePedido);

                }
            }




            crearCarpetaSiNoExiste();
            string extImage = Convert.ToString(Request.Files["file"].ContentType);
            string[] infoImage = extImage.Split('/');
            string fileExtension = System.IO.Path.GetExtension(Request.Files["file"].FileName);
            string fileLocation = Server.MapPath("~/Images/OrdenTrabajo/") + ordenDeTrabajoGeneral.numeroFolio + "." + infoImage[1];
            if (!fileExtension.Equals(""))
            {
                Request.Files["file"].SaveAs(fileLocation);
                ordenDeTrabajoGeneral.rutaImagen = "Images/OrdenTrabajo/" + ordenDeTrabajoGeneral.numeroFolio + "." + infoImage[1];
            }

            registrokmhm registro = new registrokmhm();
            registro.equipoID = Convert.ToInt32(ordenDeTrabajoGeneral.idEquipo);
            registro.fecha = Formateador.fechaFormatoGuardar((string)form["fechaOTAbierta"]);
            registro.horometro = ordenDeTrabajoGeneral.horometro;
            registro.kilometraje = ordenDeTrabajoGeneral.kilometraje;
            //db.registrokmhms.Add(registro);
            registrokmhm.actualizarRegistroKmHm(registro);

            mantencionPreventiva mantecionPreventiva = new mantencionPreventiva();
            mantecionPreventiva.equipoID = Convert.ToInt32(ordenDeTrabajoGeneral.idEquipo);
            mantecionPreventiva.fecha = ordenDeTrabajoGeneral.horasMantenimientoFecha;
            mantecionPreventiva.horometroActual = ordenDeTrabajoGeneral.horometro;
            mantecionPreventiva.kilometrajeActual = ordenDeTrabajoGeneral.kilometraje;

            if (ordenDeTrabajoGeneral.horometro == 0)
            {
                mantecionPreventiva.horometroProximaMantencion = 0;
            }
            else
            {
                mantecionPreventiva.horometroProximaMantencion = ordenDeTrabajoGeneral.horometro + 400;
            }

            if (ordenDeTrabajoGeneral.kilometraje == 0)
            {
                mantecionPreventiva.kilometrajeProximaMantencion = 0;
            }
            else
            {
                mantecionPreventiva.kilometrajeProximaMantencion = ordenDeTrabajoGeneral.kilometraje + 10000;
            }

            mantecionPreventiva.nota = "Agregado Automaticamente desde OT N°:" + ordenDeTrabajoGeneral.numeroFolio;
            RentaMaq.Models.mantencionPreventiva.reemplazar(mantecionPreventiva);



            db.SaveChanges();

            return RedirectToAction("Index");
        }
        public ActionResult Create([Bind(Include = "mantencionPreventivaID,equipoID,fecha,horometroActual,kilometrajeActual,horometroProximaMantencion,kilometrajeProximaMantencion,nota")] mantencionPreventiva mantencionPreventiva,
            FormCollection post)
        {
            if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString())))
            {
                return RedirectToAction("Index", "mantencionPreventiva");
            }

            mantencionPreventiva.fecha = Formateador.fechaFormatoGuardar(post["fecha"]);

            db.mantencionPreventivas.Add(mantencionPreventiva);

            registrokmhm nuevo = new registrokmhm();
            nuevo.equipoID = mantencionPreventiva.equipoID;
            nuevo.fecha = mantencionPreventiva.fecha;
            nuevo.horometro = mantencionPreventiva.horometroActual;
            nuevo.kilometraje = mantencionPreventiva.kilometrajeActual;

            //db.registrokmhms.Add(nuevo);
            registrokmhm.actualizarRegistroKmHm(nuevo.equipoID, nuevo.fecha, nuevo.horometro, nuevo.kilometraje);
            registro Registro = new registro();
            Registro.fecha = DateTime.Now;
            Registro.tipoAccion = "Crear";
            Registro.tipoDato = "mantencionPreventiva";
            Registro.usuario = db.Usuarios.Find(int.Parse(Session["ID"].ToString())).nombreUsuario + " / " + db.Usuarios.Find(int.Parse(Session["ID"].ToString())).nombreCompleto;
            Registro.usuarioID = int.Parse(Session["ID"].ToString());
            Registro.descripcion = Registro.usuario + " Crea mantencion Preventiva "+mantencionPreventiva.kilometrajeProximaMantencion+" de Equipo "+mantencionPreventiva.equipoID;

            db.SaveChanges();
            return RedirectToAction("Index");
        }
Example #14
0
        internal static registrokmhm obtenerEstimado(int equipoID, DateTime fecha)
        {
            registrokmhm anterior = obtenerUltimo(equipoID, fecha);
            registrokmhm siguiente = obtenerSiguiente(equipoID, fecha);
            registrokmhm masAnterior = new registrokmhm();

            registrokmhm resultado = new registrokmhm();
            resultado.equipoID = equipoID;
            resultado.fecha = fecha;

            if (siguiente.fecha.Equals(new registrokmhm().fecha))
            {
                masAnterior = obtenerUltimo(equipoID, fecha.AddMonths(-3));

                TimeSpan diferencia = anterior.fecha - masAnterior.fecha;
                int diferenciaHorometro = anterior.horometro - masAnterior.horometro;

                resultado.horometro = (int)(masAnterior.horometro + (resultado.fecha - masAnterior.fecha).TotalDays
                    * diferenciaHorometro / diferencia.TotalDays);
            }
            else
            {
                TimeSpan diferencia = siguiente.fecha - anterior.fecha;
                int diferenciaHorometro = siguiente.horometro - anterior.horometro;

                resultado.horometro = (int)(anterior.horometro + (resultado.fecha - anterior.fecha).TotalDays
                    * diferenciaHorometro / diferencia.TotalDays);
            }
            return resultado;
        }
Example #15
0
 public static void actualizarRegistroKmHm(registrokmhm nuevo)
 {
     actualizarRegistroKmHm(nuevo.equipoID, nuevo.fecha, nuevo.horometro, nuevo.kilometraje);
 }
Example #16
0
        private static registrokmhm obtenerSiguiente(int equipoID, DateTime fin)
        {
            registrokmhm retorno = new registrokmhm();
            SqlConnection con = conexion.crearConexion();
            con.Open();

            using (SqlCommand command = new SqlCommand("SELECT TOP 1 registrokmhmID FROM registrokmhm "
                + "WHERE equipoID=@equipoID AND fecha>@fecha ORDER BY fecha ASC", con))
            {
                command.Parameters.Add("@equipoID", SqlDbType.Int).Value = equipoID;
                command.Parameters.Add("@fecha", SqlDbType.DateTime).Value = fin;
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        retorno = new Context().registrokmhms.Find(int.Parse(reader[0].ToString()));
                    }
                }
            }

            con.Close();
            return retorno;
        }
        public ActionResult Create([Bind(Include = "ID,numeroReport,usuario,denominacionEquipo,horometro,kilometraje,fechaHora,litros,ubicacion,operador,quienCarga,responsable,comentario")] reportCombustible reportCombustible, FormCollection post)
        {
            if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString())))
            {

                return RedirectToAction("Index", "reportCombustible");
            }

            reportCombustible.equiposID = equipos.Obtener(int.Parse(post["equipoID"].ToString()));

            reportCombustible.guardar();


            registrokmhm nuevo = new registrokmhm();
            nuevo.equipoID = reportCombustible.equiposID.ID;
            nuevo.fecha = new DateTime(reportCombustible.fechaHora.Year, reportCombustible.fechaHora.Month, reportCombustible.fechaHora.Day);
            nuevo.horometro = reportCombustible.horometro;
            nuevo.kilometraje = reportCombustible.kilometraje;

            //db.registrokmhms.Add(nuevo);
            registrokmhm.actualizarRegistroKmHm(nuevo.equipoID,nuevo.fecha, nuevo.horometro, nuevo.kilometraje);

            db.SaveChanges();

            return RedirectToAction("Index");
        }
Example #18
0
 public static void actualizarRegistroKmHm(registrokmhm nuevo)
 {
     actualizarRegistroKmHm(nuevo.equipoID, nuevo.fecha, nuevo.horometro, nuevo.kilometraje);
 }