public async Task <IList <DilutionSampleDto> > Execute(int?sampleId)
        {
            IList <DiluicaoAmostra>   diluicaoAmostras = new List <DiluicaoAmostra>();
            IList <DilutionSampleDto> sampleDtos       = new List <DilutionSampleDto>();

            if (sampleId > 0)
            {
                DiluicaoAmostra diluicaoAmostra = await _diluicaoAmostraRepository.GetByID((int)sampleId);

                if (diluicaoAmostra != null)
                {
                    diluicaoAmostras.Add(diluicaoAmostra);
                }
            }
            else
            {
                diluicaoAmostras = await _diluicaoAmostraRepository.Get();
            }
            if (diluicaoAmostras.Count() == 0)
            {
                throw new AppError("Não foi encontrado nenhum cliente.", 404);
            }
            foreach (DiluicaoAmostra x in diluicaoAmostras)
            {
                sampleDtos.Add(DiluicaoAmostraMapToDilutionSampleDto.Map(new DilutionSampleDto(), x));
            }

            return(sampleDtos.OrderBy(s => s.Id).ToList());
        }
示例#2
0
        public async Task <IList <AssayDto> > Execute(int sampleDilutionId)
        {
            IList <AssayDto> assayDtos       = new List <AssayDto>();
            DiluicaoAmostra  diluicaoAmostra = new DiluicaoAmostra();

            diluicaoAmostra = await _diluicaoAmostraRepository.GetByID((int)sampleDilutionId);

            if (diluicaoAmostra == null)
            {
                throw new AppError("Não foi encontrada nenhuma Diluição para essa amostra.", 404);
            }

            foreach (EnsaiosPorAmostra x in diluicaoAmostra.fkAmostra.EnsaiosPorAmostras)
            {
                AssayDto assay = EnsaioMapToAssayDto.Map(new AssayDto(), x.fkEnsaio);
                assay.sample = AmostraMapToSampleDto.Map(new SampleDto(), diluicaoAmostra.fkAmostra);
                assayDtos.Add(assay);
            }
            return(assayDtos.OrderBy(assay => assay.Description).ToList());
        }
        public async Task <IList <ExperimentDto> > Execute(int?experimentId, int?sampleDilutionId)
        {
            IList <Experimento>   experiments     = new List <Experimento>();
            IList <ExperimentDto> experimentDtos  = new List <ExperimentDto>();
            DiluicaoAmostra       diluicaoAmostra = new DiluicaoAmostra();

            if (sampleDilutionId > 0)
            {
                diluicaoAmostra = await _diluicaoAmostraRepository.GetByID((int)sampleDilutionId);

                experiments = await _experimentoRepository.Get(x => x.fkDiluicaoAmostraId == diluicaoAmostra.Id);

                foreach (Experimento x in experiments)
                {
                    experimentDtos.Add(ExperimentoMapToExperimentDto.Map(new ExperimentDto(), x));
                }

                return(experimentDtos);
            }


            if (experimentId > 0)
            {
                Experimento experiment = await _experimentoRepository.GetByID((int)experimentId);

                if (experiment != null)
                {
                    experiments.Add(experiment);
                }
            }
            else
            {
                experiments = await _experimentoRepository.Get();
            }
            foreach (Experimento x in experiments)
            {
                experimentDtos.Add(ExperimentoMapToExperimentDto.Map(new ExperimentDto(), x));
            }
            return(experimentDtos.OrderBy(e => e.Id).ToList());
        }
示例#4
0
        public async Task <ExperimentDto> Execute(ExperimentDto experimentDto, int?dilutionSampleId)
        {
            if (dilutionSampleId <= 0)
            {
                throw new AppError("Informe uma diluição válida.");
            }
            DiluicaoAmostra dilutionSample = await _dilutionSampleRepository.GetByID((int)dilutionSampleId);

            if (dilutionSample == null)
            {
                throw new AppError("Informe uma diluição válida.");
            }

            Experimento experimento = ExperimentDtoMapToExperimento.Map(new Experimento(), experimentDto);

            experimento.fkDiluicaoAmostra   = dilutionSample;
            experimento.fkDiluicaoAmostraId = dilutionSample.Id;

            _experimentoRepository.Insert(experimento);
            await _experimentoRepository.Commit();

            return(experimentDto);
        }