Exemplo n.º 1
0
        public void PopolnenieCasa()
        {
            MainPage Login = new MainPage();

            Login.EnterButton.Click();
            Login.InputLoginMail.SendKeys(TestData.InputLogin);
            Login.InputPassword.SendKeys(TestData.InputPassword);
            Login.EnterButtonSubmit.Click();
            Cashbox replish = new Cashbox();

            replish.CashboxButton.Click();
            replish.CashboxPopup.Click();
            Driver.Browser.SwitchTo().Frame("frame-cash");
            Thread.Sleep(2000);
            replish.Cashbox200ua.Click();
            Thread.Sleep(2000);
            replish.CashboxPopupTakeMethod.Click();
            replish.CashboxPopupInput.Click();
            replish.CashboxPopupInput.Clear();
            replish.CashboxPopupInput.SendKeys(TestData.Payments);
            replish.CashboxPopuptakeBonus.Click();
            replish.CashboxPopuptakeBonusSelect.Click();
            replish.CashboxPopupButtonpush.Click();
            replish.CashboxPopupnextSteppush.Click();
            Driver.Browser.SwitchTo().Window(Driver.Browser.WindowHandles[1]);
            StringAssert.AreEqualIgnoringCase("W1 - Единая касса", replish.Paymentspage.Text);
        }
Exemplo n.º 2
0
        public void СancelCashWithdrawal()
        {
            Cashbox replish = new Cashbox();

            CashWithdrawal();
            replish.HistoryFrame.Click();
            replish.СancelWithdrawal.Click();
            replish.ConfirmationOfCancellationOfOutput.Click();
            StringAssert.AreEqualIgnoringCase("Ваша заявка на вывод отменена", replish.OtmenaSdelana.Text);
        }
        public void Buy_budget500_cost700_resultArgumentException()
        {
            // arrange
            int budget = 500;
            int cost   = 700;

            // act
            Cashbox cashbox = new Cashbox(budget);

            cashbox.Buy(cost);
        }
Exemplo n.º 4
0
        public void SetCurrentCashbox(string cashBoxId)
        {
            CashboxProcesses cashboxProcesses = new CashboxProcesses(null);
            Cashbox          cashbox          = cashboxProcesses.FindCashBoxById(cashBoxId);

            if (cashbox == null)
            {
                throw new ArgumentOutOfRangeException("cashBoxId");
            }

            this.cashbox = cashbox;
        }
Exemplo n.º 5
0
        protected void CashboxIsSelected(Cashbox beforeValue, Cashbox actualValue)
        {
            if (beforeValue != null)
            {
                beforeValue.IsSelected = false;
            }

            if (actualValue != null)
            {
                actualValue.IsSelected = true;
            }
        }
Exemplo n.º 6
0
        public void CPChange()
        {
            VuePopup vue = new VuePopup();

            vue.Auth(login, false);
            Cashbox replish = new Cashbox();

            replish.EnterCashbox();

            replish.CashboxPopupCPButton.Click();
            replish.CashboxPopupCPinput.SendKeys("40");
            replish.CashboxPopupCPButtonOK.Click();
            StringAssert.AreEqualIgnoringCase("Недостаточно CP для обмена", replish.CashboxPopupCPchangeSuccess.Text);
        }
