Ejemplo n.º 1
0
        public IEnumerable <Therapy> GetTherapies(string jmbg, TherapySearchDTO parameters)
        {
            Patient patient = _repository.Get(jmbg);
            ISpecification <Therapy> specification = parameters.ToTherapySpecification();

            return(patient.SearchTherapies(specification));
        }
        public static ISpecification <Therapy> ToTherapySpecification(this TherapySearchDTO parameters)
        {
            ISpecification <Therapy> filter = new TherapyStartDateSpecification(parameters.StartDate);

            filter = filter.BinaryOperation(
                parameters.EndDateOperator, new TherapyEndDateSpecification(parameters.EndDate));
            filter = filter.BinaryOperation(
                parameters.DoctorSurnameOperator, new TherapyDoctorSurnameSpecification(parameters.DoctorSurname));
            filter = filter.BinaryOperation(
                parameters.DrugNameOperator, new TherapyDrugNameSpacification(parameters.DrugName));

            return(filter);
        }
        public IActionResult GetTherapies(string jmbg, TherapySearchDTO therapySearchDTO)
        {
            var therapies = _service.GetTherapies(jmbg, therapySearchDTO).Select(t => t.ToTherapyDTO());

            return(Ok(therapies));
        }
        public ActionResult AdvanceSearchTherapies(TherapySearchDTO therapySearchDTO)
        {
            var patientJmbg = HttpContext.User.FindFirst("Jmbg").Value;

            return(RequestAdapter.SendRequestWithBody(_serviceSettings.PatientServiceUrl, "/api/patient/" + patientJmbg + "/therapy/search", therapySearchDTO));
        }