private CreateObjectViewModel GetAttributes(CreateObjectViewModel model) { if (model.ListOfAddedOffers != null) { foreach (var item in model.ListOfAddedOffers) { item.Attribute = _touristObject.GetObjectAttribute(item.AttributeId); } } if (model.ListOfAddedCntOffers != null) { foreach (var item in model.ListOfAddedCntOffers) { item.CountableObjAttr = _touristObject.GetCountableObjectAttribute(item.CountableObjAttrId); } } if (model.ListOfAddedSpecialOffers != null) { foreach (var item in model.ListOfAddedSpecialOffers) { item.SpecialOffer = _touristObject.GetObjectAttribute(item.SpecialOfferId); } } return(model); }
public CreateActorWindow([NotNull] CreateObjectViewModel vm) { _vm = vm; InitializeComponent(); DataContext = vm; }
[Route("createobject")] // /createobject public IActionResult CreateObject() { var model = new CreateObjectViewModel(); model = FillSelectLists(model); DeleteAllTempImages(); return(View(model)); }
private void OnCreateActorClick(object sender, RoutedEventArgs e) { var objectVm = GetDataContextFromFrameworkElement <WorldObjectViewModel>(sender); var createVm = new CreateObjectViewModel(objectVm, _gameVM); var window = new CreateActorWindow(createVm); window.ShowDialog(); }
public IActionResult DeleteImageTemp(CreateObjectViewModel model) { var relativelocation = model.DeleteImagePath.Remove(0, 1); var path = Path.Combine(_hostingEnvironment.WebRootPath, relativelocation); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } return(Ok()); }
public void ViewModel_GetModelTestCase() { CreateObjectViewModel firstViewModel = null; Given("Create view-model", frame => firstViewModel = ViewModelBase.CreateViewModel <CreateObjectViewModel>(frame)) .When("Get model", _ => firstViewModel.GetModel <CreateObjectModel>()) .Then("Cheking view-models", model => { firstViewModel.NotNull() .CheckCreateObject(3); Assert.IsNotNull(model, "model can not be null"); }) .RunWindow(Timeuots.Second.Five); }
public void ViewModel_GetViewModelTestCase() { CreateObjectViewModel firstViewModel = null; Given("Create view-model", frame => ViewModelBase.CreateViewModel <CreateObjectViewModel>(frame)) .And("Cheking first view-model", viewModel => firstViewModel = viewModel.NotNull().CheckCreateObject(2)) .When("Get seccond view-model", _ => firstViewModel.GetViewModel <TestViewModel>()) .Then("Cheking view-models", secondViewModel => { firstViewModel.CheckCreateObject(3); Assert.IsNotNull(secondViewModel, "second view-model can not be null"); TestHelper.CheckBindViewModel(firstViewModel, secondViewModel); }) .RunWindow(Timeuots.Second.Five); }
private bool CheckPricing(CreateObjectViewModel model) { if ((!model.OccupancyPricing) && ((model.StandardPricingModel.StandardOccupancy == null || model.StandardPricingModel.OffsetPercentage == null || model.StandardPricingModel.MinOccupancy == null || model.StandardPricingModel.MaxOccupancy == null) || model.StandardPricingModel.StandardOccupancy < model.StandardPricingModel.MinOccupancy || model.StandardPricingModel.StandardOccupancy > model.StandardPricingModel.MaxOccupancy)) { return(false); } if (model.OccupancyPricing && (model.OccupancyBasedPricing.MaxOccupancy == null || model.OccupancyBasedPricing.MinOccupancy == null || model.OccubancBasedPrices == null)) { return(false); } return(true); }
public void ViewModel_BindModelTestCase() { CreateObjectViewModel viewModel = null; CreateObjectModel result = new CreateObjectModel(); Given("Create view-model", frame => viewModel = ViewModelBase.CreateViewModel <CreateObjectViewModel>(frame)) .When("Bind model", _ => { viewModel.BindModel(result); }) .Then("Cheking models", _ => { viewModel.NotNull().CheckCreateObject(2); Assert.AreEqual(viewModel.ModelOptions, result.ModelOptions, "options must match"); }) .RunWindow(Timeuots.Second.Five); }
public void ViewModel_GetViewModelSomeTypeTestCase() { CreateObjectViewModel firstViewModel = null; Given("Create view-model", frame => firstViewModel = ViewModelBase.CreateViewModel <CreateObjectViewModel>(frame)) .When("Get seccond view-model", _ => firstViewModel.GetViewModel <CreateObjectViewModel>()) .Then("Cheking view-models", secondViewModel => { firstViewModel.NotNull() .CheckCreateObject(3); secondViewModel.NotNull() .CheckCreateObject(0); Assert.AreNotEqual(firstViewModel, secondViewModel, "must be different objects"); TestHelper.CheckBindViewModel(firstViewModel, secondViewModel); }) .RunWindow(Timeuots.Second.Five); }
public void Model_GetModelSameTypeTestCase() { CreateObjectViewModel firstViewModel = null; CreateObjectModel firstModel = null; CreateObjectModel secondModel = null; Given("Create view-model", frame => firstViewModel = ViewModelBase.CreateViewModel <CreateObjectViewModel>(frame)) .When("Get models", _ => { firstModel = firstViewModel.GetModel <CreateObjectModel>(); secondModel = firstModel.GetModel <CreateObjectModel>(); }) .Then("Cheking models", _ => { firstViewModel.NotNull().CheckCreateObject(4); Assert.AreNotEqual(firstModel, secondModel, "must be different objects"); }) .RunWindow(Timeuots.Second.Five); }
public async Task <JsonResult> ImageUploadTemp(CreateObjectViewModel model) { var file = model.ImageFile; if (file != null) { var fileName = Path.GetFileName(file.FileName); var extention = Path.GetExtension(file.FileName); var filenamewithoutextension = Path.GetFileNameWithoutExtension(file.FileName); var path = Path.Combine(_hostingEnvironment.WebRootPath, "Temp", file.FileName); using (var fileStream = new FileStream(path, FileMode.Create)) { await file.CopyToAsync(fileStream); } } return(Json(file.FileName)); }
private CreateObjectViewModel FillSelectLists(CreateObjectViewModel model) { IEnumerable <Countries> countries = _touristObject.GetCountries(); model.Countries = countries.Select(c => new SelectListItem() { Text = c.Name, Value = c.Id.ToString() }).ToList(); if (model.SelectedCountry != null) { IEnumerable <Cities> cities = _touristObject.GetCitiesFromCountry(Convert.ToInt32(model.SelectedCountry)); model.Cities = cities.Select(c => new SelectListItem() { Text = c.Name, Value = c.Id.ToString() }).ToList(); } IEnumerable <ObjectTypes> objecttypes = _touristObject.GetObjectTypes(); model.ObjectTypes = objecttypes.Select(ot => new SelectListItem() { Text = ot.Name, Value = ot.Id.ToString() }).ToList(); IEnumerable <ObjectAttributes> attributes = _touristObject.GetAllObjectAttributes(); model.Offers = attributes.Select(a => new SelectListItem() { Text = a.Name, Value = a.Id.ToString() }).ToList(); model.SpecialOffers = model.Offers; IEnumerable <CountableObjectAttributes> cntOffers = _touristObject.GetAllCountableObjectAttributes(); model.CountableOffers = cntOffers.Select(co => new SelectListItem() { Text = co.Name, Value = co.Id.ToString() }).ToList(); return(model); }
public void Model_GetModelTestCase() { CreateObjectViewModel firstViewModel = null; CreateObjectModel firstModel = null; TestModel secondModel = null; Given("Create view-model", frame => firstViewModel = ViewModelBase.CreateViewModel <CreateObjectViewModel>(frame)) .When("Get models", _ => { firstModel = firstViewModel.GetModel <CreateObjectModel>(); secondModel = firstModel.GetModel <TestModel>(); }) .Then("Cheking models", _ => { firstViewModel.NotNull().CheckCreateObject(4); Assert.IsNotNull(firstModel, "first model can not be null"); Assert.IsNotNull(secondModel, "first model can not be null"); Assert.AreEqual(1, firstModel.GetModelCallCounter, $"method '{nameof(ModelBase.GetModel)}' should be called 1 times"); }) .RunWindow(Timeuots.Second.Five); }
public static CreateObjectViewModel CheckCreateObject(this CreateObjectViewModel viewModel, int expectedCountCallCreateObject) { TestHelper.AssertCounter(expectedCountCallCreateObject, viewModel.CreateObjectCallCounter, "CreateObject"); return(viewModel); }
[Route("createobject")] // /createobject public async Task <IActionResult> CreateObject(CreateObjectViewModel model) { if (!string.IsNullOrWhiteSpace(model.AddedOffers)) { model.ListOfAddedOffers = (_touristObject.ParseStringToIDsList(model.AddedOffers)) .Select(item => new ObjectHasAttributes() { AttributeId = item }).ToList(); } if (!string.IsNullOrWhiteSpace(model.AddedCountableOffers)) { model.ListOfAddedCntOffers = (_touristObject.ParseStringToKeyValueList(model.AddedCountableOffers)) .Select(item => new CntObjAttributesCount() { CountableObjAttrId = item.Key, Count = item.Value }).ToList(); } if (!string.IsNullOrWhiteSpace(model.AddedSpecialOffers)) { model.ListOfAddedSpecialOffers = (_touristObject.ParseStringToKeyValue(model.AddedSpecialOffers)) .Select(item => new SpecialOffersPrices() { SpecialOfferId = item.Key, Price = item.Value }).ToList(); } if (model.OccupancyPricing && (!string.IsNullOrWhiteSpace(model.OccubancBasedPrices))) { model.OccupancyBasedPricing.Prices = (_touristObject.ParseStringToKeyValue(model.OccubancBasedPrices)) .Select(item => new OccupancyBasedPrices() { Occupancy = item.Key, PricePerNight = item.Value }).ToList(); } if (!string.IsNullOrWhiteSpace(model.UnavailablePeriodsString)) { model.UnavailablePeriods = (_touristObject.ParseDates(model.UnavailablePeriodsString)) .Select(item => new UnavailablePeriods() { From = item.Key, To = item.Value }).ToList(); } if ((!ModelState.IsValid) || (!CheckPricing(model))) { TempData["Error-Notification"] = "Ispravno popunite neophodna polja!"; model = FillSelectLists(model); model = GetAttributes(model); DeleteAllTempImages(); return(View(model)); } Objects newobject = new Objects() { Name = model.Name, Address = model.Address, EmailContact = model.EmailContact, PhoneNumberContact = model.PhoneNumberContact, WebContact = model.WebContact, Description = model.Description, ObjectHasAttributes = model.ListOfAddedOffers == null ? new List <ObjectHasAttributes>() : model.ListOfAddedOffers.Select(item => new ObjectHasAttributes() { AttributeId = item.AttributeId }).ToList(), CntObjAttributesCount = model.ListOfAddedCntOffers == null ? new List <CntObjAttributesCount>() : model.ListOfAddedCntOffers, SpecialOffers = model.ListOfAddedSpecialOffers == null ? new List <SpecialOffersPrices>() : model.ListOfAddedSpecialOffers, CountryId = Convert.ToInt32(model.SelectedCountry) == 0 ? null : (int?)Convert.ToInt32(model.SelectedCountry), CityId = Convert.ToInt32(model.SelectedCity) == 0 ? null : (int?)Convert.ToInt32(model.SelectedCity), ObjectTypeId = Convert.ToInt32(model.SelectedObjectType) == 0 ? null : (int?)Convert.ToInt32(model.SelectedObjectType), Lat = model.Lat, Lng = model.Lng, UnavailablePeriods = model.UnavailablePeriods == null ? new List <UnavailablePeriods>() : model.UnavailablePeriods, OccupancyPricing = model.OccupancyPricing, StandardPricingModel = (!model.OccupancyPricing) ? model.StandardPricingModel : null, OccupancyBasedPricing = model.OccupancyPricing ? model.OccupancyBasedPricing : null, FullAddress = model.Address + (Convert.ToInt32(model.SelectedCity) == 0 ? "" : _touristObject.GetCityName(Convert.ToInt32(model.SelectedCity))) + (Convert.ToInt32(model.SelectedCity) == 0 ? "" : _touristObject.GetCoutnryName(Convert.ToInt32(model.SelectedCountry))), IdentUserId = _userManager.GetUserId(this.User), ObjectImages = CopyFiles(Path.Combine(_hostingEnvironment.WebRootPath, "Temp"), Path.Combine(_hostingEnvironment.WebRootPath, "UploadedImages")), }; if (model.Surface != null) { newobject.Surface = (float)model.Surface; } var currency = Request.Cookies["Currency"] == null ? "BAM" : Request.Cookies["Currency"]; await _touristObject.AddObject(newobject, currency); TempData["Notification"] = "Uspješno ste dodali ponudu"; return(Redirect("createobject")); }
public static CreateObjectViewModel NotNull(this CreateObjectViewModel viewModel) { Assert.IsNotNull(viewModel, "view-model can not be null"); return(viewModel); }