/// <summary> /// Allows you to convert the current product option object to the DTO equivalent for use with the REST API /// </summary> /// <returns>A new instance of OptionDTO</returns> public OptionDTO ToDto() { var dto = new OptionDTO(); dto.Bvin = Bvin; dto.IsShared = IsShared; dto.IsVariant = IsVariant; dto.Items = new List <OptionItemDTO>(); foreach (var oi in Items) { dto.Items.Add(oi.ToDto()); } dto.Name = Name; dto.NameIsHidden = NameIsHidden; dto.OptionType = (OptionTypesDTO)(int)OptionType; dto.Settings = new List <OptionSettingDTO>(); foreach (var set in Settings) { var setdto = new OptionSettingDTO(); setdto.Key = set.Key; setdto.Value = set.Value; dto.Settings.Add(setdto); } dto.TextSettings = new List <OptionSettingDTO>(); foreach (var txtSet in TextSettings) { var textSetDto = new OptionSettingDTO(); textSetDto.Key = txtSet.Key; textSetDto.Value = txtSet.Value; dto.TextSettings.Add(textSetDto); } dto.StoreId = StoreId; return(dto); }
public OptionDTO GetById(int entityId) { OptionDTO item = new OptionDTO(); string connectionString = ConnectionStringHelper.GetConnStringFromConfigFile(); string commandText = "SELECT * FROM [dbo].[Options] WHERE [OptionId] = @entityId"; SqlParameter parameter = new SqlParameter("@entityId", entityId); using (SqlDataReader reader = CommandHelper.ExecuteReader(connectionString, commandText, CommandType.Text, parameter)) { if (reader.HasRows) { item = new OptionDTO { OptionId = (int)reader["OptionId"], Text = reader["Text"].ToString(), }; } else { Console.WriteLine("Id not found"); } return(item); } }
public void FromDto(OptionDTO dto) { if (dto == null) { return; } this.Bvin = dto.Bvin ?? string.Empty; this.IsShared = dto.IsShared; this.IsVariant = dto.IsVariant; this.Items.Clear(); this.Name = dto.Name ?? string.Empty; this.NameIsHidden = dto.NameIsHidden; this.StoreId = dto.StoreId; OptionTypes typeCode = OptionTypes.DropDownList; typeCode = (OptionTypes)dto.OptionType; this.SetProcessor(typeCode); foreach (OptionItemDTO oi in dto.Items) { OptionItem opt = new OptionItem(); opt.FromDto(oi); this.AddItem(opt); } this.Settings = new OptionSettings(); foreach (OptionSettingDTO set in dto.Settings) { this.Settings.AddOrUpdate(set.Key, set.Value); } }
public void ProductOption_CreateAndAssignToProduct() { //Create API Proxy var proxy = CreateApiProxy(); //Create Production option var option = new OptionDTO { StoreId = 1, Name = "TEST Option", OptionType = OptionTypesDTO.DropDownList, Items = new List <OptionItemDTO>() }; var createResponse = proxy.ProductOptionsCreate(option); CheckErrors(createResponse); //Assign product option to test product var assingtoProductResponse = proxy.ProductOptionsAssignToProduct(createResponse.Content.Bvin, TestConstants.TestProductBvin, false); Assert.IsTrue(assingtoProductResponse.Content); //Generate product variants for options var generateVariantsResponse = proxy.ProductOptionsGenerateAllVariants(TestConstants.TestProductBvin); Assert.IsTrue(generateVariantsResponse.Content); }
private void btnSaveItem_Click(object sender, EventArgs e) { Regex reg = new Regex("\\d+"); if (!reg.IsMatch(txtValue.Text)) { txtValue.Text = "0"; return; } if (editItemId == Guid.Empty) { OptionDTO option = new OptionDTO(); option.DisplayName = txtLabel.Text; option.Value = int.Parse(txtValue.Text); option.Description = MemoDescription.Text; option.OptionId = Guid.NewGuid(); option.DisplayOrder = OptionListBindingSource.Count + 1; OptionListBindingSource.Add(option); } else { OptionDTO option = OptionListBindingSource.Current as OptionDTO; if (option != null && option.OptionId == editItemId) { option.DisplayName = txtLabel.Text; option.Value = int.Parse(txtValue.Text); option.Description = MemoDescription.Text; option.DisplayOrder = OptionListBindingSource.IndexOf(option); } } }
public void Update(OptionDTO entity) { Option option = _mapper.Map <Option>(entity); _unitOfWork.Options.Update(option); _unitOfWork.SaveChanges(); }
public IHttpActionResult UpdateOption(int id, [FromBody] OptionBindingModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } OptionDTO optionToUpdate = this._optionService.GetById(id); if (optionToUpdate == null) { return(Content(HttpStatusCode.NotFound, $"Test category with id={id} does not exist.")); } OptionDTO updatedOption = new OptionDTO() { QuestionId = model.QuestionId, Body = model.Body, Index = model.Index, IsCorrect = model.IsCorrect }; this._optionService.Update(updatedOption); return(Ok()); }
//DTO public OptionDTO ToDto() { OptionDTO dto = new OptionDTO(); dto.Bvin = this.Bvin; dto.IsShared = this.IsShared; dto.IsVariant = this.IsVariant; dto.Items = new List <OptionItemDTO>(); foreach (OptionItem oi in this.Items) { dto.Items.Add(oi.ToDto()); } dto.Name = this.Name; dto.NameIsHidden = this.NameIsHidden; dto.OptionType = (OptionTypesDTO)((int)this.OptionType); dto.Settings = new List <OptionSettingDTO>(); foreach (var set in this.Settings) { OptionSettingDTO setdto = new OptionSettingDTO(); setdto.Key = set.Key; setdto.Value = set.Value; dto.Settings.Add(setdto); } dto.StoreId = this.StoreId; return(dto); }
public async Task <OptionDTO> UpdateOption(Guid id, OptionDTO option) { option.Id = id; var domainOption = Mapper.Map <Option>(option); await Task.Run(() => Options.Update(domainOption)); return(option); }
private void BtnDeleteOption_Click(object sender, EventArgs e) { OptionDTO option = OptionListBindingSource.Current as OptionDTO; if (option != null) { OptionListBindingSource.Remove(option); } }
public static Option OptionDTOToEntity(OptionDTO DTOObject) { return(new Option { OptionId = DTOObject.OptionId, Text = DTOObject.Text, CreateDate = DTOObject.CreateDate, ModifiedDate = DTOObject.ModifiedDate }); }
public void Add(OptionDTO entity) { Option result = DataConverter.OptionDTOToEntity(entity); using (var context = new DemoContext()) { context.Options.Add(result); context.SaveChanges(); } }
public async Task <OptionDTO> CreateOption(Guid questionId, OptionDTO option) { var domainOption = Mapper.Map <Option>(option); // Bind to question domainOption.QuestionId = questionId; await Task.Run(() => Options.Update(domainOption)); return(option); }
public void Add(OptionDTO entity) { string connectionString = ConnectionStringHelper.GetConnStringFromConfigFile(); string commandText = "INSERT INTO [dbo].[Options] ([Text]) VALUES (@Text)"; SqlParameter parameter = new SqlParameter("@Text", entity.Text); int rows = CommandHelper.ExecuteNonQuery(connectionString, commandText, CommandType.Text, parameter); Console.WriteLine("{0} row(s) inserted", rows); }
public void Update(OptionDTO entity) { Option result = DataConverter.OptionDTOToEntity(entity); using (var context = new DemoContext()) { var found = context.Options.Find(result.OptionId); found.Text = entity.Text; found.ModifiedDate = DateTime.Now; context.SaveChanges(); } }
public async Task <IActionResult> ModifyOption(int id, [FromBody] OptionDTO option) { if (!ModelState.IsValid) { return(BadRequest() as IActionResult); } var entity = await service.PutAsync(option); return(entity == null?StatusCode(304) as IActionResult : Ok(entity)); }
private void listOption_SelectedIndexChanged(object sender, EventArgs e) { OptionDTO option = OptionListBindingSource.Current as OptionDTO; if (option != null) { txtLabel.Text = option.DisplayName; txtValue.Text = option.Value.ToString(); MemoDescription.Text = option.Description; editItemId = option.OptionId; } }
private void ListSort(OptionDTO option, OptionDTO preOption) { List <OptionSetDTO> optionSetList = EntityBindingSource.DataSource as List <OptionSetDTO>; if (optionSetList != null && optionSetList.Count > 0) { int index = optionSetList[0].OptionList.IndexOf(option); int preIndex = optionSetList[0].OptionList.IndexOf(preOption); optionSetList[0].OptionList[index] = preOption; optionSetList[0].OptionList[preIndex] = option; EntityBindingSource.DataSource = optionSetList; } }
// POST: Options public async Task <IActionResult> AddOption([FromBody] OptionDTO option) { if (!ModelState.IsValid) { return(BadRequest() as IActionResult); } var entity = await service.PostAsync(option); return(entity == null?StatusCode(409) as IActionResult : Created($"{Request?.Scheme}://{Request?.Host}{Request?.Path}{entity.Id}", entity)); }
public OptionDTO MapperToDTO(Option Option) { var optionDTO = new OptionDTO { Id = Option.Id , Description = Option.Description , Quantity = Option.Quantity }; return(optionDTO); }
public List <OptionSetDTO> GetOptionSetById(Guid optionSetId, int languageId) { using (var context = KatrinEntities.CreateInstance()) { context.Configuration.ProxyCreationEnabled = false; //var query = context.OptionSets // .FetchMany(r=>r.AttributePicklistValues); var optionSetQuery = from o in context.OptionSets join p in context.AttributePicklistValues.OrderBy(c => c.DisplayOrder) on o.OptionSetId equals p.OptionSetId into pickupList join local in context.LocalizedLabels.Where(c => c.LanguageId == languageId) on o.OptionSetId equals local.ObjectId into locals where o.OptionSetId == optionSetId select new { optionset = o, pList = pickupList, localLabls = locals }; return(optionSetQuery.ToList().Select(r => { var item = new OptionSetDTO(); var description = r.localLabls.Where(c => c.ObjectColumnName == "Description").FirstOrDefault(); item.Description = description != null ? description.Label : ""; var displayName = r.localLabls.Where(c => c.ObjectColumnName == "DisplayName").FirstOrDefault(); item.DisplayName = displayName != null ? displayName.Label : ""; item.IsCustomizable = r.optionset.IsCustomizable; item.Name = r.optionset.Name; item.OptionSetId = r.optionset.OptionSetId; item.OptionList = new List <OptionDTO>(); r.pList.ToList().ForEach(p => { var option = new OptionDTO(); var itemDescription = context.LocalizedLabels.SingleOrDefault(c => c.ObjectId == p.AttributePicklistValueId && c.ObjectColumnName == "Description" && c.LanguageId == languageId); option.Description = itemDescription != null ? itemDescription.Label : ""; var itemDisplayName = context.LocalizedLabels.Single(c => c.ObjectId == p.AttributePicklistValueId && c.ObjectColumnName == "DisplayName" && c.LanguageId == languageId); option.DisplayName = itemDisplayName != null ? itemDisplayName.Label : ""; option.DisplayOrder = p.DisplayOrder; option.OptionId = p.AttributePicklistValueId; option.Value = p.Value; item.OptionList.Add(option); }); return item; } ).ToList()); } }
public IHttpActionResult DeleteOption(int id) { OptionDTO optionToDel = this._optionService.GetById(id); if (optionToDel == null) { return(Content(HttpStatusCode.NotFound, $"option with id={id} does not exist.")); } this._optionService.Delete(id); return(Ok()); }
public async Task deleteOptionAsync(OptionDTO optionModel) { logger.LogInformation($"Starting method {nameof(deleteOptionAsync)}."); if (optionModel == null) { var message = new HttpResponseMessage(System.Net.HttpStatusCode.BadRequest) { Content = new StringContent($"{nameof(optionModel)} cannot be null") }; throw new HttpResponseException(message); } if (optionModel.Id == null) { var message = new HttpResponseMessage(System.Net.HttpStatusCode.BadRequest) { Content = new StringContent($"{nameof(optionModel)} is missing some required values") }; throw new HttpResponseException(message); } var option = await appDb.Options.FindAsync(optionModel.Id); if (option == null) { var message = new HttpResponseMessage(System.Net.HttpStatusCode.BadRequest) { Content = new StringContent($"The option with given id {nameof(optionModel.Id)} doesn't exist in database") }; throw new HttpResponseException(message); } try { appDb.Options.Remove(option); await appDb.SaveChangesAsync(); } catch (Exception ex) { var message = new HttpResponseMessage(System.Net.HttpStatusCode.BadRequest) { Content = new StringContent($"The option with given id {nameof(optionModel.Id)} cannot be deleted because some products have this option") }; throw new HttpResponseException(message); } logger.LogInformation($"Finished method {nameof(deleteOptionAsync)}."); }
public Option MapperToEntity(OptionDTO optionDTO) { var option = new Option { Id = optionDTO.Id , Description = optionDTO.Description , Quantity = optionDTO.Quantity , QuestionId = optionDTO.QuestionId }; return(option); }
public IHttpActionResult Get([FromUri] int id) { var option = _optionService.Get(id); if (option == null) { return(NotFound()); } OptionDTO optionDTO = new OptionDTO { Text = option.Text }; return(Ok(option)); }
public void Update(OptionDTO entity) { int entityId = entity.OptionId; string text = "Male"; SqlParameter[] parameter = new SqlParameter[2]; string connectionString = ConnectionStringHelper.GetConnStringFromConfigFile(); string commandText = "UPDATE [dbo].[Options] SET [Text] = @Text WHERE [OptionId] = @entityId"; parameter[0] = new SqlParameter("@Text", text); parameter[1] = new SqlParameter("@entityId", entityId); int count = CommandHelper.ExecuteNonQuery(connectionString, commandText, CommandType.Text, parameter); Console.WriteLine("Items modified: {0}", count); }
public ActionResult Delete([FromBody] OptionDTO optionDTO) { try { if (optionDTO == null) { return(NotFound()); } _applicationServiceOption.Remove(optionDTO); return(Ok("O produto foi removido com sucesso!")); } catch (Exception ex) { throw ex; } }
public ActionResult Put([FromBody] OptionDTO optionDTO) { try { if (optionDTO == null) { return(NotFound()); } _applicationServiceOption.Update(optionDTO); return(Ok("O produto foi atualizado com sucesso!")); } catch (Exception ex) { throw ex; } }
private void BtnDown_Click(object sender, EventArgs e) { OptionDTO option = OptionListBindingSource.Current as OptionDTO; if (option != null) { OptionListBindingSource.MoveNext(); var nextOption = OptionListBindingSource.Current as OptionDTO; if (nextOption != null) { int orderIndex = nextOption.DisplayOrder ?? 0; nextOption.DisplayOrder = option.DisplayOrder; option.DisplayOrder = orderIndex; ListSort(nextOption, option); } } }
private void BtnUp_Click(object sender, EventArgs e) { OptionDTO option = OptionListBindingSource.Current as OptionDTO; if (option != null) { OptionListBindingSource.MovePrevious(); var preOption = OptionListBindingSource.Current as OptionDTO; if (preOption != null) { int orderIndex = preOption.DisplayOrder ?? 0; preOption.DisplayOrder = option.DisplayOrder; option.DisplayOrder = orderIndex; ListSort(option, preOption); } } }