/// <summary>
        /// Add appt status dtail
        /// </summary>
        /// <param name="appointmentStatus"></param>
        /// <returns></returns>
        public Response <AppointmentStatusDetailModel> AddAppointmentStatusDetail(AppointmentStatusDetailModel appointmentStatus)
        {
            var idparam           = new SqlParameter("AppointmentResourceID", appointmentStatus.AppointmentResourceID);
            var statusparam       = new SqlParameter("AppointmentStatusID", appointmentStatus.AppointmentStatusID);
            var iscancelledparam  = new SqlParameter("IsCancelled", (object)appointmentStatus.IsCancelled ?? DBNull.Value);
            var cancelreasonparam = new SqlParameter("CancelReasonID", (object)appointmentStatus.CancelReasonID ?? DBNull.Value);
            var commentsparam     = new SqlParameter("Comments", (object)appointmentStatus.Comments ?? DBNull.Value);
            var modifiedOnParam   = new SqlParameter("ModifiedOn", appointmentStatus.ModifiedOn ?? DateTime.Now);
            var procParams        = new List <SqlParameter> {
                idparam, statusparam, iscancelledparam, cancelreasonparam, commentsparam, modifiedOnParam
            };
            var repo = unitOfWork.GetRepository <AppointmentStatusDetailModel>(SchemaName.Scheduling);

            return(repo.ExecuteNQStoredProc("usp_AddAppointmentStatusDetail", procParams, false, true));
        }
        /// <summary>
        /// To the view model.
        /// </summary>
        /// <param name="entity">The entity.</param>
        /// <returns></returns>
        public static AppointmentStatusDetailViewModel ToViewModel(this AppointmentStatusDetailModel entity)
        {
            if (entity == null)
            {
                return(null);
            }

            var model = new AppointmentStatusDetailViewModel
            {
                AppointmentStatusDetailID = entity.AppointmentStatusDetailID,
                AppointmentStatusID       = entity.AppointmentStatusID,
                AppointmentResourceID     = entity.AppointmentResourceID,
                ModifiedOn     = entity.ModifiedOn,
                IsCancelled    = entity.IsCancelled,
                CancelReasonID = entity.CancelReasonID,
                Comments       = entity.Comments
            };

            return(model);
        }
        /// <summary>
        /// Converts viewmodel to model
        /// </summary>
        /// <param name="model">The model.</param>
        /// <returns></returns>
        public static AppointmentStatusDetailModel ToModel(this AppointmentStatusDetailViewModel model)
        {
            if (model == null)
            {
                return(null);
            }
            var entity = new AppointmentStatusDetailModel
            {
                AppointmentResourceID     = model.AppointmentResourceID,
                AppointmentStatusDetailID = model.AppointmentStatusDetailID,
                AppointmentStatusID       = model.AppointmentStatusID,
                ModifiedOn     = model.ModifiedOn,
                IsActive       = model.IsActive,
                IsCancelled    = model.IsCancelled,
                CancelReasonID = model.CancelReasonID,
                Comments       = model.Comments
            };

            return(entity);
        }
        /// <summary>
        /// Update appt status detail
        /// </summary>
        /// <param name="appointmentStatus"></param>
        /// <returns></returns>
        public Response <AppointmentStatusDetailModel> UpdateAppointmentStatusDetail(AppointmentStatusDetailModel appointmentStatus)
        {
            const string apiUrl = BaseRoute + "UpdateAppointmentStatusDetail";

            return(_communicationManager.Put <AppointmentStatusDetailModel, Response <AppointmentStatusDetailModel> >(appointmentStatus, apiUrl));
        }
 /// <summary>
 /// Update appt status detail
 /// </summary>
 /// <param name="appointmentStatus"></param>
 /// <returns></returns>
 public Response <AppointmentStatusDetailModel> UpdateAppointmentStatusDetail(AppointmentStatusDetailModel appointmentStatus)
 {
     return(appointmentService.UpdateAppointmentStatusDetail(appointmentStatus));
 }
 public IHttpActionResult UpdateAppointmentStatusDetail(AppointmentStatusDetailModel appointmentStatusDetail)
 {
     return(new HttpResult <Response <AppointmentStatusDetailModel> >(appointmentRuleEngine.UpdateAppointmentStatusDetail(appointmentStatusDetail), Request));
 }
 public IHttpActionResult AddAppointmentStatusDetail(AppointmentStatusDetailModel appointmentStatusDetail)
 {
     return(new HttpResult <Response <AppointmentStatusDetailModel> >(appointmentDataProvider.AddAppointmentStatusDetail(appointmentStatusDetail), Request));
 }