Compare commits

..

No commits in common. "a36cda98431d9cbecd84cd825ddf40e1401374d5" and "1248ec0c95d50418d2adf1a43ea165bf9704cf02" have entirely different histories.

2 changed files with 14 additions and 39 deletions

View File

@ -59,34 +59,6 @@ async function getSurveySaleDetail(request: NextRequest): Promise<NextResponse>
return NextResponse.json(result)
}
/**
* @api {POST} /api/survey-sales/:id , , API
* @apiName POST /api/survey-sales/:id
* @apiGroup SurveySales
* @apiDescription , , API
*
* @apiParam {String} method (PUT, DELETE, PATCH) (required)
* @apiParam {Object} body (required)
*
* @apiSuccess {NextResponse}
* @apiError {Number} 400
*/
async function methodHandler(request: NextRequest): Promise<NextResponse> {
const id = request.nextUrl.pathname.split('/').pop() ?? ''
const body = await request.json()
switch (body.method) {
case 'PUT':
return updateSurveySaleDetail(id, body)
case 'DELETE':
return deleteSurveySaleDetail(id)
case 'PATCH':
return submitSurveySaleDetail(id, body)
default:
return NextResponse.json({ error: 'Invalid method' }, { status: HttpStatusCode.BadRequest })
}
}
/**
* @api {PUT} /api/survey-sales/:id API
* @apiName PUT /api/survey-sales/:id
@ -120,7 +92,9 @@ async function methodHandler(request: NextRequest): Promise<NextResponse> {
* ...
* }
* */
async function updateSurveySaleDetail(id: string, body: any): Promise<NextResponse> {
async function updateSurveySaleDetail(request: NextRequest): Promise<NextResponse> {
const id = request.nextUrl.pathname.split('/').pop() ?? ''
const body = await request.json()
const service = new SurveySalesService({})
const result = await service.tryFunction(() => service.updateSurvey(Number(id), body.survey, body.isTemporary, body.storeId, body.role))
@ -148,7 +122,8 @@ async function updateSurveySaleDetail(id: string, body: any): Promise<NextRespon
* {
* "message": "success"
*/
async function deleteSurveySaleDetail(id: string): Promise<NextResponse> {
async function deleteSurveySaleDetail(request: NextRequest): Promise<NextResponse> {
const id = request.nextUrl.pathname.split('/').pop() ?? ''
const service = new SurveySalesService({})
const result = await service.tryFunction(() => service.deleteSurvey(Number(id)))
if (result instanceof ApiError) {
@ -192,7 +167,9 @@ async function deleteSurveySaleDetail(id: string): Promise<NextResponse> {
* }
* }
*/
async function submitSurveySaleDetail(id: string, body: any): Promise<NextResponse> {
async function submitSurveySaleDetail(request: NextRequest): Promise<NextResponse> {
const id = request.nextUrl.pathname.split('/').pop() ?? ''
const body = await request.json()
const service = new SurveySalesService({})
const result = await service.tryFunction(() => service.submitSurvey(Number(id), body.targetId, body.targetNm))
@ -203,4 +180,6 @@ async function submitSurveySaleDetail(id: string, body: any): Promise<NextRespon
}
export const GET = loggerWrapper(getSurveySaleDetail)
export const POST = loggerWrapper(methodHandler)
export const PUT = loggerWrapper(updateSurveySaleDetail)
export const DELETE = loggerWrapper(deleteSurveySaleDetail)
export const PATCH = loggerWrapper(submitSurveySaleDetail)

View File

@ -276,8 +276,7 @@ export function useSurvey(
const { mutate: updateSurvey, isPending: isUpdatingSurvey } = useMutation({
mutationFn: async ({ survey, isTemporary, storeId }: { survey: SurveyRegistRequest; isTemporary: boolean; storeId?: string | null }) => {
if (id === undefined) throw new Error()
const resp = await axiosInstance(null).post<SurveyRegistRequest>(`/api/survey-sales/${id}`, {
method: 'PUT',
const resp = await axiosInstance(null).put<SurveyRegistRequest>(`/api/survey-sales/${id}`, {
survey: survey,
isTemporary: isTemporary,
storeId: storeId,
@ -307,9 +306,7 @@ export function useSurvey(
const { mutateAsync: deleteSurvey, isPending: isDeletingSurvey } = useMutation({
mutationFn: async () => {
if (id === null) throw new Error()
const resp = await axiosInstance(null).post<boolean>(`/api/survey-sales/${id}`, {
method: 'DELETE',
})
const resp = await axiosInstance(null).delete<boolean>(`/api/survey-sales/${id}`)
return resp.data
},
onSuccess: () => {
@ -332,8 +329,7 @@ export function useSurvey(
const { mutateAsync: submitSurvey, isPending: isSubmittingSurvey } = useMutation({
mutationFn: async ({ targetId, targetNm }: { targetId?: string | null; targetNm?: string | null }) => {
if (!id) throw new Error()
const resp = await axiosInstance(null).post<boolean>(`/api/survey-sales/${id}`, {
method: 'PATCH',
const resp = await axiosInstance(null).patch<boolean>(`/api/survey-sales/${id}`, {
targetId,
targetNm,
})