예제 #1
0
        public ActionResult Index(bool?alreadySent = null)
        {
            var viewModel = new GenericModel <PatientAppointmentRequestModel>();

            viewModel.Criteria.Add("AlreadySent", alreadySent.ToString());

            try
            {
                viewModel.SearchResults = AppointmentRequestProvider.Search(Helpers.GetAuthenticator(), alreadySent);

                viewModel.Header = Resources.ResultsHeader;

                viewModel.ErrorMessage = viewModel.SearchResults != null && viewModel.SearchResults.Rows.Count() > 0 ? string.Empty : Resources.ListEmptyMessage;
            }
            catch (Exception ex)
            {
                viewModel.ErrorMessage = ex.GetBaseException().Message;
            }

            return(View(viewModel));
        }
        public ActionResult Send(AppointmentRequestResultModel viewModel)
        {
            try
            {
                if (!string.IsNullOrWhiteSpace(viewModel.InternalIDString))
                {
                    viewModel.InternalID = new Guid(viewModel.InternalIDString);
                }
                else
                {
                    viewModel.ErrorMessage = "Please provide a valid ID.";
                    return(View("Index", viewModel));
                }

                switch (viewModel.ObjectType)
                {
                case "Appointment cancel request":
                    var success1 = AppointmentCancelRequestProvider.ApplyResult(Helpers.GetAuthenticator(), viewModel);
                    viewModel.ResultMessage = !success1 ? Resources.UnsuccesfullySaved : Resources.SuccesfullySaved;
                    break;

                case "Appointment request":
                    var success2 = AppointmentRequestProvider.ApplyResult(Helpers.GetAuthenticator(), viewModel);
                    viewModel.ResultMessage = !success2 ? Resources.UnsuccesfullySaved : Resources.SuccesfullySaved;
                    break;

                default:
                    viewModel.ErrorMessage = "Please select an object type.";
                    break;
                }
            }
            catch (Exception ex)
            {
                viewModel.ErrorMessage = ex.GetBaseException().Message;
            }
            return(View("Index", viewModel));
        }
예제 #3
0
        public ActionResult Send(MarkAsReceivedModel viewModel)
        {
            viewModel.ResultMessage = string.Empty;

            Guid markAsReceivedID;

            if (!Guid.TryParse(viewModel.MarkAsReceivedID, out markAsReceivedID))
            {
                viewModel.Success       = false;
                viewModel.ResultMessage = "Please provide a valid ID.";
                return(View("Index", viewModel));
            }

            Api.Models.MarkAsReceived.MarkAsReceivedModel result;

            try
            {
                switch (viewModel.ObjectType)
                {
                case "Appointment cancel request":
                    result = AppointmentCancelRequestProvider.MarkAsReceived(Helpers.GetAuthenticator(), new Api.Models.MarkAsReceived.MarkAsReceivedModel {
                        InternalID = markAsReceivedID
                    });
                    viewModel.ResultMessage = result.ResultMessage;
                    viewModel.Success       = result.Success;
                    break;

                case "Appointment request":
                    result = AppointmentRequestProvider.MarkAsReceived(Helpers.GetAuthenticator(), new Api.Models.MarkAsReceived.MarkAsReceivedModel {
                        InternalID = markAsReceivedID
                    });
                    viewModel.ResultMessage = result.ResultMessage;
                    viewModel.Success       = result.Success;
                    break;

                case "Appointment update":
                    result = CommunicationUpdatesAppointmentsProvider.MarkAsReceived(Helpers.GetAuthenticator(), new Api.Models.MarkAsReceived.MarkAsReceivedModel {
                        InternalID = markAsReceivedID
                    });
                    viewModel.ResultMessage = result.ResultMessage;
                    viewModel.Success       = result.Success;
                    break;

                case "Communication update":
                    result = PatientCommunicationProvider.MarkAsReceived(Helpers.GetAuthenticator(), new Api.Models.MarkAsReceived.MarkAsReceivedModel {
                        InternalID = markAsReceivedID
                    });
                    viewModel.ResultMessage = result.ResultMessage;
                    viewModel.Success       = result.Success;
                    break;

                case "Patient update":
                    result = CommunicationUpdatesPatientsProvider.MarkAsReceived(Helpers.GetAuthenticator(), new Api.Models.MarkAsReceived.MarkAsReceivedModel {
                        InternalID = markAsReceivedID
                    });
                    viewModel.ResultMessage = result.ResultMessage;
                    viewModel.Success       = result.Success;
                    break;

                case "Order update":
                    result = CommunicationUpdatesOrdersProvider.MarkAsReceived(Helpers.GetAuthenticator(), new Api.Models.MarkAsReceived.MarkAsReceivedModel {
                        InternalID = markAsReceivedID
                    });
                    viewModel.ResultMessage = result.ResultMessage;
                    viewModel.Success       = result.Success;
                    break;

                default:
                    viewModel.Success       = false;
                    viewModel.ResultMessage = "Please select an object type.";
                    break;
                }
            }
            catch (Exception ex)
            {
                viewModel.ResultMessage = ex.GetBaseException().Message;
            }
            return(View("Index", viewModel));
        }