コード例 #1
0
        /// <summary>
        /// Get NOK details by Id
        /// </summary>
        /// <param name="nokId">NOK Id</param>
        /// <returns>View model</returns>
        public NOKDetailsViewModel GetNOKDetail(long nokId)
        {
            var response   = new NOKDetailsViewModel();
            var nokDetails = _context.NOKDetails.FirstOrDefault(x => x.NOKId == nokId);

            response = _mapper.Map <NOKDetailsViewModel>(nokDetails);
            return(response);
        }
コード例 #2
0
        public ActionResult CreateUpdateNOK(NOKDetailsViewModel viewModel)
        {
            if (viewModel == null || string.IsNullOrEmpty(viewModel.PatientId.ToString()) || viewModel.PatientId <= 0)
            {
                TempData["errorMessage"] = "Invalid request.";
                return(RedirectToAction("Edit", "Patients", new { id = viewModel.PatientId }));
            }

            var result = viewModel.NOKId > 0 ? _NOKDetailsRepository.EditNOKDetail(viewModel) : _NOKDetailsRepository.CreateNOKDetail(viewModel);

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
コード例 #3
0
        /// <summary>
        /// Edit NOK detail
        /// </summary>
        /// <param name="viewModel">view model</param>
        /// <returns>result</returns>
        public bool EditNOKDetail(NOKDetailsViewModel viewModel)
        {
            var result = false;

            try
            {
                var entity = _context.NOKDetails.FirstOrDefault(x => x.NOKId == viewModel.NOKId);

                if (entity == null)
                {
                    return(result);
                }

                _mapper.Map(viewModel, entity);
                _context.SaveChanges();

                if (entity.PatientId > 0)
                {
                    if (entity.PrimaryContact)
                    {
                        var entities = _context.NOKDetails.Where(x => x.PatientId == entity.PatientId && x.NOKId != entity.NOKId).ToList();
                        entities.ForEach(x =>
                        {
                            x.PrimaryContact = false;
                        });

                        _context.SaveChanges();
                    }

                    return(true);
                }
            }
            catch
            {
                return(result);
            }

            return(result);
        }
コード例 #4
0
        /// <summary>
        /// List action
        /// </summary>
        /// <returns>List view</returns>
        public ActionResult List()
        {
            var viewModel     = new NOKDetailsViewModel();
            var relationships = _relationshipRepository.GetRelationships();

            if (relationships != null)
            {
                viewModel.RelationshipList = new SelectList(relationships.Select(x => new SelectListItem {
                    Text = x.Description, Value = x.RelationshipId.ToString()
                }), "Value", "Text");
            }

            var patients = _patientRepository.GetPatients();

            if (patients != null)
            {
                viewModel.PatientsList = new SelectList(patients.Select(x => new SelectListItem {
                    Text = "Id: " + x.PatientId + ", Name: " + x.FirstName + " " + x.SurName, Value = x.PatientId.ToString()
                }), "Value", "Text");
            }

            return(View(viewModel));
        }