public ActionResult Edit([Bind(Include = "IdMaquinariaEquipoElectrico,NombreEquipo,NombreFuncion,ConsumoPromedioKWh,CantidadExistencia,isMaquinaria")] MaquinariaEquipoElectrico mae)
        {
            try
            {
                MaquinariaEquipoElectrico m = db.MaquinariaEquipoElectrico.Find(mae.IdMaquinariaEquipoElectrico);
                m.NombreEquipo = mae.NombreEquipo;
                if (!mae.isMaquinaria)
                {
                    m.NombreFuncion = null;
                }
                else
                {
                    m.NombreFuncion = mae.NombreFuncion;
                }
                m.ConsumoPromedioKWh = mae.ConsumoPromedioKWh;
                m.CantidadExistencia = mae.CantidadExistencia;
                m.isMaquinaria       = mae.isMaquinaria;

                db.Entry(m).State = EntityState.Modified;
                db.SaveChanges();
                return(Json(new { Message = clsReferencias.Exito }));
            }
            catch (Exception ex)
            {
                return(Json(new { Message = new clsException(ex).Message() }));
            }
        }
        public ActionResult Create(PiezaTallaMedida_Standar[] PiezaTallaMedida)
        {
            try
            {
                for (int k = 0; k < PiezaTallaMedida.Length; k++)
                {
                    PiezaTallaMedida_Standar p = db.PiezaTallaMedida_Standar.Find(new object[] { PiezaTallaMedida[k].IdPieza, PiezaTallaMedida[k].IdTalla, PiezaTallaMedida[k].IdMedida });
                    if (p == null)
                    {
                        if (PiezaTallaMedida[k].Medida > 0)
                        {
                            PiezaTallaMedida[k].cod_RA = Cod_RA.cod_RA();
                            db.PiezaTallaMedida_Standar.Add(PiezaTallaMedida[k]);
                        }
                    }
                    else
                    {
                        p.Medida          = PiezaTallaMedida[k].Medida;
                        db.Entry(p).State = EntityState.Modified;
                    }

                    db.SaveChanges();
                }

                return(Json(new { Message = clsReferencias.Exito }));
            }
            catch (Exception ex)
            {
                return(Json(new { Message = new clsException(ex).Message() }));
            }
        }
        public ActionResult DeleteConfirmed(int id)
        {
            try
            {
                Cotizacion cotizacion = db.Cotizacion.Find(id);
                cotizacion.IdEstado = clsReferencias.Anulado;

                db.Entry(cotizacion).State = EntityState.Modified;
                db.SaveChanges();
                return(Json(new { Message = clsReferencias.Exito }));
            }
            catch (Exception ex)
            {
                return(Json(new { Message = new clsException(ex).Message() }));
            }
        }
示例#4
0
        public ActionResult Edit([Bind(Include = "NombreCargo,SalarioBase,TipoSalario")] Cargo cargo)
        {
            try
            {
                Cargo c = db.Cargo.Find(cargo.NombreCargo);
                c.SalarioBase = cargo.SalarioBase;
                c.TipoSalario = cargo.TipoSalario;

                db.Entry(c).State = EntityState.Modified;
                db.SaveChanges();
                return(Json(new { Message = clsReferencias.Exito }));
            }
            catch (Exception ex)
            {
                return(Json(new { Message = new clsException(ex).Message() }));
            }
        }
示例#5
0
        public ActionResult editRol(Rol rol)
        {
            try
            {
                db.Entry(rol).State = EntityState.Modified;
                db.SaveChanges();

                return(Json(new
                {
                    Message = clsReferencias.Exito
                }));
            }
            catch (Exception er)
            {
                return(Json(new { Message = new clsException(er).Message() }));
            }
        }
