Ejemplo n.º 1
0
 public void opcionIII()
 {
     foreach (KeyValuePair <string, equipos> item in liga)
     {
         equipos equips = item.Value;
         Console.ForegroundColor = ConsoleColor.Blue;
         Console.WriteLine("\n===================================");
         Console.WriteLine("Nombre de Equipo: \t{0}", equips.nombreEq);
         Console.WriteLine(equips.golesC + " " + equips.golesF + " " + equips.puntos);
         Console.WriteLine("===================================");
         Console.WriteLine("{0, -20} {1, -10} {2, 5}", "Nombre", "Posicion", "Goles");
         foreach (jugador j in equips.jugadore)
         {
             //Console.WriteLine("-----------------------------------");
             //Console.WriteLine("Nombre \tPosicion \t Goles");
             Console.WriteLine("{0, -20} {1, -10} {2, 5}", j.nombreJ, j.posicion, j.gol); //Pendiente de parsear
             //Console.WriteLine("Goles: \t\t{0}", j.gol);
         }
     }
     Console.WriteLine("===================================");
     Console.WriteLine("\nPresione <ENTER> para continuar.");
     Console.ReadKey();
 }
Ejemplo n.º 2
0
        public ActionResult Crear(ComponenteMecanicoViewModel model, FormCollection collection)
        {
            var Url    = "";
            var pdfUrl = "";

            ViewBag.obra = _obrasManager.Find(Convert.ToInt32(TempData["obra"]));
            TempData.Keep();
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            try
            {
                /* HttpPostedFileBase pdf = Request.Files["Pdf"];
                 *
                 * if (pdf != null && pdf.ContentLength > 0)
                 * {
                 *   pdfUrl = CargarPdf(pdf);
                 * }
                 * else { pdfUrl = ""; }
                 */

                obras   obra   = _obrasManager.Find(Convert.ToInt32(TempData["obra"]));
                equipos equipo = _equiposManager.Find(Convert.ToInt32(TempData["equipo"]));

                componentesmecanicos cm = _componentesmecanicosManager.Crear(Convert.ToInt32(TempData["equipo"]),
                                                                             model.Tipo,
                                                                             model.Caracteristicas,
                                                                             model.Descripcion,
                                                                             model.Marca,
                                                                             model.Modelo,
                                                                             model.Serial,
                                                                             model.FechaFabricado,
                                                                             model.Duracion,
                                                                             model.Sustitucion,
                                                                             pdfUrl.Trim(), model.FechaSustitucion, model.FechaAlerta, obra.Nombre, equipo.Nombre);

                TempData.Keep();
                HttpPostedFileBase file;

                for (int i = 0; i < Request.Files.Count; i++)
                {
                    file = Request.Files[i];
                    var d = Request.Files.AllKeys[i].ToString();

                    if (d == "Pdf" && file.FileName != "")
                    {
                        Url = CargarPdf(file);
                        _obrasManager.AgregarArchivos(cm.Id, Url, "componentesmecanicos", "fotografia");
                    }
                }

                //TempData["FlashSuccess"] = MensajesResource.INFO_MensajesInstitucionales_CreadoCorrectamente;
                return(RedirectToAction("ComponentesMecanicos", "AdministrarComponentesMecanicos", new { @id = TempData["equipo"] }));
            }
            catch (BusinessException businessEx)
            {
                ModelState.AddModelError(string.Empty, businessEx.Message);

                return(View(model));
            }
            catch (Exception e)
            {
                var log = CommonManager.BuildMessageLog(
                    TipoMensaje.Error,
                    ControllerContext.Controller.ValueProvider.GetValue("controller").RawValue.ToString(),
                    ControllerContext.Controller.ValueProvider.GetValue("action").RawValue.ToString(),
                    e.ToString(), Request);

                CommonManager.WriteAppLog(log, TipoMensaje.Error);

                ModelState.AddModelError(string.Empty, e.Message);
                return(View(model));
            }
        }
Ejemplo n.º 3
0
        public void auto2()
        {
            Random        r       = new Random();
            List <string> nombreE = new List <string>();

            foreach (string item in liga.Keys)
            {
                nombreE.Add(item);
                nombreE.Sort();
            }
            string nombreEq1;
            string nombreEq2;
            int    max = liga.Count();

            for (int i = 0; i < max; i++)
            {
                nombreEq1 = nombreE[i];
                for (int j = 0; j < max; j++)
                {
                    nombreEq2 = nombreE[j];
                    if (!(nombreEq1.Equals(nombreEq2)))
                    {
                        int res = 0;
                        Console.WriteLine("Ingrese los goles del equipo 1");
                        int goles1 = r.Next(1, 5);
                        Console.WriteLine("Ingrese los goles del equipo 2");
                        int goles2 = r.Next(1, 5);

                        if (goles1 > goles2)
                        {
                            res = 1;
                        }
                        else if (goles1 == goles2)
                        {
                            res = 2;
                        }
                        else if (goles1 < goles2)
                        {
                            res = 3;
                        }
                        equipos equipo1     = liga[nombreEq1];
                        equipos equipo2     = liga[nombreEq2];
                        partido partideshon = part(equipo1, equipo2, res, goles1, goles2);
                        switch (res)
                        {
                        case 1:
                            equipo1 = partideshon.ganador;
                            equipo2 = partideshon.perdedor;
                            break;

                        case 2:
                            equipo1 = partideshon.empate1;
                            equipo2 = partideshon.empate2;
                            break;

                        case 3:
                            equipo1 = partideshon.perdedor;
                            equipo2 = partideshon.ganador;
                            break;
                        }
                        Console.WriteLine("equipo 1 {0}", equipo1.nombreEq);
                        Console.WriteLine("ganados: {0}", equipo1.ganados);
                        Console.WriteLine("empatados: {0}", equipo1.empatados);
                        Console.WriteLine("perdidos: {0}", equipo1.perdidos);
                        Console.WriteLine("goles a favor: {0}", equipo1.golesF);
                        Console.WriteLine("goles en contra: {0}", equipo1.golesC);
                        Console.WriteLine("Puntos: {0}", equipo1.puntos);
                        Console.WriteLine("========================================");
                        Console.WriteLine("equipo 2 {0}", equipo2.nombreEq);
                        Console.WriteLine("ganados: {0}", equipo2.ganados);
                        Console.WriteLine("empatados: {0}", equipo2.empatados);
                        Console.WriteLine("perdidos: {0}", equipo2.perdidos);
                        Console.WriteLine("goles a favor: {0}", equipo2.golesF);
                        Console.WriteLine("goles en contra: {0}", equipo2.golesC);
                        Console.WriteLine("Puntos: {0}", equipo2.puntos);
                        liga[nombreEq1] = equipo1;
                        liga[nombreEq2] = equipo2;
                        Console.ReadKey();
                    }
                }
            }
        }
Ejemplo n.º 4
0
        public void auto1()
        {
            Random r = new Random();

            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine(" Nombre equipo 1: ");
            Console.ResetColor();
            string nombreEq1 = Console.ReadLine();

            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine(" Nombre equipo 2: ");
            Console.ResetColor();
            string nombreEq2 = Console.ReadLine();

            if ((liga.ContainsKey(nombreEq1)) && (liga.ContainsKey(nombreEq2)))
            {
                int res = 0;
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("Ingrese los goles del equipo 1");
                Console.ResetColor();
                int goles1 = r.Next(1, 5);
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("Ingrese los goles del equipo 2");
                Console.ResetColor();
                int goles2 = r.Next(1, 5);

                if (goles1 > goles2)
                {
                    res = 1;
                }
                else if (goles1 == goles2)
                {
                    res = 2;
                }
                else if (goles1 < goles2)
                {
                    res = 3;
                }
                equipos equipo1     = liga[nombreEq1];
                equipos equipo2     = liga[nombreEq2];
                partido partideshon = part(equipo1, equipo2, res, goles1, goles2);
                switch (res)
                {
                case 1:
                    equipo1 = partideshon.ganador;
                    equipo2 = partideshon.perdedor;
                    break;

                case 2:
                    equipo1 = partideshon.empate1;
                    equipo2 = partideshon.empate2;
                    break;

                case 3:
                    equipo1 = partideshon.perdedor;
                    equipo2 = partideshon.ganador;
                    break;
                }
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("Equipo 1 {0}", equipo1.nombreEq);
                Console.WriteLine("Ganados: {0}", equipo1.ganados);
                Console.WriteLine("Empatados: {0}", equipo1.empatados);
                Console.WriteLine("Perdidos: {0}", equipo1.perdidos);
                Console.WriteLine("Goles a favor: {0}", equipo1.golesF);
                Console.WriteLine("Goles en contra: {0}", equipo1.golesC);
                Console.WriteLine("Puntos: {0}", equipo1.puntos);
                Console.ResetColor();
                Console.WriteLine("========================================");
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("Equipo 2 {0}", equipo2.nombreEq);
                Console.WriteLine("Ganados: {0}", equipo2.ganados);
                Console.WriteLine("Empatados: {0}", equipo2.empatados);
                Console.WriteLine("Perdidos: {0}", equipo2.perdidos);
                Console.WriteLine("Goles a favor: {0}", equipo2.golesF);
                Console.WriteLine("Goles en contra: {0}", equipo2.golesC);
                Console.WriteLine("Puntos: {0}", equipo2.puntos);
                Console.ResetColor();
                liga[nombreEq1] = equipo1;
                liga[nombreEq2] = equipo2;
                Console.ReadKey();
            }
        }
