public async Task <ProductAttributeGetResponse> Get(ProductAttributeSearchRequest request)
        {
            var response = new ProductAttributeGetResponse();

            try
            {
                if (request != null)
                {
                    var result = await _productAttributeService.GetFromDb(request.AttributeId);

                    if (result == null)
                    {
                        response.SetFail(BaseResponse.ErrorCodeEnum.Fail);
                        return(response);
                    }
                    response.ProductAttribute = result.ToModel();
                }
                else
                {
                    response.ProductAttribute = new ProductAttributeViewModel()
                    {
                        AttributeStatus = 0
                    };
                }
            }
            catch (Exception e)
            {
                response.SetFail(e);
                _logger.LogError(e, e.Message, request);
            }
            return(response);
        }
        public async Task <IActionResult> Get([FromBody] ProductAttributeSearchRequest request)
        {
            try
            {
                var response = await _productAttributeAppService.Get(request);

                return(Json(response));
            }
            catch (Exception e)
            {
                _logger.LogError(e, Common.Common.GetMethodName(), request);
                throw;
            }
        }
        public async Task <ProductAttributeSearchResponse> Search(ProductAttributeSearchRequest request)
        {
            var response = new ProductAttributeSearchResponse();

            try
            {
                var paging = new RefSqlPaging(request.PageIndex, request.PageSize);
                var data   = await _productAttributeService.Search(request.AttributeId, request.AttributeName, paging);

                response.ProductAttributes = data.Select(x => x.ToModel()).ToArray();
                response.TotalRow          = paging.TotalRow;
                response.PageIndex         = request.PageIndex;
                response.PageSize          = request.PageSize;
                response.SetSucess();
            }
            catch (Exception e)
            {
                response.SetFail(e);
                _logger.LogError(e, e.Message, request);
            }
            return(response);
        }