Exemplo n.º 1
0
        public void ImAntibioticUsageRateTest()
        {
            string   strStartTime = "2016-1-1";
            string   strEndTime   = "2016-5-1";
            DateTime startTime    = DateTime.Parse(strStartTime);
            DateTime endTime      = DateTime.Parse(strEndTime);

            var antibioticPerson = new Mock <IAntibioticPerson>();

            antibioticPerson.Setup(s => s.GetAntibioticPerson(startTime, endTime)).Returns(10);
            var registerPerson = new Mock <IRegisterPerson>();

            registerPerson.Setup(s => s.GetRegisterPerson(startTime, endTime)).Returns(20);


            var result =
                new AntibioticUsageRate
            {
                AntibioticPerson = antibioticPerson.Object.GetAntibioticPerson(startTime, endTime),
                RegisterPerson   = registerPerson.Object.GetRegisterPerson(startTime, endTime)
            };


            Assert.AreEqual(result.UsageRate, (Decimal)50);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 获取急诊抗菌药物使用率
        /// </summary>
        /// <param name="startTime">The start time.</param>
        /// <param name="endTime">The end time.</param>
        /// <returns>ActionResult.</returns>
        public ActionResult GetEmergencyAnbitibioticUsageRate(DateTime startTime, DateTime endTime)
        {
            AntibioticUsageRate viewModel = null;

            try
            {
                ViewBag.startTime = startTime;
                ViewBag.endTime   = endTime.AddDays(1).AddMilliseconds(-1);
                endTime           = endTime.AddDays(1);
                IAntibioticUsageRate iAntibioticRate = this.ReporterViewFactory.CreateAntibioticUsageRate();
                viewModel = iAntibioticRate.GetAntibioticUsageRate(startTime, endTime, EnumOutPatientCategories.EMERGEMENT);
            }
            catch (Exception)
            {
            }
            finally
            {
                if (viewModel == null)
                {
                    viewModel = new AntibioticUsageRate
                    {
                        AntibioticPerson = 0,
                        RegisterPerson   = 0,
                    };
                }
            }
            return(PartialView("_GetEmergencyAntibioticRate", viewModel));
        }
Exemplo n.º 3
0
        /// <summary>
        /// 获取门诊抗菌药物使用率
        /// </summary>
        /// <param name="startTime">The start time.</param>
        /// <param name="endTime">The end time.</param>
        /// <returns>ActionResult.</returns>
        public ActionResult GetOutpatientAntibioticUsageRate(DateTime startTime, DateTime endTime)
        {
            ViewBag.startTime = startTime;
            ViewBag.endTime   = endTime.AddDays(1).AddMilliseconds(-1);
            //单元测试时暂时删除,需恢复
            //endTime = endTime.AddDays(1);
            AntibioticUsageRate viewModel = null;

            try
            {
                IAntibioticUsageRate iAntibioticRate = this.ReporterViewFactory.CreateAntibioticUsageRate();
                viewModel = iAntibioticRate.GetAntibioticUsageRate(startTime, endTime, EnumOutPatientCategories.OUTPATIENT);
            }
            catch (Exception)
            {
                viewModel = null;
            }
            finally
            {
                if (viewModel == null)
                {
                    viewModel = new AntibioticUsageRate
                    {
                        AntibioticPerson = 0,
                        RegisterPerson   = 0,
                    };
                }
            }
            //return View(viewModel);
            return(PartialView("_GetOutpatientAntibioticRate", viewModel));
        }
Exemplo n.º 4
0
        public AntibioticUsageRate GetAntibioticUsageRate(DateTime startTime, DateTime endTime, EnumOutPatientCategories categories)
        {
            var result =
                new AntibioticUsageRate
            {
                AntibioticPerson = this.DomainFactory.CreateAntibioticPerson(categories).GetAntibioticPerson(startTime, endTime),
                RegisterPerson   = this.DomainFactory.CreateRegisterPerson(categories).GetRegisterPerson(startTime, endTime)
            };

            return(result);
        }
Exemplo n.º 5
0
        public void GetOutpatientAntimicrobialRateTest()
        {
            InitialBaseData();
            AntibioticUsageRate mockData = new AntibioticUsageRate
            {
                AntibioticPerson = 10,
                RegisterPerson   = 20,
            };

            var antibioticUsageRate = new Mock <IAntibioticUsageRate>();

            antibioticUsageRate.Setup(a => a.GetAntibioticUsageRate(startTime, endTime, EnumOutPatientCategories.OUTPATIENT)).Returns(mockData);
            Mock <IReporterViewFactory> factoryMock = new Mock <IReporterViewFactory>();

            factoryMock.Setup(f => f.CreateAntibioticUsageRate()).Returns(antibioticUsageRate.Object);
            var returnValue = antibioticUsageRate.Object.GetAntibioticUsageRate(startTime, endTime, EnumOutPatientCategories.OUTPATIENT);

            var resultTest = this.controller.GetOutpatientAntibioticUsageRate(startTime, endTime) as ViewResult;

            Assert.IsNotNull(resultTest.Model);
            Assert.AreEqual(returnValue.AntibioticPerson, mockData.AntibioticPerson);
            Assert.AreEqual(((AntibioticUsageRate)resultTest.Model).AntibioticPerson, mockData.AntibioticPerson);
        }