예제 #1
0
 public void doNursing(Nursing nursing)
 {
     Nursing.Add(nursing);
     foreach (var fish in Fish)
     {
         fish.doNursing(nursing);
     }
 }
예제 #2
0
        public async Task <bool> AddNursing(DateTime date, string food, decimal quantity, string comment, long aquariumId, string userId)
        {
            var nursing = new Nursing()
            {
                Food     = food,
                Quantity = quantity,
                Comment  = comment
            };

            return(await AddNursing(nursing, aquariumId, userId));
        }
예제 #3
0
        public async Task <IHttpActionResult> Nursing([FromBody] Nursing nursing, long id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var res = await AquariumService.AddNursing(nursing, id, await GetCurrentId());

            return(Ok(new
            {
                Success = res
            }));
        }
예제 #4
0
        public bool CreateNursingData(NursingCreate model)
        {
            var entity =
                new Nursing()
            {
                ParentID    = _userID,
                BabyID      = model.BabyID,
                Time        = model.Time,
                TimeFed     = model.TimeFed,
                FeedingSide = model.FeedingSide,
                Notes       = model.Notes,
            };

            using (var ctx = new ApplicationDbContext())
            {
                ctx.Nursings.Add(entity);
                return(ctx.SaveChanges() == 1);
            }
        }
예제 #5
0
        public async Task <bool> AddNursing(Nursing nursing, long aquariumId, string userId)
        {
            var aqua = await UnitOfWork.AquariumsRepository.GetEntityAsync(aquariumId);

            if (aqua == null || aqua.OwnerId != userId)
            {
                return(false);
            }
            await UnitOfWork.context.Entry(aqua).Collection(a => a.Fish).LoadAsync();

            //await UnitOfWork.context.Entry(aqua).Collection(a => a.Nursing).LoadAsync(); //probably dont neet load collection from db TODO: check it
            nursing.OwnerId    = userId;
            nursing.AquariumId = aquariumId;
            var nurs = UnitOfWork.NursingsRepository.Add(nursing);

            if (aqua.Nursing == null)
            {
                aqua.Nursing = new List <Nursing>();
            }
            aqua.Nursing.Add(nurs);
            foreach (var fish in aqua.Fish)
            {
                await UnitOfWork.context.Entry(fish).Reference(f => f.HealthBook).LoadAsync();

                if (fish.HealthBook != null)
                {
                    if (fish.HealthBook.Nursing == null)
                    {
                        fish.HealthBook.Nursing = new List <Nursing>();
                    }
                    fish.HealthBook.Nursing.Add(nurs);
                }
            }
            UnitOfWork.Save();
            return(true);
        }