public async Task <IResult> ListProductAttributeValue(int id, DataHelperModel dataHelper) { var result = new Result { Operation = Operation.Read, Status = Status.Success }; try { var attributeValues = _productRepository.GetProductAttributeValuesList(id); if (attributeValues.Count() == 0) { result.Status = Status.Fail; result.StatusCode = HttpStatusCode.BadRequest; result.Message = "Attributes do not exist for the product."; return(result); } var list = attributeValues; list = DataSortExtention.SortBy(list, dataHelper.SortColumn, dataHelper.SortOrder); var resultCount = list.Count(); var pagedList = DataCount.Page(list, dataHelper.PageNumber, dataHelper.PageSize); var resultList = await pagedList.ToListAsync(); var pdtAttrValue = new List <ProductAttributeValueViewModel>(); pdtAttrValue = resultList.Select(p => { var pdtAttrValueView = new ProductAttributeValueViewModel(); pdtAttrValueView.MapFromModel(p); return(pdtAttrValueView); }).ToList(); ResultModel resultModel = new ResultModel(); resultModel.ProductAttributeValueResult = pdtAttrValue; resultModel.TotalCount = resultCount; if (resultList.Count == 0) { result.Status = Status.Fail; result.StatusCode = HttpStatusCode.BadRequest; result.Message = "No records present."; return(result); } result.Status = Status.Success; result.StatusCode = HttpStatusCode.OK; result.Body = resultModel; return(result); } catch (Exception e) { result.Status = Status.Error; result.Message = e.Message; result.StatusCode = HttpStatusCode.InternalServerError; return(result); } }
public async Task <IResult> GetProductAttributeValuesForCustomer(int id) { var result = new Result() { Operation = Operation.Read, Status = Status.Success }; try { if (id != 0) { var attributeValues = _productRepository.GetProductAttributeValuesList(id); if (attributeValues.Count() == 0) { result.Status = Status.Fail; result.StatusCode = HttpStatusCode.BadRequest; result.Message = "Attributes do not exist for the product."; return(result); } var resultList = await attributeValues.ToListAsync(); var pdtAttrValue = new List <ProductAttributeValueViewModel>(); pdtAttrValue = resultList.Select(p => { var pdtAttrValueView = new ProductAttributeValueViewModel(); pdtAttrValueView.MapFromModel(p); return(pdtAttrValueView); }).ToList(); ResultModel resultModel = new ResultModel(); resultModel.ProductAttributeValueResult = pdtAttrValue; resultModel.TotalCount = resultList.Count; result.Status = Status.Success; result.StatusCode = HttpStatusCode.OK; result.Body = resultModel; return(result); } result.Message = "Product ID is not valid."; result.Status = Status.Fail; result.StatusCode = HttpStatusCode.BadRequest; return(result); } catch (Exception e) { result.Body = e; result.Message = e.Message; result.StatusCode = HttpStatusCode.InternalServerError; result.Status = Status.Error; return(result); } }
public IResult GetProductAttributeValue(int id) { var result = new Result { Operation = Operation.Read, Status = Status.Success }; try { if (id != 0) { var attributeValue = _productRepository.GetProductAttributeValue(id); if (attributeValue == null) { result.Status = Status.Fail; result.StatusCode = HttpStatusCode.BadRequest; result.Message = "This attribute for product does not exist."; return(result); } ProductAttributeValueViewModel valueViewModel = new ProductAttributeValueViewModel(); valueViewModel.MapFromModel(attributeValue); result.Status = Status.Success; result.Body = valueViewModel; result.StatusCode = HttpStatusCode.OK; return(result); } result.Status = Status.Fail; result.StatusCode = HttpStatusCode.BadRequest; return(result); } catch (Exception e) { result.Status = Status.Error; result.Message = e.Message; result.StatusCode = HttpStatusCode.InternalServerError; return(result); } }