Exemplo n.º 7
0
        public IHttpActionResult GetCashbox(int id)
        {
            Cashbox cashbox = _unitOfWork.Cashboxes.GetCashboxById(id);

            if (cashbox == null)
            {
                var message = new HttpResponseMessage(HttpStatusCode.BadRequest)
                {
                    Content = new StringContent($"No cashbox with id = {id} found")
                };
                throw new HttpResponseException(message);
            }
            return(Ok(cashbox));
        }
        public void Sell_budget300_cost500_result800()
        {
            // arrange
            int budget   = 300;
            int cost     = 500;
            int expected = 800;

            // act
            Cashbox cashbox = new Cashbox(budget);

            cashbox.Sell(cost);
            int actual = cashbox.Budget;

            // assert
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 9
0
        public void RegisterCashboxOperation(CashboxOperation operation)
        {
            if (operation == null)
            {
                throw new ArgumentNullException("operation");
            }

            BusinessRulesManager.Assert("RegisterCashboxOperation", operation);

            Cashbox cashbox = operation.Cashbox.GetVanillaEntity();

            cashbox.Balance += operation.Amount;

            StorageContext.Current.Insert(operation);
            StorageContext.Current.Update(cashbox);
        }
Exemplo n.º 10
0
        public void CashierReplenishmentPrivat24()
        {
            VuePopup vue = new VuePopup();

            vue.Auth(login, false);
            Cashbox replish = new Cashbox();

            replish.EnterCashbox();
            replish.CashboxPopupTakeMethodPrivat24.Click();
            replish.CashboxPopupInput.SendKeys(TestDataResource.Payments);
            replish.CashboxPopupButtonpush.Click();
            replish.CashboxPopupnextSteppush.Click();

            Driver.Browser.SwitchTo().Window(Driver.Browser.WindowHandles[1]);
            StringAssert.AreEqualIgnoringCase("USD:", replish.CashboxPopupAgreePrivat24.Text);
        }
        private void DeleteButton_Click(object sender, RoutedEventArgs e)
        {
            string     performanceName = performancesComboBox.SelectedValue.ToString();
            string     clientName      = clientsComboBox.SelectedValue.ToString();
            DateTime   date            = ConvertStringToDateTime(dateComboBox.SelectedValue.ToString());
            typeTicket type            = Cashbox.FindTicket(typeComboBox.SelectedValue.ToString());

            if (cashbox.ReturnTicket(performanceName, date, clientName, type))
            {
                msgTextBlock.Text = "Билет успешно сдан в кассу.";
            }
            else
            {
                msgTextBlock.Text = "Не найден данный билет, на указанный спектакль.";
            }
        }
Exemplo n.º 12
0
        public void Buy_budget1000_cost700_result300()
        {
            // arrange
            int budget   = 1000;
            int cost     = 700;
            int expected = 300;

            // act
            Cashbox cashbox = new Cashbox(budget);

            cashbox.Buy(cost);
            int actual = cashbox.Budget;

            // assert
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 13
0
        private void InitAppData(Cashier cashier, List <Product> products, string token)
        {
            DataHandler data = DataHandler.GetInstance();

            data.Token = token;

            Cashbox cashbox = new Cashbox
            {
                IdCashbox = 13,
                ShopId    = 14,
                Id        = 1
            };

            data.Cashier  = cashier;
            data.Products = products;
            data.Cashbox  = cashbox;
        }
Exemplo n.º 14
0
        public void CashierReplenishmentPayeer()
        {
            VuePopup vue = new VuePopup();

            vue.Auth(login, false);
            Cashbox replish = new Cashbox();

            replish.EnterCashbox();
            replish.CashboxPopupOpenAnother.Click();
            replish.CashboxPopupOpenPayeer.Click();
            replish.CashboxPopupInput.SendKeys(TestDataResource.Payments);
            replish.CashboxPopupButtonpush.Click();
            replish.CashboxPopupnextSteppush.Click();

            Driver.Browser.SwitchTo().Window(Driver.Browser.WindowHandles[1]);
            StringAssert.AreEqualIgnoringCase("Авторизация", replish.CashboxPopupAgreePayeer.Text);
        }
Exemplo n.º 15
0
        public void CPChange()
        {
            MainPage Login = new MainPage();

            Login.EnterButton.Click();
            Login.InputLoginMail.SendKeys(TestData.InputLogin);
            Login.InputPassword.SendKeys(TestData.InputPassword);
            Login.EnterButtonSubmit.Click();
            Cashbox replish = new Cashbox();

            replish.CashboxButton.Click();
            Driver.Browser.SwitchTo().Frame("frame-cash");
            replish.CashboxPopupCPButton.Click();
            replish.CashboxPopupCPinput.SendKeys("40");
            replish.CashboxPopupCPButtonOK.Click();
            StringAssert.AreEqualIgnoringCase("На ваш баланс зачислено 2 UAH за 40 cp", replish.CashboxPopupCPchangeSuccess.Text);
            replish.CashboxPopupCPchangeOK.Click();
        }
        public void CheckDatabaseInitialized()
        {
            if (!StorageContext.Current.Exists <Employee>(null))
            {
                Employee employee = new Employee {
                    FirstName = "Initial", LastName = "Employee", Login = "******"
                };
                employee.SetPassword("init");
                StorageContext.Current.Insert(employee);
            }

            if (!StorageContext.Current.Exists <Cashbox>(null))
            {
                Cashbox cashbox = new Cashbox {
                    CashboxId = "1", Name = "My Cashbox", Balance = 0
                };
                StorageContext.Current.Insert(cashbox);
            }
        }
Exemplo n.º 17
0
        private void ClientListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            //headlineLabel.Content = cashbox.GetClient(e.AddedItems[0].ToString()).fullName;
            statusTextBlock.Text = cashbox.GetClient(e.AddedItems[0].ToString()).GetStatus();
            column1.Children.Clear();
            column2.Children.Clear();
            column3.Children.Clear();

            foreach (Ticket ticket in cashbox.GetClient(e.AddedItems[0].ToString()).tickets)
            {
                TextBlock namePerformance = new TextBlock();
                TextBlock typeTicketBlock = new TextBlock();
                TextBlock dateText        = new TextBlock();

                namePerformance.Text = ticket.namePerformance;
                typeTicketBlock.Text = Cashbox.FindTicket(ticket.type);
                dateText.Text        = ticket.date.ToLongDateString();

                namePerformance.Width  = column1.Width;
                namePerformance.Height = 30;
                typeTicketBlock.Width  = column2.Width;
                typeTicketBlock.Height = 30;
                dateText.Width         = column3.Width;
                dateText.Height        = 30;

                column1.Children.Add(namePerformance);
                column2.Children.Add(typeTicketBlock);
                column3.Children.Add(dateText);
            }

            /*
             * TextBlock namePerformance = new TextBlock();
             * TextBlock countOfTicket = new TextBlock();
             * TextBlock dateText = new TextBlock();
             *
             * nameBlock.Width = column1.Width;
             * nameBlock.Height = 60;
             * ticketBlock.Width = column2.Width;
             * ticketBlock.Height = 60;
             * dateBlock.Width = column3.Width;
             * dateBlock.Height = 60;
             */
        }
Exemplo n.º 18
0
        private void BuyTicketButton_Click(object sender, RoutedEventArgs e)
        {
            if (nameInputBox.Text.Length > 0 && comboPerformanceBox.Text.Length > 0 &&
                comboDateBox.Text.Length > 0 && comboTypeBox.Text.Length > 0)
            {
                string     fullname        = nameInputBox.Text;
                string     performanceName = comboPerformanceBox.Text;
                typeTicket type            = Cashbox.FindTicket(comboTypeBox.Text.Split()[0].ToLower());
                DateTime   date            = ConvertStringToDateTime(comboDateBox.Text);

                cashbox.SaleTicket(new Client(fullname), new Performance(performanceName, date), type);

                sumTicketBox.Text = "Билет успешно куплен на спектакль \"" + performanceName + "\", который пройдёт: " + comboDateBox.Text;
            }
            else
            {
                sumTicketBox.Text = "Не все поля заполнены";
            }
        }
Exemplo n.º 19
0
        public void CashierReplenishmentVisaMaster()
        {
            VuePopup vue = new VuePopup();

            vue.Auth(login, false);
            Cashbox replish = new Cashbox();

            //WelcomePage welcome = new WelcomePage();
            //welcome.CancelButton.Click();
            replish.EnterCashbox();
            replish.CashboxPopupTakeMethodVisaMaster.Click();
            replish.CashboxPopupInput.SendKeys(TestDataResource.Payments);
            replish.CashboxPopupButtonpush.Click();

            Driver.Browser.SwitchTo().Frame("frame-cash");
            System.Threading.Thread.Sleep(5000);
            Driver.Browser.SwitchTo().Frame("frame-cash-inner");
            System.Threading.Thread.Sleep(5000);
            StringAssert.AreEqualIgnoringCase("999.00", replish.CashboxPopupAgreeVisaMaster.Text);
        }
Exemplo n.º 20
0
        public void CashWithdrawal()
        {
            VuePopup vue = new VuePopup();

            vue.Auth(login, false);
            Cashbox replish = new Cashbox();

            replish.EnterCashbox();

            replish.CashboxPopupWithdrawButton.Click();
            replish.CashboxPopupSelectW.Click();
            replish.CashboxPopupSelectWMaster.Click();

            replish.CashboxPopupInputSumma.SendKeys(TestDataResource.Payments);
            replish.CashboxPopuprequisite.Clear();

            replish.CashboxPopuprequisite.SendKeys(TestDataResource.CreditCardVisa);
            replish.CashboxPopupWButton.Click();
            StringAssert.AreEqualIgnoringCase("Заявка на выплату отправлена. Она будет обработана в течение 5-ти часов.", replish.CashboxPopupSucespay.Text);
            replish.ClosePopupVivod.Click();
        }
Exemplo n.º 21
0
        public void VivodCasa()
        {
            MainPage Login = new MainPage();

            Login.EnterButton.Click();
            Login.InputLoginMail.SendKeys(TestData.InputLogin);
            Login.InputPassword.SendKeys(TestData.InputPassword);
            Login.EnterButtonSubmit.Click();
            Cashbox replish = new Cashbox();

            replish.CashboxButton.Click();
            Driver.Browser.SwitchTo().Frame("frame-cash");
            replish.CashboxPopupWithdrawButton.Click();
            replish.CashboxPopupSelectW.Click();
            replish.CashboxPopupSelectWMaster.Click();
            replish.CashboxPopupInputSumma.Click();
            replish.CashboxPopupInputSumma.SendKeys(TestData.Payments);
            replish.CashboxPopuprequisite.Clear();
            replish.CashboxPopuprequisite.SendKeys(TestData.CreditCardVisa);
            replish.CashboxPopupWButton.Click();
            StringAssert.AreEqualIgnoringCase("Заявка на выплату отправлена. Она будет обработана в течение 3-х часов.", replish.CashboxPopupSucespay.Text);
        }
Exemplo n.º 22
0
        }                                           // приоритет билета в очереди



        public override string ToString()
        {
            var ticketName = Prefix + NumberElement.ToString("000");

            return($";  Дата добавления в очередь: {AddedTime};  Дата поступления в обработку: {StartProcessingTime};  Дата окончания обработки: {EndProcessingTime};  Номер билета: {ticketName};  Номер кассира: {Cashbox?.ToString() ?? "неизвестный кассир" } ");
        }
Exemplo n.º 23
0
 private static Cashbox Convert(CashboxDto dto)
 {
     return(Cashbox.CreateNew(dto.DeviceId, dto.Rnm, dto.Zn, dto.Fn, dto.Fdn, dto.Fpd));
 }
