public IEnumerable <FetersCodeGroupDetail> GetFetersCodeGroupDetail(FetersCodeGroupDetail fetersCodeGroupDetail)
        {
            using (DemsifyEntities dataContext = new DemsifyEntities())
            {
                ObjectParameter totalPageCount = new ObjectParameter("TotalPageCount", typeof(int));
                ObjectParameter totalRecord    = new ObjectParameter("TotalRecord", typeof(int));

                var fetersCodeGroupDetails = dataContext.FetersCodeGroupDetailGet(fetersCodeGroupDetail.FetersCodeGroupDetailId, fetersCodeGroupDetail.FetersCodeDetailId, Utility.TrimString(fetersCodeGroupDetail.SearchText), fetersCodeGroupDetail.IsActive, fetersCodeGroupDetail.PageNumber, fetersCodeGroupDetail.PageSize, fetersCodeGroupDetail.IsPagingRequired, Utility.TrimString(fetersCodeGroupDetail.OrderBy), Utility.TrimString(fetersCodeGroupDetail.OrderByDirection), totalPageCount, totalRecord).ToList();

                var fetersCodeGroupDetailList = new List <FetersCodeGroupDetail>();
                foreach (var fetersCodeGroupDetailDetail in fetersCodeGroupDetails)
                {
                    fetersCodeGroupDetailList.Add(new FetersCodeGroupDetail()
                    {
                        FetersCodeDetailId      = fetersCodeGroupDetailDetail.FetersCodeDetailId,
                        FetersCodeGroupDetailId = fetersCodeGroupDetailDetail.FetersCodeGroupDetailId,
                        PurposeCode             = fetersCodeGroupDetailDetail.PurposeCode,
                        Description             = fetersCodeGroupDetailDetail.Description,
                        IsActive       = fetersCodeGroupDetailDetail.IsActive,
                        TotalPageCount = Convert.ToInt32(totalPageCount.Value),
                        TotalRecord    = Convert.ToInt32(totalRecord.Value)
                    });
                }
                return(fetersCodeGroupDetailList);
            }
        }
        public IHttpActionResult UpdateFetersCodeGroupDetail(UpdateFetersCodeGroupDetailRequest updateFetersCodeGroupDetailRequest)
        {
            var responses = new Responses();

            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                if (Utility.UserId < 0)
                {
                    return(BadRequest(Utility.INVALID_USER));
                }

                var fetersCodeGroupDetail = new FetersCodeGroupDetail()
                {
                    FetersCodeGroupDetailId = updateFetersCodeGroupDetailRequest.FetersCodeGroupDetailId,
                    FetersCodeDetailId      = updateFetersCodeGroupDetailRequest.FetersCodeDetailId,
                    PurposeCode             = updateFetersCodeGroupDetailRequest.PurposeCode,
                    Description             = updateFetersCodeGroupDetailRequest.Description,
                    ModifiedBy = Utility.UserId
                };
                int result = iFetersCodeGroupDetail.UpdateFetersCodeGroupDetail(fetersCodeGroupDetail);

                switch (result)
                {
                case 1:
                    responses.Status      = Utility.SUCCESS_STATUS_RESPONSE;
                    responses.Description = "FetersCodeGroupDetail updated successfully.";
                    break;

                case -2:
                    responses.Status      = Utility.ERROR_STATUS_RESPONSE;
                    responses.Description = "FetersCodeGroupDetail already exists.";
                    break;

                case -3:
                    responses.Status      = Utility.ERROR_STATUS_RESPONSE;
                    responses.Description = "FetersCodeGroupDetail doesn't exist.";
                    break;

                default:
                    responses.Status      = Utility.ERROR_STATUS_RESPONSE;
                    responses.Description = "Error while updating all definition.";
                    break;
                }
            }
            catch (Exception ex)
            {
                responses.Status      = Utility.ERROR_STATUS_RESPONSE;
                responses.Description = "Error while updating FetersCodeGroupDetail.";

                Utility.WriteLog("UpdateFetersCodeGroupDetail", updateFetersCodeGroupDetailRequest, "Error while updating FetersCodeGroupDetail. (FetersCodeGroupDetailAdminController)", ex.ToString());
            }
            return(Ok(responses));
        }
        public int DeleteFetersCodeGroupDetail(FetersCodeGroupDetail fetersCodeGroupDetail)
        {
            using (DemsifyEntities dataContext = new DemsifyEntities())
            {
                ObjectParameter result = new ObjectParameter("Result", typeof(int));

                dataContext.FetersCodeGroupDetailDelete(fetersCodeGroupDetail.FetersCodeGroupDetailId, fetersCodeGroupDetail.ModifiedBy, result);

                return(Convert.ToInt32(result.Value));
            }
        }
        public int UpdateFetersCodeGroupDetail(FetersCodeGroupDetail fetersCodeGroupDetail)
        {
            using (DemsifyEntities dataContext = new DemsifyEntities())
            {
                ObjectParameter result = new ObjectParameter("Result", typeof(int));

                dataContext.FetersCodeGroupDetailUpdate(fetersCodeGroupDetail.FetersCodeGroupDetailId, fetersCodeGroupDetail.FetersCodeDetailId, Utility.TrimString(fetersCodeGroupDetail.PurposeCode), Utility.TrimString(fetersCodeGroupDetail.Description), fetersCodeGroupDetail.ModifiedBy, result);

                return(Convert.ToInt32(result.Value));
            }
        }
        public IHttpActionResult AddFetersCodeGroupDetail(AddFetersCodeGroupDetailRequest addFetersCodeGroupDetailRequest)
        {
            var responses = new Responses();

            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var fetersCodeGroupDetail = new FetersCodeGroupDetail()
                {
                    FetersCodeDetailId = addFetersCodeGroupDetailRequest.FetersCodeDetailId,
                    PurposeCode        = addFetersCodeGroupDetailRequest.PurposeCode,
                    Description        = addFetersCodeGroupDetailRequest.Description,
                    CreatedBy          = Utility.UserId
                };
                int result = iFetersCodeGroupDetail.AddFetersCodeGroupDetail(fetersCodeGroupDetail);
                if (result > 0)
                {
                    responses.Status      = Utility.SUCCESS_STATUS_RESPONSE;
                    responses.Description = "FetersCodeGroupDetail added successfully.";
                }
                else if (result == -2)
                {
                    responses.Status      = Utility.ERROR_STATUS_RESPONSE;
                    responses.Description = "FetersCodeGroupDetail alread exists.";
                }
                else
                {
                    responses.Status      = Utility.ERROR_STATUS_RESPONSE;
                    responses.Description = "Error while adding FetersCodeGroupDetail.";
                }
            }
            catch (Exception ex)
            {
                responses.Status      = Utility.ERROR_STATUS_RESPONSE;
                responses.Description = "Error while adding FetersCodeGroupDetail.";

                Utility.WriteLog("AddFetersCodeGroupDetail", addFetersCodeGroupDetailRequest, "Error while adding FetersCodeGroupDetail. (FetersCodeGroupDetailAdminController)", ex.ToString());
            }
            return(Ok(responses));
        }
        public IHttpActionResult GetFetersCodeGroupDetail([FromUri] GetFetersCodeGroupDetailRequest getFetersCodeGroupDetailRequest)
        {
            var responses = new Responses();

            try
            {
                if (Utility.UserId < 0)
                {
                    return(BadRequest(Utility.INVALID_USER));
                }

                if (getFetersCodeGroupDetailRequest == null)
                {
                    getFetersCodeGroupDetailRequest = new GetFetersCodeGroupDetailRequest();
                }

                if (getFetersCodeGroupDetailRequest.PageSize == null)
                {
                    getFetersCodeGroupDetailRequest.PageSize = Convert.ToInt32(ConfigurationManager.AppSettings["PageSize"]);
                }

                var fetersCodeGroupDetail = new FetersCodeGroupDetail()
                {
                    FetersCodeGroupDetailId = getFetersCodeGroupDetailRequest.FetersCodeGroupDetailId,
                    FetersCodeDetailId      = getFetersCodeGroupDetailRequest.FetersCodeDetailId,
                    SearchText       = getFetersCodeGroupDetailRequest.SearchText,
                    IsActive         = getFetersCodeGroupDetailRequest.IsActive,
                    PageNumber       = getFetersCodeGroupDetailRequest.PageNumber,
                    PageSize         = Convert.ToInt32(getFetersCodeGroupDetailRequest.PageSize),
                    IsPagingRequired = (getFetersCodeGroupDetailRequest.PageNumber != null) ? true : false,
                    OrderBy          = getFetersCodeGroupDetailRequest.OrderBy,
                    OrderByDirection = getFetersCodeGroupDetailRequest.OrderByDirection
                };
                var fetersCodeGroupDetails = iFetersCodeGroupDetail.GetFetersCodeGroupDetail(fetersCodeGroupDetail);

                var fetersCodeGroupDetailList = new List <GetFetersCodeGroupDetailResponse>();
                foreach (var fetersCodeGroupDetailDetail in fetersCodeGroupDetails)
                {
                    fetersCodeGroupDetailList.Add(new GetFetersCodeGroupDetailResponse()
                    {
                        FetersCodeGroupDetailId = Convert.ToInt32(fetersCodeGroupDetailDetail.FetersCodeGroupDetailId),
                        FetersCodeDetailId      = fetersCodeGroupDetailDetail.FetersCodeDetailId,
                        PurposeCode             = fetersCodeGroupDetailDetail.PurposeCode,
                        Description             = fetersCodeGroupDetailDetail.Description,
                        IsActive       = Convert.ToBoolean(fetersCodeGroupDetailDetail.IsActive),
                        CreatedBy      = fetersCodeGroupDetailDetail.CreatedBy,
                        TotalPageCount = fetersCodeGroupDetailDetail.TotalPageCount,
                        TotalRecord    = fetersCodeGroupDetailDetail.TotalRecord
                    });
                }

                responses.Status      = Utility.SUCCESS_STATUS_RESPONSE;
                responses.Description = "FetersCodeGroupDetail retrieved successfully";
                responses.Response    = fetersCodeGroupDetailList;
            }
            catch (Exception ex)
            {
                responses.Status      = Utility.ERROR_STATUS_RESPONSE;
                responses.Description = "Error while retrieving FetersCodeGroupDetail.";

                Utility.WriteLog("GetFetersCodeGroupDetail", getFetersCodeGroupDetailRequest, "Error while retrieving FetersCodeGroupDetail. (FetersCodeGroupDetailAdminController)", ex.ToString());
            }
            return(Ok(responses));
        }