Ejemplo n.º 5
0
        public void opcionIV()
        {
            if (liga.Count > 5 && liga.Count < 10)
            {
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("===== INGRESO DE RESULTADOS =====");
                Console.WriteLine("\n 1 - Ingreso Manual.");
                Console.WriteLine(" 2 - Ingreso Automatico.");
                Console.WriteLine("==========================");
                Console.ResetColor();
                int opRes = Convert.ToInt32(Console.ReadLine());
                switch (opRes)
                {
                case 1:
                    #region Manual
                    Console.Clear();
                    foreach (KeyValuePair <string, equipos> item in liga)
                    {
                        equipos equips = item.Value;

                        Console.WriteLine("\n===================================");
                        Console.WriteLine("Nombre de Equipo: \t{0}", equips.nombreEq);
                    }
                    Console.WriteLine("===================================");
                    equipos equipo1;
                    equipos equipo2;
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.WriteLine("===== Ingreso MANUAL =====");
                    Console.WriteLine(" Nombre equipo 1: ");
                    Console.ResetColor();
                    string nombreEq1 = Console.ReadLine();
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.WriteLine(" Nombre equipo 2: ");
                    Console.ResetColor();
                    string nombreEq2 = Console.ReadLine();
                    if ((liga.ContainsKey(nombreEq1)) && (liga.ContainsKey(nombreEq2)))
                    {
                        int res = 0;
                        Console.ForegroundColor = ConsoleColor.Blue;
                        Console.WriteLine("Ingrese los goles del equipo 1");
                        Console.ResetColor();
                        int goles1 = Convert.ToInt32(Console.ReadLine());
                        Console.ForegroundColor = ConsoleColor.Blue;
                        Console.WriteLine("Ingrese los goles del equipo 2");
                        Console.ResetColor();
                        int goles2 = Convert.ToInt32(Console.ReadLine());

                        if (goles1 > goles2)
                        {
                            res = 1;
                        }
                        else if (goles1 == goles2)
                        {
                            res = 2;
                        }
                        else if (goles1 < goles2)
                        {
                            res = 3;
                        }
                        equipo1 = liga[nombreEq1];
                        equipo2 = liga[nombreEq2];
                        partido partideshon = part(equipo1, equipo2, res, goles1, goles2);
                        switch (res)
                        {
                        case 1:
                            equipo1 = partideshon.ganador;
                            equipo2 = partideshon.perdedor;
                            break;

                        case 2:
                            equipo1 = partideshon.empate1;
                            equipo2 = partideshon.empate2;
                            break;

                        case 3:
                            equipo1 = partideshon.perdedor;
                            equipo2 = partideshon.ganador;
                            break;
                        }
                        Console.ForegroundColor = ConsoleColor.Blue;
                        Console.WriteLine("Equipo 1 {0}", equipo1.nombreEq);
                        Console.WriteLine("Ganados: {0}", equipo1.ganados);
                        Console.WriteLine("Empatados: {0}", equipo1.empatados);
                        Console.WriteLine("Perdidos: {0}", equipo1.perdidos);
                        Console.WriteLine("Goles a favor: {0}", equipo1.golesF);
                        Console.WriteLine("Goles en contra: {0}", equipo1.golesC);
                        Console.WriteLine("Puntos: {0}", equipo1.puntos);
                        Console.ResetColor();
                        Console.WriteLine("========================================");
                        Console.ForegroundColor = ConsoleColor.Blue;
                        Console.WriteLine("Equipo 2 {0}", equipo2.nombreEq);
                        Console.WriteLine("Ganados: {0}", equipo2.ganados);
                        Console.WriteLine("Empatados: {0}", equipo2.empatados);
                        Console.WriteLine("Perdidos: {0}", equipo2.perdidos);
                        Console.WriteLine("Goles a favor: {0}", equipo2.golesF);
                        Console.WriteLine("Goles en contra: {0}", equipo2.golesC);
                        Console.WriteLine("Puntos: {0}", equipo2.puntos);
                        Console.ResetColor();
                        liga[nombreEq1] = equipo1;
                        liga[nombreEq2] = equipo2;
                        Console.ReadKey();
                    }

                    else
                    {
                        Console.WriteLine("Uno de los equipos no esta registrado");
                    }

                    #endregion
                    break;

                case 2:
                    Console.Clear();
                    #region Automatico
                    Console.ForegroundColor = ConsoleColor.Blue;
                    Console.WriteLine("===== Ingreso AUTOMATICO =====");
                    Console.WriteLine(" 1 - Uno.");
                    Console.WriteLine(" 2 - Todos.");
                    Console.ResetColor();
                    int opAut = Convert.ToInt32(Console.ReadLine());
                    switch (opAut)
                    {
                    case 1:
                        #region Auto UNO
                        auto1();
                        #endregion
                        break;

                    case 2:
                        #region Auto TODOS
                        auto2();
                        #endregion
                        break;
                    }
                    #endregion
                    break;
                }
                gDiccionario(liga);
            }
            else
            {
                Console.WriteLine("No hay suficientes equipos para realizar la liga");
                Console.ReadKey();
            }
        }
Ejemplo n.º 6
0
        public ActionResult Editar(int id, string tipo)
        {
            TempData["fallaid"] = id;
            TempData.Keep();
            var falla = _fallasManager.Find(id);

            // var statusfalla = status;
            ViewBag.Obras =
                new SelectList(_fallasManager.FindObras(), "nombre", "nombre", falla.Obra);

            TempData["obra"] = falla.obra_id;
            TempData.Keep();
            var fallaequiposobra = _fallasManager.FindEquiposPorObra(id);

            ViewBag.ArchivosCorreo = _obrasManager.FindCorreosFallas(id);


            if (fallaequiposobra.Count > 0)
            {
                ViewBag.Equipos =
                    // new SelectList(fallaequiposobra, "nombre", "nombre",falla.Equipo);
                    new SelectList(_equiposManager.GetEquipos(falla.obra_id), "Nombre", "Nombre", falla.Equipo);

                // _equiposManager.GetEquipos(id);

                equipos equipo = _equiposManager.FindPorNombre(falla.Equipo);
                TempData["equipoid"] = equipo.Id;
            }
            else
            {
                ViewBag.Equipos =
                    // new SelectList(fallaequiposobra, "nombre", "nombre",falla.Equipo);
                    new SelectList(_equiposManager.GetEquipos(falla.obra_id), "Nombre", "Nombre", falla.Equipo);
                //   ViewBag.Equipos =
                // new SelectList(_fallasManager.FindEquiposTipo(), "Descripcion", "Descripcion");
            }

            if (tipo != null)
            {
                ViewBag.TipoFallas =
                    new SelectList(_fallasManager.FindTipoFallas(), "descripcion", "descripcion", tipo);

                if (tipo == "Electrónica")
                {
                    ViewBag.Componentes =
                        new SelectList(_fallasManager.FindComponentesElectronicos(), "descripcion", "descripcion", falla.Componente);
                }
                if (tipo == "Mecánica")
                {
                    ViewBag.Componentes =
                        new SelectList(_fallasManager.FindComponentesMecanicos(), "descripcion", "descripcion", falla.Componente);
                }
                else
                {
                    ViewBag.Componentes =
                        new SelectList(_fallasManager.FindComponentes(), "descripcion", "descripcion", falla.Componente);
                }
            }
            else
            {
                ViewBag.TipoFallas =
                    new SelectList(_fallasManager.FindTipoFallas(), "descripcion", "descripcion", falla.Tipo);

                if (falla.Tipo == "Electrónica")
                {
                    ViewBag.Componentes =
                        new SelectList(_fallasManager.FindComponentesElectronicos(), "descripcion", "descripcion", falla.Componente);
                }
                if (falla.Tipo == "Mecánica")
                {
                    ViewBag.Componentes =
                        new SelectList(_fallasManager.FindComponentesMecanicos(), "descripcion", "descripcion", falla.Componente);
                }
                else
                {
                    ViewBag.Componentes =
                        new SelectList(_fallasManager.FindComponentes(), "descripcion", "descripcion", falla.Componente);
                }
            }



            /*
             *
             * ViewBag.Componentes =
             *  new SelectList(_fallasManager.FindComponentesMecanicos(), "descripcion", "descripcion",falla.Componente);
             */
            ViewBag.Status =
                new SelectList(_fallasManager.FindStatus(), "descripcion", "descripcion", falla.StatusFalla);

            ViewBag.Condicion2 =
                new SelectList(new[] { new { ID = "OBRA", Name = "OBRA" }, new { ID = "EQUIPO", Name = "EQUIPO" }, }, "ID", "Name", falla.Condicion);

            /*
             * ViewBag.Condicion =
             * new SelectList(_fallasManager.FindCondicion(), "descripcion", "descripcion", falla.Condicion);
             */
            if (falla == null)
            {
                // TempData["FlashError"] = MensajesResource.ERROR_MensajesInstitucionales_IdIncorrecto;
                return(RedirectToAction("Index"));
            }

            var fallaModel = new FallaViewModel()
            {
                id         = id,
                FechaFalla = falla.FechaFalla.ToString(),
                //Obra = falla.Obra.ToList().,
                Equipo        = falla.Equipo,
                Tipo          = falla.Tipo,
                Componente    = falla.Componente,
                Personal      = falla.Personal,
                StatusFalla   = falla.StatusFalla,
                FechaSolucion = falla.FechaSolucion.ToString(),
                NumeroReporte = falla.NumeroReporte,
                Descripcion   = falla.Descripcion,
                //Condicion = falla.Condicion,
                AccionesTomadas      = falla.AccionesTomadas,
                AccionesRecomendadas = falla.AccionesRecomendadas,
                Duracion             = falla.Duracion.ToString(),
                PersonaReporte       = falla.PersonaReporte,
                GerenciaResponsable  = falla.GerenciaResponsable,
                obraid = falla.obra_id
                         // Fallas = falla.Fallas
            };

            TempData["obraidactual"] = null;
            return(View(fallaModel));
        }
