Пример #1
0
        public async Task <IActionResult> GetReportsByType(Guid personId, Guid classId, int type, DateTime?date = null)
        {
            if (date.HasValue == false)
            {
                date = DateTime.UtcNow;
            }
            var startDate = new DateTime(date.Value.Year, date.Value.Month, date.Value.Day);
            var endDate   = new DateTime(date.Value.Year, date.Value.Month, date.Value.Day, 23, 59, 59);

            switch (type)
            {
            case (int)EnumDailyReportType.NapsSleep:
            {
                var naps = await _unitOfWork.DailyReportNaps.GetAsync(x => x.IsActive &&
                                                                      x.PersonId == personId &&
                                                                      x.ClassId == classId &&
                                                                      x.Date >= startDate && x.Date <= endDate);

                return(PartialView("PartialDailyReportNap", DailyReportNap.Init(naps)));
            }

            case (int)EnumDailyReportType.Meals:
            {
                var meals = await _unitOfWork.DailyReportMeals.GetAsync(x => x.IsActive && x.OrganizationId == _organizationId &&
                                                                        x.ClassId == classId &&
                                                                        x.PersonId == personId &&
                                                                        x.Date >= startDate && x.Date <= endDate,
                                                                        include : p => p.Include(x => x.DailyReportFoods)
                                                                        );

                return(PartialView("PartialDailyReportMeal", DailyReportMeal.Init(meals)));
            }

            case (int)EnumDailyReportType.Bathroom:
            {
                var baths = await _unitOfWork.DailyReportBathrooms.GetAsync(x => x.IsActive && x.OrganizationId == _organizationId &&
                                                                            x.ClassId == classId &&
                                                                            x.PersonId == personId &&
                                                                            x.Date >= startDate && x.Date <= endDate

                                                                            );

                return(PartialView("PartialDailyReportBathroom", DailyReportBathroom.Init(baths)));
            }

            case (int)EnumDailyReportType.Medication:
            {
                var medications = await _unitOfWork.DailyReportMedications.GetAsync(x => x.IsActive && x.OrganizationId == _organizationId &&
                                                                                    x.ClassId == classId &&
                                                                                    x.PersonId == personId &&
                                                                                    x.Date >= startDate && x.Date <= endDate

                                                                                    );

                return(PartialView("PartialDailyReportMedication", DailyReportMedication.Init(medications)));
            }
            }

            return(View());
        }
Пример #2
0
        public async Task <IActionResult> AddEditBathroom(Guid personId, Guid classId, Guid organizationId, DateTime?date = null)
        {
            if (date.HasValue == false)
            {
                date = DateTime.UtcNow;
            }

            var model = DailyReportBathroom.Init(personId, classId, organizationId, date.Value);

            return(View(model));
        }
Пример #3
0
 public static DailyReportBathroomViewModel Create(DailyReportBathroom bath)
 {
     return(new DailyReportBathroomViewModel()
     {
         ClassId = bath.ClassId,
         Id = bath.Id,
         Date = bath.Date,
         Note = bath.Note,
         OrganizationId = bath.OrganizationId,
         PersonId = bath.PersonId,
         Time = bath.Time,
         Type = bath.Type
     });
 }
Пример #4
0
        public async Task <IActionResult> GetBathrooms(Guid personId, Guid classId, Guid organizationId, DateTime?date)
        {
            if (date.HasValue == false)
            {
                date = DateTime.UtcNow;
            }
            var startDate = new DateTime(date.Value.Year, date.Value.Month, date.Value.Day);
            var endDate   = new DateTime(date.Value.Year, date.Value.Month, date.Value.Day, 23, 59, 59);

            var baths = await _unitOfWork.DailyReportBathrooms.GetAsync(x => x.IsActive && x.OrganizationId == _organizationId &&
                                                                        x.ClassId == classId &&
                                                                        x.PersonId == personId &&
                                                                        x.Date >= startDate && x.Date <= endDate
                                                                        );


            return(PartialView("PartialDailyReportBathroom", DailyReportBathroom.Init(baths)));
        }
Пример #5
0
        public async Task <JsonResult> AddEditBathroom(DailyReportBathroomViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (model.Id == null)
                {
                    var bath = DailyReportBathroom.Create(model.PersonId, model.ClassId, model.OrganizationId, model.Date, model.Time, model.Type, model.Note, _userId);
                    await _unitOfWork.DailyReportBathrooms.Insert(bath);
                }
                else
                {
                    var bath = await _unitOfWork.DailyReportBathrooms.GetOneAsync(x => x.IsActive && x.Id == model.Id);

                    bath.Note = model.Note;
                    bath.Time = model.Time;
                    bath.Type = model.Type;
                    _unitOfWork.DailyReportBathrooms.Update(bath);
                }
                var result = await _unitOfWork.SaveAsync();

                if (result.Succeeded)
                {
                    return(Json(new JsonMessage {
                        Color = "#ff6849", Message = "Bath saved", Header = "Success", Icon = "success", AdditionalData = model
                    }));
                }
                return(Json(new JsonMessage {
                    Color = "#ff6849", Message = "Save Error", Header = "Error", Icon = "error", AdditionalData = model
                }));
            }
            else
            {
                return(Json(new JsonMessage {
                    Color = "#ff6849", Message = "Model Error", Header = "Error", Icon = "error", AdditionalData = model
                }));
            }
        }