Пример #1
0
        // Méthode de récupération de l'ID d'un technicien
        private static int SelectIDTechnical(C_Technical tech = null, string usn = null)
        {
            Technical tech1 = null;

            try
            {
                if (tech != null)
                {
                    tech1 = db.Technicals.Single(t => t.User.Usn == tech.Username);
                }
                else if (usn != null)
                {
                    tech1 = db.Technicals.Single(t => t.User.Usn == usn);
                }
                else
                {
                    new Exception("Pas de variables passées");
                }
                return(tech1.ID);
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }
Пример #2
0
        // Méthode de mise à jour d'un technicien
        public static void UpdateTechnical(C_Technical tech)
        {
            int idUser;

            try
            {
                idUser = SelectIDUser(tech);
                db.PS_Update_Technical(idUser,
                                       tech.HourRate,
                                       tech.GSM);
                db.SubmitChanges();
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }
Пример #3
0
        // Constructeur par défaut
        public MainWindow()
        {
            // Initialise les composants
            InitializeComponent();

            // Préparation de la fenêtre de Login
            XAML.WPF_Login wpf_login = new XAML.WPF_Login();
            wpf_login.ShowDialog();

            // Vérification si le login s'est bien passé
            if (wpf_login.LoginState)
            {
                // Vérification du type d'utilisateur
                if (wpf_login.UserType == "Technical")
                {
                    // Instancie un technicien
                    technical = Class.C_Database.SelectTechnical(wpf_login.Username);

                    // Instancie le UserControl du technicien et l'affiche
                    UserControls.UC_Technical uc_tech = new UserControls.UC_Technical(technical);
                    GRD_uc.Children.Clear();
                    GRD_uc.Children.Add(uc_tech);
                }
                else
                {
                    // Instancie un administratif
                    administrative = Class.C_Database.SelectAdministrative(wpf_login.Username);

                    // Instancie le UserControl de l'administratif et l'affiche
                    UserControls.UC_Administrative uc_adm = new UserControls.UC_Administrative(administrative);
                    GRD_uc.Children.Clear();
                    GRD_uc.Children.Add(uc_adm);
                }
            }
            else
            {
                // Ferme l'application
                Application.Current.Shutdown();
            }
        }
Пример #4
0
 // Méthode de récupération d'un ticket
 public static C_Ticket SelectTicket(int num)
 {
     try
     {
         db.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, db.Tickets);
         var ticket = from t in db.Tickets
                      where t.ID == num
                      select t;
         if (ticket.Count() > 0)
         {
             C_Client tmpClient = SelectClient(ticket.First().IDCustomer);
             C_Ticket tick      = new C_Ticket(ticket.First().DateIN,
                                               ticket.First().Subject,
                                               (ticket.First().Note == null ? null : ticket.First().Note),
                                               tmpClient);
             var interv = from i in db.Interventions
                          where i.IDTicket == ticket.First().ID
                          select i;
             foreach (Intervention i in interv)
             {
                 C_Technical    tech  = SelectTechnical(i.Technical.User.Usn);
                 C_Intervention inter = new C_Intervention(i.DateBegin,
                                                           i.DateEnd,
                                                           i.Subject,
                                                           i.TechnicalNote,
                                                           tech);
                 tick.AddIntervInList(inter);
             }
             return(tick);
         }
         else
         {
             return(new C_Ticket());
         }
     }
     catch (Exception ex)
     {
         throw (ex);
     }
 }
Пример #5
0
 // Constructeur par paramètres
 public C_Intervention(DateTime dateBeg, DateTime dateEnd, string label, string note, C_Technical tech)
 {
     this.dateBeg = dateBeg;
     this.dateEnd = dateEnd;
     this.label   = label;
     this.note    = note;
     this.usnTech = tech.Username;
 }