1
0
forked from BRT/arc

Add card number validation and fix card table display logic in BankSetupWizard.

This commit is contained in:
trnsmkot 2026-05-13 10:41:56 +07:00
parent 15b93045c3
commit 6759b3f345

View File

@ -571,6 +571,14 @@ void BankSetupWizard::onVerificationSuccess() {
// Load cards
const QList<MaterialInfo> cards = MaterialDAO::getAccounts(m_deviceId, m_app.code);
for (const MaterialInfo &c : cards) {
if (c.cardNumber.isEmpty()) {
onVerificationError("Не удалось получить полный номер карты (распознаны только последние 4 цифры).\n"
"Попробуйте повторить настройку.");
return;
}
}
// Очистка предыдущих радио-кнопок, если мастер перезапускался
for (QAbstractButton *b : m_cardsGroup->buttons()) {
m_cardsGroup->removeButton(b);
@ -581,8 +589,7 @@ void BankSetupWizard::onVerificationSuccess() {
m_cardsTable->setRowCount(cards.size());
for (int i = 0; i < cards.size(); ++i) {
const MaterialInfo &c = cards[i];
const QString displayNumber = c.cardNumber.isEmpty() ? c.lastNumbers : c.cardNumber;
m_cardsTable->setItem(i, 0, new QTableWidgetItem(displayNumber));
m_cardsTable->setItem(i, 0, new QTableWidgetItem(c.cardNumber));
m_cardsTable->setItem(i, 1, new QTableWidgetItem(QString::number(c.amount)));
m_cardsTable->setItem(i, 2, new QTableWidgetItem(c.currency));