public string CreateAccomodation(CreateAccomodationModel accomodationModel) { try { var validationResult = accomodationModel.Evaluate(); if (validationResult.IsFailure) { return(validationResult.Error); } var accomodation = accomodationModel.ToBusinessObject(); this.accomodationService.CreateAccomodation(accomodation); return("Accomodation Created"); } catch (AccomodationAlreadyExistException) { return("This accomodation already exist"); } catch (ArgumentNullException exception) { var parameter = exception.GetParameter(); return($"It is not possible to create an accomodation without {parameter}"); } catch (Exception) { return("An unknow error was thrown"); } }
public static void CreateAccomodation() { var accomodation = new CreateAccomodationModel { Number = View.GetString("Number") }; var message = _controller.CreateAccomodation(accomodation); Console.WriteLine(message); }
public static Result Evaluate(this CreateAccomodationModel model) { return(AccomodationNumber.Create(model.Number)); }
public static Accomodation ToBusinessObject(this CreateAccomodationModel model) { return(new Accomodation( AccomodationNumber.Create(model.Number).Value )); }