public void GetMedicareLabFeeScheduleTest() { // Arrange var mockMedicareLabFeeScheduleRepository = new Mock <IMedicareLabFeeScheduleRepository>(); MedicareLabFeeScheduleResult medicareLabFeeScheduleResult = new MedicareLabFeeScheduleResult { Total = 22578, MedicareLabFeeScheduleList = new List <MedicareLabFeeSchedule> { new MedicareLabFeeSchedule { Amount = 20, Carrier = "12456", HCPCS = "85420" }, new MedicareLabFeeSchedule { Amount = 12, Carrier = "12456", HCPCS = "8542" } } }; mockMedicareLabFeeScheduleRepository.Setup(f => f.GetMedicareLabFeeSchedule(It.IsAny <MedicareLabFeeSchedule>())).Returns(medicareLabFeeScheduleResult); MedicareLabFeeScheduleLogic target = new MedicareLabFeeScheduleLogic(mockMedicareLabFeeScheduleRepository.Object); // Act MedicareLabFeeScheduleResult actual = target.GetMedicareLabFeeSchedule(null); // Assert Assert.AreEqual(medicareLabFeeScheduleResult, actual); }
public ActionResult GetMedicareLabFeeSchedule(int date, int take, int skip, IEnumerable <Sort> sort, Kendo.DynamicLinq.Filter filter, string defaultSortField) { PageSetting pageSetting = CommonUtil.GetPageSetting(take, skip, sort, filter, defaultSortField, Constants.MedicareLabFeeScheduleFields, (long)Enums.ClaimFieldTypes.MedicareLabFeeSchedule); UserInfo userInfoViewModel = GetUserInfo(); if (userInfoViewModel != null && userInfoViewModel.AssignedFacilities != null && userInfoViewModel.AssignedFacilities.Any()) { MedicareLabFeeSchedule mCareLabFeeSchedule = new MedicareLabFeeSchedule { Date = date, PageSetting = pageSetting, UserName = userInfoViewModel.UserName, FacilityId = GetCurrentFacilityId() }; MedicareLabFeeScheduleResult medicareLabFeeScheduleResult = PostApiResponse <MedicareLabFeeScheduleResult>(Constants.MedicareLabFeeSchedule, Constants.GetMedicareLabFeeSchedule, mCareLabFeeSchedule); if (medicareLabFeeScheduleResult != null) { DataSourceResult dataSourceResult = new DataSourceResult { Total = medicareLabFeeScheduleResult.Total, Data = medicareLabFeeScheduleResult.MedicareLabFeeScheduleList }; return(Json(dataSourceResult)); } } return(Json(null)); }
public void GetMedicareLabFeeSchedule() { var repository = new Mock <IMedicareLabFeeScheduleRepository>(); MedicareLabFeeScheduleResult result = new MedicareLabFeeScheduleResult(); repository.Setup(f => f.GetMedicareLabFeeSchedule(It.IsAny <MedicareLabFeeSchedule>())).Returns(result); MedicareLabFeeScheduleLogic target = new MedicareLabFeeScheduleLogic(repository.Object); MedicareLabFeeScheduleResult actual = target.GetMedicareLabFeeSchedule(new MedicareLabFeeSchedule()); Assert.AreEqual(result, actual); }
/// <summary> /// Gets the Medicare Lab Fee Schedule table data. /// </summary> /// <param name="mCareLabFeeSchedule">The Medicare Lab Fee Schedule table.</param> /// <returns></returns> public MedicareLabFeeScheduleResult GetMedicareLabFeeSchedule(MedicareLabFeeSchedule mCareLabFeeSchedule) { if (mCareLabFeeSchedule != null) { //holds the response string finalStrXml = string.Empty; //Checks for Payers, if payers exists stores it in DB if (mCareLabFeeSchedule.PageSetting != null && mCareLabFeeSchedule.PageSetting.SearchCriteriaList != null && mCareLabFeeSchedule.PageSetting.SearchCriteriaList.Any()) { //Serializes list of payers to store it in DB XmlSerializer serializer = new XmlSerializer(mCareLabFeeSchedule.PageSetting.SearchCriteriaList.GetType()); StringWriter stringWriter = new StringWriter(); XmlWriterSettings settings = new XmlWriterSettings { Indent = true, OmitXmlDeclaration = true }; XmlWriter xmlWriter = XmlWriter.Create(stringWriter, settings); XmlSerializerNamespaces emptyNs = new XmlSerializerNamespaces(new[] { XmlQualifiedName.Empty }); serializer.Serialize(xmlWriter, mCareLabFeeSchedule.PageSetting.SearchCriteriaList, emptyNs); //holds the final payer response finalStrXml = stringWriter.ToString(); } // Initialize the Stored Procedure _databaseCommandObj = _databaseObj.GetStoredProcCommand("GetMedicareLabFeeSchedule"); // Pass parameters to Stored Procedure(i.e., @ParamName), add values for _databaseObj.AddInParameter(_databaseCommandObj, "@Date", DbType.Int32, mCareLabFeeSchedule.Date); // ReSharper disable once PossibleNullReferenceException _databaseObj.AddInParameter(_databaseCommandObj, "@Take", DbType.Int32, mCareLabFeeSchedule.PageSetting.Take); _databaseObj.AddInParameter(_databaseCommandObj, "@Skip", DbType.Int32, mCareLabFeeSchedule.PageSetting.Skip); _databaseObj.AddInParameter(_databaseCommandObj, "@SortField", DbType.String, mCareLabFeeSchedule.PageSetting.SortField); _databaseObj.AddInParameter(_databaseCommandObj, "@SortDirection", DbType.String, mCareLabFeeSchedule.PageSetting.SortDirection); _databaseObj.AddInParameter(_databaseCommandObj, "@XmlSearchCriteria", DbType.Xml, finalStrXml); _databaseObj.AddInParameter(_databaseCommandObj, "@UserName", DbType.String, mCareLabFeeSchedule.UserName); _databaseObj.AddInParameter(_databaseCommandObj, "@FacilityId", DbType.Int32, mCareLabFeeSchedule.FacilityId); // Retrieve the results of the Stored Procedure in Dataset DataSet medicareLabFeeDataSet = _databaseObj.ExecuteDataSet(_databaseCommandObj); if (medicareLabFeeDataSet.IsTableDataPopulated() && medicareLabFeeDataSet.Tables.Count > 1) { MedicareLabFeeScheduleResult medicareLabFeeScheduleResult = new MedicareLabFeeScheduleResult { Total = GetValue <int>(medicareLabFeeDataSet.Tables[0].Rows[0][0], typeof(int)), MedicareLabFeeScheduleList = new List <MedicareLabFeeSchedule>() }; // Bind Medicare Lab Fee Schedule Data medicareLabFeeScheduleResult.MedicareLabFeeScheduleList = (from DataRow row in medicareLabFeeDataSet.Tables[1].Rows select new MedicareLabFeeSchedule { Hcpcs = GetStringValue(row["HCPCS"]), Carrier = GetStringValue(row["Carrier"]), Amount = GetValue <double>(row["Amount"], typeof(double)) }).ToList(); return(medicareLabFeeScheduleResult); } } return(null); }