public PlanMonitor()
 {
     InitializeComponent();
     dataAccess = new DataAccess();
     
     shifts = dataAccess.getShifts();
 }
예제 #2
0
       public ShiftCollection getShifts()
        {
            SqlConnection con = new SqlConnection(conStr);
            con.Open();

            ShiftCollection shifts= new ShiftCollection();

            String qry = String.Empty;
            qry = @"SELECT * FROM shift where id <> 4 ORDER BY id";

            SqlCommand cmd = new SqlCommand(qry, con);
            SqlDataReader dr = cmd.ExecuteReader();
            DataTable dt = new DataTable();
            dt.Load(dr);
            dr.Close();
            cmd.Dispose();

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                shifts.Add(new Shift((int)dt.Rows[i]["id"],(string)dt.Rows[i]["description"],
                   ((TimeSpan) dt.Rows[i]["from"]),((TimeSpan) dt.Rows[i]["to"])));
            }

            con.Close();
            con.Dispose();
            return shifts;
        }
예제 #3
0
        public Window1()
        {
            InitializeComponent();

            timertick = Convert.ToDouble(ConfigurationSettings.AppSettings["TIMERTICK"]);

            customerLogoPath = ConfigurationSettings.AppSettings["Customer_Logo"];

            string MonitorEnable = ConfigurationSettings.AppSettings["Monitor_Enabled"];

            if (MonitorEnable == "Yes")
            {
                LineMonitor.Visibility = Visibility.Visible;
            }
            string quantityEnable = ConfigurationSettings.AppSettings["Quantity_Enabled"];

            if (quantityEnable == "Yes")
            {
                LineStatsGrid.Columns[1].Visibility = Visibility.Visible;
                LineStatsGrid.Columns[2].Visibility = Visibility.Visible;
            }

            issueMarqueeSpeed   = Convert.ToDouble(ConfigurationSettings.AppSettings["ISSUE_MARQUEE_SPEED"]);
            messageMarqueeSpeed = Convert.ToDouble(ConfigurationSettings.AppSettings["MESSAGE_MARQUEE_SPEED"]);


            try
            {
                //customerLogo.Source = new BitmapImage(new Uri(customerLogoPath,UriKind.RelativeOrAbsolute));
                dataAccess  = new DataAccess();
                dpFrom.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
            }


            catch (SqlException s)
            {
                MessageBox.Show("Unable to Connect to DataBase ", "ERROR",
                                MessageBoxButton.OK, MessageBoxImage.Error);
                Application.Current.Shutdown();
            }



            lines = new String[3];

            lines[0] = ConfigurationSettings.AppSettings["Lines_List_1"];
            lines[1] = ConfigurationSettings.AppSettings["Lines_List_2"];
            lines[2] = ConfigurationSettings.AppSettings["Lines_List_3"];


            lineInfoTable    = new DataTable[3];
            lineInfoTable[0] = dataAccess.getProductionLineInfo(lines[0]);
            lineInfoTable[1] = dataAccess.getProductionLineInfo(lines[1]);
            lineInfoTable[2] = dataAccess.getProductionLineInfo(lines[2]);

            linesInfoTable = dataAccess.getProductionLineInfo();

            cmbProductionLineSelector.DataContext = linesInfoTable;

            shifts = dataAccess.getShifts();

            foreach (Shift s in shifts)
            {
                s.Sessions = dataAccess.getSessions(s.ID);
            }



            lineStatus = new LineStatusCollection[3];


            for (int i = 0; i < 3; i++)
            {
                lineStatus[i] = new LineStatusCollection();
            }


            for (int j = 0; j < 3; j++)
            {
                for (int i = 0; i < lineInfoTable[j].Rows.Count; i++)
                {
                    lineStatus[j].Add(new LineStatus((String)lineInfoTable[j].Rows[i]["description"],
                                                     (int)lineInfoTable[j].Rows[i]["id"]));
                }
            }


            marqueeAnimation = new DoubleAnimation();
            //marqueeAnimation.Completed += new EventHandler(marqueeAnimation_Completed);


            issueMarqueeAnimation            = new DoubleAnimation();
            issueMarqueeAnimation.Completed += new EventHandler(issueMarqueeAnimation_Completed);

            appTimer           = new System.Timers.Timer(10);
            appTimer.Elapsed  += new System.Timers.ElapsedEventHandler(appTimer_Elapsed);
            appTimer.AutoReset = false;


            appTimer.Start();


            TBLine.SelectedIndex = 1;
            tbIssueMarquee_Loaded();

            cmbShiftSelector.DataContext = shifts;
        }
