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); }
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); }
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; }
protected void CashboxIsSelected(Cashbox beforeValue, Cashbox actualValue) { if (beforeValue != null) { beforeValue.IsSelected = false; } if (actualValue != null) { actualValue.IsSelected = true; } }
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); }
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); }
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); }
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 = "Не найден данный билет, на указанный спектакль."; } }
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); }
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; }
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); }
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); } }
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; */ }
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 = "Не все поля заполнены"; } }
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); }
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(); }
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); }
} // приоритет билета в очереди public override string ToString() { var ticketName = Prefix + NumberElement.ToString("000"); return($"; Дата добавления в очередь: {AddedTime}; Дата поступления в обработку: {StartProcessingTime}; Дата окончания обработки: {EndProcessingTime}; Номер билета: {ticketName}; Номер кассира: {Cashbox?.ToString() ?? "неизвестный кассир" } "); }
private static Cashbox Convert(CashboxDto dto) { return(Cashbox.CreateNew(dto.DeviceId, dto.Rnm, dto.Zn, dto.Fn, dto.Fdn, dto.Fpd)); }
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); }
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); }
// 頁籤切換處理 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(); } } }
public DeletePerfomancePage(ref Cashbox cashbox) { this.cashbox = cashbox; InitializeComponent(); }