Delete handlers

This commit is contained in:
Kirill 2023-01-10 12:26:59 +00:00
parent adee884913
commit 28ae274051
3 changed files with 28 additions and 51 deletions

@ -1,14 +1,3 @@
# Hub Admin Panel Backend Service
## Настройка и запуск
```
1) yarn setup - загрузка всех зависимостей и инициализация husky
2) yarn dev - запуск проекта в режиме разработки
```
# Ссылки на другую документацию:
- [**Переменные окружения сервиса**](./docs/environment/README.md)
- [**Swagger**](./docs/swagger/README.md)
- [**Настройки сервера**](./docs/server/README.md)
**Вся основная документация расположена в** [**Wiki**](https://penahub.gitlab.yandexcloud.net/pena-services/hub_admin_backend_service/-/wikis/%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5)

@ -1,35 +0,0 @@
# Переменные окружения сервиса:
**Для конфигурации сервера**:
```
ENVIRONMENT - application environment
HTTP_HOST - service host
HTTP_PORT - service port
PUBLIC_ACCESS_SECRET_KEY - secret to verify private access secret key
```
**Для конфигурации базы данных**:
```
DB_HOST - mongo host
DB_PORT - mongo port
DB_USERNAME - mongo username
DB_PASSWORD - mongo password
DB_NAME - database name
```
**Для подключения к сервису авторизации**
```
AUTH_SERVICE_HOST - auth service host
AUTH_SERVICE_PORT - auth service port
```
## Среды окружения
```
development - среда для разработки
staging - среда для тестирования продукта
production - среда продакшена
```

@ -186,21 +186,21 @@ export const replacePrivilege = async (request: RegisterPrivilegeRequest, reply:
return Promise.all(replacePrivilegeRequests);
};
export const removePrivilege = async (request: GetPrivilegeRequest, reply: FastifyReply) => {
const [requestParams, error] = validateEmptyFields(request.params || {}, ["privilegeId"]);
export const removePrivilege = async (request: RemovePrivilegeRequest, reply: FastifyReply) => {
const [{ privilegeId }, error] = validateEmptyFields(request.body || {}, ["privilegeId"]);
if (error) {
reply.status(400);
return error;
}
if (!Types.ObjectId.isValid(requestParams.privilegeId)) {
if (!Types.ObjectId.isValid(privilegeId)) {
reply.status(400);
return new Error("invalid id");
}
const privilege = await PrivilegeModel.findOneAndUpdate(
{ privilegeId: requestParams.privilegeId },
{ privilegeId },
{ $set: { isDeleted: true, deletedAt: new Date() } }
);
@ -212,6 +212,29 @@ export const removePrivilege = async (request: GetPrivilegeRequest, reply: Fasti
return privilege;
};
export const restorePrivilege = async (request: RemovePrivilegeRequest, reply: FastifyReply) => {
const [{ privilegeId }, error] = validateEmptyFields(request.body || {}, ["privilegeId"]);
if (error) {
reply.status(400);
return error;
}
if (!Types.ObjectId.isValid(privilegeId)) {
reply.status(400);
return new Error("invalid id");
}
const privilege = await PrivilegeModel.findOneAndUpdate({ privilegeId }, { $set: { isDeleted: false } });
if (!privilege) {
reply.status(404);
return new Error("privilege not found");
}
return privilege;
};
export const replacePrivilegies = async (request: RegisterPrivilegiesRequest, reply: FastifyReply) => {
const [requestBody, errorEmpty] = validateEmptyFields(request.body || {}, ["privilegies"]);