ff-admin-server/src/controller/admin/settings/executivePositionController.ts

88 lines
2.8 KiB
TypeScript
Raw Normal View History

2024-09-04 14:01:22 +02:00
import { Request, Response } from "express";
2025-01-05 14:14:00 +01:00
import ExecutivePositionService from "../../../service/settings/executivePositionService";
import ExecutivePositionFactory from "../../../factory/admin/settings/executivePosition";
2024-09-05 16:17:22 +02:00
import {
CreateExecutivePositionCommand,
DeleteExecutivePositionCommand,
UpdateExecutivePositionCommand,
2025-01-05 14:14:00 +01:00
} from "../../../command/settings/executivePosition/executivePositionCommand";
import ExecutivePositionCommandHandler from "../../../command/settings/executivePosition/executivePositionCommandHandler";
2024-09-04 14:01:22 +02:00
/**
* @description get all executivePositions
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function getAllExecutivePositions(req: Request, res: Response): Promise<any> {
let positions = await ExecutivePositionService.getAll();
res.json(ExecutivePositionFactory.mapToBase(positions));
}
/**
* @description get executivePosition by id
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function getExecutivePositionById(req: Request, res: Response): Promise<any> {
const id = parseInt(req.params.id);
let position = await ExecutivePositionService.getById(id);
res.json(ExecutivePositionFactory.mapToSingle(position));
}
/**
* @description create new executivePosition
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function createExecutivePosition(req: Request, res: Response): Promise<any> {
const executivePosition = req.body.executivePosition;
2024-09-05 16:17:22 +02:00
let createExecutivePosition: CreateExecutivePositionCommand = {
position: executivePosition,
};
await ExecutivePositionCommandHandler.create(createExecutivePosition);
2024-09-04 14:01:22 +02:00
res.sendStatus(204);
}
/**
* @description update executivePosition
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function updateExecutivePosition(req: Request, res: Response): Promise<any> {
const id = parseInt(req.params.id);
const executivePosition = req.body.executivePosition;
2024-09-05 16:17:22 +02:00
let updateExecutivePosition: UpdateExecutivePositionCommand = {
id: id,
position: executivePosition,
};
await ExecutivePositionCommandHandler.update(updateExecutivePosition);
2024-09-04 14:01:22 +02:00
res.sendStatus(204);
}
/**
* @description delete executivePosition
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function deleteExecutivePosition(req: Request, res: Response): Promise<any> {
const id = parseInt(req.params.id);
2024-09-05 16:17:22 +02:00
let deleteExecutivePosition: DeleteExecutivePositionCommand = {
id: id,
};
await ExecutivePositionCommandHandler.delete(deleteExecutivePosition);
2024-09-04 14:01:22 +02:00
res.sendStatus(204);
}