//Registrar nueva banda en el sistema public Respuesta nuevaBanda(string pNombre, JArray pMiembros, JArray pCanciones, JArray pGeneros) { Respuesta respuesta = null; Banda banda = new Banda(pNombre, _manejador.obtenerEstado(1).estado); string[] miembros = _serial.getArrayString(pMiembros); if (miembros.Length < 1) { return(_fabricaRespuestas.crearRespuesta(false, "Debe ingresar al menos un integrante de banda.")); } string[] canciones = _serial.getArrayString(pCanciones); if (canciones.Length < 3) { return(_fabricaRespuestas.crearRespuesta(false, "Error, se ingresaron menos de las 3 canciones mínimas para banda nueva. Por favor intente nuevo.")); } else if (canciones.Length > 10) { return(_fabricaRespuestas.crearRespuesta(false, "Error, se ingresaron más de 10 canciones máximas. Por favor intente con menos.")); } int[] generos = _serial.getArrayInt(pGeneros); if (generos.Length > 10 || generos.Length < 1) { return(_fabricaRespuestas.crearRespuesta(false, "Error: Se deben seleccionar de 1 a 10 géneros musicales. Por favor intente con 10 o menos.")); } //Almacena banda nueva try { bandas bandaNueva = _manejador.obtenerBanda(banda.Nombre); if (bandaNueva != null) { return(_fabricaRespuestas.crearRespuesta(false, "Error: Banda ya existente. Por favor intente de nuevo.")); } _manejador.añadirBanda(_convertidor.updatebandas(banda), _convertidor.updateintegrantes(miembros), _convertidor.updatecanciones(canciones), _convertidor.updateListaGeneros(generos)); respuesta = _fabricaRespuestas.crearRespuesta(true, "Banda registrada correctamente."); } catch (Exception) { //Retorna respuesta de error respuesta = _fabricaRespuestas.crearRespuesta(false, "Fallo al ingresar banda o banda ya existente."); //respuesta = _fabricaRespuestas.crearRespuesta(false, "Fallo al ingresar banda o banda ya esxistente.", e.ToString()); } return(respuesta); }
public void getArrayIntTest() { /* Arrange */ string x = @"[1,2,3]"; /* Act */ JArray _arr = JArray.Parse(x); int[] _test = _help.getArrayInt(_arr); /* Assert */ Assert.AreEqual(_test[0], _arr[0]); Assert.AreEqual(_test[1], _arr[1]); Assert.AreEqual(_test[2], _arr[2]); }
//Modificar usuario public Respuesta modificarUsuario(string tipoUsuario, dynamic pDatosUsuario, JArray pListaGenerosFavoritos) { Respuesta respuesta = null; usuarios usuario = null; //Elige el tipo de usuario switch (tipoUsuario) { case "fanatico": //Si el usuario es fanatico Fanatico fanaticoModificacion = new Fanatico(); fanaticoModificacion.deserialize(pDatosUsuario); fanaticoModificacion.Estado = _manejador.obtenerEstado(1).estado; fanaticoModificacion.TipoUsuario = _manejador.obtenerTipoUsuario(2).tipo; //Verificar que el usuario exista if (comprobarUsuarioUnico(fanaticoModificacion)) { return(_fabricaRespuestas.crearRespuesta(false, "Ya se encuentra en uso el nombre de usuario. Intente con otro por favor.")); } //Comprobar generos musicales favoritos seleccionados int[] arregloGenerosFavoritos = _serial.getArrayInt(pListaGenerosFavoritos); if (arregloGenerosFavoritos.Length > 10) { return(_fabricaRespuestas.crearRespuesta(false, "Se seleccionaron más del máximo de 10 géneros musicales favoritos. Por favor intente con 10.")); } List <generos> listaGenerosFavoritos = new List <generos>(); try { for (int i = 0; i < arregloGenerosFavoritos.Length; i++) { listaGenerosFavoritos.Add(_manejador.obtenerGenero(arregloGenerosFavoritos[i])); } } catch (Exception) { //Retorna respuesta de fallo return(_fabricaRespuestas.crearRespuesta(false, "Fallo al seleccionar los generos favoritos.")); } //Almacena modificacion de usuario respuesta = _fabricaRespuestas.crearRespuesta(true, fanaticoModificacion.serialize()); break; case "colaborador": //Si el usuario es colaborador Colaborador colaboradorModificacion = new Colaborador(); colaboradorModificacion.deserialize(pDatosUsuario); //Parse JSON colaboradorModificacion.Estado = _manejador.obtenerEstado(1).estado; //Rol colaborador colaboradorModificacion.TipoUsuario = _manejador.obtenerTipoUsuario(1).tipo; //Establece como activo if (comprobarUsuarioUnico(colaboradorModificacion)) { return(_fabricaRespuestas.crearRespuesta(false, "Ya se encuentra en uso el nombre de usuario. Intente con otro por favor.")); } //Almacena modificacion de colaborador //usuario = _manejador.añadirUsuario(_convertidor.updateusuarios(nuevoColaborador)); //Se almacena el nuevo usuario //nuevoColaborador = (Colaborador)_convertidor.createUsuario(usuarioCreado); //Almacena nuevo colaborador //Retorna respuesta exitosa respuesta = _fabricaRespuestas.crearRespuesta(true, colaboradorModificacion.serialize()); break; default: //Si el tipo de usuario no existe. Retorna mensaje error respuesta = _fabricaRespuestas.crearRespuesta(false, "Tipo de usuario no existente. Intente de nuevo por favor."); break; } return(respuesta); }