/// <summary> /// ingresa un nuevo chofer al sistema y lo devuelve /// </summary> /// <param name="chofer"></param> /// <param name="libreta"></param> /// <returns>Chofer</returns> public async Task<Chofer> CrearChofer(Chofer chofer, LibretaDeConducir libreta) { Chofer salida = null; try { Chofer c = await DBRepositoryMongo<Chofer>.GetUsuario(chofer.User, "Choferes"); if (c != null) { throw new MensajeException("El chofer ya existe"); } else { salida = chofer; salida.Tipo = "Chofer"; salida.Disponible = true; salida.LibretaDeConducir = libreta; salida.Leyenda = chofer.Numero + " - " + chofer.Nombre + " " + chofer.Apellido; if (salida.Ubicacion == null) { salida.Ubicacion = new PosicionSatelital() { Latitud = "", Longitud = "" }; } salida = salida.Encriptar(salida); await DBRepositoryMongo<Chofer>.Create(salida, "Choferes"); } return salida; } catch(MensajeException msg) { throw msg; }catch(Exception ex) { throw ex; } }
/// <summary> /// Inserta un cliente encriptado en la base de datos /// </summary> /// <param name="cliente"></param> /// <param name="tarjeta"></param> /// <returns></returns> public async Task CrearCliente(Cliente cliente, TarjetaDeCredito tarjeta) { try { Cliente salida = null; Usuario usuario = await DBRepositoryMongo<Usuario>.GetUsuario(Seguridad.Encriptar(cliente.User), "Usuarios"); Cliente cli = await DBRepositoryMongo<Cliente>.GetUsuario(Seguridad.Encriptar(cliente.User), "Clientes"); Chofer chofer = await DBRepositoryMongo<Chofer>.GetUsuario(Seguridad.Encriptar(cliente.User), "Choferes"); if (usuario == null && cli == null && chofer == null) { cliente.Tipo = "Cliente"; cliente.Tarjeta = tarjeta; if (cliente.RazonSocial != null) { cliente.Leyenda = cliente.RazonSocial; } else { cliente.Leyenda = cliente.Nombre + " " + cliente.Apellido; cliente.RazonSocial = ""; } if (cliente.Rut == null) { cliente.Rut = ""; } if (cliente.Ubicacion == null) { cliente.Ubicacion = new PosicionSatelital() { Latitud = "", Longitud = "" }; } if (string.IsNullOrEmpty(cliente.Tarjeta.fVencimiento)) { cliente.Tarjeta.fVencimiento = ""; } if (string.IsNullOrEmpty(cliente.Tarjeta.Numero)) { cliente.Tarjeta.Numero = ""; } salida = cliente.Encriptar(cliente); await DBRepositoryMongo<Cliente>.Create(salida, "Clientes"); } else { throw new MensajeException("Ya existe un usuario con ese nick"); } } catch (MensajeException msg) { throw msg; } catch (Exception ex) { throw ex; } }
public async Task <JsonResult> RegistroChofer([FromBody] Chofer nuevo) { Usuario usu = await DBRepositoryMongo <Usuario> .GetUsuario(nuevo.User, "Usuarios"); Usuario cliente = await DBRepositoryMongo <Cliente> .GetUsuario(nuevo.User, "Clientes"); Usuario chofer = await DBRepositoryMongo <Chofer> .GetUsuario(nuevo.User, "Choferes"); if (cliente == null && usu == null && chofer == null) { await DBRepositoryMongo <Chofer> .Create(nuevo, "Choferes"); return(Json(nuevo)); } else { return(Json(null)); } }
/// <summary> /// crea un usuario administrativo /// </summary> /// <param name="usuario"></param> /// <param name="administrador"></param> /// <returns>el administrativo creado</returns> public async Task<Usuario> CrearAdministrativo(Administrativo usuario, bool administrador) { try { Usuario salida = null; Usuario u = await DBRepositoryMongo<Usuario>.GetUsuario(Seguridad.Encriptar(usuario.User), "Administrativos"); if (u != null) { throw new MensajeException("El usuario ya existe"); } else { if (usuario.Ubicacion == null) { usuario.Ubicacion = new PosicionSatelital() { Latitud = "", Longitud = "" }; } Administrativo nuevo = new Administrativo(); nuevo = usuario; nuevo.Tipo = "Administrador"; if (administrador) { nuevo.Administrador = true; } else { nuevo.Administrador = false; } nuevo = nuevo.Encriptar(nuevo); await DBRepositoryMongo<Usuario>.Create(nuevo, "Administrativos"); salida = nuevo; } return salida; } catch (MensajeException msg) { throw msg; } catch(Exception ex) { throw ex; } }
public async Task <JsonResult> RegistroCliente([FromBody] Cliente cliente) { Cliente cli = await DBRepositoryMongo <Cliente> .GetUsuario(cliente.User, "Clientes"); Chofer chofer = await DBRepositoryMongo <Chofer> .GetUsuario(cliente.User, "Choferes"); Usuario usu = await DBRepositoryMongo <Usuario> .GetUsuario(cliente.User, "Usuarios"); if (cli == null && chofer == null && usu == null) { Cliente nuevo = cliente; await DBRepositoryMongo <Cliente> .Create(nuevo, "Clientes"); return(Json(nuevo)); } else { return(Json(null)); } }