Исправление warning и дополнение ошибки не загрузившимися пользователями#231
Open
webrobot1 wants to merge 3 commits intoretailcrm:masterfrom
Open
Исправление warning и дополнение ошибки не загрузившимися пользователями#231webrobot1 wants to merge 3 commits intoretailcrm:masterfrom
webrobot1 wants to merge 3 commits intoretailcrm:masterfrom
Conversation
исправление модели заказа
дополнение ошибки не загруженными пользователями
Author
|
Речь идет про массовую загрузку корпоративных клиентом методом this->client->customersCorporate->upload |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Проблема была описана тут #229 и тут #228
Что же касательно ошибки - при обновлении из источника в CRM очень долго получать всю базу клиентов из API для понимания какой уже был загружен а какой нужно обновлять.
Вести отдельную базу уже загруженных в CRM отказ неустойчиво. В связи с этим разработчику - интегратору проще попытаться добавить новых пользователей пакетом с обновлениями по существующим, а в случае ошибки - распарить текст (он вида Customer with externalId=([^ ]+) already exists) в массиве ошибок, взять externalId не добавленных и обновить.
Однако при добавлении клиентов при указании адреса с externalId происходит проверка на существование адреса до существования пользователя и ошибки что пользователь существует нет, но есть ошибка что адрес существует без указания для какого пользователя
Добавления в ErrorResponse.php блока кода делает вывод ошибки таким
Тем не менее я надеюсь в RetailCRM исправят тот факт что существование адреса проверяется ДО существования пользователя выводя текст ошибки что адрес есть у другого пользователя, хотя он есть у того которого пытаемся добавить (даже если разработчик ведет учет добавленных в CRM пользователь в случае сбоя записи он не поймет что пользователь был уже добавлен по ошибке адреса)