Exemplo n.º 24
0
        private void SongDBUpdate_UpdateDatabaseFile(string UpdateType)
        {
            Global.TimerStartTime = DateTime.Now;
            OleDbConnection conn = new OleDbConnection();

            conn = CommonFunc.OleDbOpenConn(Global.CrazyktvDatabaseFile, "");
            OleDbCommand SongDBVerUpdatecmd       = new OleDbCommand();
            OleDbCommand GodLiuColumnDropcmd      = new OleDbCommand();
            string       SongDBBackupFile         = "";
            string       SongDBVerUpdatecmdSqlStr = "";
            string       GodLiuColumnDropSqlStr   = "";
            bool         UpdateError = false;

            if (!Directory.Exists(Application.StartupPath + @"\SongMgr\Backup"))
            {
                Directory.CreateDirectory(Application.StartupPath + @"\SongMgr\Backup");
            }
            SongDBBackupFile = Application.StartupPath + @"\SongMgr\Backup\" + DateTime.Now.ToLongDateString() + "_CrazySong.mdb";
            File.Copy(Global.CrazyktvDatabaseFile, SongDBBackupFile, true);

            List <string> CrazyktvDBTableList = new List <string>(CommonFunc.GetOleDbTableList(Global.CrazyktvDatabaseFile, ""));

            // 移除 ktv_AllSinger 資料表
            if (CrazyktvDBTableList.IndexOf("ktv_AllSinger") >= 0)
            {
                try
                {
                    OleDbCommand[] cmds =
                    {
                        new OleDbCommand("drop table ktv_AllSinger", conn),
                    };

                    foreach (OleDbCommand cmd in cmds)
                    {
                        cmd.ExecuteNonQuery();
                    }
                }
                catch
                {
                    UpdateError = true;
                    this.BeginInvoke((Action) delegate()
                    {
                        SongMaintenance_DBVerTooltip_Label.Text = "移除 ktv_AllSinger 資料表失敗,已還原為原本的資料庫檔案。";
                    });
                }
            }

            // 移除 ktv_Version 資料表
            if (CrazyktvDBTableList.IndexOf("ktv_Version") >= 0)
            {
                try
                {
                    OleDbCommand[] cmds =
                    {
                        new OleDbCommand("drop table ktv_Version", conn),
                    };

                    foreach (OleDbCommand cmd in cmds)
                    {
                        cmd.ExecuteNonQuery();
                    }
                }
                catch
                {
                    UpdateError = true;
                    this.BeginInvoke((Action) delegate()
                    {
                        SongMaintenance_DBVerTooltip_Label.Text = "移除 ktv_Version 資料表失敗,已還原為原本的資料庫檔案。";
                    });
                }
            }

            if (!UpdateError)
            {
                DataTable dt = new DataTable();

                OleDbCommand[] Scmds =
                {
                    new OleDbCommand("select * from ktv_Song",      conn),
                    new OleDbCommand("select * from ktv_Singer",    conn),
                    new OleDbCommand("select * from ktv_Phonetics", conn),
                    new OleDbCommand("select * from ktv_Langauage", conn),
                };

                foreach (OleDbCommand cmd in Scmds)
                {
                    OleDbDataReader Reader = cmd.ExecuteReader();
                    if (dt.Rows.Count == 0)
                    {
                        dt = Reader.GetSchemaTable();
                    }
                    else
                    {
                        foreach (DataRow row in Reader.GetSchemaTable().Rows)
                        {
                            dt.ImportRow(row);
                        }
                    }
                    Reader.Close();
                }

                bool UpdateKtvSong      = false;
                bool UpdateKtvSinger    = false;
                bool UpdatePhonetics    = false;
                bool UpdateLangauage    = true;
                bool RemoveGodLiuColumn = false;

                List <string> GodLiuColumnlist = new List <string>();

                foreach (DataRow row in dt.AsEnumerable())
                {
                    switch (row["ColumnName"].ToString())
                    {
                    case "Song_SongName":
                        if (row["ColumnSize"].ToString() != "80")
                        {
                            UpdateKtvSong = true;
                        }
                        break;

                    case "Song_Singer":
                        if (row["ColumnSize"].ToString() != "60")
                        {
                            UpdateKtvSong = true;
                        }
                        break;

                    case "Song_Spell":
                        if (row["ColumnSize"].ToString() != "80")
                        {
                            UpdateKtvSong = true;
                        }
                        break;

                    case "Song_FileName":
                        if (row["ColumnSize"].ToString() != "255")
                        {
                            UpdateKtvSong = true;
                        }
                        break;

                    case "Song_SpellNum":
                        if (row["ColumnSize"].ToString() != "80")
                        {
                            UpdateKtvSong = true;
                        }
                        break;

                    case "Song_PenStyle":
                        if (row["ColumnSize"].ToString() != "80")
                        {
                            UpdateKtvSong = true;
                        }
                        break;

                    case "Singer_Name":
                    case "Singer_Spell":
                    case "Singer_SpellNum":
                    case "Singer_PenStyle":
                        if (row["ColumnSize"].ToString() != "60")
                        {
                            UpdateKtvSinger = true;
                        }
                        break;

                    case "PenStyle":
                        if (row["ColumnSize"].ToString() != "40")
                        {
                            UpdatePhonetics = true;
                        }
                        break;

                    case "Langauage_KeyWord":
                        UpdateLangauage = false;
                        break;

                    case "Song_SongNameFuzzy":
                    case "Song_SingerFuzzy":
                    case "Song_FuzzyVer":
                    case "DLspace":
                    case "Epasswd":
                    case "imgpath":
                    case "cashboxsongid":
                    case "cashboxdat":
                    case "holidaysongid":
                        RemoveGodLiuColumn = true;
                        GodLiuColumnlist.Add(row["ColumnName"].ToString());
                        break;
                    }
                }
                dt.Dispose();
                dt = null;

                string       UpdateSqlStr = "";
                OleDbCommand UpdateCmd    = new OleDbCommand();

                if (UpdateKtvSong)
                {
                    UpdateSqlStr = "select * into ktv_Song_temp from ktv_Song";
                    UpdateCmd    = new OleDbCommand(UpdateSqlStr, conn);
                    UpdateCmd.ExecuteNonQuery();

                    UpdateSqlStr = "delete * from ktv_Song";
                    UpdateCmd    = new OleDbCommand(UpdateSqlStr, conn);
                    UpdateCmd.ExecuteNonQuery();

                    OleDbCommand[] Updatecmds =
                    {
                        new OleDbCommand("alter table ktv_Song alter column Song_SongName TEXT(80) WITH COMPRESSION",  conn),
                        new OleDbCommand("alter table ktv_Song alter column Song_Singer TEXT(60) WITH COMPRESSION",    conn),
                        new OleDbCommand("alter table ktv_Song alter column Song_Spell TEXT(80) WITH COMPRESSION",     conn),
                        new OleDbCommand("alter table ktv_Song alter column Song_FileName TEXT(255) WITH COMPRESSION", conn),
                        new OleDbCommand("alter table ktv_Song alter column Song_SpellNum TEXT(80) WITH COMPRESSION",  conn),
                        new OleDbCommand("alter table ktv_Song alter column Song_PenStyle TEXT(80) WITH COMPRESSION",  conn)
                    };

                    try
                    {
                        foreach (OleDbCommand cmd in Updatecmds)
                        {
                            cmd.ExecuteNonQuery();
                        }

                        UpdateSqlStr = "insert into ktv_Song select * from ktv_Song_temp";
                        UpdateCmd    = new OleDbCommand(UpdateSqlStr, conn);
                        UpdateCmd.ExecuteNonQuery();

                        UpdateSqlStr = "drop table ktv_Song_temp";
                        UpdateCmd    = new OleDbCommand(UpdateSqlStr, conn);
                        UpdateCmd.ExecuteNonQuery();
                    }
                    catch
                    {
                        UpdateError = true;
                        this.BeginInvoke((Action) delegate()
                        {
                            SongMaintenance_DBVerTooltip_Label.Text = "更新歌曲資料表失敗,已還原為原本的資料庫檔案。";
                        });
                    }
                }

                if (UpdateKtvSinger)
                {
                    OleDbCommand[] Updatecmds =
                    {
                        new OleDbCommand("alter table ktv_Singer alter column Singer_Name TEXT(60) WITH COMPRESSION",     conn),
                        new OleDbCommand("alter table ktv_Singer alter column Singer_Spell TEXT(60) WITH COMPRESSION",    conn),
                        new OleDbCommand("alter table ktv_Singer alter column Singer_SpellNum TEXT(60) WITH COMPRESSION", conn),
                        new OleDbCommand("alter table ktv_Singer alter column Singer_PenStyle TEXT(60) WITH COMPRESSION", conn)
                    };

                    try
                    {
                        foreach (OleDbCommand cmd in Updatecmds)
                        {
                            cmd.ExecuteNonQuery();
                        }
                    }
                    catch
                    {
                        UpdateError = true;
                        this.BeginInvoke((Action) delegate()
                        {
                            SongMaintenance_DBVerTooltip_Label.Text = "更新歌手資料表失敗,已還原為原本的資料庫檔案。";
                        });
                    }
                }

                if (UpdatePhonetics)
                {
                    OleDbCommand[] Updatecmds =
                    {
                        new OleDbCommand("alter table ktv_Phonetics alter column PenStyle TEXT(40) WITH COMPRESSION", conn)
                    };

                    try
                    {
                        foreach (OleDbCommand cmd in Updatecmds)
                        {
                            cmd.ExecuteNonQuery();
                        }
                    }
                    catch
                    {
                        UpdateError = true;
                        this.BeginInvoke((Action) delegate()
                        {
                            SongMaintenance_DBVerTooltip_Label.Text = "更新拼音資料表失敗,已還原為原本的資料庫檔案。";
                        });
                    }
                }

                if (UpdateLangauage)
                {
                    OleDbCommand[] Updatecmds =
                    {
                        new OleDbCommand("alter table ktv_Langauage add column Langauage_KeyWord TEXT(255) WITH COMPRESSION", conn)
                    };

                    try
                    {
                        foreach (OleDbCommand cmd in Updatecmds)
                        {
                            cmd.ExecuteNonQuery();
                        }
                    }
                    catch
                    {
                        UpdateError = true;
                        this.BeginInvoke((Action) delegate()
                        {
                            SongMaintenance_DBVerTooltip_Label.Text = "更新語系資料表失敗,已還原為原本的資料庫檔案。";
                        });
                    }
                }

                if (RemoveGodLiuColumn)
                {
                    foreach (string GodLiuColumn in GodLiuColumnlist)
                    {
                        switch (GodLiuColumn)
                        {
                        case "Song_SongNameFuzzy":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column Song_SongNameFuzzy";
                            break;

                        case "Song_SingerFuzzy":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column Song_SingerFuzzy";
                            break;

                        case "Song_FuzzyVer":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column Song_FuzzyVer";
                            break;

                        case "DLspace":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column DLspace";
                            break;

                        case "Epasswd":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column Epasswd";
                            break;

                        case "imgpath":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column imgpath";
                            break;

                        case "cashboxsongid":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column cashboxsongid";
                            break;

                        case "cashboxdat":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column cashboxdat";
                            break;

                        case "holidaysongid":
                            GodLiuColumnDropSqlStr = "alter table ktv_Song drop column holidaysongid";
                            break;
                        }
                        GodLiuColumnDropcmd = new OleDbCommand(GodLiuColumnDropSqlStr, conn);
                        GodLiuColumnDropcmd.ExecuteNonQuery();
                    }
                }
                conn.Close();
            }

            if (UpdateError)
            {
                File.Copy(SongDBBackupFile, Global.CrazyktvDatabaseFile, true);
            }
            else
            {
                conn = CommonFunc.OleDbOpenConn(Global.CrazyktvSongMgrDatabaseFile, "");
                SongDBVerUpdatecmdSqlStr = "update ktv_Version set SongDB = @SongDB where Id = @Id";
                SongDBVerUpdatecmd       = new OleDbCommand(SongDBVerUpdatecmdSqlStr, conn);
                SongDBVerUpdatecmd.Parameters.AddWithValue("@SongDB", Global.CrazyktvSongDBVer);
                SongDBVerUpdatecmd.Parameters.AddWithValue("@Id", "1");
                SongDBVerUpdatecmd.ExecuteNonQuery();
                SongDBVerUpdatecmd.Parameters.Clear();
                conn.Close();

                CommonFunc.CompactAccessDB("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Global.CrazyktvDatabaseFile + ";", Global.CrazyktvDatabaseFile);

                string VersionQuerySqlStr = "select * from ktv_Version";
                using (DataTable dt = CommonFunc.GetOleDbDataTable(Global.CrazyktvSongMgrDatabaseFile, VersionQuerySqlStr, ""))
                {
                    if (dt.Rows.Count > 0)
                    {
                        foreach (DataRow row in dt.Rows)
                        {
                            Global.CrazyktvSongDBVer = row["SongDB"].ToString();
                            Global.CashboxUpdDate    = DateTime.Parse(row["CashboxUpdDate"].ToString());
                        }
                    }
                }

                this.BeginInvoke((Action) delegate()
                {
                    Global.TimerEndTime = DateTime.Now;

                    SongMaintenance_DBVer1Value_Label.Text = Global.CrazyktvSongDBVer + " 版";
                    Cashbox_UpdDateValue_Label.Text        = (CultureInfo.CurrentCulture.Name == "zh-TW") ? Global.CashboxUpdDate.ToLongDateString() : Global.CashboxUpdDate.ToShortDateString();
                    Cashbox_UpdDate_Button.Enabled         = Cashbox.GetUpdDateButtonEnableStatus();

                    SongMaintenance_DBVerTooltip_Label.Text = "";
                    SongMaintenance_Tooltip_Label.Text      = "已完成歌庫版本更新,共花費 " + (long)(Global.TimerEndTime - Global.TimerStartTime).TotalSeconds + " 秒完成。";
                });
                SongDBUpdate_UpdateFinish();
            }
        }
 public DeleteTicketPage(ref Cashbox cashbox)
 {
     this.cashbox = cashbox;
     InitializeComponent();
 }
 public AddPerformacePage(ref Cashbox cashbox)
 {
     this.cashbox = cashbox;
     InitializeComponent();
 }
 public void TestNegativeDebit()
 {
     Cashbox account = new Cashbox();
     account.Debit(-1);
 }
Exemplo n.º 28
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            string CurVer = " v" + FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileMajorPart + "." +
                            FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileMinorPart + "." +
                            FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileBuildPart;

            if (FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FilePrivatePart > 0)
            {
                CurVer += "." + FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FilePrivatePart;
            }

            this.Text += CurVer;

            if (CommonFunc.IsAdministrator())
            {
                this.Text += " (系統管理員)";
                SongAdd_Tooltip_Label.Text = "請勿使用管理員身份執行加歌程式,否則將無法用檔案總管來拖曳檔案。";
            }



            #if DEBUG
            Cashbox_EditMode_CheckBox.Visible = true;
            #else
            Debug_TabPage.Hide();
            MainTabControl.TabPages.Remove(Debug_TabPage);
            #endif

            Global.DPIScalingFactor = Common_GetDPIScalingFactor();
            SongAddResult_SplitContainer.SplitterDistance = Convert.ToInt32(SongAddResult_SplitContainer.SplitterDistance * Global.DPIScalingFactor);

            // 檢查加歌程式參考資料庫檔案
            if (!File.Exists(Global.CrazyktvSongMgrDatabaseFile))
            {
                if (File.Exists(Application.StartupPath + @"\CrazySongMgr.mdb"))
                {
                    try
                    {
                        File.Move(Application.StartupPath + @"\CrazySongMgr.mdb", Global.CrazyktvSongMgrDatabaseFile);
                    }
                    catch
                    {
                        if (MessageBox.Show("請將 CrazySongMgr.mdb 移至 SongMgr 資料夾裡。" + Environment.NewLine + "或是重新下載並執行 CrazyKTV_WebUpdater.exe 來重建所有檔案。", @"SongMgr\CrazySongMgr.mdb 參考資料庫檔案不存在!", MessageBoxButtons.OK, MessageBoxIcon.Error) == DialogResult.OK)
                        {
                            Application.Exit();
                        }
                    }
                }
                else
                {
                    if (MessageBox.Show("請將 CrazySongMgr.mdb 移至 SongMgr 資料夾裡。" + Environment.NewLine + "或是重新下載並執行 CrazyKTV_WebUpdater.exe 來重建所有檔案。", @"SongMgr\CrazySongMgr.mdb 參考資料庫檔案不存在!", MessageBoxButtons.OK, MessageBoxIcon.Error) == DialogResult.OK)
                    {
                        Application.Exit();
                    }
                }
            }

            // 歌庫版本資訊
            if (!File.Exists(Global.CrazyktvSongDBUpdateFile))
            {
                if (!Directory.Exists(Application.StartupPath + @"\SongMgr\Update"))
                {
                    Directory.CreateDirectory(Application.StartupPath + @"\SongMgr\Update");
                }
                CommonFunc.CreateConfigXmlFile(Global.CrazyktvSongDBUpdateFile);
                CommonFunc.SaveConfigXmlFile(Global.CrazyktvSongDBUpdateFile, "SongDBVer", Global.CrazyktvSongDBVer);
            }

            // CrazyKTV 設定
            if (!File.Exists(Global.CrazyktvCfgFile))
            {
                CommonFunc.CreateConfigXmlFile(Global.CrazyktvCfgFile);
            }

            // 載入歌庫設定
            if (!File.Exists(Global.SongMgrCfgFile))
            {
                CommonFunc.CreateConfigXmlFile(Global.SongMgrCfgFile);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvDatabaseFile", Global.CrazyktvDatabaseFile);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSupportFormat", Global.SongMgrSupportFormat);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrDestFolder", Global.SongMgrDestFolder);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSongAddMode", Global.SongMgrSongAddMode);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrChorusMerge", Global.SongMgrChorusMerge);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrMaxDigitCode", Global.SongMgrMaxDigitCode);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrLangCode", Global.SongMgrLangCode);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSongType", Global.SongMgrSongType);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSongInfoSeparate", Global.SongMgrSongInfoSeparate);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrChorusSeparate", Global.SongMgrChorusSeparate);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSongLang", Global.SongAddDefaultSongLang);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSingerType", Global.SongAddDefaultSingerType);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSongTrack", Global.SongAddDefaultSongTrack);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSongType", Global.SongAddDefaultSongType);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSongVolume", Global.SongAddDefaultSongVolume);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddSpecialStr", Global.SongAddSpecialStr);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrFolderStructure", Global.SongMgrFolderStructure);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrFileStructure", Global.SongMgrFileStructure);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSongTrackMode", Global.SongMgrSongTrackMode);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddSongIdentificationMode", Global.SongAddSongIdentificationMode);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddDupSongMode", Global.SongAddDupSongMode);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvSongLangStr", string.Join(",", Global.CrazyktvSongLangList));
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvSongLangKeyWord", string.Join("|", Global.CrazyktvSongLangKeyWordList));
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrBackupRemoveSong", Global.SongMgrBackupRemoveSong);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddEngSongNameFormat", Global.SongAddEngSongNameFormat);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgAlwaysOnTop", Global.MainCfgAlwaysOnTop);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgHideSongDBConverterTabPage", Global.MainCfgHideSongDBConverterTabPage);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgHideSongAddResultTabPage", Global.MainCfgHideSongAddResultTabPage);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgHideSongLogTabPage", Global.MainCfgHideSongLogTabPage);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgBackupRemoveSongDays", Global.MainCfgBackupRemoveSongDays);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "DBVerEnableDBVerUpdate", Global.DBVerEnableDBVerUpdate);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgUIScale", Global.MainCfgUIScale);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMaintenanceEnableMultiSongPath", Global.SongMaintenanceEnableMultiSongPath);           // 已無用處
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMaintenanceMultiSongPath", string.Join(",", Global.SongMaintenanceMultiSongPathList)); // 已無用處
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddUseCustomSongID", Global.SongAddUseCustomSongID);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgUIFont", Global.MainCfgUIFont);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgEnableUIScale", Global.MainCfgEnableUIScale);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrCustomSingerTypeStructure", Global.SongMgrCustomSingerTypeStructure);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgEnableAutoUpdate", Global.MainCfgEnableAutoUpdate);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongAddEnableConvToTC", Global.SongAddEnableConvToTC);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrEnableMonitorFolders", Global.SongMgrEnableMonitorFolders);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrMonitorFolders", string.Join(",", Global.SongMgrMonitorFoldersList));
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SingerMgrSyncSongSinger", Global.SingerMgrSyncSongSinger);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSingerGroup", Global.SongMgrSingerGroup);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSingerGroup", Global.SongMgrSingerGroup);
                CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "MainCfgHideApplyCashboxIdButton", Global.MainCfgHideApplyCashboxIdButton);
            }

            List <string> list = new List <string>()
            {
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvDatabaseFile"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSupportFormat"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrDestFolder"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSongAddMode"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrChorusMerge"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrMaxDigitCode"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrLangCode"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSongType"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSongInfoSeparate"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrChorusSeparate"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSongLang"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSingerType"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSongTrack"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSongType"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddDefaultSongVolume"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddSpecialStr"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrFolderStructure"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrFileStructure"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSongTrackMode"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddSongIdentificationMode"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddDupSongMode"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvSongLangStr"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvSongLangKeyWord"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrBackupRemoveSong"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddEngSongNameFormat"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgAlwaysOnTop"),
                CommonFunc.LoadConfigXmlFile(Global.CrazyktvSongDBUpdateFile, "SongDBVer"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgHideSongDBConverterTabPage"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgHideSongAddResultTabPage"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgHideSongLogTabPage"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgBackupRemoveSongDays"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SingerMgrDefaultSingerDataTable"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "DBVerEnableDBVerUpdate"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgUIScale"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMaintenanceEnableMultiSongPath"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMaintenanceMultiSongPath"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddUseCustomSongID"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgUIFont"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgEnableUIScale"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrCustomSingerTypeStructure"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgEnableAutoUpdate"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongAddEnableConvToTC"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrEnableMonitorFolders"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrMonitorFolders"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SingerMgrSyncSongSinger"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "SongMgrSingerGroup"),
                CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "MainCfgHideApplyCashboxIdButton")
            };

            foreach (TabPage MainTabPage in MainTabControl.TabPages)
            {
                MainTabPage.Show();
            }

            foreach (TabPage SongQueryTabPage in SongQuery_TabControl.TabPages)
            {
                SongQueryTabPage.Show();
            }

            foreach (TabPage SongMgrCfgTabPage in SongMgrCfg_TabControl.TabPages)
            {
                SongMgrCfgTabPage.Show();
            }

            foreach (TabPage SongMaintenanceTabPage in SongMaintenance_TabControl.TabPages)
            {
                SongMaintenanceTabPage.Show();
            }

            foreach (TabPage CashboxTabPage in Cashbox_TabControl.TabPages)
            {
                CashboxTabPage.Show();
            }

            if (list[21] != "")
            {
                Global.CrazyktvSongLangList = new List <string>(list[21].Split(','));
            }
            if (Global.CrazyktvSongLangList.Count < 10)
            {
                Global.CrazyktvSongLangList = new List <string>()
                {
                    "國語", "台語", "粵語", "日語", "英語", "客語", "原住民語", "韓語", "兒歌", "其它"
                }
            }
            ;

            if (list[0] != "")
            {
                Global.CrazyktvDatabaseFile = list[0];
            }
            SongMgrCfg_DBFile_TextBox.Text = Global.CrazyktvDatabaseFile;

            if (list[1] != "")
            {
                Global.SongMgrSupportFormat = list[1];
            }
            SongMgrCfg_SupportFormat_TextBox.Text = Global.SongMgrSupportFormat;

            if (list[2] != "")
            {
                Global.SongMgrDestFolder = list[2];
            }
            SongMgrCfg_DestFolder_TextBox.Text = Global.SongMgrDestFolder;

            if (list[4] != "")
            {
                Global.SongMgrChorusMerge = list[4];
            }
            SongMgrCfg_CrtchorusMerge_CheckBox.Checked = bool.Parse(Global.SongMgrChorusMerge);

            if (list[5] != "")
            {
                Global.SongMgrMaxDigitCode = list[5];
            }
            SongMgrCfg_MaxDigitCode_ComboBox.DataSource    = SongMgrCfg.GetMaxDigitCodeList();
            SongMgrCfg_MaxDigitCode_ComboBox.DisplayMember = "Display";
            SongMgrCfg_MaxDigitCode_ComboBox.ValueMember   = "Value";
            SongMgrCfg_MaxDigitCode_ComboBox.SelectedValue = int.Parse(Global.SongMgrMaxDigitCode);

            if (list[6] != "")
            {
                Global.SongMgrLangCode = list[6]; SongMgrCfg_LoadSongMgrLangCode();
            }
            else
            {
                SongMgrCfg_RefreshSongMgrLangCode();
            }

            if (list[7] != "")
            {
                Global.SongMgrSongType = list[7];
            }
            SongMgrCfg_SongType_ListBox.DataSource    = SongMgrCfg.GetSongTypeList();
            SongMgrCfg_SongType_ListBox.DisplayMember = "Display";
            SongMgrCfg_SongType_ListBox.ValueMember   = "Value";

            if (list[8] != "")
            {
                Global.SongMgrSongInfoSeparate = list[8];
            }
            SongMgrCfg_SongInfoSeparate_ComboBox.DataSource    = SongMgrCfg.GetSongInfoSeparateList();
            SongMgrCfg_SongInfoSeparate_ComboBox.DisplayMember = "Display";
            SongMgrCfg_SongInfoSeparate_ComboBox.ValueMember   = "Value";
            SongMgrCfg_SongInfoSeparate_ComboBox.SelectedValue = int.Parse(Global.SongMgrSongInfoSeparate);

            if (list[9] != "")
            {
                Global.SongMgrChorusSeparate = list[9];
            }
            SongMgrCfg_CrtchorusSeparate_ComboBox.DataSource    = SongMgrCfg.GetCrtchorusSeparateList();
            SongMgrCfg_CrtchorusSeparate_ComboBox.DisplayMember = "Display";
            SongMgrCfg_CrtchorusSeparate_ComboBox.ValueMember   = "Value";
            SongMgrCfg_CrtchorusSeparate_ComboBox.SelectedValue = int.Parse(Global.SongMgrChorusSeparate);

            if (list[10] != "")
            {
                Global.SongAddDefaultSongLang = list[10];
            }
            SongAdd_DefaultSongLang_ComboBox.DataSource    = SongAdd.GetDefaultSongInfo("DefaultSongLang", false, false);
            SongAdd_DefaultSongLang_ComboBox.DisplayMember = "Display";
            SongAdd_DefaultSongLang_ComboBox.ValueMember   = "Value";
            SongAdd_DefaultSongLang_ComboBox.SelectedValue = int.Parse(Global.SongAddDefaultSongLang);

            if (list[11] != "")
            {
                Global.SongAddDefaultSingerType = list[11];
            }
            SongAdd_DefaultSingerType_ComboBox.DataSource    = SongAdd.GetDefaultSongInfo("DefaultSingerType", false, false);
            SongAdd_DefaultSingerType_ComboBox.DisplayMember = "Display";
            SongAdd_DefaultSingerType_ComboBox.ValueMember   = "Value";
            SongAdd_DefaultSingerType_ComboBox.SelectedValue = int.Parse(Global.SongAddDefaultSingerType);

            if (list[12] != "")
            {
                Global.SongAddDefaultSongTrack = list[12];
            }
            SongAdd_DefaultSongTrack_ComboBox.DataSource    = SongAdd.GetDefaultSongInfo("DefaultSongTrack", false, false);
            SongAdd_DefaultSongTrack_ComboBox.DisplayMember = "Display";
            SongAdd_DefaultSongTrack_ComboBox.ValueMember   = "Value";
            SongAdd_DefaultSongTrack_ComboBox.SelectedValue = int.Parse(Global.SongAddDefaultSongTrack);

            if (list[13] != "")
            {
                Global.SongAddDefaultSongType = list[13];
            }
            SongAdd_DefaultSongType_ComboBox.DataSource    = SongAdd.GetDefaultSongInfo("DefaultSongType", false, false);
            SongAdd_DefaultSongType_ComboBox.DisplayMember = "Display";
            SongAdd_DefaultSongType_ComboBox.ValueMember   = "Value";
            SongAdd_DefaultSongType_ComboBox.SelectedValue = int.Parse(Global.SongAddDefaultSongType);

            if (list[14] != "")
            {
                Global.SongAddDefaultSongVolume = list[14];
            }
            SongAdd_DefaultSongVolume_TextBox.Text = Global.SongAddDefaultSongVolume;

            if (list[15] != "")
            {
                Global.SongAddSpecialStr = list[15];
            }
            SongAdd_SpecialStr_ListBox.DataSource    = SongAdd.GetDefaultSongInfo("SpecialStr", false, false);
            SongAdd_SpecialStr_ListBox.DisplayMember = "Display";
            SongAdd_SpecialStr_ListBox.ValueMember   = "Value";

            if (list[16] != "")
            {
                Global.SongMgrFolderStructure = list[16];
            }
            SongMgrCfg_FolderStructure_ComboBox.DataSource    = SongMgrCfg.GetFolderStructureList();
            SongMgrCfg_FolderStructure_ComboBox.DisplayMember = "Display";
            SongMgrCfg_FolderStructure_ComboBox.ValueMember   = "Value";
            SongMgrCfg_FolderStructure_ComboBox.SelectedValue = Global.SongMgrFolderStructure;

            if (list[17] != "")
            {
                Global.SongMgrFileStructure = list[17];
            }
            SongMgrCfg_FileStructure_ComboBox.DataSource    = SongMgrCfg.GetFileStructureList();
            SongMgrCfg_FileStructure_ComboBox.DisplayMember = "Display";
            SongMgrCfg_FileStructure_ComboBox.ValueMember   = "Value";
            SongMgrCfg_FileStructure_ComboBox.SelectedValue = Global.SongMgrFileStructure;

            if (list[18] != "")
            {
                Global.SongMgrSongTrackMode = list[18];
            }
            SongMgrCfg_SongTrackMode_CheckBox.Checked = bool.Parse(Global.SongMgrSongTrackMode);
            if (Global.SongMgrSongTrackMode == "True")
            {
                Global.CrazyktvSongTrackWordList = new List <string>()
                {
                    "立體聲", "右聲道 / 音軌2", "左聲道 / 音軌1", "音軌3", "音軌4", "音軌5"
                };
                Global.CrazyktvSongTrackList = new List <string>()
                {
                    "V0", "VR", "VL", "V3", "V4", "V5"
                };
                Global.CrazyktvSongTrackKeyWordList = new List <string>()
                {
                    "v0,立體", "vr,r,右", "vl,l,左", "v3", "v4", "v5"
                };
            }
            else
            {
                Global.CrazyktvSongTrackWordList = new List <string>()
                {
                    "立體聲", "左聲道 / 音軌1", "右聲道 / 音軌2", "音軌3", "音軌4", "音軌5"
                };
                Global.CrazyktvSongTrackList = new List <string>()
                {
                    "V0", "VL", "VR", "V3", "V4", "V5"
                };
                Global.CrazyktvSongTrackKeyWordList = new List <string>()
                {
                    "v0,立體", "vl,l,左", "vr,r,右", "v3", "v4", "v5"
                };
            }

            if (list[19] != "")
            {
                Global.SongAddSongIdentificationMode = list[19];
            }
            SongAdd_SongIdentificationMode_ComboBox.DataSource    = SongAdd.GetSongIdentificationModeList();
            SongAdd_SongIdentificationMode_ComboBox.DisplayMember = "Display";
            SongAdd_SongIdentificationMode_ComboBox.ValueMember   = "Value";
            SongAdd_SongIdentificationMode_ComboBox.SelectedValue = Global.SongAddSongIdentificationMode;

            if (list[20] != "")
            {
                Global.SongAddDupSongMode = list[20];
            }
            SongAdd_DupSongMode_ComboBox.DataSource    = SongAdd.GetDupSongModeList();
            SongAdd_DupSongMode_ComboBox.DisplayMember = "Display";
            SongAdd_DupSongMode_ComboBox.ValueMember   = "Value";
            SongAdd_DupSongMode_ComboBox.SelectedValue = Global.SongAddDupSongMode;

            if (list[22] != "")
            {
                Global.CrazyktvSongLangKeyWordList = new List <string>(list[22].Split('|'));
            }
            else
            {
                string str = CommonFunc.LoadConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvSongLangIDStr");
                Global.CrazyktvSongLangKeyWordList = new List <string>(str.Split('*'));
                if (Global.CrazyktvSongLangKeyWordList.Count < 10)
                {
                    Global.CrazyktvSongLangKeyWordList = new List <string>()
                    {
                        "國語,國", "台語,台,閩南,閩", "粵語,粵,廣東", "日語,日文,日", "英語,英文,英", "客語,客", "原住民語,民謠", "韓語,韓", "兒歌,兒", "其它"
                    };
                }
                else
                {
                    CommonFunc.SaveConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvSongLangKeyWord", string.Join("|", Global.CrazyktvSongLangKeyWordList));
                    CommonFunc.RemoveConfigXmlFile(Global.SongMgrCfgFile, "CrazyktvSongLangIDStr");
                }
            }

            if (list[23] != "")
            {
                Global.SongMgrBackupRemoveSong = list[23];
            }
            SongMgrCfg_BackupRemoveSong_CheckBox.Checked = bool.Parse(Global.SongMgrBackupRemoveSong);

            if (list[24] != "")
            {
                Global.SongAddEngSongNameFormat = list[24];
            }
            SongAdd_EngSongNameFormat_CheckBox.Checked = bool.Parse(Global.SongAddEngSongNameFormat);

            if (list[25] != "")
            {
                Global.MainCfgAlwaysOnTop = list[25];
            }
            MainCfg_AlwaysOnTop_CheckBox.Checked = bool.Parse(Global.MainCfgAlwaysOnTop);

            if (list[26] != "")
            {
                Global.CrazyktvSongDBVer = list[26];
            }

            if (list[27] != "")
            {
                Global.MainCfgHideSongDBConverterTabPage = list[27];
            }
            MainCfg_HideSongDBConvTab_CheckBox.Checked = bool.Parse(Global.MainCfgHideSongDBConverterTabPage);

            if (list[28] != "")
            {
                Global.MainCfgHideSongAddResultTabPage = list[28];
            }
            MainCfg_HideSongAddResultTab_CheckBox.Checked = bool.Parse(Global.MainCfgHideSongAddResultTabPage);

            if (list[29] != "")
            {
                Global.MainCfgHideSongLogTabPage = list[29];
            }
            MainCfg_HideSongLogTab_CheckBox.Checked = bool.Parse(Global.MainCfgHideSongLogTabPage);

            if (list[30] != "")
            {
                Global.MainCfgBackupRemoveSongDays = list[30];
            }
            MainCfg_BackupRemoveSongDays_ComboBox.DataSource    = MainCfg.GetBackupRemoveSongDaysList();
            MainCfg_BackupRemoveSongDays_ComboBox.DisplayMember = "Display";
            MainCfg_BackupRemoveSongDays_ComboBox.ValueMember   = "Value";
            MainCfg_BackupRemoveSongDays_ComboBox.SelectedValue = Global.MainCfgBackupRemoveSongDays;

            if (list[31] != "")
            {
                Global.SingerMgrDefaultSingerDataTable = list[31];
            }
            SingerMgr_DefaultSingerDataTable_ComboBox.DataSource    = SingerMgr.GetDefaultSingerDataTableList();
            SingerMgr_DefaultSingerDataTable_ComboBox.DisplayMember = "Display";
            SingerMgr_DefaultSingerDataTable_ComboBox.ValueMember   = "Value";

            #if DEBUG
            SingerMgr_DefaultSingerDataTable_ComboBox.SelectedValue = (Global.SingerMgrDefaultSingerDataTable == "ktv_Singer") ? 1 : 2;
            #else
            Global.SingerMgrDefaultSingerDataTable = "ktv_Singer";
            SingerMgr_DefaultSingerDataTable_ComboBox.SelectedValue = 1;
            SingerMgr_DefaultSingerDataTable_ComboBox.Enabled       = false;
            #endif

            if (list[32] != "")
            {
                Global.DBVerEnableDBVerUpdate = list[32];
            }
            SongMaintenance_EnableDBVerUpdate_CheckBox.Checked = bool.Parse(Global.DBVerEnableDBVerUpdate);

            if (list[33] != "")
            {
                Global.MainCfgUIScale = list[33];
            }
            MainCfg_UIScale_ComboBox.DataSource    = MainCfg.GetUIScaleList();
            MainCfg_UIScale_ComboBox.DisplayMember = "Display";
            MainCfg_UIScale_ComboBox.ValueMember   = "Value";
            MainCfg_UIScale_ComboBox.SelectedValue = Global.MainCfgUIScale;

            if (list[34] != "")
            {
                Global.SongMaintenanceEnableMultiSongPath = list[34];                 // 已無用處
            }
            SongMaintenance_EnableMultiSongPath_CheckBox.Checked = bool.Parse(Global.SongMaintenanceEnableMultiSongPath);
            SongMaintenance_MultiSongPath_ListBox.Enabled        = bool.Parse(Global.SongMaintenanceEnableMultiSongPath);
            SongMaintenance_MultiSongPath_Button.Enabled         = bool.Parse(Global.SongMaintenanceEnableMultiSongPath);

            if (list[35] != "")
            {
                Global.SongMaintenanceMultiSongPathList = new List <string>(list[35].Split(','));                // 已無用處
            }
            SongMaintenance_MultiSongPath_ListBox.DataSource    = SongMaintenance.GetMultiSongPathList();
            SongMaintenance_MultiSongPath_ListBox.DisplayMember = "Display";
            SongMaintenance_MultiSongPath_ListBox.ValueMember   = "Value";

            if (list[36] != "")
            {
                Global.SongAddUseCustomSongID = list[36];
            }
            SongAdd_UseCustomSongID_CheckBox.Checked = bool.Parse(Global.SongAddUseCustomSongID);

            if (list[37] != "")
            {
                Global.MainCfgUIFont = list[37];
            }
            MainCfg_UIFont_ComboBox.DataSource    = MainCfg.GetUIFontList();
            MainCfg_UIFont_ComboBox.DisplayMember = "Display";
            MainCfg_UIFont_ComboBox.ValueMember   = "Value";
            MainCfg_UIFont_ComboBox.Text          = Global.MainCfgUIFont;

            if (list[38] != "")
            {
                Global.MainCfgEnableUIScale = list[38];
            }
            MainCfg_EnableUIScale_CheckBox.Checked = bool.Parse(Global.MainCfgEnableUIScale);

            if (list[39] != "")
            {
                Global.SongMgrCustomSingerTypeStructure = list[39];
            }
            SongMgrCfg_SetCustomSingerTypeStructureCbox();

            if (list[40] != "")
            {
                Global.MainCfgEnableAutoUpdate = list[40];
            }
            MainCfg_EnableAutoUpdate_CheckBox.Checked = bool.Parse(Global.MainCfgEnableAutoUpdate);

            if (list[41] != "")
            {
                Global.SongAddEnableConvToTC = list[41];
            }
            SongAdd_EnableConvToTC_CheckBox.Checked = bool.Parse(Global.SongAddEnableConvToTC);

            if (list[42] != "")
            {
                Global.SongMgrEnableMonitorFolders = list[42];
            }
            SongMgrCfg_MonitorFolders_CheckBox.Checked = bool.Parse(Global.SongMgrEnableMonitorFolders);

            if (list[43] != "")
            {
                Global.SongMgrMonitorFoldersList = new List <string>(list[43].Split(','));
            }

            if (list[44] != "")
            {
                Global.SingerMgrSyncSongSinger = list[44];
            }
            SingerMgr_EditSyncSongSinger_CheckBox.Checked = bool.Parse(Global.SingerMgrSyncSongSinger);

            if (list[45] != "")
            {
                Global.SongMgrSingerGroup = list[45];
            }
            SongMgrCfg_SingerGroup_ListBox.DataSource    = SongMgrCfg.GetSingerGroupList();
            SongMgrCfg_SingerGroup_ListBox.DisplayMember = "Display";
            SongMgrCfg_SingerGroup_ListBox.ValueMember   = "Value";

            if (list[46] != "")
            {
                Global.MainCfgHideApplyCashboxIdButton = list[46];
            }
            MainCfg_HideApplyCashboxIdButton_CheckBox.Checked = bool.Parse(Global.MainCfgHideApplyCashboxIdButton);

            if (list[3] != "")
            {
                Global.SongMgrSongAddMode = list[3];
            }
            SongMgrCfg_SongAddMode_ComboBox.DataSource    = SongMgrCfg.GetSongAddModeList();
            SongMgrCfg_SongAddMode_ComboBox.DisplayMember = "Display";
            SongMgrCfg_SongAddMode_ComboBox.ValueMember   = "Value";
            SongMgrCfg_SongAddMode_ComboBox.SelectedValue = int.Parse(Global.SongMgrSongAddMode);

            // 建立歌曲操作記錄資料表
            Global.SongLogDT = new DataTable();
            Global.SongLogDT.Columns.Add(new DataColumn("Display", typeof(string)));
            Global.SongLogDT.Columns.Add(new DataColumn("Value", typeof(int)));

            // 檢查程式更新
            Common_CheckSongMgrVer();

            // 檢查資料庫檔案是否為舊版資料庫
            SongDBUpdate_CheckDatabaseFile();

            // 初始化所需資料
            Common_InitializeSongData(true, true, true, true, true);

            // 歌庫監視
            SongMgrCfg_MonitorFolders_CheckBox.Enabled = false;
            foreach (string MonitorFolder in Global.SongMgrMonitorFoldersList)
            {
                if (MonitorFolder != "")
                {
                    SongMgrCfg_MonitorFolders_CheckBox.Enabled = true;
                }
            }
            if (!SongMgrCfg_MonitorFolders_CheckBox.Enabled)
            {
                SongMgrCfg_MonitorFolders_CheckBox.Checked = false;
            }
            SongMonitor_CheckCurSong();

            // 歌曲查詢 - 載入下拉選單清單及設定
            SongQuery_QueryType_ComboBox.DataSource    = SongQuery.GetSongQueryTypeList();
            SongQuery_QueryType_ComboBox.DisplayMember = "Display";
            SongQuery_QueryType_ComboBox.ValueMember   = "Value";
            SongQuery_QueryType_ComboBox.SelectedValue = 1;

            SongQuery_QueryFilter_ComboBox.DataSource    = SongQuery.GetSongQueryFilterList(Global.CrazyktvSongLangList);
            SongQuery_QueryFilter_ComboBox.DisplayMember = "Display";
            SongQuery_QueryFilter_ComboBox.ValueMember   = "Value";
            SongQuery_QueryFilter_ComboBox.SelectedValue = 1;

            SongQuery_FuzzyQuery_CheckBox.Checked      = bool.Parse(Global.SongQueryFuzzyQuery);
            SongQuery_SynonymousQuery_CheckBox.Checked = Global.SongQuerySynonymousQuery;

            SongQuery_ExceptionalQuery_ComboBox.DataSource    = SongQuery.GetSongQueryExceptionalList();
            SongQuery_ExceptionalQuery_ComboBox.DisplayMember = "Display";
            SongQuery_ExceptionalQuery_ComboBox.ValueMember   = "Value";
            SongQuery_ExceptionalQuery_ComboBox.SelectedValue = 1;

            // 歌手管理 - 載入下拉選單清單及設定
            SingerMgr_QueryType_ComboBox.DataSource    = SingerMgr.GetSingerTypeList(false);
            SingerMgr_QueryType_ComboBox.DisplayMember = "Display";
            SingerMgr_QueryType_ComboBox.ValueMember   = "Value";
            SingerMgr_QueryType_ComboBox.SelectedValue = 1;
            SingerMgr_QueryValue_TextBox.ImeMode       = ImeMode.OnHalf;

            SingerMgr_SingerAddType_ComboBox.DataSource    = SingerMgr.GetSingerTypeList(false);
            SingerMgr_SingerAddType_ComboBox.DisplayMember = "Display";
            SingerMgr_SingerAddType_ComboBox.ValueMember   = "Value";
            SingerMgr_SingerAddType_ComboBox.SelectedValue = 1;
            SingerMgr_SingerAddName_TextBox.ImeMode        = ImeMode.OnHalf;

            SingerMgr_SingerLastName_ComboBox.DataSource    = SingerMgr.GetSingerLastNameList();
            SingerMgr_SingerLastName_ComboBox.DisplayMember = "Display";
            SingerMgr_SingerLastName_ComboBox.ValueMember   = "Value";
            SingerMgr_SingerLastName_ComboBox.SelectedValue = 1;

            // 錢櫃資料 - 載入下拉選單清單及設定
            Cashbox_QueryType_ComboBox.DataSource    = Cashbox.GetQueryTypeList();
            Cashbox_QueryType_ComboBox.DisplayMember = "Display";
            Cashbox_QueryType_ComboBox.ValueMember   = "Value";
            Cashbox_QueryType_ComboBox.SelectedValue = 1;

            Cashbox_QueryFilter_ComboBox.DataSource    = Cashbox.GetQueryFilterList(Global.CashboxSongLangList);
            Cashbox_QueryFilter_ComboBox.DisplayMember = "Display";
            Cashbox_QueryFilter_ComboBox.ValueMember   = "Value";
            Cashbox_QueryFilter_ComboBox.SelectedValue = 1;

            Cashbox_OtherQuery_ComboBox.DataSource    = Cashbox.GetOtherQueryList();
            Cashbox_OtherQuery_ComboBox.DisplayMember = "Display";
            Cashbox_OtherQuery_ComboBox.ValueMember   = "Value";
            Cashbox_OtherQuery_ComboBox.SelectedValue = 1;

            Cashbox_DateQuery_ComboBox.DataSource    = Cashbox.GetDateQueryList();
            Cashbox_DateQuery_ComboBox.DisplayMember = "Display";
            Cashbox_DateQuery_ComboBox.ValueMember   = "Value";
            Cashbox_DateQuery_ComboBox.SelectedValue = 1;

            Cashbox_FuzzyQuery_CheckBox.Checked      = Global.CashboxFuzzyQuery;
            Cashbox_SynonymousQuery_CheckBox.Checked = Global.CashboxSynonymousQuery;

            // 歌庫轉換 - 載入下拉選單清單
            SongDBConverter_SrcDBType_ComboBox.DataSource    = SongDBConverter.GetSrcDBTypeList();
            SongDBConverter_SrcDBType_ComboBox.DisplayMember = "Display";
            SongDBConverter_SrcDBType_ComboBox.ValueMember   = "Value";
            SongDBConverter_SrcDBType_ComboBox.SelectedValue = 1;

            // 歌庫轉換 - 載入說明
            SongDBConverter_SetRtfText("來源資料庫: ", "請選擇你要轉換的點歌軟體歌曲資料庫檔案。" + Environment.NewLine);
            SongDBConverter_SetRtfText("資料庫類型: ", "請選擇你要轉換的點歌軟體資料庫類型。" + Environment.NewLine);
            SongDBConverter_SetRtfText("目的資料庫: ", "請選擇本工具所附的 CrazySongEmpty.mdb 空白資料庫檔案。" + Environment.NewLine);

            // Debug - 載入下拉選單清單
            #if DEBUG
            Debug_ConfigData_ComboBox.DataSource    = Debug.GetConfigDataList();
            Debug_ConfigData_ComboBox.DisplayMember = "Display";
            Debug_ConfigData_ComboBox.ValueMember   = "Value";
            Debug_ConfigData_ComboBox.SelectedValue = 1;
            #endif

            if (!Global.CrazyktvDatabaseStatus)
            {
                if (MainTabControl.SelectedIndex != 4)
                {
                    MainTabControl.SelectedIndex = 3;
                }
            }
            else
            {
                MainTabControl_SelectedIndexChanged(new TabControl(), new EventArgs());
            }

            if (Global.MainCfgEnableUIScale == "True")
            {
                Common_ScalingUI();
            }

            Global.SongMgrInitializeStatus = true;
        }
 public PerformanceListPage(ref Cashbox cashbox)
 {
     this.cashbox = cashbox;
     InitializeComponent();
 }
 public void TestGoToNegative()
 {
     Cashbox account = new Cashbox();
     account.Debit(5);
     Assert.AreEqual(account.Balance, -5);
 }
 public void TestNegativeCredit()
 {
     Cashbox account = new Cashbox();
     account.Credit(-1);
 }
