private void LoadEmptyCassette(GetUndeclaredVaultDrops vd_select) { try { var redcolor = new System.Windows.Media.SolidColorBrush(Colors.DarkRed); var blackcolor = new System.Windows.Media.SolidColorBrush(Colors.Black); var BoldFont = new System.Windows.FontWeight(); BoldFont = System.Windows.FontWeights.Bold; var NormalFont = new System.Windows.FontWeight(); NormalFont = System.Windows.FontWeights.Normal; List<CassetteDropsResult> lst_emptycassette = new List<CassetteDropsResult>(); int temp_cassetteid = 1; foreach (string strdenom in sCassetteDenom) { int idenom = dic_denoms[strdenom]; lst_emptycassette.Add(new CassetteDropsResult { Cassette_ID = temp_cassetteid++, CassetteType_ID = (int)CassetteTypes.Cassette, Cassette_Name = "Cassette :" + idenom, DeclaredBalance = 0, Denom = idenom, IsChecked = true, Drop_ID = vd_select.Drop_ID, VaultBalance = 0, EnableControls = true, FontColor = blackcolor, CustomFontWeight = NormalFont, IsBillCounterAmountEditable = Settings.IsBillCounterAmountEditable, IsBillCounterQuantityEditable = !Settings.IsBillCounterAmountEditable }); } if (lst_emptycassette.Count > 0) { p_cassette = new CassetteDropsResult { Cassette_ID = 0, CassetteType_ID = (int)CassetteTypes.Cassette, Cassette_Name = "Total Cassettes (" + lst_emptycassette.Count + ")", DeclaredBalance = 0, Denom = 0, Drop_ID = vd_select.Drop_ID, VaultBalance = 0, EnableControls = false, FontColor = redcolor, CustomFontWeight = BoldFont, IsBillCounterAmountEditable = false, IsBillCounterQuantityEditable = false }; lst_emptycassette.Add(p_cassette); } if (sHopperDenom != null && sHopperDenom.Length > 0) { foreach (string str in sHopperDenom) { float val = 0f; if (float.TryParse(str, out val)) { lst_emptycassette.Add(new CassetteDropsResult { Cassette_ID = temp_cassetteid++, CassetteType_ID = (int)CassetteTypes.Hopper, Cassette_Name = "Hopper :" + val, DeclaredBalance = 0, Denom = val, IsChecked = true, Drop_ID = vd_select.Drop_ID, VaultBalance = 0, EnableControls = true, FontColor = blackcolor, CustomFontWeight = NormalFont, IsBillCounterAmountEditable = Settings.IsBillCounterAmountEditable, IsBillCounterQuantityEditable = !Settings.IsBillCounterAmountEditable }); } } if (lst_emptycassette.Count > 0) { p_hopper = new CassetteDropsResult { Cassette_ID = 0, CassetteType_ID = (int)CassetteTypes.Hopper, Cassette_Name = "Total Hoppers (" + sHopperDenom.Length + ")", DeclaredBalance = 0, Denom = 0, Drop_ID = vd_select.Drop_ID, VaultBalance = 0, EnableControls = false, FontColor = redcolor, CustomFontWeight = BoldFont, IsBillCounterAmountEditable = false, IsBillCounterQuantityEditable = false }; lst_emptycassette.Add(p_hopper); } } vd_select.Cassettes = lst_emptycassette; lst_cassettes = lst_emptycassette; lv_CassetteDetails.ItemsSource = lst_emptycassette; } catch (Exception Ex) { ExceptionManager.Publish(Ex); } }
private void lv_dropdetails_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { if (e.AddedItems.Count > 0) { GetUndeclaredVaultDrops vd_select = e.AddedItems[0] as GetUndeclaredVaultDrops; if (vd_select != null) { if (vd_select.Cassettes != null && vd_select.Cassettes.Count > 0) { lst_cassettes = vd_select.Cassettes; if (Settings.AutoFillDeclaredAmount) { foreach (CassetteDropsResult casette in vd_select.Cassettes) { casette.DeclaredBalance = casette.VaultBalance.Value; if (casette.EnableControls) { casette.Quantity = Convert.ToInt32(Math.Truncate(casette.DeclaredBalance / Convert.ToDecimal(casette.Denom.Value))); } } } p_cassette = lst_cassettes.Find(obj => obj.CassetteType_ID == (int)CassetteTypes.Cassette && !obj.EnableControls); p_hopper = lst_cassettes.Find(obj => obj.CassetteType_ID == (int)CassetteTypes.Hopper && !obj.EnableControls); if (lst_cassettes.FindAll(obj => obj.CassetteType_ID == (int)CassetteTypes.Cassette).Count == 0) { btnStart.Visibility = Visibility.Hidden; } else { btnStart.Visibility = Visibility.Visible; } lv_CassetteDetails.ItemsSource = lst_cassettes; if (!vd_select.IsEmptyCassette) { vd_select.IsEmptyCassette = false; } vd_select.Declared_Balance = (p_cassette != null ? p_cassette.DeclaredBalance : 0) + (p_hopper != null ? p_hopper.DeclaredBalance : 0); } else { LoadEmptyCassette(vd_select); if (lst_cassettes.FindAll(obj => obj.CassetteType_ID == (int)CassetteTypes.Cassette).Count == 0) { btnStart.Visibility = Visibility.Hidden; } else { btnStart.Visibility = Visibility.Visible; } vd_select.Declared_Balance = 0; vd_select.IsEmptyCassette = true; } if (!vd_select.ToDeclared) { lblcounterWarning.Text = Application.Current.FindResource("Vault_MessageID16") as string; } else { lblcounterWarning.Text = ""; } if (e.RemovedItems.Count > 0) { GetUndeclaredVaultDrops vd_removeselect = e.RemovedItems[0] as GetUndeclaredVaultDrops; if (vd_removeselect != null) { if (vd_removeselect.Declared_Balance > 0 && vd_removeselect.ToDeclared) { if ((Settings.ShowVaultConfirmMessage) && MessageBox.ShowBox("Vault_MessageID15", BMC_Icon.Information, BMC_Button.YesNo) == System.Windows.Forms.DialogResult.Yes) { lv_dropdetails.SelectionChanged -= lv_dropdetails_SelectionChanged; lv_dropdetails.SelectedItem = vd_removeselect; bool IsValidAmount = false; SaveVaultDeclaration(ref IsValidAmount); lv_dropdetails.SelectionChanged += lv_dropdetails_SelectionChanged; return; } else { foreach (CassetteDropsResult casette in vd_removeselect.Cassettes) { casette.Quantity = 0; casette.DeclaredBalance = 0; } } } else { foreach (CassetteDropsResult casette in vd_removeselect.Cassettes) { casette.Quantity = 0; casette.DeclaredBalance = 0; } } } vd_removeselect.Declared_Balance = 0; } vd_select.BillsTotal = 0; vd_select.TotalCoinsValueAsCurrency = 0; } } } catch (Exception Ex) { ExceptionManager.Publish(Ex); } }