예제 #4
0
        public StartPage()
        {
            try
            {
                InitializeComponent();
                //_dbConnectionString = "Data Source=SAMBRAHMA\\SQLEXPRESS;database=IAS_Schneider;User id=sa; Password=mei123$%^;";
                _dbConnectionString  = ConfigurationSettings.AppSettings["DBConStr"];

                string lineList = ConfigurationSettings.AppSettings["LINES"];

                whID = Convert.ToInt32(ConfigurationSettings.AppSettings["WH_ID"]);

                DataAccess.conStr = _dbConnectionString;

                MainMenu _mainMenu = new MainMenu(_dbConnectionString);
                _mainFrame.Navigate(_mainMenu);
                dataAccess = new DataAccess();
                lines = dataAccess.getLines();
                lineQ = new Queue<int>();
                String[] linesLst = separateCommandData(lineList);

                foreach (line l in lines)
                {
                    foreach (String s in linesLst)
                    {

                        if (l.ID == Convert.ToInt32(s))
                        {
                            lineQ.Enqueue(l.ID);
                        }
                    }
                }

                departmentTable = dataAccess.getDepartmentInfo("");

                departmentQ = new Queue<int>();
                for (int i = 0; i < departmentTable.Rows.Count; i++)
                    departmentQ.Enqueue((int)departmentTable.Rows[i]["id"]);
                andonManager = new AndonManager(lineQ,departmentQ,AndonManager.MODE.MASTER);

                shifts = dataAccess.getShifts();

                contacts = dataAccess.getContacts();


                xmlSerializer = new XmlSerializer(typeof(AndonAlertEventArgs));

                serverType = ConfigurationSettings.AppSettings["ServerType"];
                dataAccess.updateIssueMarquee();


                commandTimer = new System.Timers.Timer(3 * 1000);
                commandTimer.Elapsed += new System.Timers.ElapsedEventHandler(commandTimer_Elapsed);
                commandTimer.AutoReset = false;

                commandTimer.Start();

                Issues = new Dictionary<int, Issue>();
                timeout = dataAccess.getEscalationTimeout();
                               
                
                andonManager.andonAlertEvent += new EventHandler<AndonAlertEventArgs>(andonManager_andonAlertEvent);

                andonManager.start();
               
            }
            catch( Exception e)
            {
                tbMsg.Text+= e.Message;
            }
        }
예제 #5
0
 public ShiftTests()
 {
     _collection = new ShiftCollection(_mockHandler.Object);
 }
