protected override CommandResult Execute(ConsoleContext context, RoleArgument arguments) { Task <ConnectorResult <Response <IEnumerable <Role> > > > role = WinApiConnector.RequestGet <Response <IEnumerable <Role> > >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/Configuration/GetRole/" + $"{arguments.Name.ToLower()}"); ConnectorResult <Response <IEnumerable <Role> > > preResult = role.Result; if (!preResult.IsSuccess) { return(new CommandResult(preResult.Message, false)); } if (!preResult.Response.IsSuccess) { return(new CommandResult(preResult.Response.Code, false)); } if (!preResult.Response.Payload.Any()) { return(new CommandResult($"The Role {arguments.Name} doesn't exist in database")); } Task <ConnectorResult <Response <string> > > result = WinApiConnector.RequestDelete <Response <string> >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/Configuration/DeleteRole" + $"/{preResult.Response.Payload.FirstOrDefault().Identifier}"); ConnectorResult <Response <string> > connectorResult = result.Result; if (!connectorResult.IsSuccess) { return(new CommandResult(connectorResult.Message, false)); } if (!connectorResult.Response.IsSuccess) { return(new CommandResult(connectorResult.Response.Code, false)); } if (string.IsNullOrEmpty(connectorResult.Response.Payload)) { return(new CommandResult("The payload of response <DELETE USER > is null or empty ", false)); } return(new CommandResult($"The Role {arguments.Name} has been deleted", true)); }
protected override CommandResult Execute(ConsoleContext context, UserArgumentsExtension arguments) { IList <User> users = new List <User>(); User deleteUser = new User(); Guid identifier = Guid.Empty; if (string.IsNullOrEmpty(arguments.Identifier) && string.IsNullOrEmpty(arguments.Login)) { Task <ConnectorResult <Response <IEnumerable <User> > > > usersRequest = WinApiConnector.RequestGet <Response <IEnumerable <User> > >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/User/GetAll"); ConnectorResult <Response <IEnumerable <User> > > preResponse = usersRequest.Result; if (!preResponse.IsSuccess) { return(new CommandResult(preResponse.Message, false)); } if (!preResponse.Response.IsSuccess) { return(new CommandResult(preResponse.Response.Code, false)); } if (!preResponse.Response.Payload.Any()) { return(new CommandResult("The payload od request is null or empty", false)); } int index = 1; foreach (var ur in preResponse.Response.Payload) { users.Add(ur); System.Console.WriteLine($"{index++}. {ur.Login} - {ur.Identifier}"); } System.Console.WriteLine($"Wybierz numer użytkownika do aktualizacji 1-{users.Count}"); bool shouldWork = true; int choisenOne = 0; do { string readLine = System.Console.ReadLine(); bool isParsed = int.TryParse(readLine, out choisenOne); shouldWork = isParsed ? choisenOne > users.Count : true; }while(shouldWork); deleteUser.Identifier = users[choisenOne - 1].Identifier; } if (!string.IsNullOrEmpty(arguments.Identifier)) { var tmp = Guid.TryParse(arguments.Identifier, out identifier); if (!tmp) { return(new CommandResult("Cannot parse identifier from -i param", false)); } deleteUser.Identifier = identifier; } if (!string.IsNullOrEmpty(arguments.Login) && string.IsNullOrEmpty(arguments.Identifier)) { User tmpUser = new User() { Login = arguments.Login }; Task <ConnectorResult <Response <IEnumerable <User> > > > userByLogin = WinApiConnector.RequestPost <User, Response <IEnumerable <User> > >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/User/GetByLogin", tmpUser); ConnectorResult <Response <IEnumerable <User> > > preResponse = userByLogin.Result; if (!preResponse.IsSuccess) { return(new CommandResult(preResponse.Message, false)); } if (!preResponse.Response.IsSuccess) { return(new CommandResult(preResponse.Response.Code, false)); } if (!preResponse.Response.Payload.Any()) { return(new CommandResult("The Payload of request is null or empty", false)); } if (preResponse.Response.Payload.Count() != 1) { return(new CommandResult("There is too many results", true)); } deleteUser.Identifier = preResponse.Response.Payload.FirstOrDefault().Identifier; } var result = WinApiConnector.RequestDelete <Response <string> >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/User/Delete/" + $"{deleteUser.Identifier}"); ConnectorResult <Response <string> > connectorResult = result.Result; if (!connectorResult.IsSuccess) { return(new CommandResult(connectorResult.Message, false)); } if (!connectorResult.Response.IsSuccess) { return(new CommandResult(connectorResult.Response.Code, false)); } if (string.IsNullOrEmpty(connectorResult.Response.Payload)) { return(new CommandResult("The payload of response <DELETE USER > is null or empty ", false)); } return(new CommandResult($"The User {deleteUser.Identifier} has been deleted", true)); }
protected override CommandResult Execute(ConsoleContext context, AnimalArguments arguments) { Animal deleteAnimal = new Animal(); IList <Animal> animals = new List <Animal>(); if (string.IsNullOrEmpty(arguments.Name)) { Task <ConnectorResult <Response <IEnumerable <Animal> > > > existsAnimals = WinApiConnector.RequestGet <Response <IEnumerable <Animal> > >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/Configuration/"); ConnectorResult <Response <IEnumerable <Animal> > > preResult = existsAnimals.Result; if (!preResult.IsSuccess) { return(new CommandResult(preResult.Message, false)); } if (!preResult.Response.IsSuccess) { return(new CommandResult(preResult.Response.Code, false)); } if (!preResult.Response.Payload.Any()) { return(new CommandResult("The payload of request is null or empty", false)); } foreach (var animal in preResult.Response.Payload) { animals.Add(animal); System.Console.WriteLine($"{animal}"); } bool shouldWork = true; int choisenOne = 0; do { string readLine = System.Console.ReadLine(); bool isParsed = int.TryParse(readLine, out choisenOne); shouldWork = isParsed ? choisenOne > animals.Count() : true; }while(shouldWork); deleteAnimal.Identifier = animals[choisenOne - 1].Identifier; } if (!string.IsNullOrEmpty(arguments.Name)) { Task <ConnectorResult <Response <IEnumerable <Animal> > > > existAnimal = WinApiConnector.RequestGet <Response <IEnumerable <Animal> > >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/Configuration/GetAnimal" + $"/{arguments.Name.ToLower()}"); ConnectorResult <Response <IEnumerable <Animal> > > connectorResult = existAnimal.Result; if (!connectorResult.IsSuccess) { return(new CommandResult(connectorResult.Message, false)); } if (!connectorResult.Response.IsSuccess) { return(new CommandResult(connectorResult.Response.Code, false)); } if (!connectorResult.Response.Payload.Any()) { return(new CommandResult("The paylod of request is null or empty", false)); } if (connectorResult.Response.Payload.Count() != 1) { return(new CommandResult("There is too many results", false)); } deleteAnimal.Identifier = connectorResult.Response.Payload.FirstOrDefault().Identifier; } Task <ConnectorResult <Response <string> > > deleteResult = WinApiConnector.RequestDelete <Response <string> >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/Configuration/DeleteAnimal" + $"/{deleteAnimal.Identifier}"); ConnectorResult <Response <string> > postResult = deleteResult.Result; if (!postResult.IsSuccess) { return(new CommandResult(postResult.Message, false)); } if (!postResult.Response.IsSuccess) { return(new CommandResult(postResult.Response.Code, false)); } if (string.IsNullOrEmpty(postResult.Response.Payload)) { return(new CommandResult("The payload of response is null or empty", false)); } return(new CommandResult(postResult.Response.Payload, true)); }
protected override CommandResult Execute(ConsoleContext context, QuarryArguments arguments) { List <Quarry> quarries = new List <Quarry>(); Quarry quarry = new Quarry(); if (string.IsNullOrEmpty(arguments.Identifier)) { Task <ConnectorResult <Response <IEnumerable <Quarry> > > > result = WinApiConnector.RequestGet <Response <IEnumerable <Quarry> > >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/Hunting/GetQuarries"); ConnectorResult <Response <IEnumerable <Quarry> > > preResult = result.Result; if (!preResult.IsSuccess) { return(new CommandResult(preResult.Message, false)); } if (!preResult.Response.IsSuccess) { return(new CommandResult(preResult.Response.Code, false)); } if (!preResult.Response.Payload.Any()) { return(new CommandResult("The payload of response is null or empty", false)); } foreach (var item in preResult.Response.Payload) { System.Console.WriteLine($"{item.Animal.Name} - {item.Amount}"); quarries.Add(item); } bool shoudWork = true; int choisenOne = 0; do { System.Console.Write("WYbierz zwierzyne do usunięcia"); string readLine = System.Console.ReadLine(); bool isParsed = int.TryParse(readLine, out choisenOne); shoudWork = isParsed ? choisenOne > quarries.Count() : true; }while(shoudWork); quarry.Identifier = quarries[choisenOne - 1].Identifier; } if (!string.IsNullOrEmpty(arguments.Identifier)) { Guid deleteGuid = Guid.Empty; bool isParsedGuid = Guid.TryParse(arguments.Identifier, out deleteGuid); if (isParsedGuid) { quarry.Identifier = deleteGuid; } return(new CommandResult("The Identifier parsing error. Please use the correct identifier or do not use the -i param")); } Task <ConnectorResult <Response <string> > > deleteResult = WinApiConnector.RequestDelete <Response <string> >($"{context.ConsoleSettings.ServerAddress}:{context.ConsoleSettings.Port}/Api/Hunting/DeleteQuarry" + $"{quarry.Identifier}"); ConnectorResult <Response <string> > connectorResult = deleteResult.Result; if (!connectorResult.IsSuccess) { return(new CommandResult(connectorResult.Message, false)); } if (!connectorResult.Response.IsSuccess) { return(new CommandResult(connectorResult.Response.Code, false)); } if (string.IsNullOrEmpty(connectorResult.Response.Payload)) { return(new CommandResult("The payload of response is null or empty", false)); } return(new CommandResult(connectorResult.Response.Payload, true)); }