Exemplo n.º 32
0
        // 頁籤切換處理
        private void MainTabControl_SelectedIndexChanged(object sender, EventArgs e)
        {
            Label[] Tooltip_Label =
            {
                SongQuery_QueryStatus_Label,
                SongAdd_Tooltip_Label,
                SingerMgr_Tooltip_Label,
                SongMgrCfg_Tooltip_Label,
                SongMaintenance_Tooltip_Label,
                Cashbox_QueryStatus_Label
            };

            int i = -1;

            switch (MainTabControl.SelectedTab.Name)
            {
            case "SongQuery_TabPage":
                i = 0;
                SongQuery_QueryValue_TextBox.Focus();
                SongQuery_QueryValue_TextBox.ImeMode = ImeMode.OnHalf;
                break;

            case "SongAdd_TabPage":
                i = 1;
                break;

            case "SingerMgr_TabPage":
                i = 2;
                break;

            case "SongMgrCfg_TabPage":
                i = 3;
                break;

            case "SongMaintenance_TabPage":
                i = 4;
                switch (SongMaintenance_TabControl.SelectedTab.Name)
                {
                case "SongMaintenance_CustomLang_TabPage":
                case "SongMaintenance_MultiSongPath_TabPage":
                case "SongMaintenance_DBVer_TabPage":
                    if (SongMaintenance_TabControl.Enabled == true)
                    {
                        SongMaintenance_Save_Button.Enabled = true;
                    }
                    break;

                default:
                    SongMaintenance_Save_Button.Enabled = false;
                    break;
                }
                break;

            case "Cashbox_TabPage":
                i = 5;
                Cashbox_QueryValue_TextBox.Focus();
                Cashbox_QueryValue_TextBox.ImeMode = ImeMode.OnHalf;
                Cashbox_UpdDate_Button.Enabled     = Cashbox.GetUpdDateButtonEnableStatus();
                break;
            }

            if (i >= 0)
            {
                if (!Global.CrazyktvDatabaseStatus)
                {
                    if (!File.Exists(Global.CrazyktvDatabaseFile))
                    {
                        Tooltip_Label[i].Text = "CrazyKTV 資料庫檔案不存在!";
                    }
                    else if (!File.Exists(Global.CrazyktvSongMgrDatabaseFile))
                    {
                        Tooltip_Label[i].Text = "加歌程式參考資料庫檔案不存在!";
                    }
                    else if (Global.CrazyktvDatabaseError)
                    {
                        Tooltip_Label[i].Text = "資料庫檔案不是 CrazyKTV 資料庫!";
                    }
                    else if (Global.SongMgrDatabaseError)
                    {
                        Tooltip_Label[i].Text = "加歌程式參考資料庫不是最新版本!";
                    }
                    else if (Global.CrazyktvDatabaseIsOld)
                    {
                        Tooltip_Label[i].Text = "資料庫檔案為舊版本!";
                    }
                    else if (!Global.CrazyktvDatabaseMaxDigitCode)
                    {
                        Tooltip_Label[i].Text = "歌庫編碼混雜 5 及 6 位數編碼!";
                    }
                    else if (!Directory.Exists(Global.SongMgrDestFolder))
                    {
                        Tooltip_Label[i].Text = "請先設定歌庫資料夾!";
                    }
                }
                else
                {
                    List <string> ErrorTextList = new List <string>()
                    {
                        "CrazyKTV 資料庫檔案不存在!",
                        "加歌程式參考資料庫檔案不存在!",
                        "資料庫檔案不是 CrazyKTV 資料庫!",
                        "加歌程式參考資料庫不是最新版本!",
                        "資料庫檔案為舊版本!",
                        "歌庫編碼混雜 5 及 6 位數編碼!",
                        "請先設定歌庫資料夾!"
                    };
                    if (ErrorTextList.IndexOf(Tooltip_Label[i].Text) >= 0)
                    {
                        Tooltip_Label[i].Text = "";
                    }
                    ErrorTextList.Clear();
                }
            }
        }
Exemplo n.º 33
0
 public DeletePerfomancePage(ref Cashbox cashbox)
 {
     this.cashbox = cashbox;
     InitializeComponent();
 }