ff-admin-server/src/controller/admin/membershipStatusController.ts

87 lines
2.7 KiB
TypeScript

import { Request, Response } from "express";
import MembershipStatusService from "../../service/membershipStatusService";
import MembershipStatusFactory from "../../factory/admin/membershipStatus";
import {
CreateMembershipStatusCommand,
DeleteMembershipStatusCommand,
UpdateMembershipStatusCommand,
} from "../../command/membershipStatusCommand";
import MembershipStatusCommandHandler from "../../command/membershipStatusCommandHandler";
/**
* @description get all membershipStatus
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function getAllMembershipStatus(req: Request, res: Response): Promise<any> {
let status = await MembershipStatusService.getAll();
res.json(MembershipStatusFactory.mapToBase(status));
}
/**
* @description get membershipStatus by id
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function getMembershipStatusById(req: Request, res: Response): Promise<any> {
const id = parseInt(req.params.id);
let status = await MembershipStatusService.getById(id);
res.json(MembershipStatusFactory.mapToSingle(status));
}
/**
* @description create new membershipStatus
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function createMembershipStatus(req: Request, res: Response): Promise<any> {
const membershipStatus = req.body.membershipStatus;
let createMembershipStatus: CreateMembershipStatusCommand = {
status: membershipStatus,
};
await MembershipStatusCommandHandler.create(createMembershipStatus);
res.sendStatus(204);
}
/**
* @description update membershipStatus
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function updateMembershipStatus(req: Request, res: Response): Promise<any> {
const id = parseInt(req.params.id);
const membershipStatus = req.body.membershipStatus;
let updateMembershipStatus: UpdateMembershipStatusCommand = {
id: id,
status: membershipStatus,
};
await MembershipStatusCommandHandler.update(updateMembershipStatus);
res.sendStatus(204);
}
/**
* @description delete membershipStatus
* @param req {Request} Express req object
* @param res {Response} Express res object
* @returns {Promise<*>}
*/
export async function deleteMembershipStatus(req: Request, res: Response): Promise<any> {
const id = parseInt(req.params.id);
let deleteMembershipStatus: DeleteMembershipStatusCommand = {
id: id,
};
await MembershipStatusCommandHandler.delete(deleteMembershipStatus);
res.sendStatus(204);
}