예제 #6
0
        public Monitor(Contact c )
        {
            try
            {

                timertick = Convert.ToDouble(ConfigurationSettings.AppSettings["TIMERTICK"]);
                dataAccess = new DataAccess();
                dt = dataAccess.GetOpenIssues();

                shifts = dataAccess.getShifts();

                foreach (Shift s in shifts)
                {
                    s.Sessions = dataAccess.getSessions(s.ID);
                }
                lines = c.getLineAssociation();

                lineInfoTable = dataAccess.getProductionLineInfo(lines);

                lineStatus = new LineStatusCollection();




                for (int i = 0; i < lineInfoTable.Rows.Count; i++)
                {
                    lineStatus.Add(new LineStatus((String)lineInfoTable.Rows[i]["description"],
                        (int)lineInfoTable.Rows[i]["id"]));

                }

                


                

                appTimer = new System.Timers.Timer(10);
                appTimer.Elapsed += new System.Timers.ElapsedEventHandler(appTimer_Elapsed);
                appTimer.AutoReset = false;

                InitializeComponent();
                foreach (DepartmentAssociationInfo d in c.DepartmentAssociation)
                {
                    if (d.IsAssociated == false)
                        LineStatsGrid.Columns[d.ID+2].Visibility = Visibility.Hidden;

                }

                appTimer.Start();
            }

            

            catch (SqlException s)
            {
                MessageBox.Show("DataBase Error  ", "ERROR",
                                MessageBoxButton.OK, MessageBoxImage.Error);
                Application.Current.Shutdown();
            }

        }
        public Window1()
        {
            InitializeComponent();

            timertick = Convert.ToDouble(ConfigurationSettings.AppSettings["TIMERTICK"]);

            customerLogoPath = ConfigurationSettings.AppSettings["Customer_Logo"];

            string MonitorEnable = ConfigurationSettings.AppSettings["Monitor_Enabled"];
            if (MonitorEnable == "Yes")
            {
                LineMonitor.Visibility = Visibility.Visible;
            }
            string quantityEnable = ConfigurationSettings.AppSettings["Quantity_Enabled"];

            if (quantityEnable == "Yes")
            {
                LineStatsGrid.Columns[1].Visibility = Visibility.Visible;
                LineStatsGrid.Columns[2].Visibility = Visibility.Visible;
            }

            issueMarqueeSpeed = Convert.ToDouble(ConfigurationSettings.AppSettings["ISSUE_MARQUEE_SPEED"]);
            messageMarqueeSpeed = Convert.ToDouble(ConfigurationSettings.AppSettings["MESSAGE_MARQUEE_SPEED"]);


            try
            {
                
                //customerLogo.Source = new BitmapImage(new Uri(customerLogoPath,UriKind.RelativeOrAbsolute));
                dataAccess = new DataAccess();
                dpFrom.Text = DateTime.Now.ToShortDateString();
            }


            catch (SqlException s)
            {
                MessageBox.Show("Unable to Connect to DataBase ", "ERROR",
                                MessageBoxButton.OK, MessageBoxImage.Error);
                Application.Current.Shutdown();
            }



            lines = new String[3];

            lines[0] = ConfigurationSettings.AppSettings["Lines_List_1"];
            lines[1] = ConfigurationSettings.AppSettings["Lines_List_2"];
            lines[2] = ConfigurationSettings.AppSettings["Lines_List_3"];


            lineInfoTable = new DataTable[3];
            lineInfoTable[0] = dataAccess.getProductionLineInfo(lines[0]);
            lineInfoTable[1] = dataAccess.getProductionLineInfo(lines[1]);
            lineInfoTable[2] = dataAccess.getProductionLineInfo(lines[2]);

            linesInfoTable = dataAccess.getProductionLineInfo();

            cmbProductionLineSelector.DataContext = linesInfoTable;

            shifts = dataAccess.getShifts();

            foreach (Shift s in shifts)
            {
                s.Sessions = dataAccess.getSessions(s.ID);
            }




            lineStatus = new LineStatusCollection[3];


            for (int i = 0; i < 3; i++)
            {
                lineStatus[i] = new LineStatusCollection();
            }


            for (int j = 0; j < 3; j++)
            {
                for (int i = 0; i < lineInfoTable[j].Rows.Count; i++)
                {
                    lineStatus[j].Add(new LineStatus((String)lineInfoTable[j].Rows[i]["description"],
                        (int)lineInfoTable[j].Rows[i]["id"]));

                }
            }


            marqueeAnimation = new DoubleAnimation();
            //marqueeAnimation.Completed += new EventHandler(marqueeAnimation_Completed);


            issueMarqueeAnimation = new DoubleAnimation();
            issueMarqueeAnimation.Completed += new EventHandler(issueMarqueeAnimation_Completed);

            appTimer = new System.Timers.Timer(10);
            appTimer.Elapsed += new System.Timers.ElapsedEventHandler(appTimer_Elapsed);
            appTimer.AutoReset = false;

            
            appTimer.Start();


            TBLine.SelectedIndex = 1;
            tbIssueMarquee_Loaded();

            cmbShiftSelector.DataContext = shifts;

        }