private void InkassVigr() { ShowProcessMessage("Произвожу выгрузку из барабанов в кассету "); GhangeConnectionState(ConnectonState_StartInkassFromBarabans); FCCSrv2.DenominationType[] Tmp = Barabans.GetBarabansAdd(pnlInkassMenu.rbAll.IsChecked.Value, pnlInkassMenu.ChBBill.IsChecked.Value, pnlInkassMenu.ChBCoins.IsChecked.Value); FCCApi = new CFCCApi(); FCCApi.CollectAsync(Tmp, InkassVigrRes); }
internal void ClearReplenishAdd() { AddBillCurentSumm = 0; AddCointCurentSumm = 0; this.Dispatcher.Invoke((Action)(() => { Barabans.ClearBillAdd(); Barabans.ClearCoinAdd(); ReplTotal.SetMoney(0); })); }
private void GhangeConnectionState(int value, string Status, Color color) { CurrentConnectonState = value; this.Dispatcher.Invoke((Action)(() => { /* * if ((value != ConnectonState_StartInkass) && (value != ConnectonState_StartInkassFromBarabans) && (value != ConnectonState_StartInkassFromBarabans)) * { * pnlBtnsMain.Visibility = System.Windows.Visibility.Visible; * pnlInkassMenu.Visibility = System.Windows.Visibility.Hidden; * } */ connectionState = value; switch (connectionState) { case ConnectonState_Idle: AllDoButtonsEnable(); SetStatus(Status, color); break; case ConnectonState_GetStatus: AllDoButtonsDisable(); SetStatus("Получение данных от устройства."); break; case ConnectonState_DevNotConnect: AllDoButtonsDisable(); SetStatus("Нет связи с устройством приема наличных средств." + Environment.NewLine + "Убедитесь, что устройство подключено и нажмите кнопку Обновить состояние.", Colors.Red); Barabans.SetNotFindStatus(); break; case ConnectonState_UpdateInventoryError: AllDoButtonsDisable(); SetStatus(Status, color); break; case ConnectonState_StartReplError: //AllDoButtonsDisable(); //SetStatus(Status, color); SetStatus(Status, color); needInventoryUpdate = true; ClearReplenishAdd(); MenuState = 0; break; case ConnectonState_WaitingInsertionNonRepl: state = 0; btnRepl.IsEnabled = false; btnInkas.IsEnabled = false; btnReset.IsEnabled = true; SetStatus(Status, color); break; case ConnectonState_StartRepl: /* * if (MainClass2.NonEmptyCasset) * { * SetStatus("Вы вставили не пустую кассету. Поменяйте кассету.", Colors.Red); * * } * else * */ { pnlBtnsRepl.Visibility = System.Windows.Visibility.Visible; pnlBtnsMain.Visibility = System.Windows.Visibility.Hidden; btnReplEnd.IsEnabled = true; btnReplCancel.IsEnabled = true; SetStatus("Внесите размен", Colors.Black); } break; case ConnectonState_EndReplError: AllDoButtonsDisable(); SetStatus(Status, color); MenuState = 0; break; case ConnectonState_CancelReplError: AllDoButtonsDisable(); SetStatus(Status, color); MenuState = 0; break; case ConnectonState_CancelReplSuccess: NeedInventoryUpdate = true; AllDoButtonsEnable(); SetStatus("Внесение размена отменено", Colors.Black); ClearReplenishAdd(); MenuState = 0; break; case ConnectonState_EndReplSuccess: NeedInventoryUpdate = true; AllDoButtonsEnable(); SetStatus("Внесение завершено успешно", Colors.Black); ClearReplenishAdd(); MenuState = 0; break; case ConnectonState_StartInkass: MenuState = 2; SetStatus("Выберите режим инкасации", Colors.Black); break; case ConnectonState_CancelInkass: ClearReplenishAdd(); Barabans.BtnsCountVisible = false; MenuState = 0; break; case ConnectonState_StartInkassFromBarabans: if (MainClass2.NonEmptyCasset) { SetStatus("Вы вставили не пустую кассету. Поменяйте кассету.", Colors.Red); } else { SetStatus("Внесение денег из барабанов в кассету", Colors.Black); pnlInkassMenu.IsEnabled = false; Barabans.BtnsCountVisible = false; } break; case ConnectonState_EndInkassFromBarabans: SetStatus("Внесение денег из барабанов в кассету окончено", Colors.Black); ClearReplenishAdd(); pnlInkassMenu.IsEnabled = true; NeedInventoryUpdate = true; break; case ConnectonState_EndInkassFromBarabansError: SetStatus("Внесение денег из барабанов в кассету окончено с ошибкой", Colors.Black); pnlInkassMenu.IsEnabled = true; NeedInventoryUpdate = true; ClearReplenishAdd(); break; case ConnectonState_CassetRemoved: SetStatus("Кассета удалена", Colors.Red); pnlInkassMenu.AllBtnsEnableState(false); break; case ConnectonState_CassetIneserted: SetStatus("Кассета вставлена", Colors.Red); pnlInkassMenu.AllBtnsEnableState(true); NeedInventoryUpdate = true; break; default: break; } })); }
private void UpdateInventory(FCCSrv2.CashUnitsType[] Cash, int ResultId, string ResSt) { // if (ResultId != FCCApi.FCC_SUCCESS) //{ if (Cash != null) { int BillSumm = 0; int BillCassetSumm = 0; int BillCassetCountSumm = 0; int CoinSumm = 0; int CoinCassetSumm = 0; int CoinCassetCountSumm = 0; //Банкноты FCCSrv2.CashUnitsType MyCash = Cash.Where(a => a.devid == "1").FirstOrDefault(); if (MyCash != null) { foreach (FCCSrv2.CashUnitType Dt in MyCash.CashUnit.Where(a => a.unitno == "4043" || a.unitno == "4044" || a.unitno == "4045")) { FCCSrv2.DenominationType Den = Dt.Denomination[0]; Barabans.SetBillValue(int.Parse(Den.fv), int.Parse(Den.Piece), int.Parse(Den.Status), int.Parse(Dt.max), int.Parse(Dt.unitno), Den); BillSumm += int.Parse(Den.fv) * int.Parse(Den.Piece); } FCCSrv2.CashUnitType DtCas = MyCash.CashUnit.Where(a => a.unitno == "4059").FirstOrDefault(); foreach (FCCSrv2.DenominationType Den in DtCas.Denomination) { BillCassetSumm += int.Parse(Den.fv) * int.Parse(Den.Piece); BillCassetCountSumm += int.Parse(Den.Piece); } Barabans.SetBillValue(BillCassetCountSumm, BillCassetSumm, 0, int.Parse(DtCas.max), int.Parse(DtCas.unitno), null); BillSumm += BillCassetSumm; } CurrentCassetaSumm = BillCassetSumm; FCCApi.CurrentCassetaSumm = BillCassetSumm; //Монеты MyCash = Cash.Where(a => a.devid == "2").FirstOrDefault(); if (MyCash != null) { foreach (FCCSrv2.CashUnitType Dt in MyCash.CashUnit.Where(a => int.Parse(a.unitno) > 4042 && int.Parse(a.unitno) < 4056)) { FCCSrv2.DenominationType Den = Dt.Denomination[0]; Barabans.SetCoinValue(int.Parse(Den.fv), int.Parse(Den.Piece), int.Parse(Den.Status), int.Parse(Dt.max), int.Parse(Dt.unitno), Den); CoinSumm += int.Parse(Den.fv) * int.Parse(Den.Piece); } FCCSrv2.CashUnitType DtCas = MyCash.CashUnit.Where(a => a.unitno == "4084").FirstOrDefault(); foreach (FCCSrv2.DenominationType Den in DtCas.Denomination) { CoinCassetSumm += int.Parse(Den.fv) * int.Parse(Den.Piece); CoinCassetCountSumm += int.Parse(Den.Piece); } Barabans.SetCoinValue(CoinCassetCountSumm, CoinCassetSumm, 0, int.Parse(DtCas.max), int.Parse(DtCas.unitno), null); CoinSumm += CoinCassetSumm; } CurrentCoinCassetaSumm = CoinCassetSumm; FCCApi.CurrentCoinCassetaSumm = CoinCassetSumm; SetSumm(BillSumm + CoinSumm); } else { GhangeConnectionState(ConnectonState_UpdateInventoryError, String.Format("Ошибка запроса состояния. Код ошибки {0}. Сообщение {1} ", ResultId, ResSt), Colors.Red); } AllDoButtonsEnable(); HideProcessMessage(); /* * if (CurrentConnectonState == ConnectonState_CassetIneserted) * { * if (CurrentCassetaSumm > 0) * { * MainClass2.NonEmptyCasset = true; * } * } */ }
internal void UpdateReplenishAdd(FCCSrv2.CashType[] Cash) { if ((Cash == null) || (Cash[0] == null)) { return; } this.Dispatcher.Invoke((Action)(() => { if (Cash != null) { int BillSumm = 0; int CoinSumm = 0; int BillBarabansSumm = 0; int CoinBarabansSumm = 0; //Барабаны FCCSrv2.CashType MyCash = Cash.Where(a => a.type == "4").FirstOrDefault(); if (MyCash != null) { int CassetaAdd = 0; int MonetaAdd = 0; //MyCash foreach (FCCSrv2.DenominationType Dt in MyCash.Denomination) { if (Dt == null) { continue; } if (Dt.devid == "1") { //if (Dt.) Barabans.SetBillAdd(int.Parse(Dt.fv), int.Parse(Dt.Piece), int.Parse(Dt.Status)); BillBarabansSumm += int.Parse(Dt.fv) * int.Parse(Dt.Piece); } else if (Dt.devid == "2") { Barabans.SetCoinAdd(int.Parse(Dt.fv), int.Parse(Dt.Piece), int.Parse(Dt.Status)); CoinBarabansSumm += int.Parse(Dt.fv) * int.Parse(Dt.Piece); } } if (BillBarabansSumm == 0) { BillBarabansSumm = AddBillCurentSumm; } else { Barabans.SetBillAdd(0, BillBarabansSumm, 0); AddBillCurentSumm = BillBarabansSumm; } if (CoinBarabansSumm == 0) { CoinBarabansSumm = AddCointCurentSumm; } else { AddCointCurentSumm = CoinBarabansSumm; } } ReplTotal.SetMoney(BillBarabansSumm + CoinBarabansSumm); } })); }