Привет.
У меня в ТЗ указано сделать ветвистую проверку с последующими действиями на странице заказа. Что имею в наличии:
- параметр в адресной строке с именем сотрудника
- 6 отдельных позиций для заказа
- 5 имён сотрудников
- 2 радио-переключателя
Какая логика нужна:
- если в адресной строке передан параметр с именем сотрудника => выбрать его из выпадающего списка
- если в адресной строке передан параметр с именем И выбран переключатель №1 => выбрать сотрудника из списка и выбрать позицию для заказа X (общая для всех)
- если в адресной строке передан параметр с именем И выбран переключатель №2 => выбрать сотрудника из списка и выбрать позицию для заказа Y (для каждого сотрудника своя позиция)
- проверка со звёздочкой: если в адресной строке передан параметр с именем ИЛИ пользователь сам выбрал из выпадающего списка сотрудника И выбран переключатель №2 => отправить запрос по АПИ и если вернётся true, то выбрать позицию для заказа Y (для каждого сотрудника своя позиция); если вернётся false, то вывести поп-ап, выбрать переключатель №1 и вывести текст-предупреждение под переключателем (при этом запомнить этот момент, чтобы при попытке пользователем всё равно выбрать переключатель №2 не отправлять запрос и не менять переключатель, а то пользователь сойдёт с ума)
У меня получается огромное нагромождение из if else, которое я реализовал для проверки 1 сотрудника и постепенно начинаю во всём этом путаться.
Что можно использовать для упрощения реализации этой логики?
Я недавно начал изучал JS, поэтому не могу пока быстро придумать варианты решения, прошу помощи.
Как вариант, на ум приходят массивы или json-объекты, в которые я добавляю имена сотрудников через ключ : значение. По моему, в json можно сделать так, чтобы был один ключ worker и у него массив из значений.
Но, возможно, это лишь мои догадки. Прошу меня направить (:
P.S. Реализация возможна как на ванильном JS, так и на jQuery.