示例#6
0
 public ActionResult Edit([Bind(Include = "IdPantalla,Nombre,Recurso,isMenu,MenuPadre,Controlador,Vista,MenuOrden,cod_RA")] Pantalla pantalla)
 {
     if (ModelState.IsValid)
     {
         db.Entry(pantalla).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.MenuPadre = new SelectList(db.Pantalla, "IdPantalla", "Nombre", pantalla.MenuPadre);
     return(View(pantalla));
 }
示例#7
0
 public ActionResult Edit([Bind(Include = "IdPersona,PrimerNombre,SegundoNombre,PrimerApellido,SegundoApellido,Cedula,Direccion,Correo,Telefono,Celular,IdOperadoraTelefonica,EstadoCivil,cod_RA")] Persona persona)
 {
     if (ModelState.IsValid)
     {
         db.Entry(persona).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.IdPersona             = new SelectList(db.Empleado, "IdEmpleado", "codEmpleado", persona.IdPersona);
     ViewBag.IdOperadoraTelefonica = new SelectList(db.OperadoraTelefonica, "IdOperadoraTelefonica", "Nombre", persona.IdOperadoraTelefonica);
     return(View(persona));
 }
        public ActionResult Edit(GastoEnergia gastoEnergia)
        {
            try
            {
                GastoEnergia ge = db.GastoEnergia.Find(gastoEnergia.IdGastoEnergia);
                ge.MesAplica = gastoEnergia.MesAplica;
                ge.Monto     = gastoEnergia.Monto;
                ge.FacturaNo = gastoEnergia.FacturaNo;

                db.Entry(ge).State = EntityState.Modified;
                db.SaveChanges();
                return(Json(new { Message = clsReferencias.Exito }));
            }
            catch (Exception ex)
            {
                return(Json(new { Message = new clsException(ex).Message() }));
            }
        }
示例#9
0
        public ActionResult Create(Nomina nomina, NominaDiaLibre[] diasLibres)
        {
            NominaDiaLibre nominadiaLibre;

            try
            {
                if (nomina.IdNomina == 0)
                {
                    IdNomina = db.Nomina.Max(w => w.IdNomina) + 1;
                }
                else
                {
                    IdNomina = nomina.IdNomina;
                }

                List <NominaDiaLibre> dias = db.NominaDiaLibre.Where(w => w.IdNomina == IdNomina).ToList();

                using (var dbContext = new ConfortexEntities())
                {
                    if (nomina.IdNomina == 0)
                    {
                        dbContext.sp_GestionarNomina(IdNomina, nomina.NombreReferencia, nomina.FechaInicio, nomina.FechaFin, clsReferencias.EnBorrador, nomina.Observaciones, clsReferencias.INSERT);
                    }
                    else
                    {
                        dbContext.sp_GestionarNomina(IdNomina, nomina.NombreReferencia, nomina.FechaInicio, nomina.FechaFin, 0, nomina.Observaciones, clsReferencias.UPDATE);
                    }
                }

                if (diasLibres != null)
                {
                    for (int i = 0; i < diasLibres.Length; i++)
                    {
                        if (diasLibres[i].FechaLibre <nomina.FechaInicio || diasLibres[i].FechaLibre> nomina.FechaFin)
                        {
                            return(Json(new { Message = "El día libre " + diasLibres[i].FechaLibre.Date.ToShortDateString() + " se encuentra fuera de los limites de pago de la Nómina, por lo tanto no puede ser agregado, debe corregir este error para continuar." }));
                        }

                        if (diasLibres[i].IdNominaDiaLibre == 0)
                        {
                            diasLibres[i].IdNomina      = IdNomina;
                            diasLibres[i].FechaCreacion = System.DateTime.Now;

                            db.NominaDiaLibre.Add(diasLibres[i]);
                        }
                        else
                        {
                            nominadiaLibre          = db.NominaDiaLibre.Find(diasLibres[i].IdNominaDiaLibre);
                            nominadiaLibre.Concepto = diasLibres[i].Concepto;

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

                            dias = dias.Where(w => w.IdNominaDiaLibre != diasLibres[i].IdNominaDiaLibre).ToList();
                        }
                    }

                    db.NominaDiaLibre.RemoveRange(dias.ToArray());
                }
                else
                {
                    IEnumerable <NominaDiaLibre> diasT = db.NominaDiaLibre.Where(w => w.IdNomina == IdNomina);
                    db.NominaDiaLibre.RemoveRange(diasT);
                }
                db.SaveChanges();
                return(Json(new { Message = clsReferencias.Exito, IdNomina = IdNomina }));
            }
            catch (Exception ex)
            {
                return(Json(new { Message = new clsException(ex).Message() }));
            }
        }
        public ActionResult Edit(int IdCombinacion, String Nombre, String Descripcion, double CantidadTela, PrecioCombinacion[] preciocombinacion)
        {
            try
            {
                String mensaje = "";

                try
                {
                    using (db)
                    {
                        db.sp_GestionarCombinacion(IdCombinacion, Nombre, Descripcion, CantidadTela, clsReferencias.UPDATE);
                    }
                }
                catch (Exception ex)
                {
                    mensaje = new clsException(ex).Message();
                }
                using (var dbcontext = new ConfortexEntities())
                {
                    //List<CombinacionFuncion> lista = combinacionfuncion.ToList();
                    List <PrecioCombinacion> cflist = dbcontext.PrecioCombinacion.Where(w => w.IdCombinacion == IdCombinacion && w.regAnulado == false).ToList();
                    //List<CombinacionFuncion> cflist = dbcontext.CombinacionFuncion.Where(w => w.IdCombinacion == IdCombinacion && w.regAnulado == false).Except(combinacionfuncion.AsEnumerable()).ToList();

                    PrecioCombinacion cf = null;
                    for (int i = 0; i < preciocombinacion.Length; i++)
                    {
                        if (preciocombinacion[i].IdPrecioCombinacion == 0) //Agregando Nuevo
                        {
                            cf = preciocombinacion[i];
                            cf.IdCombinacion = IdCombinacion;
                            cf.cod_RA        = Cod_RA.cod_RA();
                            dbcontext.PrecioCombinacion.Add(cf);
                        }
                        else //Actualizando
                        {
                            cf = dbcontext.PrecioCombinacion.Find(preciocombinacion[i].IdPrecioCombinacion);

                            cf.Duracion       = preciocombinacion[i].Duracion;
                            cf.PrecioUnitario = preciocombinacion[i].PrecioUnitario;
                            cf.NombreFuncion  = preciocombinacion[i].NombreFuncion;

                            dbcontext.Entry(cf).State = EntityState.Modified;


                            cflist = cflist.Where(w => w.IdPrecioCombinacion != cf.IdPrecioCombinacion).ToList();
                        }
                        dbcontext.SaveChanges();
                    }

                    foreach (PrecioCombinacion combfun in cflist)
                    {
                        cf = dbcontext.PrecioCombinacion.Find(combfun.IdPrecioCombinacion);

                        cf.regAnulado             = true;
                        dbcontext.Entry(cf).State = EntityState.Modified;
                    }
                    dbcontext.SaveChanges();

                    return(Json(new { Message = clsReferencias.Exito }));
                }
            }
            catch (Exception ex)
            {
                return(Json(new { Message = new clsException(ex).Message() }));
            }
        }
示例#11
0
        private String GestionarEmpleado(int IdEmpleado, string PrimerNombre, string SegundoNombre, string PrimerApellido, string SegundoApellido, string Cedula, string Direccion, string Correo, string Telefono, string Celular, int IdOperadoraTelefonica, bool EstadoCivil, string CodEmpleado, int PersonasDependientes, string CelularFamiliar, string Cargo)
        {
            string result = "";

            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    Persona  persona;
                    Empleado empleado;
                    if (IdEmpleado == 0)
                    {
                        persona  = new Persona();
                        empleado = new Empleado();
                    }
                    else
                    {
                        persona  = db.Persona.Find(IdEmpleado);
                        empleado = db.Empleado.Find(IdEmpleado);
                    }

                    persona.PrimerNombre          = PrimerNombre;
                    persona.SegundoNombre         = SegundoNombre;
                    persona.PrimerApellido        = PrimerApellido;
                    persona.SegundoApellido       = SegundoApellido;
                    persona.Cedula                = Cedula;
                    persona.Direccion             = Direccion;
                    persona.Correo                = Correo;
                    persona.Telefono              = Telefono;
                    persona.Celular               = Celular;
                    persona.IdOperadoraTelefonica = IdOperadoraTelefonica;
                    persona.EstadoCivil           = EstadoCivil;

                    empleado.codEmpleado          = CodEmpleado;
                    empleado.PersonasDependientes = Byte.Parse("" + PersonasDependientes);
                    empleado.CelularFamiliar      = CelularFamiliar;
                    empleado.Cargo = Cargo;

                    if (IdEmpleado == 0)
                    {
                        db.Persona.Add(persona);
                        db.SaveChanges(); // Guardo para obtener el id de la persona

                        empleado.IdEmpleado = persona.IdPersona;
                        empleado.cod_RA     = Cod_RA.cod_RA();

                        db.Empleado.Add(empleado);
                    }
                    else
                    {
                        db.Entry(persona).State  = EntityState.Modified;
                        db.Entry(empleado).State = EntityState.Modified;
                    }
                    db.SaveChanges();
                    transaction.Commit();
                    result = clsReferencias.Exito;
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    result = new clsException(ex).Message();
                }
            }
            return(result);
        }
