public OOB.ResultadoAuto UsuarioGrupo_Agregar(OOB.LibSistema.UsuarioGrupo.Agregar ficha) { var rt = new OOB.ResultadoAuto(); var list = ficha.permisos.Select(s => { var nr = new DtoLibSistema.GrupoUsuario.Permiso() { codigoFuncion = s.codigoFuncion, estatus = s.estatus, seguridad = s.seguridad, }; return(nr); }).ToList(); var fichaDTO = new DtoLibSistema.GrupoUsuario.Agregar() { nombre = ficha.nombre, permisos = list, }; var r01 = MyData.GrupoUsuario_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 GrupoUsuario_Agregar(DtoLibSistema.GrupoUsuario.Agregar ficha) { return(ServiceProv.GrupoUsuario_Agregar(ficha)); }
public DtoLib.ResultadoAuto GrupoUsuario_Agregar(DtoLibSistema.GrupoUsuario.Agregar ficha) { var result = new DtoLib.ResultadoAuto(); try { using (var cnn = new sistemaEntities(_cnSist.ConnectionString)) { using (var ts = new TransactionScope()) { var sql = "update sistema_contadores set a_usuarios_grupo=a_usuarios_grupo+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 aUsuarioGrupo = cnn.Database.SqlQuery <int>("select a_usuarios_grupo from sistema_contadores").FirstOrDefault(); var autoUsuarioGrupo = aUsuarioGrupo.ToString().Trim().PadLeft(10, '0'); var ent = new usuarios_grupo() { auto = autoUsuarioGrupo, nombre = ficha.nombre, }; cnn.usuarios_grupo.Add(ent); cnn.SaveChanges(); sql = @"INSERT INTO usuarios_grupo_permisos (codigo_grupo,codigo_funcion,estatus,seguridad) " + "VALUES (@p1, @p2, @p3,@p4)"; var p1 = new MySqlParameter(); var p2 = new MySqlParameter(); var p3 = new MySqlParameter(); var p4 = new MySqlParameter(); foreach (var it in ficha.permisos) { p1.ParameterName = "@p1"; p1.Value = autoUsuarioGrupo; p2.ParameterName = "@p2"; p2.Value = it.codigoFuncion; p3.ParameterName = "@p3"; p3.Value = it.estatus; p4.ParameterName = "@p4"; p4.Value = it.seguridad; r1 = cnn.Database.ExecuteSqlCommand(sql, p1, p2, p3, p4); if (r1 == 0) { result.Mensaje = "PROBLEMA AL INSERTAR PERMISOS AL GRUPO"; result.Result = DtoLib.Enumerados.EnumResult.isError; return(result); } cnn.SaveChanges(); } ts.Complete(); result.Auto = autoUsuarioGrupo; } } } 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); }