Ejemplo n.º 1
0
        public async Task <IActionResult> PostFeeding([FromRoute] int id, [FromBody] PostFeedingsDTO feedingDTO)
        {
            var result = await feedingsService.CreateFeeding(feedingDTO, id);

            if (result == null)
            {
                return(NotFound());
            }

            return(CreatedAtAction("GetFeeding", new { id = result.Id }, feedingDTO));
        }
Ejemplo n.º 2
0
        public async Task <Feeding> CreateFeeding(PostFeedingsDTO feedingDTO, int babyId)
        {
            if (feedingDTO == null)
            {
                throw new ArgumentNullException(nameof(feedingDTO));
            }

            var babies = unitOfWork.Babies.GetAll();
            var baby   = babies.FirstOrDefault(
                baby => baby.Id == babyId);

            var devices = unitOfWork.Devices.GetAll();
            var device  = devices.FirstOrDefault(
                device => device.Id == feedingDTO.DeviceId);

            var feeding = new Feeding()
            {
                Name      = feedingDTO.Name,
                CountMilk = feedingDTO.CountMilk,
                TimeMilk  = feedingDTO.TimeMilk
            };

            if (baby != null && device != null)
            {
                feeding.DeviceId = feedingDTO.DeviceId;
                feeding.Device   = device;

                feeding.BabyId = babyId;
                feeding.Baby   = baby;

                unitOfWork.Feedings.Create(feeding);
                await unitOfWork.SaveChangesAsync();

                return(feeding);
            }

            return(null);
        }