示例#12
0
        public ActionResult Edit([Bind(Include = "IdPieza,Nombre,SexoPieza,CantidadTela")] Pieza p, PrecioPieza[] precioPieza, Medida[] medida, Talla[] talla, PiezaAccesorio[] piezaAccesorio)
        {
            try
            {
                //Modificando la Pieza
                Pieza pieza = db.Pieza.Find(p.IdPieza);
                pieza.Nombre          = p.Nombre;
                pieza.SexoPieza       = p.SexoPieza;
                pieza.CantidadTela    = p.CantidadTela;
                db.Entry(pieza).State = EntityState.Modified;

                List <PrecioPieza> pplist = db.PrecioPieza.Where(w => w.IdPieza == p.IdPieza && w.regAnulado == false).ToList();

                //Agregando el precio de la pieza
                PrecioPieza pp = null;
                for (int i = 0; i < precioPieza.Length; i++)
                {
                    if (precioPieza[i].IdPrecioPieza == 0) //Agregar nuevo detalle
                    {
                        pp               = precioPieza[i];
                        pp.IdPieza       = p.IdPieza;
                        pp.NombreFuncion = precioPieza[i].NombreFuncion;
                        pp.cod_RA        = Cod_RA.cod_RA();
                        db.PrecioPieza.Add(pp);
                    }
                    else
                    {
                        pp          = db.PrecioPieza.Find(precioPieza[i].IdPrecioPieza);
                        pp.PrecioMO = precioPieza[i].PrecioMO;
                        pp.Duracion = precioPieza[i].Duracion;

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

                        pplist = pplist.Where(w => w.IdPrecioPieza != pp.IdPrecioPieza).ToList();
                    }
                    db.SaveChanges();
                }

                //Elimando las funciones que no retornaron
                pp = null;
                foreach (PrecioPieza pre in pplist)
                {
                    pp                 = db.PrecioPieza.Find(pre.IdPrecioPieza);
                    pp.regAnulado      = true;
                    db.Entry(pp).State = EntityState.Modified;
                }
                db.SaveChanges();

                //Agregando todas las tallas a la Pieza
                List <PiezaTalla> piezastallas = db.PiezaTalla.Where(w => w.IdPieza == p.IdPieza).ToList();
                PiezaTalla        pt           = null;
                for (int i = 0; i < talla.Length; i++)
                {
                    if (piezastallas.Where(w => w.IdTalla == talla[i].IdTalla).ToList().Count == 0)
                    {
                        pt               = new PiezaTalla();
                        pt.IdTalla       = talla[i].IdTalla;
                        pt.IdPieza       = pieza.IdPieza;
                        pt.FechaCreacion = System.DateTime.Now;
                        db.PiezaTalla.Add(pt);

                        db.SaveChanges();
                    }
                    else
                    {
                        piezastallas = piezastallas.Where(w => w.IdTalla != talla[i].IdTalla).ToList();
                    }
                }

                foreach (PiezaTalla piezaT in piezastallas)
                {
                    pt = db.PiezaTalla.Find(new Object[] { piezaT.IdPieza, piezaT.IdTalla });
                    db.PiezaTalla.Remove(pt);
                }
                db.SaveChanges();


                //Agregando todas las medidas a la pieza
                List <PiezaMedida> piezasmedidas = db.PiezaMedida.Where(w => w.IdPieza == p.IdPieza).ToList();
                PiezaMedida        pm            = null;

                for (int i = 0; i < medida.Length; i++)
                {
                    if (piezasmedidas.Where(w => w.IdMedida == medida[i].IdMedida).ToList().Count == 0)
                    {
                        pm               = new PiezaMedida();
                        pm.IdMedida      = medida[i].IdMedida;
                        pm.IdPieza       = pieza.IdPieza;
                        pm.FechaCreacion = System.DateTime.Now;
                        db.PiezaMedida.Add(pm);

                        db.SaveChanges();
                    }
                    else
                    {
                        piezasmedidas = piezasmedidas.Where(w => w.IdMedida != medida[i].IdMedida).ToList();
                    }
                }

                foreach (PiezaMedida piezaM in piezasmedidas)
                {
                    pm = db.PiezaMedida.Find(new Object[] { piezaM.IdPieza, piezaM.IdMedida });
                    db.PiezaMedida.Remove(pm);
                }

                //Agregando todos los insumos de produccion de la pieza

                List <PiezaAccesorio> piezasAccesorios = db.PiezaAccesorio.Where(w => w.IdPieza == p.IdPieza).ToList();
                PiezaAccesorio        pa = null;

                if (piezaAccesorio != null)
                {
                    for (int i = 0; i < piezaAccesorio.Length; i++)
                    {
                        if (piezasAccesorios.Where(w => w.IdAccesorio == piezaAccesorio[i].IdAccesorio).ToList().Count == 0)
                        {
                            piezaAccesorio[i].IdPieza       = p.IdPieza;
                            piezaAccesorio[i].FechaCreacion = System.DateTime.Now;

                            db.PiezaAccesorio.Add(piezaAccesorio[i]);
                        }
                        else
                        {
                            pa          = db.PiezaAccesorio.Find(new object[] { piezaAccesorio[i].IdPieza, piezaAccesorio[i].IdAccesorio });
                            pa.Cantidad = piezaAccesorio[i].Cantidad;

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

                            piezasAccesorios = piezasAccesorios.Where(w => w.IdAccesorio != piezaAccesorio[i].IdAccesorio).ToList();
                        }
                        db.SaveChanges();
                    }

                    //foreach (PiezaAccesorio piezaA in piezasAccesorios)
                    //{
                    //    pa = db.PiezaAccesorio.Find(new Object[] { piezaA.IdPieza, piezaA.IdAccesorio });
                    //    db.PiezaAccesorio.Remove(pa);
                    //}
                    db.PiezaAccesorio.RemoveRange(piezasAccesorios.ToArray());
                    db.SaveChanges();
                }

                return(Json(new { Message = clsReferencias.Exito }));
            }
            catch (Exception ex)
            {
                return(Json(new
                {
                    Message = new clsException(ex).Message()
                }));
            }
        }
