public ActionResult <Visit> PostVisit([FromBody] Visit visit)
 {
     if (ModelState.IsValid)
     {
         var _visit = _visitService.GetByGuid(visit.Guid);
         if (_visit != null)
         {
             return(BadRequest());
         }
         _visitService.Create(visit);
         return(Created("PostVisit", visit));
     }
     return(BadRequest());
 }
示例#2
0
        public ActionResult Create(Application.Entities.Visit model)
        {
            var baseObject = GetBaseObject();

            Guid[] scoreValues = Request.Form.AllKeys.Where(x => x.StartsWith("ScoreValues_")).Select(x => Guid.Parse(Request.Form[x])).ToArray();

            var patient = _patientService.Get(model.PatientId);

            if (model.BloodPressureDiastolic > model.BloodPressureSystolic)
            {
                ModelState.AddModelError("BloodPressureDiastolic", "The diastolic cannot be higher than the systolic");

                IList <Application.EntityViews.TeamMember>      teamMembers      = _patientService.ListTeamMembers(model.PatientId);
                IList <Application.EntityViews.MeasurementTool> measurementTools = _visitService.GetMeasurementToolsForVisit(model.PatientId);
                IList <Application.EntityViews.EpisodeOfCare>   episodeOfCares   = _patientService.ListEpisodesOfCare(model.PatientId, baseObject.GetCurrentFacilityId().Value);

                if (!patient.CanAccess(baseObject.User, teamMembers, baseObject.User.Permissions))
                {
                    throw new BusinessRuleException("You are not autorized to view this patient");
                }

                return(View(new ViewObjects.Visit.Create(baseObject)
                {
                    Visit = new Application.Entities.Visit()
                    {
                        PatientId = model.PatientId,
                        ImpairmentGroups = _listRepository.GetImpairmentGroups(),
                        ImpairmentGroupId = model.ImpairmentGroupId
                    },
                    Patient = patient,
                    EpisodeOfCare = episodeOfCares.FirstOrDefault(),
                    MeasurementTools = measurementTools,
                    ScoreValues = scoreValues
                }));
            }

            _visitService.Create(this.User.Identity.Name, model, scoreValues);


            return(RedirectToAction("Edit", "Patient", new { patientId = model.PatientId }));
        }
示例#3
0
        [ValidateAntiForgeryToken] //防止跨網站偽造請求攻擊
        public ActionResult Create(CreateNewViewModel CreateNewViewModel)
        {
            //SI_ResearcherVisit visit = new SI_ResearcherVisit();
            //var num = ResearcherVisitRepository.GetAll().Select(x => x.Seq).Max() + 1;
            try
            {
                if (CreateNewViewModel.ReportType.Equals("2") || CreateNewViewModel.ReportType.Equals("3"))
                {
                    //SI_StocksReport Stocks = new SI_StocksReport();
                    if (CreateNewViewModel.ReportType_BS.Equals("K") || CreateNewViewModel.ReportType_BS.Equals("S"))
                    {
                        ModelState.Remove("Buy_Price");
                        ModelState.Remove("Targetprice");
                    }
                    else if (CreateNewViewModel.ReportType_BS.Equals("R"))
                    {
                        ModelState.Remove("Buy_Price");
                        ModelState.Remove("Sell_Price");
                        ModelState.Remove("Targetprice");
                        ModelState.Remove("Reason");
                    }
                    else if (CreateNewViewModel.ReportType_BS.Equals("B"))
                    {
                        ModelState.Remove("Sell_Price");
                    }
                    if (ModelState.IsValid)
                    {
                        //visit.Seq = num;
                        //visit.DataDate = CreateNewViewModel.DataDate;
                        //visit.CompanyId = CreateNewViewModel.CompanyId;
                        //visit.CompanyName = CreateNewViewModel.CompanyName;
                        //visit.ReportType = CreateNewViewModel.ReportType;
                        //visit.EmpName = CreateNewViewModel.EmpName;
                        //visit.CreateDate = DateTime.Now;
                        //visit.CreateUserId = "01520";
                        //ResearcherVisitRepository.Create(visit);
                        visitService.Create(CreateNewViewModel);

                        //Stocks.Seq = num;
                        //Stocks.CompanyId = CreateNewViewModel.CompanyId;
                        //Stocks.CompanyName = CreateNewViewModel.CompanyName;
                        //Stocks.CapitalStock = CreateNewViewModel.CapitalStock;
                        //Stocks.ClosePrice = CreateNewViewModel.ClosePrice;
                        //Stocks.Buy_Price = CreateNewViewModel.Buy_Price;
                        //Stocks.Sell_Price = CreateNewViewModel.Sell_Price;
                        //Stocks.Targetprice = CreateNewViewModel.Targetprice;

                        //if (CreateNewViewModel.PER == null)
                        //{
                        //    Stocks.PER = 0;
                        //}
                        //else
                        //{
                        //    Stocks.PER = CreateNewViewModel.PER;
                        //}

                        //if (CreateNewViewModel.PBR == null)
                        //{
                        //    Stocks.PBR = 0;
                        //}
                        //else
                        //{
                        //    Stocks.PBR = CreateNewViewModel.PBR;
                        //}

                        //if (CreateNewViewModel.EPS_ThisYear == null)
                        //{
                        //    Stocks.EPS_ThisYear = 0;
                        //}
                        //else
                        //{
                        //    Stocks.EPS_ThisYear = CreateNewViewModel.EPS_ThisYear;
                        //}

                        //if (CreateNewViewModel.EPS_NextYear == null)
                        //{
                        //    Stocks.EPS_NextYear = 0;
                        //}
                        //else
                        //{
                        //    Stocks.EPS_NextYear = CreateNewViewModel.EPS_NextYear;
                        //}


                        //Stocks.Reason = CreateNewViewModel.Reason;

                        //Stocks.ReportType_BS = CreateNewViewModel.ReportType_BS;
                        //Stocks.Flag = "Y";
                        //Stocks.Next_Flag = "E";
                        //Stocks.CreateUser = "******";
                        //Stocks.CreateDate = DateTime.Now;
                        //SIReportRepository.Create(Stocks);
                        reportService.Create(CreateNewViewModel);

                        TempData["SuccessYN"] = "新增成功";
                        return(RedirectToAction("Create"));
                    }
                }
                else
                {
                    //visit.Seq = num;
                    //visit.DataDate = CreateNewViewModel.DataDate;
                    //visit.CompanyId = CreateNewViewModel.CompanyId;
                    //visit.CompanyName = CreateNewViewModel.CompanyName;
                    //visit.ReportType = CreateNewViewModel.ReportType;
                    //visit.EmpName = CreateNewViewModel.EmpName;
                    //visit.CreateDate = DateTime.Now;
                    //visit.CreateUserId = "01520";
                    //ResearcherVisitRepository.Create(visit);
                    visitService.Create(CreateNewViewModel);
                    TempData["SuccessYN"] = "新增成功";
                    return(RedirectToAction("Create"));
                }
            }
            catch (Exception ex)
            {
                throw;
            }
            CreateSelectList();
            TempData["SuccessYN"] = "新增失敗";
            return(View(CreateNewViewModel));
        }