Ejemplo n.º 7
0
        public ActionResult DetalleTiempoMedioParaReparar(int id, string fechaInicio, string fechaFinal, string tipoAgrupacion)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            DateTime Inicio         = DateTime.Today.AddMonths(-1);
            DateTime Termino        = DateTime.Today;
            string   TipoAgrupacion = "semanal";

            if (fechaInicio != null || fechaFinal != null)
            {
                string[] inicioSeparado  = fechaInicio.Split('-');
                string[] terminoSeparado = fechaFinal.Split('-');

                Inicio  = new DateTime(int.Parse(inicioSeparado[2]), int.Parse(inicioSeparado[1]), int.Parse(inicioSeparado[0]));
                Termino = new DateTime(int.Parse(terminoSeparado[2]), int.Parse(terminoSeparado[1]), int.Parse(terminoSeparado[0]));
            }

            if (tipoAgrupacion != null)
            {
                TipoAgrupacion = tipoAgrupacion;
            }

            List <tiempoMedioParaReparar> ListaTiempoMedioReparar = new List <tiempoMedioParaReparar>();
            List <DateTime> ListaInicio  = new List <DateTime>();
            List <DateTime> ListaTermino = new List <DateTime>();

            equipos Equip = equipos.ObtenerConTipo(id);

            //Se realiza el cálculo según la agrupación:

            DateTime inicioTemp  = Inicio;
            DateTime terminoTemp = Inicio;

            if (TipoAgrupacion.Equals("semanal"))
            {
                terminoTemp = Inicio.AddDays(7);
            }
            else if (TipoAgrupacion.Equals("dosSemanas"))
            {
                terminoTemp = terminoTemp.AddDays(14);
            }
            else if (TipoAgrupacion.Equals("mensual"))
            {
                terminoTemp = terminoTemp.AddMonths(1);
            }
            else if (TipoAgrupacion.Equals("bimensual"))
            {
                terminoTemp = terminoTemp.AddMonths(2);
            }
            else if (TipoAgrupacion.Equals("trimestral"))
            {
                terminoTemp = terminoTemp.AddMonths(3);
            }
            else if (TipoAgrupacion.Equals("semestral"))
            {
                terminoTemp = terminoTemp.AddMonths(6);
            }
            else if (TipoAgrupacion.Equals("anual"))
            {
                terminoTemp = terminoTemp.AddYears(1);
            }

            while (terminoTemp < Termino)
            {
                ListaInicio.Add(inicioTemp);
                ListaTermino.Add(terminoTemp);

                tiempoMedioParaReparar MTTR = new tiempoMedioParaReparar(inicioTemp, terminoTemp, Equip);
                ListaTiempoMedioReparar.Add(MTTR);

                inicioTemp = terminoTemp.AddDays(1);
                if (TipoAgrupacion.Equals("semanal"))
                {
                    terminoTemp = terminoTemp.AddDays(7);
                }
                else if (TipoAgrupacion.Equals("dosSemanas"))
                {
                    terminoTemp = terminoTemp.AddDays(14);
                }
                else if (TipoAgrupacion.Equals("mensual"))
                {
                    terminoTemp = terminoTemp.AddMonths(1);
                }
                else if (TipoAgrupacion.Equals("bimensual"))
                {
                    terminoTemp = terminoTemp.AddMonths(2);
                }
                else if (TipoAgrupacion.Equals("trimestral"))
                {
                    terminoTemp = terminoTemp.AddMonths(3);
                }
                else if (TipoAgrupacion.Equals("semestral"))
                {
                    terminoTemp = terminoTemp.AddMonths(6);
                }
                else if (TipoAgrupacion.Equals("anual"))
                {
                    terminoTemp = terminoTemp.AddYears(1);
                }
            }

            if (inicioTemp < Termino)
            {
                terminoTemp = Termino;

                ListaInicio.Add(inicioTemp);
                ListaTermino.Add(terminoTemp);

                tiempoMedioParaReparar MTTR = new tiempoMedioParaReparar(inicioTemp, terminoTemp, Equip);
                ListaTiempoMedioReparar.Add(MTTR);
            }


            ViewBag.Inicio         = Inicio;
            ViewBag.Termino        = Termino;
            ViewBag.TipoAgrupacion = TipoAgrupacion;

            ViewBag.TiempoMedioParaReparar = ListaTiempoMedioReparar;
            ViewBag.ListaInicio            = ListaInicio;
            ViewBag.ListaTermino           = ListaTermino;

            return(View(Equip));
        }
