public Boolean Nuevo(CatCNac_Matriz cliente)
        {
            model.CatCNac_Matriz.Add(cliente);
            model.SaveChanges();

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

            if (original != null)
            {
                if (cliente.Logo.Count() == 0)
                {
                    cliente.Logo = original.Logo;
                }

                model.Entry(original).CurrentValues.SetValues(cliente);
                model.SaveChanges();
            }

            return(true);
        }
예제 #3
0
        public Boolean GuardarDatosGeneralesMat(CatCNac_Matriz entAcys, Boolean Nuevo)
        {
            var listOrDir = model.CatACYS_DirFiscales.ToList();

            foreach (CatACYS_DirFiscales dir in listOrDir)
            {
                if (!entAcys.CatACYS_DirFiscales.Contains(dir))
                {
                    model.CatACYS_DirFiscales.Remove(dir);
                }
            }

            var listOrFran = model.CatCNac_IntranetListaFranq.ToList();

            foreach (CatCNac_IntranetListaFranq fran in listOrFran)
            {
                if (!entAcys.CatCNac_IntranetListaFranq.Contains(fran))
                {
                    fran.CatCNac_IntranetUsuarios    = null;
                    fran.CatCNac_ProductosPermitidos = null;
                    fran.CatTMoneda = null;


                    model.CatCNac_IntranetListaFranq.Remove(fran);
                }
            }


            if (entAcys != null)
            {
                if (!Nuevo)
                {
                    model.Entry(entAcys.CatACYS_SIANCENTRAL).State  = EntityState.Modified;
                    model.Entry(entAcys.CatCNac_IntranetFran).State = EntityState.Modified;
                }
                else
                {
                    model.CatACYS_SIANCENTRAL.Add(entAcys.CatACYS_SIANCENTRAL);
                    model.CatCNac_IntranetFran.Add(entAcys.CatCNac_IntranetFran);
                }

                foreach (CatACYS_DirFiscales dir in entAcys.CatACYS_DirFiscales)
                {
                    if (dir.Id == 0)
                    {
                        model.CatACYS_DirFiscales.Add(dir);
                    }
                }

                foreach (CatCNac_IntranetListaFranq fran in entAcys.CatCNac_IntranetListaFranq)
                {
                    if (fran.Id == 0)
                    {
                        fran.CatCNac_IntranetUsuarios    = null;
                        fran.CatCNac_ProductosPermitidos = null;
                        fran.CatTMoneda = null;

                        model.CatCNac_IntranetListaFranq.Add(fran);
                    }
                }

                try
                {
                    model.SaveChanges();
                }
                catch (DbEntityValidationException e)
                {
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                          eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                              ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                    throw;
                }
            }
            return(true);
        }