public IBusinessResponse CreateBusinessResponse(CreateBusinessViewModel model, string createdBy) { try { if (HasUniqueName(model.Name) == false) { _response.HasFailed("Business name already exists."); return(_response); } if (HasUniqueTaxNumber(model.TaxNumber) == false) { _response.HasFailed("Business tax number already exists."); return(_response); } CreateBusiness(createdBy, model); _response.HasSucceeded("Business was created successfully."); return(_response); } catch (Exception e) { _exceptionLogFacade.StoreException(e); _response.HasFailed("Business could not be created due to unexpected error, please try again later."); return(_response); } }
public async Task <IActionResult> CreateBusiness(CreateBusinessViewModel model) { if (!this.ModelState.IsValid) { return(View(model)); } var coverPicture = await this.pictureHelper.ConvertPicturePath(model.CoverPicture); var pictures = new List <string>(); foreach (var picture in model.Pictures) { pictures.Add(await this.pictureHelper.ConvertPicturePath(picture)); } var business = await this.businessService.CreateBusiness(model.Name, model.Location, model.GPSCoordinates, model.About, model.ShortDescription, coverPicture, pictures, model?.FacilitiesForTheBusiness); return(RedirectToRoute( new { controller = "Business", action = "Details", id = business.BusinessId })); }
public IActionResult CreateBusiness(CreateBusinessViewModel model) { if (ModelState.IsValid) { Business newBusiness = new Business() { Name = model.Name, Emails = model.Emails, Phones = model.Phones, NoOfStaffs = model.NoOfStaffs, Province = model.Province, City = model.City, Country = model.Country, AddressLine = model.AddressLine, PostalCode = model.PostalCode, Sectors = model.Sectors, Likes = model.Likes, Dislikes = model.Dislikes }; _businessRepository.AddBusiness(newBusiness); return(RedirectToAction("details", new { id = newBusiness.Id })); } return(View()); }
public async Task RedirectToRoute_WhenParameterIsValid() { var businessServiceMocked = new Mock <IBusinessService>(); var mapperMocked = new Mock <IMappingProvider>(); var facilityServiceMocked = new Mock <IFacilityService>(); var pictureHelper = new Mock <IPictureHelper>(); var coverPictureMock = new Mock <IFormFile>(); var pictureMock = new Mock <IFormFile>(); var businessDTO = new BusinessDTO { BusinessId = 1 }; var name = "Ivan"; var location = "Tuk"; var gpsCoordinates = "3424444"; var about = "ok"; var shortDesc = "ok"; var coverPicture = coverPictureMock.Object; var pictures = new List <IFormFile> { pictureMock.Object }; var facilitiesForTheBusiness = new List <int> { 1 }; var createBusinessViewModel = new CreateBusinessViewModel { Name = name, Location = location, GPSCoordinates = gpsCoordinates, About = about, ShortDescription = shortDesc, CoverPicture = coverPicture, Pictures = pictures, FacilitiesForTheBusiness = facilitiesForTheBusiness }; businessServiceMocked.Setup(b => b.CreateBusiness(name, location, gpsCoordinates, about, shortDesc, null, new List <string> { null }, facilitiesForTheBusiness)) .ReturnsAsync(businessDTO); var businessController = new BusinessController(businessServiceMocked.Object, mapperMocked.Object, facilityServiceMocked.Object, pictureHelper.Object); var result = await businessController.CreateBusiness(createBusinessViewModel) as RedirectToRouteResult;; var route = result.RouteValues.Values.ToList(); Assert.AreEqual("Business", route[0]); Assert.AreEqual("Details", route[1]); Assert.AreEqual(1, route[2]); }
public async Task CallbusinessServiceOnce_WhenParameterIsValid() { var businessServiceMocked = new Mock <IBusinessService>(); var mapperMocked = new Mock <IMappingProvider>(); var facilityServiceMocked = new Mock <IFacilityService>(); var pictureHelper = new Mock <IPictureHelper>(); var coverPictureMock = new Mock <IFormFile>(); var pictureMock = new Mock <IFormFile>(); var businessDTO = new BusinessDTO { BusinessId = 1 }; var name = "Ivan"; var location = "Tuk"; var gpsCoordinates = "3424444"; var about = "ok"; var shortDesc = "ok"; var coverPicture = coverPictureMock.Object; var pictures = new List <IFormFile> { pictureMock.Object }; var facilitiesForTheBusiness = new List <int> { 1 }; var createBusinessViewModel = new CreateBusinessViewModel { Name = name, Location = location, GPSCoordinates = gpsCoordinates, About = about, ShortDescription = shortDesc, CoverPicture = coverPicture, Pictures = pictures, FacilitiesForTheBusiness = facilitiesForTheBusiness }; businessServiceMocked.Setup(b => b.CreateBusiness(name, location, gpsCoordinates, about, shortDesc, null, new List <string> { null }, facilitiesForTheBusiness)) .ReturnsAsync(businessDTO); var businessController = new BusinessController(businessServiceMocked.Object, mapperMocked.Object, facilityServiceMocked.Object, pictureHelper.Object); await businessController.CreateBusiness(createBusinessViewModel); businessServiceMocked.Verify(b => b.CreateBusiness(name, location, gpsCoordinates, about, shortDesc, null, new List <string> { null }, facilitiesForTheBusiness), Times.Once); }
public PartialViewResult Create(CreateBusinessViewModel model) { IBusinessResponse response; if (!ModelState.IsValid) { response = _facade.InvalidModelStateResponse; return(PartialView("_CreateResponsePartial", response)); } var identity = User.Identity.Name; response = _facade.CreateBusinessResponse(model, identity); return(PartialView("_CreateResponsePartial", response)); }
public async Task ReturnCorrectViewModel_WhenModelIsInvalid() { var businessServiceMocked = new Mock <IBusinessService>(); var mapperMocked = new Mock <IMappingProvider>(); var facilityServiceMocked = new Mock <IFacilityService>(); var pictureHelper = new Mock <IPictureHelper>(); var createBusinessViewModel = new CreateBusinessViewModel(); var businessController = new BusinessController(businessServiceMocked.Object, mapperMocked.Object, facilityServiceMocked.Object, pictureHelper.Object); businessController.ModelState.AddModelError("error", "error"); var result = await businessController.CreateBusiness(createBusinessViewModel) as ViewResult; Assert.IsInstanceOfType(result.Model, typeof(CreateBusinessViewModel)); }
public async Task <IActionResult> NewBusiness([FromBody] CreateBusinessViewModel model) { if (_db.Users.Any(x => x.PhoneNumber.ToUpper() == model.PhoneNumber.ToUpper() || x.UserName == model.PhoneNumber.ToUpper()) || model == null) { return((IActionResult)BadRequest(false)); } var userTocreate = new ApplicationUser { Id = Guid.NewGuid().ToString(), ProfileType = 2, UserName = model.PhoneNumber, FirstName = model.FirstName, LastName = model.LastName, Country = model.Country, City = model.City, Code = model.Code, Iso = model.Iso, PhoneNumber = model.PhoneNumber, Address = model.Address, BusinessName = model.BusinessName, BusinessType = model.BusinessType, IdCardNumber = model.IdCardNumber, TimeZone = Tools.GetTimezone(model.Code), Lat = model.Lat, Long = model.Long, Email = model.Email, NormalizedEmail = model.Email.ToUpper(), MoneyCode = GenerateCode().ToString(), }; userTocreate.Creation = Tools.GetLocalTime(userTocreate.TimeZone); userTocreate.SubscriptionStart = Tools.GetLocalTime(userTocreate.TimeZone); userTocreate.SubscriptionEnd = Tools.GetLocalTime(userTocreate.TimeZone).AddDays(7); var result = await _userManager.CreateAsync(userTocreate, model.Password); if (result.Succeeded) { return((IActionResult)Ok(true)); } return((IActionResult)BadRequest(false)); }
public async Task ReturnCorrectViewModel() { var businessServiceMocked = new Mock <IBusinessService>(); var mapperMocked = new Mock <IMappingProvider>(); var facilityServiceMocked = new Mock <IFacilityService>(); var pictureHelper = new Mock <IPictureHelper>(); var facilityDTOs = new List <FacilityDTO> { new FacilityDTO() }; var createBusinessVM = new CreateBusinessViewModel(); facilityServiceMocked.Setup(f => f.ListAllFacilitiesAsync()) .ReturnsAsync(facilityDTOs); mapperMocked.Setup(m => m.MapTo <CreateBusinessViewModel>(facilityDTOs)) .Returns(createBusinessVM); var accountController = new BusinessController(businessServiceMocked.Object, mapperMocked.Object, facilityServiceMocked.Object, pictureHelper.Object); var result = await accountController.CreateBusiness() as ViewResult; Assert.IsInstanceOfType(result.Model, typeof(CreateBusinessViewModel)); }