Пример #1
0
        /// <summary>
        /// Return list of Smoking Policy
        /// </summary>
        /// <returns>Task<IActionResult></returns>
        public async Task <IActionResult> GetSmokingPolicy()
        {
            BaseResult <List <SmokingPolicyViewModel> > SmokingPolicyResult = new BaseResult <List <SmokingPolicyViewModel> >
            {
                Result = RedisCacheHelper.Instance.Get <List <SmokingPolicyViewModel> >(Helper.Constants.CacheKeys.SmokingPolicyList)
            };

            if (SmokingPolicyResult.Result == null || !SmokingPolicyResult.Result.Any())
            {
                BaseResult <List <SmokingPolicy> > smokingPolicy = await iRoom.GetSmokingPolicy().ConfigureAwait(false);

                if (smokingPolicy.IsError && smokingPolicy.ExceptionMessage != null)
                {
                    return(StatusCode(500, smokingPolicy));
                }
                else if (smokingPolicy.Result == null || !smokingPolicy.Result.Any())
                {
                    return(NoContent()); //204
                }
                else
                {
                    var smokingPolicyVm = DbMapperMasterdata.MapSmokingPolicyList(smokingPolicy); //mapping to SmokingPolicyViewModel
                    RedisCacheHelper.Instance.Set <List <SmokingPolicyViewModel> >(Helper.Constants.CacheKeys.SmokingPolicyList, smokingPolicyVm.Result);
                    return(Ok(smokingPolicyVm));
                }
            }
            return(Ok(SmokingPolicyResult));//200
        }