+5
Исправлен

Версия 2.0: смешивание валютных карт

Anna Chmarak 1 год назад в Плагины синхронизации / Райффайзен • обновлен support 1 год назад 12

От пользователя https://vk.com/abaskakau

Есть два счета в разных валютах. К ним привязано по одной карте. Все идентификаторы уникальны. Вот что делает плагин при импорте:


Пытался при добавлении счета скорректировать привязанные идентефикаторы, но плагин привязывает их снова без моего ведома

Фактически плагин считает, что валютная и рублевая карта — одна сущность

Ответ

+1
Ответ

В текущей версии уже должно быть исправлено.

Пожалуйста, сообщите о результатах. Если будут новые проблемы -- не стесняйтесь заводить новый тикет.

> Есть два счета в разных валютах. К ним привязано по одной карте. Все идентефикаторы уникальны. Вот что делает плагин при импорте

Не могу пока понять, что не так.

Вижу, что есть долларовый счёт ....0323, к которому привязаны две карты: 0669 и 7201.

Ещё вижу, что есть рублёвый счёт с номером ....1782.

> Фактически плагин считает, что валютная и рублевая карта — одна сущность

Что вы имеете в виду?

Прикрепите, пожалуйста, лог синхронизации.

А вы когда-нибудь переводили свою карту на новый зарплатный проект или меняли счет, привязанный к карте?

Андрей, скажите, правильно ли я поняла, что все операции на скриншоте были совершены на самом деле не по 0669, а по другому счёту?

Счет 1782 соответствует карте 0669. Рубли

Счет 0323 соответствует карте 7201. Доллары


Все операции на скриншоте совершены по рублевой карте 0669, однако при импорте тэг 0669 добавился валютной карте. Как видно на скриншоте, попытка импорта предложила создать рублевый СЧЕТ и валютную КАРТУ. Однако валютной КАРТЕ был присвоен тэг рублевой КАРТЫ

Самое интересное, что приложение предложило добавить именно счет, не карту. Я не сильно понимаю, что должно добавляться в данном случае: карты или аккаунты:
Рискну предположить, что этот метод (кликабельно) добавляет аккаунт в самом приложении. В таком случае, не сильно ясно, зачем мне видеть как карты (кликабельно), так и аккаунты карт (кликабельно).


+1

Прошу прощения, был неправ. Достаточно детально посмотрел код.

Подозреваю, что не срабатывает условие: https://github.com/zenmoney/ZenPlugins/blob/master/plugins/raiffeisen/main.js#L116

Я вычитал, что в js переменная, объявленная в теле цикла является глобальной, т.е.

https://github.com/zenmoney/ZenPlugins/blob/master/plugins/raiffeisen/main.js#L99 видна следующему циклу и, возможно, не зануляется здесь: https://github.com/zenmoney/ZenPlugins/blob/master/plugins/raiffeisen/main.js#L113

В таком случае, в приложение отправляется аккаунт (не карта) и один тэг самого аккаунта (Как раз, как в моем случае). В следующем случае, по какой-то причине, проверка срабатывает оба раза.

Если говорить о причинах происходящего, то тут:

Либо реально не совпадают данные (какие-то уникальные вещи для некоторых пользователей)

Либо проблема в ===. Тут, возможно, поможет строгая типизация


P.S. Мне не удалось корректно завести yarn для проверки, да я и не претендую на звание js разработчика. Так что это только моя гипотеза

+2

Спасибо за содействие, причина действительно была здесь. Но там ошибка более существенная:

zenAccounts[j].numberString

У объекта "zenAccounts[j]" нет поля "numberString", поэтому её сравнение с чем угодно будет давать false. Но как вы отметили, переменная zenAccount уже заполнена значениями из предыдущего цикла, поэтому несмотря на то, что соответствующий счёт как бы не найден, карты всё равно добавлялись к какому-то счёту.

Это поле здесь осталось по наследству, так как до этого я искала для каждой карты подходящий объект класса "Account", а у этого класса как раз есть метод с названием "numberString".

Работаю над исправлением.


P.S. Я вообще плюсовик, поэтому редко что-то получается в JS с первого раза -- привыкла ориентироваться на ошибки компиляции. Области видимости в JS и передача reference-by-value меня до сих пор шокируют. Запустить плагин raiffeisen под отладчиком можно и без yarn: в этой версии репозитория лежит папка debugger и инструкция по настройке отладчика.

Вы вообще молодец. Давно пользую зенмани, тоже думал написать плагин. Но лень оказалась сильнее )

+1
Ответ

В текущей версии уже должно быть исправлено.

Пожалуйста, сообщите о результатах. Если будут новые проблемы -- не стесняйтесь заводить новый тикет.

Сервис поддержки клиентов работает на платформе UserEcho