public IHttpActionResult PostSolicitudIngreso([FromBody] SolicitudIngresoModel solicitudIngreso) { if (solicitudIngreso == null || solicitudIngreso.IdUsuario == 0 || string.IsNullOrEmpty(solicitudIngreso.IdentificadorDistribuidora)) { return(BadRequest("faltan datos")); } List <Distribuidora> resultadoDistribuidora; Negocio.Administracion.Distribuidora boDistribuidora = new Negocio.Administracion.Distribuidora(); boDistribuidora.ObtenerDistribuidora(new FiltroDistribuidora() { Identificador = solicitudIngreso.IdentificadorDistribuidora }, out resultadoDistribuidora); if (resultadoDistribuidora != null) { List <UsuarioDistribuidora> relacion; Negocio.Administracion.UsuarioDistribuidora boUsuarioDistribuidora = new Negocio.Administracion.UsuarioDistribuidora(); int idUsuario = solicitudIngreso.IdUsuario; int idDistribuidora = resultadoDistribuidora[0].Id; boUsuarioDistribuidora.ObtenerUsuarioDistribuidora(new FiltroUsuarioDistribuidora { IdUsuario = idUsuario, IdDistribuidora = idDistribuidora }, out relacion); if (relacion == null) { var nuevaRelacion = new UsuarioDistribuidora() { AceptaUsuario = true, IdUsuario = idUsuario, IdDistribuidora = idDistribuidora, FechaCreacion = DateTime.Now, EsNuevo = true }; boUsuarioDistribuidora.GuardarUsuarioDistribuidora(new List <UsuarioDistribuidora> { nuevaRelacion }); return(Ok()); } else { if (relacion[0].AceptaDistribuidora) { return(BadRequest("relacion ya existe")); } else { return(BadRequest("relacion pendiente de aprobación")); } } } else { return(BadRequest("distribuidora no existe")); } }
public void VinculacionUsuarioDistribuidora(Entidad.UsuarioDistribuidora usuarioDistribuidora) { Negocio.Administracion.Usuario boUsuario = new Negocio.Administracion.Usuario(); Negocio.Administracion.Distribuidora boDistribuidora = new Negocio.Administracion.Distribuidora(); Negocio.Administracion.UsuarioDistribuidora boUD = new Negocio.Administracion.UsuarioDistribuidora(); if (usuarioDistribuidora.Usuario?.Id == 0) { List <Entidad.Usuario> usuarios; boUsuario.ObtenerUsuario(new Entidad.FiltroUsuario() { Cedula = usuarioDistribuidora.Usuario.Cedula }, out usuarios); usuarioDistribuidora.IdUsuario = usuarios.FirstOrDefault().Id; } if (usuarioDistribuidora.Distribuidora?.Id == 0) { List <Entidad.Distribuidora> distribuidoras; boDistribuidora.ObtenerDistribuidora(new Entidad.FiltroDistribuidora() { Identificador = usuarioDistribuidora.Distribuidora.Identificador }, out distribuidoras); usuarioDistribuidora.IdDistribuidora = distribuidoras.FirstOrDefault().Id; } usuarioDistribuidora.FechaCreacion = DateTime.Now; usuarioDistribuidora.EsNuevo = true; if (usuarioDistribuidora.AceptaUsuario && usuarioDistribuidora.AceptaDistribuidora) { usuarioDistribuidora.FechaAceptacion = DateTime.Now; } boUD.GuardarUsuarioDistribuidora(new List <Entidad.UsuarioDistribuidora> { usuarioDistribuidora }); }
public IHttpActionResult PostDistribuidora([FromBody] Distribuidora distribuidora) { if (distribuidora == null || string.IsNullOrEmpty(distribuidora.Identificador) || distribuidora.UsuarioDistribuidora == null) { return(BadRequest("Objeto distribuidora vacio")); } List <Distribuidora> listaDistribuidoraRetornar; Negocio.Administracion.Distribuidora boDistribuidora = new Negocio.Administracion.Distribuidora(); boDistribuidora.ObtenerDistribuidora(new FiltroDistribuidora() { Identificador = distribuidora.Identificador }, out listaDistribuidoraRetornar); if (listaDistribuidoraRetornar?.Count == 0) { distribuidora.FechaRegistro = DateTime.Now; distribuidora.EsNuevo = true; if (distribuidora.UsuarioDistribuidora?.Count > 0) { distribuidora.UsuarioDistribuidora.ToList().ForEach(f => { f.FechaCreacion = DateTime.Now; f.FechaAceptacion = DateTime.Now; f.AceptaDistribuidora = true; f.AceptaUsuario = true; f.EsAdmin = true; }); } if (distribuidora.Documentos?.Count > 0) { distribuidora.Documentos.ToList().ForEach(f => { f.FechaVigencia = DateTime.Now; }); } boDistribuidora.GuardarDistribuidoras(new List <Distribuidora> { distribuidora }); //Estructura de la transacción //using (var trx = Datos.InitTransaction()) //{ // try // { // Datos.InsertarDistribuidora(distribuidora); // Datos.SaveAll(); // Datos.InsertarUsuario(new Usuario() { Cedula = "17-000-000" }); // trx.Commit(); // }catch // { // trx.Rollback(); // } //} //Datos.SaveAll(); return(Ok(distribuidora)); } else { return(BadRequest("Distribuidora existe")); } }