public ActionResult <ItemResponse <ScheduleAvailability> > Get(int id)
        {
            int          iCode    = 200;
            BaseResponse response = null;

            try
            {
                ScheduleAvailability scheduleAvailability = _service.Get(id);

                if (scheduleAvailability == null)
                {
                    iCode    = 404;
                    response = new ErrorResponse("Application Resource not found.");
                }
                else
                {
                    response = new ItemResponse <ScheduleAvailability> {
                        Item = scheduleAvailability
                    };
                }
            }

            catch (Exception ex)
            {
                iCode = 500;
                base.Logger.LogError(ex.ToString());
                response = new ErrorResponse($"Generic Error: ${ex.Message}");
            }

            return(StatusCode(iCode, response));
        }
        private static ScheduleAvailability MapScheduleAvailability(IDataReader reader, out int startingIndex)
        {
            ScheduleAvailability aScheduleAvailability = new ScheduleAvailability();

            startingIndex = 0;

            aScheduleAvailability.Id           = reader.GetSafeInt32(startingIndex++);
            aScheduleAvailability.ScheduleId   = reader.GetSafeInt32(startingIndex++);
            aScheduleAvailability.StartTime    = reader.GetSafeDateTime(startingIndex++);
            aScheduleAvailability.EndTime      = reader.GetSafeDateTime(startingIndex++);
            aScheduleAvailability.DateCreated  = reader.GetSafeDateTime(startingIndex++);
            aScheduleAvailability.DateModified = reader.GetSafeDateTime(startingIndex++);
            aScheduleAvailability.CreatedBy    = reader.GetSafeInt32(startingIndex++);

            return(aScheduleAvailability);
        }
        public ScheduleAvailability Get(int id)
        {
            string procName = "dbo.ScheduleAvailability_SelectById";

            ScheduleAvailability scheduleAvailability = null;

            _data.ExecuteCmd(procName, delegate(SqlParameterCollection paramCollection)
            {
                paramCollection.AddWithValue("@Id", id);
            }, delegate(IDataReader reader, short set)
            {
                scheduleAvailability = MapScheduleAvailability(reader, out int index);
            }
                             );

            return(scheduleAvailability);
        }
        public Paged <ScheduleAvailability> GetByCreatedBy(int pageIndex, int pageSize, int createdBy)
        {
            Paged <ScheduleAvailability> pagedResult = null;
            List <ScheduleAvailability>  result      = null;
            int totalCount = 0;


            _data.ExecuteCmd(
                "dbo.ScheduleAvailability_ByCreatedBy",
                inputParamMapper : delegate(SqlParameterCollection paramCollection)
            {
                paramCollection.AddWithValue("@PageIndex", pageIndex);
                paramCollection.AddWithValue("@PageSize", pageSize);
                paramCollection.AddWithValue("@CreatedBy", createdBy);
            },
                singleRecordMapper : delegate(IDataReader reader, short set)
            {
                ScheduleAvailability aScheduleAvailability = MapScheduleAvailability(reader, out int index);

                if (totalCount == 0)
                {
                    totalCount = reader.GetSafeInt32(index);
                }

                if (result == null)
                {
                    result = new List <ScheduleAvailability>();
                }

                result.Add(aScheduleAvailability);
            }
                );

            if (result != null)
            {
                pagedResult = new Paged <ScheduleAvailability>(result, pageIndex, pageSize, totalCount);
            }

            return(pagedResult);
        }
        public List <ScheduleAvailability> GetAll()
        {
            List <ScheduleAvailability> list = null;

            string procName = "dbo.ScheduleAvailability_SelectAll";

            _data.ExecuteCmd(procName, inputParamMapper : null
                             , singleRecordMapper : delegate(IDataReader reader, short set)
            {
                ScheduleAvailability aScheduleAvailability = MapScheduleAvailability(reader, out int index);

                if (list == null)
                {
                    list = new List <ScheduleAvailability>();
                }

                list.Add(aScheduleAvailability);
            }
                             );

            return(list);
        }