Ejemplo n.º 8
0
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtcodigo.Text == "" || txtnombre.Text == "" || comboBox1.Text == "" || cboGrupo.Text == "" || cboEstado.Text == "")
                {
                    MessageBox.Show("El codigo, nombre, localización, grupo y estado no puede estar vacio", "Revisar", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                {
                    equipos equipo = new equipos();
                    equipo.codigo = txtcodigo.Text;
                    equipo.nombre = txtnombre.Text.Trim();
                    equipo.fecha_ingreso_plant = dateTimePicker1.Value.Year + "-" + dateTimePicker1.Value.Month + "-" + dateTimePicker1.Value.Day + " " + DateTime.Now.ToString("hh:mm:ss");
                    equipo.costo_equipo        = txtcosto_equipo.Text.Trim();
                    equipo.estado               = cboEstado.Text.ToString();
                    equipo.localizacion         = comboBox1.SelectedValue.ToString();
                    equipo.serie_equipo         = txtserie_equipo.Text.Trim();
                    equipo.modelo_equipo        = txtmodelo_equipo.Text;
                    equipo.peso                 = txtpeso.Text.Trim();
                    equipo.altura               = txtaltura.Text.Trim();
                    equipo.ancho                = txtancho.Text.Trim();
                    equipo.largo                = txtlargo.Text.Trim();
                    equipo.fabricante           = txtfabricante.Text.Trim();
                    equipo.marca                = txtmarca.Text.Trim();
                    equipo.caracteristicas_tecn = txtfichas_tecnicas.Text.Trim();
                    equipo.funcion              = txtfuncion.Text.Trim();
                    equipo.localizacion         = comboBox1.SelectedValue.ToString();
                    equipo.capacidad_produccion = txtcapacidad_produccion.Text.Trim();
                    equipo.voltaje              = txtvoltaje.Text.Trim();
                    equipo.libra_presion        = txt_libra_presion.Text.Trim();
                    equipo.manual               = txtmanual.Text.Trim();
                    equipo.tipo_aceite          = txttipo_aceite.Text.Trim();
                    equipo.tipo_grasa           = txttipo_grasa.Text.Trim();
                    equipo.direccion_fabricante = txtdireccion_fabricante.Text.Trim();
                    equipo.telefono_fabricante  = txtelefono_fabricante.Text.Trim();
                    equipo.email_fabricante     = txtemail_fabricante.Text.Trim();
                    equipo.ano_fabricante       = date_ano_fabricante.Value.Year + "-" + date_ano_fabricante.Value.Month + "-" + date_ano_fabricante.Value.Day + " " + DateTime.Now.ToString("hh:mm:ss");
                    equipo.grupo                = cboGrupo.SelectedValue.ToString();
                    equipo.frecuencia           = numFrec.Value.ToString();
                    if (rutaGlobal == correctFileName)
                    {
                        equipo.Imagen = correctFileName;
                    }
                    else if (correctFileName != "" && rutaGlobal != correctFileName)
                    {
                        equipo.Imagen = correctFileName;
                        File.Copy(open.FileName, path + correctFileName);
                    }
                    try
                    {
                        int resultado = EquipoDAL.Actualizar_equipo(equipo);

                        if (resultado > 0)
                        {
                            MessageBox.Show("Datos actualizados correctamente", "Correcto", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            limpiar();
                            btnImg.Visible = false;
                        }
                        else
                        {
                            MessageBox.Show("Los datos no han sido actualizados", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    catch (Exception)
                    {
                        MessageBox.Show("Ocurrió un error al actualizar", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Error, no se pudo actualizar", "Revisar", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Ejemplo n.º 9
0
        // GET: indicadoresDeMantencion/DetalleDisponibilidad/5
        public ActionResult DetalleConfiabilidad(int id, string fechaInicio, string fechaFinal, string tipoAgrupacion)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            DateTime Inicio         = DateTime.Now.AddMonths(-1);
            DateTime Termino        = DateTime.Now;
            string   TipoAgrupacion = "semanal";

            if (fechaInicio != null || fechaFinal != null)
            {
                string[] inicioSeparado  = fechaInicio.Split('-');
                string[] terminoSeparado = fechaFinal.Split('-');

                Inicio  = new DateTime(int.Parse(inicioSeparado[2]), int.Parse(inicioSeparado[1]), int.Parse(inicioSeparado[0]));
                Termino = new DateTime(int.Parse(terminoSeparado[2]), int.Parse(terminoSeparado[1]), int.Parse(terminoSeparado[0]));
            }

            if (tipoAgrupacion != null)
            {
                TipoAgrupacion = tipoAgrupacion;
            }

            List <double>   ListaConfiabilidad = new List <double>();
            List <DateTime> ListaInicio        = new List <DateTime>();
            List <DateTime> ListaTermino       = new List <DateTime>();

            equipos Equip = equipos.ObtenerConTipo(id);

            DateTime inicioTemp  = Inicio;
            DateTime terminoTemp = Inicio;

            if (TipoAgrupacion.Equals("semanal"))
            {
                terminoTemp = Inicio.AddDays(7);
            }
            else if (TipoAgrupacion.Equals("dosSemanas"))
            {
                terminoTemp = terminoTemp.AddDays(14);
            }
            else if (TipoAgrupacion.Equals("mensual"))
            {
                terminoTemp = terminoTemp.AddMonths(1);
            }
            else if (TipoAgrupacion.Equals("bimensual"))
            {
                terminoTemp = terminoTemp.AddMonths(2);
            }
            else if (TipoAgrupacion.Equals("trimestral"))
            {
                terminoTemp = terminoTemp.AddMonths(3);
            }
            else if (TipoAgrupacion.Equals("semestral"))
            {
                terminoTemp = terminoTemp.AddMonths(6);
            }
            else if (TipoAgrupacion.Equals("anual"))
            {
                terminoTemp = terminoTemp.AddYears(1);
            }

            while (terminoTemp < Termino)
            {
                ListaInicio.Add(inicioTemp);
                ListaTermino.Add(terminoTemp);

                tiempoMedioEntreFallas tMedioEntreFallasUlt = new Models.tiempoMedioEntreFallas(Equip, inicioTemp, terminoTemp);

                confiabilidad confiabilidadUlt = new confiabilidad(Equip, inicioTemp, terminoTemp, tMedioEntreFallasUlt);
                double        confUlt          = Math.Round(confiabilidadUlt.RazonDeFallas, 2);
                ListaConfiabilidad.Add(confUlt);


                inicioTemp = terminoTemp.AddDays(1);
                if (TipoAgrupacion.Equals("semanal"))
                {
                    terminoTemp = terminoTemp.AddDays(7);
                }
                else if (TipoAgrupacion.Equals("dosSemanas"))
                {
                    terminoTemp = terminoTemp.AddDays(14);
                }
                else if (TipoAgrupacion.Equals("mensual"))
                {
                    terminoTemp = terminoTemp.AddMonths(1);
                }
                else if (TipoAgrupacion.Equals("bimensual"))
                {
                    terminoTemp = terminoTemp.AddMonths(2);
                }
                else if (TipoAgrupacion.Equals("trimestral"))
                {
                    terminoTemp = terminoTemp.AddMonths(3);
                }
                else if (TipoAgrupacion.Equals("semestral"))
                {
                    terminoTemp = terminoTemp.AddMonths(6);
                }
                else if (TipoAgrupacion.Equals("anual"))
                {
                    terminoTemp = terminoTemp.AddYears(1);
                }
            }

            if (inicioTemp < Termino)
            {
                terminoTemp = Termino;

                ListaInicio.Add(inicioTemp);
                ListaTermino.Add(terminoTemp);

                tiempoMedioEntreFallas tMedioEntreFallasUlt = new Models.tiempoMedioEntreFallas(Equip, inicioTemp, terminoTemp);

                confiabilidad confiabilidadUlt = new confiabilidad(Equip, inicioTemp, terminoTemp, tMedioEntreFallasUlt);
                double        confUlt          = Math.Round(confiabilidadUlt.RazonDeFallas, 2);
                ListaConfiabilidad.Add(confUlt);
            }


            ViewBag.Inicio         = Inicio;
            ViewBag.Termino        = Termino;
            ViewBag.TipoAgrupacion = TipoAgrupacion;

            ViewBag.Confiabilidad = ListaConfiabilidad;
            ViewBag.ListaInicio   = ListaInicio;
            ViewBag.ListaTermino  = ListaTermino;

            return(View(Equip));
        }
Ejemplo n.º 10
0
        public ActionResult Crear(EquipoViewModel model, FormCollection collection)
        {
            var fotografia = "";
            var plano      = "";
            var Url        = "";

            ViewBag.Obras =
                new SelectList(_fallasManager.FindObras(), "id", "nombre");



            try
            {
                /*HttpPostedFileBase filefotografia = Request.Files["Pdf-Fotografia"];
                 *
                 * if (filefotografia != null && filefotografia.ContentLength > 0)
                 * {
                 *  fotografia = CargarPdf(filefotografia);
                 * }
                 * else { fotografia = ""; }
                 *
                 * HttpPostedFileBase fileplano = Request.Files["Pdf-Plano"];
                 *
                 * if (fileplano != null && fileplano.ContentLength > 0)
                 * {
                 *  plano = CargarPdf(fileplano);
                 * }
                 * else { plano = ""; }*/
                equipos  equipo           = new equipos();
                DateTime?fechagarantia    = null;
                DateTime?fechavencimiento = null;
                if (model.FechaGarantia != null && model.FechaVencimiento == null)
                {
                    equipo = _equiposManager.Crear(
                        Convert.ToInt32(TempData["obra_equipo_id"]),
                        model.Nombre,
                        model.Marca,
                        model.Modelo,
                        model.Referencia,
                        model.DimensionesCabina,
                        model.DimensionesHueco,
                        model.CargaNominal,
                        model.Velocidad,
                        model.Recorrido,
                        model.Paradas,
                        model.Accesos,
                        model.VoltajeDeRed,
                        model.PotenciaDeMaquina,
                        model.TipoDeManiobra,
                        model.NumeroDeGuayas,
                        model.CantidadPersonas,
                        fotografia.Trim(),
                        plano.Trim(), DateTime.Parse(model.FechaGarantia), fechavencimiento);
                }
                TempData.Keep();
                if (model.FechaGarantia == null && model.FechaVencimiento != null)
                {
                    equipo = _equiposManager.Crear(
                        Convert.ToInt32(TempData["obra_equipo_id"]),
                        model.Nombre,
                        model.Marca,
                        model.Modelo,
                        model.Referencia,
                        model.DimensionesCabina,
                        model.DimensionesHueco,
                        model.CargaNominal,
                        model.Velocidad,
                        model.Recorrido,
                        model.Paradas,
                        model.Accesos,
                        model.VoltajeDeRed,
                        model.PotenciaDeMaquina,
                        model.TipoDeManiobra,
                        model.NumeroDeGuayas,
                        model.CantidadPersonas,
                        fotografia.Trim(),
                        plano.Trim(), fechagarantia, DateTime.Parse(model.FechaVencimiento));
                }
                TempData.Keep();
                if (model.FechaGarantia == null && model.FechaVencimiento == null)
                {
                    equipo = _equiposManager.Crear(
                        Convert.ToInt32(TempData["obra_equipo_id"]),
                        model.Nombre,
                        model.Marca,
                        model.Modelo,
                        model.Referencia,
                        model.DimensionesCabina,
                        model.DimensionesHueco,
                        model.CargaNominal,
                        model.Velocidad,
                        model.Recorrido,
                        model.Paradas,
                        model.Accesos,
                        model.VoltajeDeRed,
                        model.PotenciaDeMaquina,
                        model.TipoDeManiobra,
                        model.NumeroDeGuayas,
                        model.CantidadPersonas,
                        fotografia.Trim(),
                        plano.Trim(), fechagarantia, fechavencimiento);
                }
                TempData.Keep();
                if (model.FechaGarantia != null && model.FechaVencimiento != null)
                {
                    equipo = _equiposManager.Crear(
                        Convert.ToInt32(TempData["obra_equipo_id"]),
                        model.Nombre,
                        model.Marca,
                        model.Modelo,
                        model.Referencia,
                        model.DimensionesCabina,
                        model.DimensionesHueco,
                        model.CargaNominal,
                        model.Velocidad,
                        model.Recorrido,
                        model.Paradas,
                        model.Accesos,
                        model.VoltajeDeRed,
                        model.PotenciaDeMaquina,
                        model.TipoDeManiobra,
                        model.NumeroDeGuayas,
                        model.CantidadPersonas,
                        fotografia.Trim(),
                        plano.Trim(), DateTime.Parse(model.FechaGarantia), DateTime.Parse(model.FechaVencimiento));
                }
                TempData.Keep();
                HttpPostedFileBase file;

                for (int i = 0; i < Request.Files.Count; i++)
                {
                    file = Request.Files[i];
                    var d = Request.Files.AllKeys[i].ToString();

                    if (d == "Pdf-Fotografia" && file.FileName != "")
                    {
                        Url = CargarPdf(file);
                        _obrasManager.AgregarArchivos(equipo.Id, Url, "equipos", "fotografia");
                    }
                    if (d == "Pdf-Plano" && file.FileName != "")
                    {
                        Url = CargarPdf(file);
                        _obrasManager.AgregarArchivos(equipo.Id, Url, "equipos", "plano");
                    }
                }

                TempData["FlashSuccess"] = MensajesResource.INFO_Equipos_CreadoCorrectamente;
                return(RedirectToAction("Equipos", "AdministrarEquipos", new { @id = TempData["obra_equipo_id"] }));
            }
            catch (BusinessException businessEx)
            {
                ModelState.AddModelError(string.Empty, businessEx.Message);

                return(View(model));
            }
            catch (Exception e)
            {
                var log = CommonManager.BuildMessageLog(
                    TipoMensaje.Error,
                    ControllerContext.Controller.ValueProvider.GetValue("controller").RawValue.ToString(),
                    ControllerContext.Controller.ValueProvider.GetValue("action").RawValue.ToString(),
                    e.ToString(), Request);

                CommonManager.WriteAppLog(log, TipoMensaje.Error);

                ModelState.AddModelError(string.Empty, e.Message);
                return(View(model));
            }
        }
Ejemplo n.º 11
0
        public IHttpActionResult registrar([FromBody] Jugador jugador)
        {
            personas  persona    = new personas();
            jugadores jugadorDto = new jugadores();
            equipos   equipo     = new equipos();

            try
            {
                //Si el id_jugador es distinto de null, entonces estoy haciendo un update y no es necesario verificar el limite.
                if (jugador.id_jugador == null)
                {
                    if (jugador.rol.Equals("jugador"))
                    {
                        string respuesta = verificarLimiteEquipo(jugador);

                        if (!respuesta.Equals(""))
                        {
                            return(BadRequest(respuesta));
                        }
                    }
                    if (jugador.rol.Equals("director_tecnico"))
                    {
                        if (verificarDT((int)jugador.equipo.id_equipo))
                        {
                            return(BadRequest("El equipo ya tiene un director técnico asociado."));
                        }
                    }
                    if (jugador.rol.Equals("representante"))
                    {
                        if (verificarRepresentante((int)jugador.equipo.id_equipo))
                        {
                            return(BadRequest("El equipo ya tiene un representante asociado"));
                        }
                    }
                }

                if (jugador.id_persona == null)
                {
                    jugadorDto.id_persona = registrarPersona(jugador);
                }
                else
                {
                    jugadorDto.id_persona = jugador.id_persona;
                    actualizarPersona(jugador);
                }

                if (jugador.id_jugador == null)
                {
                    jugadorDto.numero     = jugador.numero;
                    jugadorDto.fecha_alta = DateTime.Now;
                    jugadorDto.id_equipo  = jugador.equipo.id_equipo;
                    jugadorDto.rol        = jugador.rol;

                    db.jugadores.Add(jugadorDto);
                    db.SaveChanges();
                    return(Ok());
                }
                else
                {
                    actualizarJugador(jugador);
                    return(Ok());
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
Ejemplo n.º 12
0
        public equipos Crear(int obraid, string nombre = null, string marca             = null, string modelo = null,
                             string referencia         = null, string dimensionescabina = null, string dimensioneshueco = null, string carganominal = null, string velocidad = null
                             , string recorrido        = null, string paradas           = null, string accesos = null, string voltajedered = null, string potenciademaquina  = null, string tipodemaniobra     = null
                             , string numerodeguayas   = null, string cantidadpersonas  = null, string fotografia = null, string plano     = null, DateTime?FechaGarantia    = null, DateTime?FechaVencimiento = null)
        {
            try
            {
                var equipo = new equipos()
                {
                    Nombre            = nombre,
                    Marca             = marca,
                    Modelo            = modelo,
                    Referencia        = referencia,
                    DimensionesCabina = dimensionescabina,
                    DimensionesHueco  = dimensioneshueco,
                    CargaNominal      = carganominal,
                    Velocidad         = velocidad,
                    Recorrido         = recorrido,
                    Paradas           = paradas,
                    Accesos           = accesos,
                    VoltajeDeRed      = voltajedered,
                    PotenciaDeMaquina = potenciademaquina,
                    TipoDeManiobra    = tipodemaniobra,
                    NumeroDeGuayas    = numerodeguayas,
                    CantidadPersonas  = Convert.ToInt32(cantidadpersonas),
                    Fotografia        = fotografia,
                    Plano             = plano,
                    obra_id           = obraid,
                    FechaGarantia     = FechaGarantia,
                    FechaVencimiento  = FechaVencimiento
                };

                var equipoid = _db.equipos.Add(equipo);
                _db.SaveChanges();

                var previo = new previos()
                {
                    equipo_id                          = equipoid.Id,
                    FechaFirmaContrato                 = DateTime.Now,
                    FechaPagoInicialFabrica            = DateTime.Now,
                    FechaPagoInicialEquipo             = DateTime.Now,
                    FechaConstruccion                  = DateTime.Now,
                    FechaSalidaFabrica                 = DateTime.Now,
                    FechaSalidaBuque                   = DateTime.Now,
                    FechaLlegadaBuque                  = DateTime.Now,
                    FechaPeriodoNacionalizacion        = DateTime.Now,
                    FechaSalidaPuertoObra              = DateTime.Now,
                    FechaDescargaResguardo             = DateTime.Now,
                    ActivacionProtocoloGarantiaFabrica = "no",
                    FechaInicioMontaje                 = DateTime.Now,
                    FechaEntregaSoso                   = DateTime.Now,
                    FechaCulminacionMontaje            = DateTime.Now,
                    FechaConfiguracion                 = DateTime.Now,
                    FechaPeriodoPrueba                 = DateTime.Now,
                    FechaInspeccion                    = DateTime.Now,
                };
                var previoid = _db.previos.Add(previo);
                _db.SaveChanges();

                var protocolo = new protocolos()
                {
                    obra_id  = obraid,
                    IdPrevio = previoid.Id
                };
                _db.protocolos.Add(protocolo);
                _db.SaveChanges();

                var herramienta = new herramientas()
                {
                    obra_id   = obraid,
                    previo_id = previoid.Id
                };
                _db.herramientas.Add(herramienta);
                _db.SaveChanges();

                return(equipo);
            }
            catch (Exception e)
            {
                throw e;
            }
        }
Ejemplo n.º 13
0
        private void frmequiposdet_Load(object sender, EventArgs e)
        {
            IntPtr hmenu = GetSystemMenu(this.Handle, 0);
            int    cnt   = GetMenuItemCount(hmenu);

            // remove 'close' action
            RemoveMenu(hmenu, cnt - 1, MF_DISABLED | MF_BYPOSITION);
            // remove extra menu line
            RemoveMenu(hmenu, cnt - 2, MF_DISABLED | MF_BYPOSITION);
            DrawMenuBar(this.Handle);

            comboBox1.DataSource    = op_combos.FillCombo("select cod, nom from tipo_equipo");
            comboBox1.DisplayMember = "nom";
            comboBox1.ValueMember   = "cod";
            comboBox1.Text          = null;

            comboBox2.DataSource    = op_combos.FillCombo("select cod, nom from combustible");
            comboBox2.DisplayMember = "nom";
            comboBox2.ValueMember   = "cod";
            comboBox2.Text          = null;

            comboBox3.DataSource    = op_combos.FillCombo("select codempl as cod, nomempl as nom from empleados");
            comboBox3.DisplayMember = "nom";
            comboBox3.ValueMember   = "cod";
            comboBox3.Text          = null;


            if (!string.IsNullOrEmpty(_id))
            {
                equipos c = op_equipos.GellIdequipos(_id, 1);

                if (c != null)
                {
                    this.maskedTextBox1.Text = c.cod;
                    this.textBox2.Text       = c.des;
                    this.textBox5.Text       = c.cap;

                    this.textBox7.Text           = c.pla;
                    this.textBox3.Text           = c.mod;
                    this.textBox11.Text          = c.ser;
                    this.textBox10.Text          = c.hms.ToString();
                    this.textBox6.Text           = c.kms.ToString();
                    this.textBox4.Text           = c.pot;
                    this.textBox8.Text           = c.vho.ToString();
                    this.textBox9.Text           = c.csh.ToString();
                    this.comboBox1.SelectedValue = c.teq;
                    this.comboBox2.SelectedValue = c.cmb.ToString();
                    this.comboBox3.SelectedValue = c.ope;
                    this.textBox1.Text           = c.ccg.ToString();
                    toolStripButton5.Visible     = true;
                    toolStripButton1.Visible     = false;

                    operacion();
                    toolStripButton3.Visible = false;

                    //foreach (Control u in this.Controls)
                    //{
                    //    if (u is Button)
                    //        u.Enabled = true;
                    //}
                }
            }
            else
            {
                //foreach (Control u in this.Controls)
                //{
                //    if (u is Button)
                //        u.Enabled = false;
                //}

                toolStripButton3.Visible = false;
                toolStripButton5.Visible = false;
                toolStripButton1.Visible = true;
            }
        }
Ejemplo n.º 14
0
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            if (!validacion())
            {
                return;
            }

            equipos c = new equipos();

            c.teq = this.comboBox1.SelectedValue.ToString();

            c.cod = this.maskedTextBox1.Text;
            c.des = this.textBox2.Text;
            c.cap = this.textBox5.Text;
            c.cmb = this.comboBox2.SelectedValue.ToString();
            c.ope = this.comboBox3.SelectedValue.ToString();
            c.pla = this.textBox7.Text;
            c.mod = this.textBox3.Text;
            c.ser = this.textBox11.Text;
            c.hms = 0;
            c.kms = 0;
            c.ccg = decimal.Parse(this.textBox1.Text);

            c.pot = this.textBox4.Text;

            c.vho = decimal.Parse(this.textBox8.Text);
            c.csh = decimal.Parse(this.textBox9.Text);


            int rowsAffected = 0;

            if (string.IsNullOrEmpty(_id))
            {
                rowsAffected = op_equipos.accion(c, 1);
            }
            else
            {
                this.maskedTextBox1.ReadOnly = true;
                c.hms        = decimal.Parse(this.textBox10.Text);
                c.kms        = decimal.Parse(this.textBox6.Text);
                rowsAffected = op_equipos.accion(c, 2);
            }
            if (rowsAffected > 0)
            {
                if (rowsAffected == 1)
                {
                    MessageBox.Show(mensajes.MsjProc1, Application.ProductName.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);
                    operacion();
                    this.toolStripButton3.Visible = true;
                }
                if (rowsAffected == 2)
                {
                    MessageBox.Show(mensajes.MsjProc2, Application.ProductName.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);
                    operacion();
                    this.toolStripButton3.Visible = true;
                }
                if (rowsAffected == 3)
                {
                    MessageBox.Show(mensajes.MsjProc3, Application.ProductName.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Information);
                    operacion();
                    this.toolStripButton3.Visible = true;
                }
                if (rowsAffected == 4)
                {
                    if (MessageBox.Show(mensajes.MsjProc4 + " " + mensajes.MsjProc5, Application.ProductName.ToString(), MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        rowsAffected = op_equipos.accion(c, 2);
                    }
                }
            }
            else
            {
                MessageBox.Show(mensajes.MsjProc0, Application.ProductName.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }
Ejemplo n.º 15
0
        /*public static String guardarImagen(Image imagen)
         * {
         *
         *   using (MemoryStream ms = new MemoryStream())
         *   {
         *
         *       Equipo crear = new Equipo();
         *       imagen.Save(ms, ImageFormat.Jpeg);
         *       byte[] imgArr = ms.ToArray();
         *       return imgArr.ToString();
         *   }
         * }*/

        private void button5_Click(object sender, EventArgs e)
        {
            if (txtnombre.Text != "" || cboEstado.Text != "" || cboGrup.Text != "" || txtlocalizacion.Text != "" || comboBox1.Text != "" || numFrec.Value != 0)
            {
                // Se llama la clase para traer las entidades
                equipos equipo = new equipos();
                int     condicion;

                if (comboBox1.Text == "Equipo")
                {
                    condicion = 1;
                }
                else
                {
                    condicion = 0;
                }


                // Se asignan los valores a cada campo que se enviara a la base de datos
                equipo.codigo              = txtcodigo.Text.Trim();
                equipo.nombre              = txtnombre.Text.Trim();
                equipo.localizacion        = txtlocalizacion.SelectedValue.ToString();
                equipo.fecha_ingreso_plant = dateTimePicker1.Value.Year + "-" + dateTimePicker1.Value.Month + "-" + dateTimePicker1.Value.Day + " " + DateTime.Now.ToString("hh:mm:ss");
                equipo.fecha_ingreso_siste = dateTimePicker2.Value.Year + "-" + dateTimePicker2.Value.Month + "-" + dateTimePicker2.Value.Day + " " + DateTime.Now.ToString("hh:mm:ss");
                equipo.costo_equipo        = txtcosto_equipo.Text.Trim();
                equipo.modelo_equipo       = txtmodelo_equipo.Text.Trim();
                equipo.serie_equipo        = txtserie_equipo.Text.Trim();
                equipo.peso                 = txtpeso.Text.Trim();
                equipo.altura               = txtaltura.Text.Trim();
                equipo.ancho                = txtancho.Text.Trim();
                equipo.largo                = txtlargo.Text.Trim();
                equipo.fabricante           = txtfabricante.Text.Trim();
                equipo.marca                = txtmarca.Text.Trim();
                equipo.realiza_por          = txtrealizado_por.Text.Trim();
                equipo.caracteristicas_tecn = txtcaracte_tecn.Text.Trim();
                equipo.funcion              = txtfuncion.Text.Trim();
                equipo.Imagen               = correFilename;
                equipo.tipo                 = condicion.ToString();
                equipo.capacidad_produccion = txtcapacidad_produccion.Text.Trim();
                equipo.voltaje              = txtvoltaje.Text.Trim();
                equipo.libra_presion        = txtlibra_presion.Text.Trim();
                equipo.manual               = txtmanual.Text.Trim();
                equipo.tipo_aceite          = txttipo_aceite.Text.Trim();
                equipo.tipo_grasa           = txttipo_grasa.Text.Trim();
                equipo.direccion_fabricante = txtdireccion_fabricante.Text.Trim();
                equipo.telefono_fabricante  = txttelefono_fabricante.Text.Trim();
                equipo.email_fabricante     = txtemail_fabricante.Text.Trim();
                equipo.ano_fabricante       = date_ano_fabricacion.Value.Year + "-" + date_ano_fabricacion.Value.Month + "-" + date_ano_fabricacion.Value.Day + " " + DateTime.Now.ToString("hh:mm:ss");
                equipo.estado               = cboEstado.Text.ToString();
                equipo.grupo                = cboGrup.SelectedValue.ToString();
                equipo.frecuencia           = numFrec.Value.ToString();

                if (condicion == 0)
                {
                    //Se hace validacion para que los campos no se vallan vacios
                    if (txtcodigo.Text.Length == 0 || txtnombre.Text.Length == 0 || txtlocalizacion.Text == "" || cboEstado.Text == "" || comboBox1.Text.Length == 0 || cboGrup.SelectedValue.ToString() == "")
                    {
                        MessageBox.Show("Los campos codigo, nombre, localización, estado, grupo y tipo no pueden ir vacios", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        try
                        {
                            String code = EquipoDAL.consultarExistente(equipo.codigo);

                            if (code == equipo.codigo)
                            {
                                MessageBox.Show("El código ya existe", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                            else
                            {
                                if (correFilename != "")
                                {
                                    File.Copy(open.FileName, paths + correFilename);
                                }
                                int resultado = EquipoDAL.Agregar(equipo);
                                // Se valida que se envie datos
                                if (resultado < 0)
                                {
                                    MessageBox.Show("No se pudo guardar correctamente", "No guardado", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                }
                                else
                                {
                                    MessageBox.Show("Área locativa guardada correctamente", "Guardado", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    limpiar();
                                }
                            }
                        }
                        catch (Exception)
                        {
                            MessageBox.Show("Error, la imagen ya se encuentra. Por favor elegir otra imagen o cambiarle el nombre", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                }
                else
                {
                    if (txtcodigo.Text.Length == 0 || txtnombre.Text.Length == 0 || comboBox1.Text.Length == 0 || txtmodelo_equipo.Text == "" || txtserie_equipo.Text == "" || correFilename.Length == 0 ||
                        cboGrup.SelectedValue.ToString() == "" || txtlocalizacion.Text == "" || txtfuncion.Text == "" || cboEstado.Text == "" || txtcaracte_tecn.Text == "")
                    {
                        MessageBox.Show("Los campos codigo, nombre, tipo, modelo, serie, función, característica técnica, estado, grupo, localización e imagen no pueden estar vacios", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        try
                        {
                            String code = EquipoDAL.consultarExistente(equipo.codigo);

                            if (code == equipo.codigo)
                            {
                                MessageBox.Show("El código ya existe", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                            else
                            {
                                File.Copy(open.FileName, paths + correFilename);
                                int resultado = EquipoDAL.Agregar(equipo);

                                // Se valida que se envie datos
                                if (resultado < 0)
                                {
                                    MessageBox.Show("No se pudo guardar correctamente", "No guardado", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                                else
                                {
                                    MessageBox.Show("Equipo guardado correctamente", "Guardado", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    limpiar();
                                }
                            }
                        }
                        catch (Exception)
                        {
                            MessageBox.Show("Error, la imagen ya se encuentra. Por favor elegir otra imagen o cambiarle el nombre", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show("Hay campos vacíos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 16
0
        // GET: indicadoresDeMantencion/Detalle/5
        public ActionResult Detalle(int id, string fechaInicio, string fechaFinal, string tipoAgrupacion)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            DateTime Inicio         = DateTime.Today.AddMonths(-1);
            DateTime Termino        = DateTime.Today;
            string   TipoAgrupacion = "semanal";

            if (fechaInicio != null || fechaFinal != null)
            {
                string[] inicioSeparado  = fechaInicio.Split('-');
                string[] terminoSeparado = fechaFinal.Split('-');

                Inicio  = new DateTime(int.Parse(inicioSeparado[2]), int.Parse(inicioSeparado[1]), int.Parse(inicioSeparado[0]));
                Termino = new DateTime(int.Parse(terminoSeparado[2]), int.Parse(terminoSeparado[1]), int.Parse(terminoSeparado[0]));
            }

            if (tipoAgrupacion != null)
            {
                TipoAgrupacion = tipoAgrupacion;
            }

            List <double>   ListaDisponibilidad       = new List <double>();
            List <double>   ListaTMedioFallas         = new List <double>();
            List <double>   ListaConfiabilidad        = new List <double>();
            List <double>   ListaTiempoMedioReparar   = new List <double>();
            List <double>   ListaTiempoMedioOperacion = new List <double>();
            List <double>   ListaUtilizacion          = new List <double>();
            List <DateTime> ListaInicio  = new List <DateTime>();
            List <DateTime> ListaTermino = new List <DateTime>();

            equipos Equip = equipos.ObtenerConTipo(id);

            //Se realiza el cálculo según la agrupación:

            DateTime inicioTemp  = Inicio;
            DateTime terminoTemp = Inicio;

            if (TipoAgrupacion.Equals("semanal"))
            {
                terminoTemp = Inicio.AddDays(7);
            }
            else if (TipoAgrupacion.Equals("dosSemanas"))
            {
                terminoTemp = terminoTemp.AddDays(14);
            }
            else if (TipoAgrupacion.Equals("mensual"))
            {
                terminoTemp = terminoTemp.AddMonths(1);
            }
            else if (TipoAgrupacion.Equals("bimensual"))
            {
                terminoTemp = terminoTemp.AddMonths(2);
            }
            else if (TipoAgrupacion.Equals("trimestral"))
            {
                terminoTemp = terminoTemp.AddMonths(3);
            }
            else if (TipoAgrupacion.Equals("semestral"))
            {
                terminoTemp = terminoTemp.AddMonths(6);
            }
            else if (TipoAgrupacion.Equals("anual"))
            {
                terminoTemp = terminoTemp.AddYears(1);
            }

            while (terminoTemp < Termino)
            {
                ListaInicio.Add(inicioTemp);
                ListaTermino.Add(terminoTemp);

                disponibilidad disponibilidad = new disponibilidad(inicioTemp, terminoTemp, Equip);
                double         disp           = Math.Round(disponibilidad.tiempoDisponible, 2);
                ListaDisponibilidad.Add(disp);

                tiempoMedioEntreFallas tMedioEntreFallas = new Models.tiempoMedioEntreFallas(Equip, inicioTemp, terminoTemp);
                double tMedioFallas = Math.Round(tMedioEntreFallas.MTBF, 2);
                ListaTMedioFallas.Add(tMedioFallas);

                confiabilidad confiabilidad = new confiabilidad(Equip, inicioTemp, terminoTemp, tMedioEntreFallas);
                double        conf          = Math.Round(confiabilidad.RazonDeFallas, 2);
                ListaConfiabilidad.Add(conf);

                tiempoMedioParaReparar MTTR = new tiempoMedioParaReparar(inicioTemp, terminoTemp, Equip);
                double mttr = Math.Round(MTTR.MTTR, 2);
                ListaTiempoMedioReparar.Add(mttr);

                tiempoMedioDeOperacionAntesDeFalla tMedioOperacion =
                    new tiempoMedioDeOperacionAntesDeFalla(Equip, inicioTemp, terminoTemp, MTTR.cantidadTotalDetenciones, confiabilidad.tMedioEntreFallas.totalHorasOperacionales);
                double tMedioOp = Math.Round(tMedioOperacion.MTBS, 2);
                ListaTiempoMedioOperacion.Add(tMedioOp);

                utilizacion Utiliz = new utilizacion(Equip, inicioTemp, terminoTemp, disponibilidad.tiempoTranscurrido, disponibilidad.tiemposDeBaja, tMedioEntreFallas.totalHorasOperacionales);
                double      utiliz = Math.Round(Utiliz.Utilizacion, 2);
                ListaUtilizacion.Add(utiliz);

                inicioTemp = terminoTemp.AddDays(1);
                if (TipoAgrupacion.Equals("semanal"))
                {
                    terminoTemp = terminoTemp.AddDays(7);
                }
                else if (TipoAgrupacion.Equals("dosSemanas"))
                {
                    terminoTemp = terminoTemp.AddDays(14);
                }
                else if (TipoAgrupacion.Equals("mensual"))
                {
                    terminoTemp = terminoTemp.AddMonths(1);
                }
                else if (TipoAgrupacion.Equals("bimensual"))
                {
                    terminoTemp = terminoTemp.AddMonths(2);
                }
                else if (TipoAgrupacion.Equals("trimestral"))
                {
                    terminoTemp = terminoTemp.AddMonths(3);
                }
                else if (TipoAgrupacion.Equals("semestral"))
                {
                    terminoTemp = terminoTemp.AddMonths(6);
                }
                else if (TipoAgrupacion.Equals("anual"))
                {
                    terminoTemp = terminoTemp.AddYears(1);
                }
            }

            if (inicioTemp < Termino)
            {
                terminoTemp = Termino;

                ListaInicio.Add(inicioTemp);
                ListaTermino.Add(terminoTemp);

                disponibilidad disponibilidadUlt = new disponibilidad(inicioTemp, terminoTemp, Equip);
                double         dispUlt           = Math.Round(disponibilidadUlt.tiempoDisponible, 2);
                ListaDisponibilidad.Add(dispUlt);

                tiempoMedioEntreFallas tMedioEntreFallasUlt = new Models.tiempoMedioEntreFallas(Equip, inicioTemp, terminoTemp);
                double tMedioFallasUlt = Math.Round(tMedioEntreFallasUlt.MTBF, 2);
                ListaTMedioFallas.Add(tMedioFallasUlt);

                confiabilidad confiabilidadUlt = new confiabilidad(Equip, inicioTemp, terminoTemp, tMedioEntreFallasUlt);
                double        confUlt          = Math.Round(confiabilidadUlt.RazonDeFallas, 2);
                ListaConfiabilidad.Add(confUlt);

                tiempoMedioParaReparar MTTRUlt = new tiempoMedioParaReparar(inicioTemp, terminoTemp, Equip);
                double mttrUlt = Math.Round(MTTRUlt.MTTR, 2);
                ListaTiempoMedioReparar.Add(mttrUlt);

                tiempoMedioDeOperacionAntesDeFalla tMedioOperacionUlt =
                    new tiempoMedioDeOperacionAntesDeFalla(Equip, inicioTemp, terminoTemp, MTTRUlt.cantidadTotalDetenciones, confiabilidadUlt.tMedioEntreFallas.totalHorasOperacionales);
                double tMedioOpUlt = Math.Round(tMedioOperacionUlt.MTBS, 2);
                ListaTiempoMedioOperacion.Add(tMedioOpUlt);

                utilizacion UtilizUlt = new utilizacion(Equip, inicioTemp, terminoTemp, disponibilidadUlt.tiempoTranscurrido, disponibilidadUlt.tiemposDeBaja, tMedioEntreFallasUlt.totalHorasOperacionales);
                double      utilizUlt = Math.Round(UtilizUlt.Utilizacion, 2);
                ListaUtilizacion.Add(utilizUlt);
            }


            ViewBag.Inicio         = Inicio;
            ViewBag.Termino        = Termino;
            ViewBag.TipoAgrupacion = TipoAgrupacion;

            ViewBag.Disponibilidad                   = ListaDisponibilidad;
            ViewBag.TiempoMedioEntreFallas           = ListaTMedioFallas;
            ViewBag.Confiabilidad                    = ListaConfiabilidad;
            ViewBag.TiempoMedioParaReparar           = ListaTiempoMedioReparar;
            ViewBag.TiempoMedioOperacionAntesDeFalla = ListaTiempoMedioOperacion;
            ViewBag.Utilizacion  = ListaUtilizacion;
            ViewBag.ListaInicio  = ListaInicio;
            ViewBag.ListaTermino = ListaTermino;

            return(View(Equip));
        }
Ejemplo n.º 17
0
        //public CuentaConUsuarioMaestro FindWithUsuarioMaestro(int id)
        //{
        //    var query = (from c in _db.cuentas
        //                 from u in c.aspnetusers1
        //                 where u.Tipo == UsuarioManager.Tipo.MaestroProveedor
        //                 && c.Id == id
        //                 select new CuentaConUsuarioMaestro { Cuenta = c, UsuarioMaestro = u });

        //    return query.FirstOrDefault();
        //}

        public obras Crear(string nombre           = null, string personajuridica = null, string direccionfacturacion = null,
                           string direccionoficina = null, string direccionobra   = null, string telefonooficina      = null, string contacto = null, string contacto2 = null
                           , string email          = null, string email2 = null, string foto = null, string mapa = null)
        {
            try
            {
                var obra = new obras()
                {
                    Nombre               = nombre,
                    PersonaJuridica      = personajuridica,
                    DireccionFacturacion = direccionfacturacion,
                    DireccionOficina     = direccionoficina,
                    DireccionObra        = direccionobra,
                    TelefonoOficina      = telefonooficina,
                    Contacto             = contacto,
                    Contacto2            = contacto2,
                    Email  = email,
                    Email2 = email2,
                    foto   = foto,
                    mapa   = mapa
                };

                var id = _db.obras.Add(obra);
                _db.SaveChanges();


                var ascensorprivado = new equipos()
                {
                    Nombre  = "ASCENSOR PRIVADO",
                    obra_id = id.Id
                };
                var idequipoap = _db.equipos.Add(ascensorprivado);
                _db.SaveChanges();

                var previo = new previos()
                {
                    FechaFirmaContrato                 = DateTime.Now,
                    FechaPagoInicialFabrica            = DateTime.Now,
                    FechaPagoInicialEquipo             = DateTime.Now,
                    FechaConstruccion                  = DateTime.Now,
                    FechaSalidaFabrica                 = DateTime.Now,
                    FechaSalidaBuque                   = DateTime.Now,
                    FechaLlegadaBuque                  = DateTime.Now,
                    FechaPeriodoNacionalizacion        = DateTime.Now,
                    FechaSalidaPuertoObra              = DateTime.Now,
                    FechaDescargaResguardo             = DateTime.Now,
                    ActivacionProtocoloGarantiaFabrica = "no",
                    FechaInicioMontaje                 = DateTime.Now,
                    FechaEntregaSoso                   = DateTime.Now,
                    FechaCulminacionMontaje            = DateTime.Now,
                    FechaConfiguracion                 = DateTime.Now,
                    FechaPeriodoPrueba                 = DateTime.Now,
                    FechaInspeccion = DateTime.Now,
                    equipo_id       = idequipoap.Id
                };
                _db.previos.Add(previo);
                _db.SaveChanges();

                /* var ascensorservicio = new equipos()
                 *               {
                 *
                 *                       Nombre = "ASCENSOR DE SERVICIO",
                 *                       obra_id = id.Id
                 *
                 *               };
                 * var idequipoas = _db.equipos.Add(ascensorservicio);
                 *               _db.SaveChanges();
                 *
                 * var previoas = new previos()
                 * {
                 *   equipo_id = idequipoas.Id
                 * };
                 * var previo_id = _db.previos.Add(previoas);
                 * _db.SaveChanges();*/

                var protocolo = new protocolos()
                {
                    obra_id  = id.Id,
                    IdPrevio = previo.Id
                };
                _db.protocolos.Add(protocolo);
                _db.SaveChanges();

                /*var herramienta = new herramientas()
                 * {
                 *  obra_id = id.Id,
                 *  previo_id = previo.Id
                 * };
                 * _db.herramientas.Add(herramienta);
                 * _db.SaveChanges();*/
/*
 *              var montacarro = new equipos()
 *                              {
 *
 *                                      Nombre = "MONTA CARRO",
 *                                      obra_id = id.Id
 *
 *                              };
 *              var idequipomc = _db.equipos.Add(montacarro);
 *                              _db.SaveChanges();
 *
 *              var previomc = new previos()
 *              {
 *                  equipo_id = idequipomc.Id
 *              };
 *              _db.previos.Add(previomc);
 *              _db.SaveChanges();
 */
                var ventamanprev = new ventas()
                {
                    Descripcion = "MANTENIMIENTOS PREVENTIVOS",
                    IdObra      = id.Id
                };
                var idventamp = _db.ventas.Add(ventamanprev);
                _db.SaveChanges();

                var ventamancorrec = new ventas()
                {
                    Descripcion = "MANTENIMIENTOS CORRECTIVOS",
                    IdObra      = id.Id
                };
                var idventamc = _db.ventas.Add(ventamancorrec);
                _db.SaveChanges();

                var ventainfor = new ventas()
                {
                    Descripcion = "INFORMES GENERALES",
                    IdObra      = id.Id
                };
                var idventainforme = _db.ventas.Add(ventainfor);
                _db.SaveChanges();

                var ventarepo = new ventas()
                {
                    Descripcion = "REPORTES DE SUGERENCIAS",
                    IdObra      = id.Id
                };
                var idventasugerencia = _db.ventas.Add(ventarepo);
                _db.SaveChanges();

                var mp = new mantenimientopreventivo()
                {
                    IdVenta = idventamp.Id
                };
                _db.mantenimientopreventivo.Add(mp);
                _db.SaveChanges();

                var mc = new mantenimientocorrectivo()
                {
                    IdVenta = idventamc.Id
                };
                _db.mantenimientocorrectivo.Add(mc);
                _db.SaveChanges();


                var informe = new informes()
                {
                    IdVenta = idventainforme.Id,
                    Url     = "null", Nombre = "null",
                    Fecha   = DateTime.Now
                };
                _db.informes.Add(informe);
                _db.SaveChanges();

                var sugerencia = new sugerencias()
                {
                    IdVenta              = idventasugerencia.Id,
                    Descripcion          = "null",
                    Caracteristica       = "null",
                    Numero               = "null",
                    AccionesRecomendadas = "null",
                    AccionesTomadas      = "null",
                    GerenciaResponsable  = "null",
                    Fecha = DateTime.Now
                };
                _db.sugerencias.Add(sugerencia);
                _db.SaveChanges();

                return(id);
            }
            catch (Exception)
            {
                throw;
            }
        }
        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"));
        }