Skip to content

Commit bffd7a7

Browse files
committed
fix: api route convention error
1 parent a4ac0d3 commit bffd7a7

File tree

12 files changed

+133
-142
lines changed

12 files changed

+133
-142
lines changed

src/app/api/log-event/route.ts

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import moment from "moment";
2+
import { createDbClient } from "../../gql/lib/db";
3+
import { DAY_FORMAT } from "../../gql/constants";
4+
import { NextRequest, NextResponse } from "next/server";
5+
6+
export const dynamic = "force-dynamic";
7+
8+
async function logEventHandler(request: NextRequest) {
9+
const { date, event } = await request.json();
10+
const momentDate = moment(date).utc();
11+
12+
if (!event) {
13+
return NextResponse.json({ error: "Date is missing" }, { status: 400 });
14+
}
15+
16+
if (!date) {
17+
return NextResponse.json({ error: "Event is missing" }, { status: 400 });
18+
}
19+
20+
try {
21+
const db = await createDbClient();
22+
const day = momentDate.format(DAY_FORMAT);
23+
24+
await db.workTimetable.updateOne(
25+
{ day: { $eq: day } },
26+
{
27+
$push: { events: event },
28+
$setOnInsert: {
29+
date: new Date(momentDate.toISOString()),
30+
day,
31+
},
32+
},
33+
{ upsert: true }
34+
);
35+
36+
return NextResponse.json({}, { status: 200 });
37+
} catch (exception) {
38+
return NextResponse.json({ error: exception }, { status: 500 });
39+
}
40+
}
41+
42+
export { logEventHandler as POST };
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import { logTime } from "../../gql/utils/log-time";
2+
import { NextRequest, NextResponse } from "next/server";
3+
4+
export const dynamic = "force-dynamic";
5+
6+
async function logHomeArriveHandler(request: NextRequest) {
7+
const { date } = await request.json();
8+
9+
if (!date) {
10+
return NextResponse.json({ error: "Date is missing" }, { status: 400 });
11+
}
12+
13+
try {
14+
await logTime(date, "homeArriveTime");
15+
16+
return NextResponse.json({}, { status: 200 });
17+
} catch (exception) {
18+
return NextResponse.json({ error: exception }, { status: 500 });
19+
}
20+
}
21+
22+
export { logHomeArriveHandler as POST };
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import { logTime } from "../../gql/utils/log-time";
2+
import { NextRequest, NextResponse } from "next/server";
3+
4+
export const dynamic = "force-dynamic";
5+
6+
async function logHomeLeaveHandler(request: NextRequest) {
7+
const { date } = await request.json();
8+
9+
if (!date) {
10+
return NextResponse.json({ error: "Date is missing" }, { status: 400 });
11+
}
12+
13+
try {
14+
await logTime(date, "homeLeaveTime");
15+
16+
return NextResponse.json({}, { status: 200 });
17+
} catch (exception) {
18+
return NextResponse.json({ error: exception }, { status: 500 });
19+
}
20+
}
21+
22+
export { logHomeLeaveHandler as POST };
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import { logTime } from "../../gql/utils/log-time";
2+
import { NextRequest, NextResponse } from "next/server";
3+
4+
export const dynamic = "force-dynamic";
5+
6+
async function logWorkArriveHandler(request: NextRequest) {
7+
const { date } = await request.json();
8+
9+
if (!date) {
10+
return NextResponse.json({ error: "Date is missing" }, { status: 400 });
11+
}
12+
13+
try {
14+
await logTime(date, "workArriveTime");
15+
16+
return NextResponse.json({}, { status: 200 });
17+
} catch (exception) {
18+
return NextResponse.json({ error: exception }, { status: 500 });
19+
}
20+
}
21+
22+
export { logWorkArriveHandler as POST };
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { logTime } from "../../gql/utils/log-time";
2+
import { NextRequest, NextResponse } from "next/server";
3+
4+
async function logWorkLeaveHandler(request: NextRequest) {
5+
const { date } = await request.json();
6+
7+
if (!date) {
8+
return NextResponse.json({ error: "Date is missing" }, { status: 400 });
9+
}
10+
11+
try {
12+
await logTime(date, "workLeaveTime");
13+
14+
return NextResponse.json({}, { status: 200 });
15+
} catch (exception) {
16+
return NextResponse.json({ error: exception }, { status: 500 });
17+
}
18+
}
19+
20+
export { logWorkLeaveHandler as POST };

src/app/constants.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
export const IS_DEV = process.env.NODE_ENV === 'development';
2-
export const DEVELOPMENT_DAY = '2019-12-12';
3-
export const DATE_FORMAT = 'YYYY-MM-DD';
4-
export const MONTH_DATE_FORMAT = 'YYYY-MM';
1+
export const IS_DEV = process.env.NODE_ENV === "development";
2+
export const DEVELOPMENT_DAY = "2019-11-14";
3+
export const DATE_FORMAT = "YYYY-MM-DD";
4+
export const MONTH_DATE_FORMAT = "YYYY-MM";

src/app/gql/lib/db.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,7 @@ const MONGODB_URL = `mongodb+srv://${username}:${password}@cluster0-uk48d.mongod
77

88
export const createDbClient = async (): Promise<IDB> => {
99
try {
10-
const client = await MongoClient.connect(MONGODB_URL, {
11-
// useUnifiedTopology: true,
12-
});
10+
const client = await MongoClient.connect(MONGODB_URL);
1311

1412
const db = client.db(process.env.DB_NAME);
1513
const workTimetable = db.collection("workTimetable");

src/app/log-event/route.ts

Lines changed: 0 additions & 23 deletions
This file was deleted.

src/app/log-home-arrive/route.ts

Lines changed: 0 additions & 43 deletions
This file was deleted.

src/app/log-home-leave/route.ts

Lines changed: 0 additions & 23 deletions
This file was deleted.

0 commit comments

Comments
 (0)