mirror of
https://github.com/r-ca/kidshift-be.git
synced 2024-10-25 16:14:02 +00:00
重複を削除
This commit is contained in:
parent
542899328c
commit
ab97166757
|
@ -1,126 +0,0 @@
|
|||
import { Router, Request, Response } from 'express';
|
||||
import { generateLoginCode, getChilds, createChild, deleteChild, getChild, modifyChild } from '@src/services/parent/childService';
|
||||
import { ChildListResponse } from '@src/models/Child'
|
||||
import Logger from '@src/logger';
|
||||
import { internalServerErrorResponse } from '@src/models/commons/responses';
|
||||
|
||||
const router = Router();
|
||||
const logger = new Logger();
|
||||
logger.setTag('parent/childRouter');
|
||||
|
||||
router.get('/', (req: Request, res: Response) => {
|
||||
if (!req.user) {
|
||||
return res.status(500).json({
|
||||
message: 'エラーが発生しました(JWT解析結果が不正/未設定です)'
|
||||
});
|
||||
}
|
||||
const homeGroupId = req.user.claims.home_group_id;
|
||||
getChilds(homeGroupId).then((childListResponse: ChildListResponse) => {
|
||||
res.status(200).json(childListResponse);
|
||||
}).catch((err) => {
|
||||
logger.error('Failed to get children')
|
||||
logger.debug(err);
|
||||
res.status(500).json({
|
||||
message: 'エラーが発生しました',
|
||||
detail: err
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
router.post('/', (req: Request, res: Response) => {
|
||||
if (!req.user) {
|
||||
return res.status(500).json({
|
||||
message: 'エラーが発生しました(JWT解析結果が不正/未設定です)'
|
||||
});
|
||||
}
|
||||
const homeGroupId = req.user.claims.home_group_id;
|
||||
// BodyがChildAddRequestにマッピングできるかチェック
|
||||
let requestBody = null;
|
||||
try {
|
||||
requestBody = req.body;
|
||||
if (!requestBody) {
|
||||
return res.status(400).json({
|
||||
message: 'リクエストボディが不正です'
|
||||
});
|
||||
}
|
||||
if (!requestBody.name) {
|
||||
return res.status(400).json({
|
||||
message: 'nameが不正です'
|
||||
});
|
||||
}
|
||||
} catch (e) {
|
||||
return res.status(400).json({
|
||||
message: 'リクエストボディが不正です'
|
||||
});
|
||||
}
|
||||
createChild(requestBody, homeGroupId).then((child) => {
|
||||
res.status(201).json(child);
|
||||
}).catch((err) => {
|
||||
logger.error('Failed to create child')
|
||||
logger.debug(err);
|
||||
res.status(500).json({
|
||||
message: 'エラーが発生しました',
|
||||
detail: err
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
router.get('/:childId/login', (req: Request, res: Response) => {
|
||||
const childId = req.params.childId; // TODO: Validate childId
|
||||
generateLoginCode(childId).then((code) => {
|
||||
res.status(200).json({
|
||||
code: code
|
||||
});
|
||||
}).catch((err) => {
|
||||
logger.error('Failed to generate login code')
|
||||
logger.debug(err);
|
||||
res.status(500).json({
|
||||
message: 'エラーが発生しました',
|
||||
detail: err
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
router.get('/:childId', (req: Request, res: Response) => {
|
||||
const childId = req.params.childId;
|
||||
getChild(childId).then((child) => {
|
||||
res.status(200).json(child);
|
||||
}).catch((err) => {
|
||||
logger.error('Failed to get child')
|
||||
logger.debug(err);
|
||||
res.status(500).json({
|
||||
message: 'エラーが発生しました',
|
||||
detail: err
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
router.delete('/:childId', (req: Request, res: Response) => {
|
||||
const childId = req.params.childId; // TODO: Validate childId
|
||||
deleteChild(childId).then(() => {
|
||||
res.status(200).json({
|
||||
"message": "OK"
|
||||
});
|
||||
}).catch((err) => {
|
||||
logger.error('Failed to delete child')
|
||||
logger.debug(err);
|
||||
res.status(500).json({
|
||||
message: 'エラーが発生しました',
|
||||
detail: err
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
router.put('/:childId', (req: Request, res: Response) => {
|
||||
const childId = req.params.childId; // TODO: Validate childId
|
||||
// TODO: ボディのバリデーション
|
||||
modifyChild(childId, req.body).then((child) => {
|
||||
res.status(200).json(child);
|
||||
}).catch((err) => {
|
||||
logger.error('Failed to modify child')
|
||||
logger.debug(err);
|
||||
res.status(internalServerErrorResponse().statusCode).json(internalServerErrorResponse().body);
|
||||
});
|
||||
});
|
||||
|
||||
export default router;
|
|
@ -6,7 +6,6 @@ import verifyParent from '../middlewares/verifyParent';
|
|||
import authRouter from './authRouter';
|
||||
import taskRouter from './taskRouter';
|
||||
import accountRouter from './accountRouter';
|
||||
import childRouter from './childRouter';
|
||||
|
||||
const router = Router();
|
||||
const logger = new Logger();
|
||||
|
@ -15,6 +14,5 @@ logger.setTag('parent/index.ts');
|
|||
router.use('/auth', authRouter);
|
||||
router.use('/task', verifyToken, verifyParent, taskRouter);
|
||||
router.use('/account', verifyToken, verifyParent, accountRouter);
|
||||
router.use('/child', verifyToken, verifyParent, childRouter);
|
||||
|
||||
export default router;
|
||||
|
|
Loading…
Reference in New Issue
Block a user