Beispiel #1
0
        int new_count = 0;//카운트 비교용 변수
        private void timer1_Tick(object sender, EventArgs e)
        {
            dbConnect db      = new dbConnect();
            DataSet   dsCount = db.orderCount();
            DataTable dtCount = dsCount.Tables[0];
            int       count   = int.Parse(dtCount.Rows[0][0].ToString());

            Console.WriteLine(count);
            Console.WriteLine(new_count);
            if (count != new_count)
            {
                new_count = count;
                initOrder();
            }
        }
Beispiel #2
0
        int new_count = 0;//카운트 비교용 변수

        private void timer1_Tick(object sender, EventArgs e)
        {
            dbConnect db      = new dbConnect();
            DataSet   dsCount = db.orderCount();
            DataTable dtCount = dsCount.Tables[0];
            int       count   = int.Parse(dtCount.Rows[0][0].ToString());

            Console.WriteLine(count);
            Console.WriteLine(new_count);

            if (count != new_count)
            {
                SoundPlayer simpleSound = new SoundPlayer(@"..\..\Resources\order.wav");
                simpleSound.Play();

                MessageBox.Show("들어온 주문이 있습니다");
                new_count = count;
                initOrder();
            }
        }
Beispiel #3
0
        //오더 아이템 생성
        private void initOrder()
        {
            dbConnect db      = new dbConnect();
            DataSet   ds      = db.OrderTable();
            DataSet   dsCount = db.orderCount();
            DataTable dtCount = dsCount.Tables[0];
            int       count   = int.Parse(dtCount.Rows[0][0].ToString());

            flowLayoutPanel1.Controls.Clear();
            List <string[]> list = new List <string[]>();

            if (ds.Tables[0].Rows.Count > 0)
            {
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    //생성된 오더아이템 갯수
                    int flow_count = flowLayoutPanel1.Controls.Count + 1;

                    if (i == 0)                  //전체 통합 주문의 맨 첫번째
                    {
                        if (flow_count == count) // 첫번째 주문에 1개 밖에 주문이 없으면 수행
                        {
                            string[] menu = { ds.Tables[0].Rows[i]["name"].ToString(), ds.Tables[0].Rows[i]["count"].ToString() };
                            list.Add(menu);
                            CtUser c1 = new CtUser(ds.Tables[0].Rows[i], list);
                            flowLayoutPanel1.Controls.Add(c1);
                            c1.Show();
                            list.Clear();
                        }
                        else // 아니면 리스트에 추가
                        {
                            string[] menu = { ds.Tables[0].Rows[i]["name"].ToString(), ds.Tables[0].Rows[i]["count"].ToString() };
                            list.Add(menu);
                        }
                    }
                    else //통합 첫번째 주문을 제외한 모든 경우
                    {
                        //직전 주문과 PC_Num, 주문 시간이 같은 경우
                        if (ds.Tables[0].Rows[i]["PC_Num"].Equals(ds.Tables[0].Rows[i - 1]["PC_Num"]) && ds.Tables[0].Rows[i]["Order_Time"].Equals(ds.Tables[0].Rows[i - 1]["Order_Time"]))
                        {
                            //통합 맨 마지막 주문의 맨 마지막 메뉴의 경우
                            if (i == ds.Tables[0].Rows.Count - 1)
                            {
                                string[] menu = { ds.Tables[0].Rows[i]["name"].ToString(), ds.Tables[0].Rows[i]["count"].ToString() };
                                list.Add(menu);
                                CtUser c2 = new CtUser(ds.Tables[0].Rows[i], list);
                                flowLayoutPanel1.Controls.Add(c2);
                                c2.Show();
                            }
                            else // 통합 맨 마지막 주문의 맨 마지막 메뉴의 경우가 아닌 경우
                            {
                                string[] menu = { ds.Tables[0].Rows[i]["name"].ToString(), ds.Tables[0].Rows[i]["count"].ToString() };
                                list.Add(menu);
                            }
                        }
                        else // 직전 주문과 PC_Num, 주문 시간이 다른 경우
                        {
                            //맨 마지막 주문의 맨 마지막 메뉴일 경우
                            if (i == ds.Tables[0].Rows.Count - 1)
                            {
                                //직전 주문을 바로 생성해준다
                                CtUser c1 = new CtUser(ds.Tables[0].Rows[i - 1], list);
                                flowLayoutPanel1.Controls.Add(c1);
                                c1.Show();
                                list.Clear();
                                //리스트를 초기화하고 다시 메뉴를 만들어서 생성한다
                                string[] menu = { ds.Tables[0].Rows[i]["name"].ToString(), ds.Tables[0].Rows[i]["count"].ToString() };
                                list.Add(menu);
                                CtUser c2 = new CtUser(ds.Tables[0].Rows[i], list);
                                flowLayoutPanel1.Controls.Add(c2);
                                c2.Show();
                            }
                            else
                            {
                                //직전의 주문을 폼 생성해주고 리스트를 초기화 후 메뉴리스트에는 현재 주문에 대한 메뉴를 추가해준다.
                                CtUser c1 = new CtUser(ds.Tables[0].Rows[i - 1], list);
                                flowLayoutPanel1.Controls.Add(c1);
                                c1.Show();
                                list.Clear();
                                string[] menu = { ds.Tables[0].Rows[i]["name"].ToString(), ds.Tables[0].Rows[i]["count"].ToString() };
                                list.Add(menu);
                            }
                        }
                    }
                }
            }
        }