public OOB.ResultadoAuto Usuario_Agregar(OOB.LibSistema.Usuario.Agregar ficha)
        {
            var rt = new OOB.ResultadoAuto();

            var fichaDTO = new DtoLibSistema.Usuario.Agregar()
            {
                autoGrupo = ficha.autoGrupo,
                nombre    = ficha.nombre,
                codigo    = ficha.codigo,
                apellido  = ficha.apellido,
                clave     = ficha.clave,
                estatus   = ficha.estatus,
            };
            var r01 = MyData.Usuario_Agregar(fichaDTO);

            if (r01.Result == DtoLib.Enumerados.EnumResult.isError)
            {
                rt.Mensaje = r01.Mensaje;
                rt.Result  = OOB.Enumerados.EnumResult.isError;
                return(rt);
            }

            rt.Auto = r01.Auto;
            return(rt);
        }
 public DtoLib.ResultadoAuto Usuario_Agregar(DtoLibSistema.Usuario.Agregar ficha)
 {
     return(ServiceProv.Usuario_Agregar(ficha));
 }
Beispiel #3
0
        public DtoLib.ResultadoAuto Usuario_Agregar(DtoLibSistema.Usuario.Agregar ficha)
        {
            var result = new DtoLib.ResultadoAuto();

            try
            {
                using (var cnn = new sistemaEntities(_cnSist.ConnectionString))
                {
                    using (var ts = new TransactionScope())
                    {
                        var fechaSistema = cnn.Database.SqlQuery <DateTime>("select now()").FirstOrDefault();

                        var sql = "update sistema_contadores set a_usuarios=a_usuarios+1";
                        var r1  = cnn.Database.ExecuteSqlCommand(sql);
                        if (r1 == 0)
                        {
                            result.Mensaje = "PROBLEMA AL ACTUALIZAR TABLA CONTADORES";
                            result.Result  = DtoLib.Enumerados.EnumResult.isError;
                            return(result);
                        }
                        var aUsuario    = cnn.Database.SqlQuery <int>("select a_usuarios from sistema_contadores").FirstOrDefault();
                        var autoUsuario = aUsuario.ToString().Trim().PadLeft(10, '0');

                        var ent = new usuarios()
                        {
                            auto            = autoUsuario,
                            auto_grupo      = ficha.autoGrupo,
                            codigo          = ficha.codigo,
                            nombre          = ficha.nombre,
                            apellido        = ficha.apellido,
                            clave           = ficha.clave,
                            fecha_alta      = fechaSistema.Date,
                            fecha_baja      = new DateTime(2000, 01, 01),
                            fecha_sesion    = fechaSistema.Date,
                            estatus         = ficha.estatus,
                            estatus_replica = "0",
                        };
                        cnn.usuarios.Add(ent);
                        cnn.SaveChanges();

                        ts.Complete();
                        result.Auto = autoUsuario;
                    }
                }
            }
            catch (DbEntityValidationException e)
            {
                var msg = "";
                foreach (var eve in e.EntityValidationErrors)
                {
                    foreach (var ve in eve.ValidationErrors)
                    {
                        msg += ve.ErrorMessage;
                    }
                }
                result.Mensaje = msg;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }
            catch (System.Data.Entity.Infrastructure.DbUpdateException e)
            {
                var msg = "";
                foreach (var eve in e.Entries)
                {
                    //msg += eve.m;
                    foreach (var ve in eve.CurrentValues.PropertyNames)
                    {
                        msg += ve.ToString();
                    }
                }
                result.Mensaje = msg;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }
            catch (Exception e)
            {
                result.Mensaje = e.Message;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }

            return(result);
        }