示例#13
0
        private String GestionarCliente(int IdCliente, string PrimerNombre, string SegundoNombre, string PrimerApellido, string SegundoApellido, string Cedula, string Direccion, string Correo, string Telefono, string Celular, int IdOperadoraTelefonica, bool EstadoCivil, string RazonSocial, string RUC, string TelefonoCliente, string DireccionCliente, int CantidadPersonal)
        {
            string result = "";

            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    Persona persona;
                    Cliente cliente;
                    if (IdCliente == 0)
                    {
                        persona = new Persona();
                        cliente = new Cliente();
                    }
                    else
                    {
                        persona = db.Persona.Find(db.Cliente_Persona.Where(w => w.IdCliente == IdCliente && w.regAnulado == false).Select(s => s.IdPersona).FirstOrDefault());
                        cliente = db.Cliente.Find(IdCliente);
                    }

                    persona.PrimerNombre          = PrimerNombre;
                    persona.SegundoNombre         = SegundoNombre;
                    persona.PrimerApellido        = PrimerApellido;
                    persona.SegundoApellido       = SegundoApellido;
                    persona.Cedula                = Cedula;
                    persona.Direccion             = Direccion;
                    persona.Correo                = Correo;
                    persona.Telefono              = Telefono;
                    persona.Celular               = Celular;
                    persona.IdOperadoraTelefonica = IdOperadoraTelefonica;
                    persona.EstadoCivil           = EstadoCivil;


                    cliente.RazonSocial       = RazonSocial;
                    cliente.RUC               = RUC;
                    cliente.Telefono          = TelefonoCliente;
                    cliente.Direccion         = DireccionCliente;
                    cliente.CantidadEmpleados = CantidadPersonal;


                    if (IdCliente == 0)
                    {
                        db.Persona.Add(persona);
                        cliente.cod_RA = Cod_RA.cod_RA();
                        db.Cliente.Add(cliente);
                        //db.SaveChanges();

                        Cliente_Persona cliente_persona = new Cliente_Persona();
                        cliente_persona.IdCliente = cliente.IdCliente;
                        cliente_persona.IdPersona = persona.IdPersona;

                        db.Cliente_Persona.Add(cliente_persona);
                        //db.SaveChanges();
                    }
                    else
                    {
                        db.Entry(persona).State = EntityState.Modified;
                        db.Entry(cliente).State = EntityState.Modified;
                        //db.SaveChanges();
                    }
                    db.SaveChanges();
                    transaction.Commit();

                    result = clsReferencias.Exito;
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    result = new clsException(ex).Message();
                }
            }
            return(result);
        }
