public async Task <object> Delete(RoleBySystemName request)
        {
            var response = new BaseResponse();
            Expression <Func <Role, bool> > keySelector = x => x.SystemName == request.SystemName;
            var result = await _roleService.Delete(keySelector : keySelector);

            response.Success    = true;
            response.Message    = $"Delete role with id {request.SystemName} success";
            response.StatusCode = (int)HttpStatusCode.OK;
            response.Results    = result.ConvertTo <RoleDto>();

            return(response);
        }
        public async Task <object> Get(RoleBySystemName request)
        {
            var response = new BaseResponse();
            Expression <Func <Role, bool> > keySelector = x => x.SystemName == request.SystemName;
            var entity = await _roleService.GetById(keySelector : keySelector);

            var dto = entity.ConvertTo <RoleDto>();

            response.Success    = true;
            response.StatusCode = (int)HttpStatusCode.OK;
            response.Results    = dto;

            return(response);
        }