Синхронизация кампаний

В рамках улучшения функционала модуля кампаний была добавлена возможность синхронизации кампаний между боевыми и тестовыми серверами.
Теперь можно пропустить ручную работу по экспорту кампании и последующему ее импорту на сервера и сделать всё нажатием одной кнопки.
Синхронизируются все элементы кампании, которые задаются через интерфейс — механики активации кодов, дочерние кампании, призы, шаблоны действий и пр. Синхронизируются кампании индивидуально (т. е. нельзя синхронизовать сразу все кампании).
При любом изменении кампании, а также добавлении/изменении/удалении входящих в нее механик, призов и шаблонов действий, над кампанией появляется предупреждение «Внимание, последние изменения не синхронизированы».
Предупреждение
Направление синхронизации всегда с текущего сервера на другие. Т. е. если нужно синхронизировать с тестового сервера на боевой, то нужно зайти на тестовый и там нажать кнопку, а если с боевого на тестовый — зайти уже надо на боевой.
При синхронизации выводятся даты последнего изменения и синхронизации, а также предупреждающие сообщения в зависимости от того, когда последний раз изменялась кампания на каждом из серверов.
Возможные варианты:
Картинка
Кампания есть на тестовом, но отсутствует на боевом (в этом случае кампания будет добавлена на боевой).
Картинка
Кампания была изменена на тестовом, но не менялась на боевом с момента последней синхронизации (в этом случае синхронизация обновит кампанию на боевом до последней версии)
Картинка
Кампания была изменена на обоих серверах (в этом случае менеджер должен вручную внести изменения на нужном сервере, а потом синхронизировать остальные изменения).
Картинка
Кампания синхронизирована и нет смысла что-либо синхронизировать.
Картинка
Дата последней синхронизации неизвестна (такое состояние будет у всех старых кампаний, которые переносились на сервера с помощью ручного импорта/экспорта). В этом случае менеджер должен сам определить, на каком из серверов более актуальная кампания и этого сервера провести синхронизацию.
Картинка
Даты последней синхронизации на серверах различаются — такое может возникнуть, только в том случае, если была ошибка при предыдущей синхронизации. В этом случае менеджер также должен сам определить, на каком из серверов более актуальная кампания и с этого сервера провести синхронизацию.
При нормальной работе всегда должны быть первые два варианта, а менеджер должен построить свою работу так, чтобы третьего варианта не случалось (не надо менять кампанию то на одном, то на другом сервере без синхронизации).Четвертый вариант возникает когда все хорошо (в этом случае вообще не должно возникать желания нажать на кнопку синхронизации, так как не будет предупреждающей надписи на ней).Пятый и шестой варианты при нормальной работе не должны возникать.В целом, общий алгоритм работы с кампаниями таков:
  1. Внесение изменений в существующую кампанию или добавление новой.
  2. Синхронизация изменений на другие сервера (конечно, после прочтения возникших предупреждений и осознанного их подтверждения).
  3. PROFIT.
Котэо призывает всех пользоваться функционалом синхронизации кампаний.
Кот

Вас заинтересуют следующие материалы