Починить баги по порядку
Не отображается документация по http://localhost:9099/docs/index.html
Запрос по http://localhost:9099/api/v2/client/user/get-loss не найден
Ожидаемый результат: запрос выполняется
Фактический результат: 404 Not Found
Запрос по http://localhost:9099/api/v2/client/user/get-loss возвращает некорректные данные
Ожидаемый результат: { "loss": -1000 }
Фактический результат: { "Loss": -1000 }
Не проходит валидация при создании ордера на продажу (side: "ask") http://localhost:8085/api/v2/client/order/create
Ожидаемый результат: { "orderId": "идентификатор созданного ордера" }
Фактический результат: Key: 'CreateOrderRequestDto.Side' Error:Field validation for 'Side' failed on the 'side' tag
При запросе http://localhost:8085/api/v2/client/kafka/topics
Ожидаемый результат: Возвращает массив топиков через запятую ["command.topic", "confirm.topic"]
Фактический результат: 500 Internal Server Error
На продакшене произошло ЧП, удалились все пользователи, необходимо просмотреть код и найти уязвимости
При создании инструмента ошибки логики приложения http://localhost:8085/api/v2/client/instrument/create
Ожидаемый результат:
1. Должен создаваться Kafka-топик для инструмента.
2. Должен создаваться баланс инструмента.
3. На баланс инструмента должно начисляться 100 000 000 рублей.
4. Должен возвращать идентификатор указаный при создании инструмента
5. При повторном вызове создания инструмента с тем же идентификатором, баланс не обнуляется, возвращается ошибка "Баланс создан для инструмента с идентификатором"
6. Балансы начисляются быстро и не потребляют память
Фактический результат:
1: Отсутствуют созданный топик по инструменту в массиве по запросу:
GET http://localhost:8085/api/v2/client/kafka/topics
2: Баланс создаётся (работает корректно).
3: Деньги начисляются непредсказуемо, сервис периодически падает с ошибкой и перезапускается в Kubernetes.
4. Возвращается идентификатор инструмента не тот который был указан при создании
5. При повторном вызове создания инструмента с тем же идентификатором, обнуляется баланс
6. Большое потребление памяти при пополнении баланса инструмента и пополнение занимает много времени
Прокомментировать код и указать, какие принципы программирования нарушены, что можно оптимизировать, доработать и исправить.