public Boolean Nuevo(CatCNac_ACYS acys)
        {
            model.CatCNac_ACYS.Add(acys);
            model.SaveChanges();

            return(true);
        }
        public Boolean Editar(CatCNac_ACYS acys)
        {
            var original = model.CatCNac_ACYS.Find(acys.Id);

            if (original != null)
            {
                model.Entry(original).CurrentValues.SetValues(acys);
                model.SaveChanges();
            }
            return(true);
        }
예제 #3
0
        public Boolean GuardarACYS(CatCNac_ACYS entAcys, Boolean nuevo)
        {
            // Borrar

            var listProd = model.CatAcys_Productos.Where(x => x.Id_ACYS == entAcys.Id).ToList();

            foreach (CatAcys_Productos prod in listProd)
            {
                if (!entAcys.CatAcys_Productos.Contains(prod))
                {
                    model.CatAcys_Productos.Remove(prod);
                }
            }

            var listGar = model.CatACYS_Productos_DatosGar.Where(x => x.Id_ACYS == entAcys.Id).ToList();

            foreach (CatACYS_Productos_DatosGar gar in listGar)
            {
                if (!entAcys.CatACYS_Productos_DatosGar.Contains(gar))
                {
                    model.CatACYS_Productos_DatosGar.Remove(gar);
                }
            }

            var listGarFec = model.CatACYS_Productos_DatosGar_Fechas.Where(x => x.Id_ACYS == entAcys.Id).ToList();

            foreach (CatACYS_Productos_DatosGar_Fechas garFec in listGarFec)
            {
                if (!entAcys.CatACYS_Productos_DatosGar_Fechas.Contains(garFec))
                {
                    model.CatACYS_Productos_DatosGar_Fechas.Remove(garFec);
                }
            }


            //Agregar
            foreach (CatAcys_Productos prod in entAcys.CatAcys_Productos)
            {
                if (!listProd.Contains(prod))
                {
                    model.CatAcys_Productos.Add(prod);
                }
            }
            foreach (CatACYS_Productos_DatosGar gar in entAcys.CatACYS_Productos_DatosGar)
            {
                if (!listGar.Contains(gar))
                {
                    model.CatACYS_Productos_DatosGar.Add(gar);
                }
            }

            foreach (CatACYS_Productos_DatosGar_Fechas garFec in entAcys.CatACYS_Productos_DatosGar_Fechas)
            {
                if (!listGarFec.Contains(garFec))
                {
                    model.CatACYS_Productos_DatosGar_Fechas.Add(garFec);
                }
            }


            if (!nuevo)
            {
                var acys = model.CatCNac_ACYS.Where(x => x.Id == entAcys.Id).FirstOrDefault();

                acys.Fecha       = entAcys.Fecha;
                acys.FechaInicio = entAcys.FechaInicio;
                acys.FechaFin    = entAcys.FechaFin;

                //  model.Entry(entAcys).State = EntityState.Modified;

                model.Entry(acys).State = EntityState.Modified;

                model.Entry(acys.CatACYS_Cliente).CurrentValues.SetValues(entAcys.CatACYS_Cliente);
                model.Entry(acys.CatACYS_RecPedido).CurrentValues.SetValues(entAcys.CatACYS_RecPedido);
                model.Entry(acys.CatACYS_CondPago).CurrentValues.SetValues(entAcys.CatACYS_CondPago);
                model.Entry(acys.CatACYS_ServValor).CurrentValues.SetValues(entAcys.CatACYS_ServValor);
                model.Entry(acys.CatACYS_OtrosApoyos).CurrentValues.SetValues(entAcys.CatACYS_OtrosApoyos);
            }
            else
            {
                var acys = model.CatCNac_ACYS.Where(x => x.Id == entAcys.Id).FirstOrDefault();

                acys.Fecha       = entAcys.Fecha;
                acys.FechaInicio = entAcys.FechaInicio;
                acys.FechaFin    = entAcys.FechaFin;

                // model.CatCNac_ACYS.Add(acys);
                model.CatACYS_Cliente.Add(entAcys.CatACYS_Cliente);
                model.CatACYS_RecPedido.Add(entAcys.CatACYS_RecPedido);
                model.CatACYS_CondPago.Add(entAcys.CatACYS_CondPago);
                model.CatACYS_ServValor.Add(entAcys.CatACYS_ServValor);
                model.CatACYS_OtrosApoyos.Add(entAcys.CatACYS_OtrosApoyos);
            }



            model.SaveChanges();

            return(true);
        }