Exemplo n.º 1
0
        // 작업 상태가 변경될 경우 호출할 콜백
        void OnChangeWorkState(TYPE_WORK prev, TYPE_WORK cur, string msg)
        {
            string log = "work state convert : " + prev.ToString() + " to " + cur.ToString();

            if ("" == msg)
            {
                m_mainCon.m_logger.OutputInfo(log);
            }
            else
            {
                m_mainCon.m_logger.OutputInfo(log + " - " + msg);
            }

            // 작업 완료 상황에 맞추어 색상을 변경함
            if (TYPE_WORK.Login == prev && TYPE_WORK.ClearCart == cur)
            {
                btnStatLogin.BackColor = m_colFin;
            }
            else if (TYPE_WORK.ClearCart == prev && TYPE_WORK.CheckOrderItem == cur)
            {
                btnStatInitCart.BackColor = m_colFin;
            }
            else if (TYPE_WORK.CheckOrderItem == prev && TYPE_WORK.Payment == cur)
            {
                if (m_bOrderOK)
                {
                    btnStatPayment.BackColor = m_colFin;
                }
                else
                {
                    btnStatPayment.BackColor = m_colErr;
                }
            }
            else if (TYPE_WORK.Payment == prev && TYPE_WORK.Complete == cur)
            {
                // 작업이 끝났을때 처리.
                // 주문 상태를 엑셀로 출력.
                string inpath   = m_mainCon.m_orderData.pathOrder;
                string outDir   = Path.GetDirectoryName(inpath);
                string fileName = Path.GetFileNameWithoutExtension(inpath);
                string time     = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
                string outPath  = outDir + "\\" + fileName + " - result(" + m_mainCon.m_orderData.seller + ")-" + time + "-.xlsx";

                UtilExcel.ListViewToExcel(this.listOrder, outPath);

                MessageBox.Show("작업 완료.");
            }
        }