diff --git a/src/app/(application)/project/update/[id]/page.tsx b/src/app/(application)/project/update/[id]/page.tsx index f49558a..988d08b 100644 --- a/src/app/(application)/project/update/[id]/page.tsx +++ b/src/app/(application)/project/update/[id]/page.tsx @@ -1,5 +1,4 @@ import { EditDetailTaskProject } from "@/module/project"; - import React from "react"; function Page() { diff --git a/src/app/api/project/[id]/route.ts b/src/app/api/project/[id]/route.ts index 5c2c2d9..19bc836 100644 --- a/src/app/api/project/[id]/route.ts +++ b/src/app/api/project/[id]/route.ts @@ -173,8 +173,8 @@ export async function POST(request: Request, context: { params: { id: string } } data: { title: name, idProject: id, - dateStart: new Date(moment(dateStart).format('YYYY-MM-DD')), - dateEnd: new Date(moment(dateEnd).format('YYYY-MM-DD')), + dateStart: new Date(dateStart), + dateEnd: new Date(dateEnd), }, select: { id: true diff --git a/src/app/api/project/detail/[id]/route.ts b/src/app/api/project/detail/[id]/route.ts index d0c4cf8..abd5571 100644 --- a/src/app/api/project/detail/[id]/route.ts +++ b/src/app/api/project/detail/[id]/route.ts @@ -1,7 +1,6 @@ import { prisma } from "@/module/_global"; import { funGetUserByCookies } from "@/module/auth"; import { createLogUser } from "@/module/user"; -import moment from "moment"; import { NextResponse } from "next/server"; @@ -231,8 +230,8 @@ export async function POST(request: Request, context: { params: { id: string } } }, data: { title, - dateStart: new Date(moment(dateStart).format('YYYY-MM-DD')), - dateEnd: new Date(moment(dateEnd).format('YYYY-MM-DD')), + dateStart: new Date(dateStart), + dateEnd: new Date(dateEnd), } }) diff --git a/src/app/api/project/route.ts b/src/app/api/project/route.ts index 54d4943..142ab7d 100644 --- a/src/app/api/project/route.ts +++ b/src/app/api/project/route.ts @@ -2,7 +2,6 @@ import { DIR, funUploadFile, prisma } from "@/module/_global"; import { funGetUserByCookies } from "@/module/auth"; import { createLogUser } from "@/module/user"; import _ from "lodash"; -import moment from "moment"; import { NextResponse } from "next/server"; @@ -157,8 +156,8 @@ export async function POST(request: Request) { ..._.omit(v, ["dateStart", "dateEnd", "name"]), idProject: data.id, title: v.title, - dateStart: new Date(moment(v.dateStart).format('YYYY-MM-DD')), - dateEnd: new Date(moment(v.dateEnd).format('YYYY-MM-DD')), + dateStart: new Date(v.dateStart), + dateEnd: new Date(v.dateEnd), })) const insertTask = await prisma.projectTask.createMany({ diff --git a/src/module/project/lib/api_project.ts b/src/module/project/lib/api_project.ts index 2b602df..c3dee5b 100644 --- a/src/module/project/lib/api_project.ts +++ b/src/module/project/lib/api_project.ts @@ -1,4 +1,4 @@ -import { IFormAddDetailproject, IFormAddMemberProject, IFormDateProject } from "./type_project"; +import { IFormAddDetailproject, IFormAddMemberProject, IFormDateProject, NewIFormDateProject } from "./type_project"; export const funGetAllProject = async (path?: string) => { @@ -54,7 +54,7 @@ export const funGetDetailProject = async (path: string) => { return await response.json().catch(() => null); } -export const funEditDetailProject = async (path: string, data: IFormDateProject) => { +export const funEditDetailProject = async (path: string, data: NewIFormDateProject) => { const response = await fetch(`/api/project/detail/${path}`, { method: "POST", headers: { diff --git a/src/module/project/lib/type_project.ts b/src/module/project/lib/type_project.ts index 94df9c4..fcceeae 100644 --- a/src/module/project/lib/type_project.ts +++ b/src/module/project/lib/type_project.ts @@ -45,6 +45,12 @@ export interface IFormDateProject { title: string, } +export interface NewIFormDateProject{ + dateStart: string, + dateEnd: string, + title: string, +} + export interface IFormMemberProject { idUser: string, name: string, @@ -53,8 +59,8 @@ export interface IFormMemberProject { export interface IFormAddDetailproject { - dateStart: Date, - dateEnd: Date, + dateStart: string, + dateEnd: string, name: string } diff --git a/src/module/project/ui/add_detail_task_project.tsx b/src/module/project/ui/add_detail_task_project.tsx index 0308454..abc9bce 100644 --- a/src/module/project/ui/add_detail_task_project.tsx +++ b/src/module/project/ui/add_detail_task_project.tsx @@ -4,13 +4,13 @@ import LayoutModal from '@/module/_global/layout/layout_modal'; import { useHookstate } from '@hookstate/core'; import { Box, Button, Flex, Group, rem, SimpleGrid, Stack, Text, TextInput } from '@mantine/core'; import { DatePicker } from '@mantine/dates'; +import { useShallowEffect } from '@mantine/hooks'; import moment from 'moment'; import { useParams, useRouter } from 'next/navigation'; import { useState } from 'react'; import toast from 'react-hot-toast'; import { useWibuRealtime } from 'wibu-realtime'; import { funCreateDetailProject } from '../lib/api_project'; -import { useShallowEffect } from '@mantine/hooks'; export default function AddDetailTaskProject() { const [value, setValue] = useState<[Date | null, Date | null]>([null, null]); @@ -35,8 +35,8 @@ export default function AddDetailTaskProject() { setLoadingModal(true) const res = await funCreateDetailProject(param.id, { name, - dateStart: (value[0] != null) ? value[0] : new Date, - dateEnd: (value[1] != null) ? value[1] : new Date, + dateStart: (value[0] != null) ? moment(value[0]).format('YYYY-MM-DD') : moment(new Date).format('YYYY-MM-DD'), + dateEnd: (value[1] != null) ? moment(value[1]).format('YYYY-MM-DD') : moment(new Date).format('YYYY-MM-DD'), }) if (res.success) { diff --git a/src/module/project/ui/add_member_detail_project.tsx b/src/module/project/ui/add_member_detail_project.tsx index 79c1505..927f94e 100644 --- a/src/module/project/ui/add_member_detail_project.tsx +++ b/src/module/project/ui/add_member_detail_project.tsx @@ -223,12 +223,12 @@ export default function AddMemberDetailProject() { - + {/* Pilih Semua Anggota {selectAll ? : ""} - + */} {loading ? Array(8) .fill(null) diff --git a/src/module/project/ui/create_date_end_task.tsx b/src/module/project/ui/create_date_end_task.tsx index 116f510..acecb76 100644 --- a/src/module/project/ui/create_date_end_task.tsx +++ b/src/module/project/ui/create_date_end_task.tsx @@ -3,15 +3,15 @@ import { LayoutNavbarNew, TEMA } from "@/module/_global"; import { useHookstate } from "@hookstate/core"; import { ActionIcon, Box, Button, Flex, Group, rem, SimpleGrid, Stack, Text, TextInput } from "@mantine/core"; import { DatePicker } from "@mantine/dates"; +import { useShallowEffect } from "@mantine/hooks"; import moment from "moment"; import { useState } from "react"; import toast from "react-hot-toast"; import { HiChevronLeft } from "react-icons/hi2"; -import { IFormDateProject } from "../lib/type_project"; -import { useShallowEffect } from "@mantine/hooks"; +import { NewIFormDateProject } from "../lib/type_project"; -export default function ViewDateEndTask({ onClose, onSet }: { onClose: (val: boolean) => void, onSet: (val: IFormDateProject) => void }) { +export default function ViewDateEndTask({ onClose, onSet }: { onClose: (val: boolean) => void, onSet: (val: NewIFormDateProject) => void }) { const [value, setValue] = useState<[Date | null, Date | null]>([null, null]); const [title, setTitle] = useState("") const tema = useHookstate(TEMA) @@ -29,8 +29,8 @@ export default function ViewDateEndTask({ onClose, onSet }: { onClose: (val: boo return toast.error("Error! harus memasukkan judul tugas") onSet({ - dateStart: value[0], - dateEnd: value[1], + dateStart: moment(value[0]).format('YYYY-MM-DD'), + dateEnd: moment(value[1]).format('YYYY-MM-DD'), title: title }) } diff --git a/src/module/project/ui/create_project.tsx b/src/module/project/ui/create_project.tsx index e31f9ed..75124c2 100644 --- a/src/module/project/ui/create_project.tsx +++ b/src/module/project/ui/create_project.tsx @@ -15,7 +15,7 @@ import { FaTrash } from "react-icons/fa6"; import { IoIosArrowDropright } from "react-icons/io"; import { useWibuRealtime } from "wibu-realtime"; import { funCreateProject } from "../lib/api_project"; -import { IFormDateProject, IFormMemberProject, IListFileTaskProject } from "../lib/type_project"; +import { IFormMemberProject, IListFileTaskProject, NewIFormDateProject } from "../lib/type_project"; import { globalMemberProject } from "../lib/val_project"; import ViewDateEndTask from "./create_date_end_task"; import CreateUsersProject from "./create_users_project"; @@ -32,7 +32,7 @@ export default function CreateProject() { const member = useHookstate(globalMemberProject) const memberValue = member.get() as IFormMemberProject[] const [openTugas, setOpenTugas] = useState(false) - const [dataTask, setDataTask] = useState([]) + const [dataTask, setDataTask] = useState([]) const openRef = useRef<() => void>(null) const [fileForm, setFileForm] = useState([]) const [listFile, setListFile] = useState([]) diff --git a/src/module/project/ui/edit_detail_task_project.tsx b/src/module/project/ui/edit_detail_task_project.tsx index 4a9be91..849518c 100644 --- a/src/module/project/ui/edit_detail_task_project.tsx +++ b/src/module/project/ui/edit_detail_task_project.tsx @@ -42,8 +42,8 @@ export default function EditDetailTaskProject() { setLoadingModal(true) const res = await funEditDetailProject(param.id, { title: name, - dateStart: value[0], - dateEnd: value[1], + dateStart: moment(value[0]).format('YYYY-MM-DD'), + dateEnd: moment(value[1]).format('YYYY-MM-DD'), }) diff --git a/src/module/project/ui/results_date-and_task.tsx b/src/module/project/ui/results_date-and_task.tsx index 95cfe47..5545672 100644 --- a/src/module/project/ui/results_date-and_task.tsx +++ b/src/module/project/ui/results_date-and_task.tsx @@ -1,10 +1,9 @@ -import { Box, Center, Grid, Group, SimpleGrid, Spoiler, Text } from '@mantine/core'; -import React from 'react'; -import { AiOutlineFileSync } from "react-icons/ai"; -import { IFormDateProject } from '../lib/type_project'; +import { Box, Center, Grid, Group, SimpleGrid, Text } from '@mantine/core'; import moment from 'moment'; +import { AiOutlineFileSync } from "react-icons/ai"; +import { NewIFormDateProject } from '../lib/type_project'; -export default function ResultsDateAndTask(data: IFormDateProject) { +export default function ResultsDateAndTask(data: NewIFormDateProject) { return (