Обработка мягких удалений с помощью jhipster - PullRequest
0 голосов
/ 20 мая 2019

Мне нужно выполнить мягкое удаление с помощью jhipster.

Ex: Если пользователь нажимает кнопку удаления, мне нужно пометить флаг is_active как false. Написание собственного кода будет единственным решением или есть ли способ сделать это?

То, что я сделал до сих пор:

  1. Я следил за сайтом Jhipster и создал приложение Monolithic.
  2. Затем я создал новую сущность под названием «Студент», используя субгенератор сущностей. (поданные имена: идентификатор, возраст, адрес и is_active.)
  3. Файлы, сгенерированные вспомогательным генератором, содержат все основные операции CRUD и предоставляют интерфейс CRUD для объекта учащегося.
  4. Внешний интерфейс содержит кнопки для создания ученика, просмотра, редактирования и удаления.
  5. Когда я нажимаю кнопку удаления, запись студента будет постоянно удаляться из базы данных.
  6. Но мое требование состоит в том, чтобы сохранить запись в базе данных и пометить только is_active, поданный как ложное.
  7. В основном мне нужно хранить исторические данные студента, не удаляя их окончательно.

1 Ответ

0 голосов
/ 21 мая 2019

вам придется редактировать его самостоятельно. Прежде всего, я рекомендую вам расширить все классы, сгенерированные JHipster (за исключением ресурсов, вам придется создать другой класс и использовать настраиваемое отображение, что приведет к изменению службы во внешнем интерфейсе)

  1. Расширьте ваш StudentRepository и создайте метод, который обновляет значение is_active (было бы лучше, если бы он получил идентификатор и значение: true или false)
  2. Расширение yout StudentService и создание нового метода (например, вызов его public void disableAddress(Long id))
  3. В этом методе ваш вновь созданный метод в слое хранилища
  4. Отредактируйте StudentResource, измените код внутри метода deleteStudent и вызовите только что созданный метод в слое обслуживания
  5. Если вы создали новый ресурс, измените службу, вызывающую ваш API.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...