示例#14
0
        public JsonResult GestionarTicket(ListadoProduccion lp, DetalleListadoProduccion[] medidas, int accion, TickectPrecioReparacion[] precioReparacion)
        {
            try
            {
                ListadoProduccion ticket = null;
                if (accion == clsReferencias.NoAction)
                {
                    //Creando o editando el Ticket
                    int IdTicket = 0;

                    if (lp.IdListadoProduccion == 0)
                    {
                        IdTicket = db.ListadoProduccion.Max(w => w.IdListadoProduccion) + 1;
                        lp.IdListadoProduccion = IdTicket;
                        lp.IdEstado            = clsReferencias.Generado;
                        lp.cod_RA = Cod_RA.cod_RA();
                        db.ListadoProduccion.Add(lp);

                        if (lp.isReparacion) //Si es una reparacion se gestionan los precios
                        {
                            for (int i = 0; i < precioReparacion.Length; i++)
                            {
                                precioReparacion[i].IdListadoProduccion = IdTicket;
                                precioReparacion[i].FechaCreacion       = System.DateTime.Now;
                                db.TickectPrecioReparacion.Add(precioReparacion[i]);
                            }
                        }
                    }
                    else
                    {
                        ticket               = db.ListadoProduccion.Find(lp.IdListadoProduccion);
                        IdTicket             = ticket.IdListadoProduccion;
                        ticket.IdTalla       = lp.IdTalla;
                        ticket.Nombre        = lp.Nombre;
                        ticket.Cantidad      = lp.Cantidad;
                        ticket.isReparacion  = lp.isReparacion;
                        ticket.Observaciones = lp.Observaciones;

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

                        if (ticket.isReparacion)
                        {
                            List <TickectPrecioReparacion> precioTicket = db.TickectPrecioReparacion.Where(w => w.IdListadoProduccion == IdTicket).ToList();
                            TickectPrecioReparacion        precio       = null;
                            for (int i = 0; i < precioReparacion.Length; i++)
                            {
                                if (precioReparacion[i].IdListadoProduccion == 0)
                                {
                                    precioReparacion[i].IdListadoProduccion = IdTicket;
                                    precioReparacion[i].FechaCreacion       = System.DateTime.Now;
                                    db.TickectPrecioReparacion.Add(precioReparacion[i]);
                                }
                                else
                                {
                                    precio          = db.TickectPrecioReparacion.Find(new object[] { precioReparacion[i].IdListadoProduccion, precioReparacion[i].NombreFuncion });
                                    precio.PrecioMO = precioReparacion[i].PrecioMO;

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

                                    precioTicket = precioTicket.Where(w => w.NombreFuncion != precioReparacion[i].NombreFuncion).ToList();
                                }
                                db.SaveChanges();
                            }

                            db.TickectPrecioReparacion.RemoveRange(precioTicket.ToArray());
                        }
                    }

                    db.SaveChanges();

                    //Asignando medidas al ticket
                    List <DetalleListadoProduccion> ListaMedidas = db.DetalleListadoProduccion.Where(w => w.IdListadoProduccion == IdTicket && w.regAnulado == false).ToList();
                    DetalleListadoProduccion        detalle      = null;
                    if (medidas != null)
                    {
                        for (int i = 0; i < medidas.Length; i++)
                        {
                            if (medidas[i].IdListadoProduccion == 0 || medidas[i].IdDetalleListadoProduccion == 0)
                            {
                                medidas[i].IdListadoProduccion = IdTicket;
                                foreach (DetalleListadoProduccion temp in ListaMedidas.Where(w => w.IdMedida == medidas[i].IdMedida).ToList())
                                {
                                    if (temp != null)
                                    {
                                        temp.regAnulado      = true;
                                        db.Entry(temp).State = EntityState.Modified;
                                    }
                                }
                                db.DetalleListadoProduccion.Add(medidas[i]);
                            }
                            else
                            {
                                detalle          = db.DetalleListadoProduccion.Find(medidas[i].IdDetalleListadoProduccion);
                                detalle.IdMedida = medidas[i].IdMedida;
                                detalle.Medida   = medidas[i].Medida;

                                db.Entry(medidas[i]).State = EntityState.Modified;
                                ListaMedidas = ListaMedidas.Where(w => w.IdDetalleListadoProduccion != medidas[i].IdDetalleListadoProduccion).ToList();
                            }
                            db.SaveChanges();
                        }

                        foreach (DetalleListadoProduccion det in ListaMedidas)
                        {
                            detalle                 = db.DetalleListadoProduccion.Find(det.IdDetalleListadoProduccion);
                            detalle.regAnulado      = true;
                            db.Entry(detalle).State = EntityState.Modified;
                        }
                        db.SaveChanges();
                    }
                    else
                    {
                        foreach (DetalleListadoProduccion det in db.DetalleListadoProduccion.Where(w => w.IdListadoProduccion == IdTicket && w.regAnulado == false).ToList())
                        {
                            detalle                 = db.DetalleListadoProduccion.Find(det.IdDetalleListadoProduccion);
                            detalle.regAnulado      = true;
                            db.Entry(detalle).State = EntityState.Modified;
                        }
                        db.SaveChanges();
                    }
                }
                else
                {
                    //Eliminando el Ticket

                    ticket            = db.ListadoProduccion.Find(lp.IdListadoProduccion);
                    ticket.regAnulado = true;

                    db.Entry(ticket).State = EntityState.Modified;
                    db.SaveChanges();
                }

                return(Json(new { Message = clsReferencias.Exito }));
            }
            catch (Exception ex)
            {
                return(Json(new { Message = new clsException(ex).Message() }));
            }
        }