hrms-api-probation/src/controllers/CalculateController.ts

33 lines
1.4 KiB
TypeScript
Raw Normal View History

2024-10-18 09:56:01 +07:00
import { Controller, Route, Security, Tags, Request, SuccessResponse, Response, Get, Post, Body } from "tsoa"
import HttpSuccess from "../interfaces/http-success"
import HttpStatusCode from "../interfaces/http-status"
import { RequestWithUser } from "../middlewares/user"
import { findEndDate } from "../interfaces/utils"
2024-09-05 13:59:43 +07:00
2024-09-05 16:56:22 +07:00
@Route("api/v1/probation/calculate")
2024-09-05 13:59:43 +07:00
@Tags("ฟอร์มมอบหมายงาน")
@Security("bearerAuth")
2024-10-18 09:56:01 +07:00
@Response(HttpStatusCode.INTERNAL_SERVER_ERROR, "เกิดข้อผิดพลาด ไม่สามารถแสดงรายการได้ กรุณาลองใหม่ในภายหลัง")
2024-09-05 13:59:43 +07:00
export class CalculateController extends Controller {
2024-10-18 09:56:01 +07:00
/**
* API
*
* @summary
*
*/
@Post("assign-finish")
async AssignFinish(
@Body()
requestBody: {
month: number
start_date: Date
},
@Request() request: RequestWithUser
) {
const { month, start_date } = requestBody
const finish_date = findEndDate(month, start_date)
2024-09-05 13:59:43 +07:00
2024-10-18 09:56:01 +07:00
return new HttpSuccess({ finish_date })
}
2024-09-05 13:59:43 +07:00
}