Esempio n. 1
0
        /// <summary>
        /// Card de Rapport d'Absence
        /// </summary>
        /// <param name="absenceTicket"></param>
        public AssiduiteCard(AbsenceTicket absenceTicket)
        {
            using (var db = new SchoolContext())
            {
                var theCours = db.Studies.Find(absenceTicket.CoursGuid);
                AbsenceTicketGuid = absenceTicket.AbsenceTicketGuid;
                DateTimeString    = absenceTicket.CoursDate.GetValueOrDefault().ToShortDateString();
                if (theCours?.StartTime != null)
                {
                    CoursStartTime = theCours.StartTime;
                }
                if (theCours?.EndTime != null)
                {
                    CoursEndTime = theCours.EndTime;
                }
                if (theCours != null)
                {
                    MatiereName = db.Subjects.Find(theCours.SubjectGuid).Name;
                }
                PresenceColor = "#B22400";

                if (!absenceTicket.IsPresent)
                {
                    Observation = "Absence Au Cours";
                }
                else
                {
                    Observation   = "Retard de " + absenceTicket.RetardTime.TotalMinutes + " mins";
                    PresenceColor = "#707376";
                }
            }
        }
Esempio n. 2
0
        private void UpDownBase_OnValueChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
        {
            var item = ((Border)((StackPanel)((Grid)((IntegerUpDown)sender).Parent).Parent).Parent).Parent as ListBoxItem;
            var ticketCard = item?.DataContext as AbsenceTicketCard;

            var absenceTicket = new AbsenceTicket()
            {
                AbsenceTicketGuid = ticketCard.AbsenceTicketGuid,
                CoursGuid = _currentCoursGuid,
                CoursDate = _currentCoursDate,
                PersonGuid = ticketCard.PersonGuid,
                IsPresent = ticketCard.IsPresent,
                RetardTime = new TimeSpan(0, 0, ticketCard.RetardTime, 0)
            };

            try
            {
                App.DataS.Pedagogy.AbsenceTicket.AddOrUpdateAbsenceTicket(absenceTicket);
            }
            catch (Exception ex)
            {
                Debug.Print(ex.Message);
                ModernDialog.ShowMessage("Erreur de Connection a la Base de Donneé", "ERREUR", MessageBoxButton.OK);               
            }            
        }
Esempio n. 3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="myTicket"></param>
 /// <returns></returns>
 public bool AddOrUpdateAbsenceTicket(AbsenceTicket myTicket)
 {
     if (!myTicket.IsPresent || myTicket.RetardTime != new TimeSpan(0))
     {
         return(AbsenceTicketExist(myTicket) ? UpdateAbsenceTicket(myTicket) : AddAbsenceTicket(myTicket));
     }
     DeleteAbsenceTicket(myTicket.AbsenceTicketGuid);
     return(true);
 }
Esempio n. 4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="myTicket"></param>
        /// <returns></returns>
        private static bool AddAbsenceTicket(AbsenceTicket myTicket)
        {
            if (!myTicket.IsPresent)
            {
                myTicket.RetardTime = new TimeSpan(0, 0, 0, 0);
            }

            using (var db = new Ef())
            {
                db.AbsenceTicket.Add(myTicket);
                return(db.SaveChanges() > 0);
            }
        }
Esempio n. 5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="absenceTicket"></param>
        /// <returns></returns>
        private static bool AbsenceTicketExist(AbsenceTicket absenceTicket)
        {
            using (var db = new Ef())
            {
                if (db.AbsenceTicket.Find(absenceTicket.AbsenceTicketGuid) != null)
                {
                    return(true);
                }

                return(db.AbsenceTicket.Any(t => t.CoursGuid == absenceTicket.CoursGuid &&
                                            t.PersonGuid == absenceTicket.PersonGuid &&
                                            t.CoursDate == absenceTicket.CoursDate));
            }
        }
Esempio n. 6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="myTicket"></param>
        /// <returns></returns>
        private static bool UpdateAbsenceTicket(AbsenceTicket myTicket)
        {
            if (!myTicket.IsPresent)
            {
                myTicket.RetardTime = new TimeSpan(0, 0, 0, 0);
            }

            using (var db = new Ef())
            {
                db.AbsenceTicket.Attach(myTicket);
                db.Entry(myTicket).State = EntityState.Modified;
                return(db.SaveChanges() > 0);
            }
        }
Esempio n. 7
0
        private static bool AddAbsenceTicket(AbsenceTicket myTicket)
        {
            if (!myTicket.IsPresent)
            {
                myTicket.RetardTime = new TimeSpan(0, 0, 0, 0);
            }

            using (var db = new SchoolContext())
            {
                if (myTicket.AbsenceTicketGuid == Guid.Empty)
                {
                    myTicket.AbsenceTicketGuid = Guid.NewGuid();
                }

                db.AbsenceTickets.Add(myTicket);
                return(db.SaveChanges() > 0);
            }
        }