private void CreateMedication(MedicationDto dto, Patient patient, Provenance provenance) { CodedConcept medicationCode = null; if (dto.MedicationCodeCodedConcept != null) { medicationCode = new CodedConceptBuilder().WithCodedConceptDto(dto.MedicationCodeCodedConcept); } var medication = patient.AddMedication(medicationCode, provenance); CodedConcept rootMedicationCode = null; if (dto.RootMedicationCodedConcept != null) { rootMedicationCode = new CodedConceptBuilder().WithCodedConceptDto(dto.RootMedicationCodedConcept); } var discontinuedReason = _mappingHelper.MapLookupField <DiscontinuedReason> (dto.DiscontinuedReason); var medicationStatus = dto.MedicationStatus == null ? _mappingHelper.MapLookupField <MedicationStatus> (WellKnownNames.PatientModule.MedicationStatus.Inactive) : _mappingHelper.MapLookupField <MedicationStatus> (dto.MedicationStatus); medication.ReviseOverTheCounterIndicator(dto.OverTheCounterIndicator); medication.RevisePrescribingPhysicianName(dto.PrescribingPhysicianName); medication.ReviseUsageDateRange(new DateRange(dto.StartDate, dto.EndDate)); medication.ReviseDiscontinuedByPhysicianName(dto.DiscontinuedByPhysicianName); medication.ReviseDiscontinuedReason(discontinuedReason); medication.ReviseDiscontinuedReasonOtherDescription(dto.DiscontinuedReasonOtherDescription); medication.ReviseFrequencyDescription(dto.FrequencyDescription); medication.ReviseInstructionsNote(dto.InstructionsNote); medication.ReviseMedicationStatus(medicationStatus); medication.ReviseRootMedicationCodedConcept(rootMedicationCode); }
private List <MedicationFollowupDto> GetTimings(MedicationDto medication, MedicationFollowupDto followup, IList <MedicationFollowupDto> followups = null) { var timingRecords = new List <MedicationFollowupDto>(); var(intTimings, timingList) = MedicationHelper.GetMedicationFrequentyInNumber(medication.Frenquency); if (timingList == null) { timingRecords.Add(followup); } foreach (var timingItem in timingList) { var item = new MedicationFollowupDto { MedicationId = medication.Id, // Status = (int)MedicationFollowupStatus.NOTTAKEN, TakenDate = followup.TakenDate, TakenTime = timingItem }; var takenRecords = followups?.Where(x => x.TakenTime == timingItem).FirstOrDefault(); if (takenRecords != null) { timingRecords.Add(takenRecords); } else { item.Status = (int)MedicationFollowupStatus.NOTTAKEN; timingRecords.Add(item); } } return(timingRecords); }
public static MedicationDto MedicationToDto(Medication medication) { var medicationDto = new MedicationDto(); medicationDto.InjectFrom(medication); return(medicationDto); }
/// <summary> /// Navigates to default command. /// </summary> /// <param name="parameters">The parameters.</param> protected override void NavigateToDefaultCommand(KeyValuePair <string, string>[] parameters) { var key = parameters.GetValue <long> ("MedicationKey"); var patientkey = parameters.GetValue <long> ("PatientKey"); var dispatcher = _asyncRequestDispatcherFactory.CreateAsyncRequestDispatcher(); if (key == 0) { Medication = new MedicationDto(); Medication.PatientKey = patientkey; } else { dispatcher.Add(new GetMedicationByKeyRequest { Key = key }); IsLoading = true; } dispatcher.AddLookupValuesRequest("MedicationStatus"); dispatcher.AddLookupValuesRequest("DiscontinuedReason"); dispatcher.ProcessRequests(HandleRequestComplete, HandleRequestDispatcherException); IsLoading = true; StartRuleWatch(); }
public void Medication_dto_to_medication() { MedicationDto medicationDto = CreateMedicationDto(); Medication myMedication = HospitalApp.Adapters.MedicationAdapter.MedicationDtoToMedication(medicationDto); myMedication.ShouldBeOfType(typeof(Medication)); }
private void ExecuteToggleActiveIndicator(MedicationDto medicationDto) { var requestDispatcher = _asyncRequestDispatcherFactory.CreateAsyncRequestDispatcher(); requestDispatcher.Add(new SaveDtoRequest <MedicationDto> { DataTransferObject = medicationDto }); requestDispatcher.ProcessRequests(HandleSaveMedicationCompleted, HandleSaveMedicationException); }
public void Get_by_id() { MedicationDto myMedication = CreateMedications().Find(m => m.Id == 1); HospitalApp.Controllers.MedicationController controller = new HospitalApp.Controllers.MedicationController(SetupRepository(myMedication, null).Object); var actionResult = controller.GetById(myMedication.Id); ConvertToObject(actionResult).ShouldBeEquivalentTo(myMedication); }
private MedicationDto CreateMedicationDto() { MedicationDto medicationDto = new MedicationDto { Id = 5, Name = "Flonivil", Quantity = 123 }; return(medicationDto); }
public static MedicationDto MedicationToMedicationDto(Medication medication) { MedicationDto medicationDto = new MedicationDto { Id = medication.Id, Name = medication.Name, Quantity = medication.Quantity }; return(medicationDto); }
public static Medication MedicationDtoToMedication(MedicationDto medicationDto) { Medication medication = new Medication { Id = medicationDto.Id, Name = medicationDto.Name, Quantity = medicationDto.Quantity }; return(medication); }
public void Get_by_id() { using (var context = new MyDbContext(_options)) { SetupDatabase(context); HospitalApp.Services.MedicationService service = new HospitalApp.Services.MedicationService(context); MedicationDto medication = service.GetById(2); medication.Id.ShouldBeEquivalentTo(2); } }
private void ExecuteShowMedicationCommand(MedicationDto medicationDto) { _navigationService.Navigate( "ModalPopupRegion", "EditMedicationView", null, new[] { new KeyValuePair <string, string> ("MedicationKey", medicationDto.Key.ToString()), new KeyValuePair <string, string> ("PatientKey", _patientKey.ToString()) }); }
private List <MedicationFollowupDto> GetDefaultFollowupWithTimings(MedicationDto medication, IList <MedicationFollowupDto> followups = null) { List <MedicationFollowupDto> medicationFollowupList = new List <MedicationFollowupDto>(); if (medication.EffectiveDate == null) { return(null); } var startDate = medication.EffectiveDate.GetValueOrDefault(); var endDate = startDate.AddDays(medication.Duration); for (int i = 0; i < medication.Duration; i++) { MedicationFollowupDto result = new MedicationFollowupDto(); result.MedicationId = medication.Id; result.Status = (int)MedicationFollowupStatus.NOTTAKEN; result.TakenDate = startDate.AddDays(i); result.TakenTime = string.Empty; //Get timings if (followups != null) { var originalRecord = followups.Where(x => x.TakenDate.Day == result.TakenDate.Day && x.TakenDate.Month == result.TakenDate.Month && x.TakenDate.Year == result.TakenDate.Year).ToList(); if (originalRecord.Any()) { // medicationFollowupList.AddRange(originalRecord); var filterItems = GetTimings(medication, result, originalRecord); medicationFollowupList.AddRange(filterItems); } else { // medicationFollowupList.Add(result); var filterItems = GetTimings(medication, result, null); medicationFollowupList.AddRange(filterItems); } } else { // medicationFollowupList.Add(result); var filterItems = GetTimings(medication, result, null); medicationFollowupList.AddRange(filterItems); } } return(medicationFollowupList); }
public async Task <IActionResult> CreateMedicationAsync( [FromServices] ICommandHandler <CreateMedicationCommand> handler, [FromBody] MedicationDto medication) { var validationResult = this.validator.Validate(medication); if (!validationResult.IsValid) { return(this.BadRequest()); } var command = this.mapper.Map <CreateMedicationCommand>(medication); await handler.HandleAsync(command); return(this.CreatedAtAction("GetMedicationById", new { medicationId = medication.Id }, null)); }
public List <SearchResultDTO> GetSearchResult() { IMedicationServerController medicationServerController = new MedicationServerController(); IMapObjectController mapObjectController = new MapObjectController(); List <MedicationDto> searchResults = medicationServerController.GetAllMedicationByName(name).ToList(); List <SearchResultDTO> retVal = new List <SearchResultDTO>(); MapObject mo = mapObjectController.GetMapObjectById(AllConstants.StorageRoomId); for (int i = 0; i < searchResults.Count(); i++) { MedicationDto medicationDto = searchResults.ElementAt(i); SearchResultDTO searchResultDTO = new SearchResultDTO() { MapObjectId = mo.Id, Content = medicationDto.Quantity + AllConstants.ContentSeparator + MapObjectSearchResult.MapObjectToRow(mo) }; retVal.Add(searchResultDTO); } return(retVal); }
private Mock <IMedicationService> SetupRepository(MedicationDto medication, List <MedicationDto> medications) { var repository = CreateRepository(); switch (GetCallingMethod()) { case "Get_all_medications": repository.Setup(m => m.GetAll()).Returns(CreateMedications()); break; case "Get_by_id": repository.Setup(m => m.GetById(medication.Id)).Returns(medication); break; default: Console.WriteLine("Error"); break; } return(repository); }
private List <MedicationDto> CreateMedications() { var meds = new List <MedicationDto>(); MedicationDto med1 = new MedicationDto { Id = 1, Name = "Fervex", Quantity = 5 }; MedicationDto med2 = new MedicationDto { Id = 2, Name = "Flonivil", Quantity = 5 }; meds.Add(med1); meds.Add(med2); return(meds); }
private bool CompareInput(MedicationDto medicationDto, string name) { return(medicationDto.Name.ToLower().Contains(name.ToLower())); }
private List <MedicationFollowupDto> GetFormattedFollowup(IList <MedicationFollowupDto> followups, MedicationDto medication) { List <MedicationFollowupDto> medicationFollowupList = new List <MedicationFollowupDto>(); if (medication.Duration <= 0) { return(medicationFollowupList); } //generate all records based on duration var defaultFollowUpList = GetDefaultFollowupWithTimings(medication, followups); return(defaultFollowUpList); }