diff --git a/src/app/(application)/division/[id]/(fitur-division)/task/create/page.tsx b/src/app/(application)/division/[id]/(fitur-division)/task/create/page.tsx
index 543ecc5..3cb4e90 100644
--- a/src/app/(application)/division/[id]/(fitur-division)/task/create/page.tsx
+++ b/src/app/(application)/division/[id]/(fitur-division)/task/create/page.tsx
@@ -1,10 +1,6 @@
-import { CreateTask, FileSave } from "@/module/task";
+import { CreateTask } from "@/module/task";
function Page({ searchParams }: { searchParams: any }) {
-
- // if (searchParams.page == "file-save")
- // return
-
return
}
diff --git a/src/app/api/discussion/route.ts b/src/app/api/discussion/route.ts
index 45a538c..afce46f 100644
--- a/src/app/api/discussion/route.ts
+++ b/src/app/api/discussion/route.ts
@@ -40,12 +40,10 @@ export async function GET(request: Request) {
where: {
isActive: true,
idDivision: idDivision,
- User: {
- name: {
- contains: (name == undefined || name == "null") ? "" : name,
- mode: "insensitive"
- }
- }
+ desc: {
+ contains: (name == undefined || name == "null") ? "" : name,
+ mode: "insensitive"
+ },
},
orderBy: {
createdAt: 'desc'
diff --git a/src/app/api/division/[id]/detail/route.ts b/src/app/api/division/[id]/detail/route.ts
index af4fd71..d04084a 100644
--- a/src/app/api/division/[id]/detail/route.ts
+++ b/src/app/api/division/[id]/detail/route.ts
@@ -86,7 +86,12 @@ export async function GET(request: Request, context: { params: { id: string } })
idDivision: String(id),
status: 0,
isActive: true,
- dateStart: new Date()
+ dateStart: new Date(),
+ DivisionProject: {
+ status: {
+ lt: 3
+ }
+ }
},
select: {
id: true,
diff --git a/src/app/api/division/more/route.ts b/src/app/api/division/more/route.ts
index fdf5394..d61e06d 100644
--- a/src/app/api/division/more/route.ts
+++ b/src/app/api/division/more/route.ts
@@ -38,6 +38,9 @@ export async function GET(request: Request) {
select: {
id: true,
name: true,
+ },
+ orderBy: {
+ name: "asc"
}
});
diff --git a/src/app/api/task/[id]/route.ts b/src/app/api/task/[id]/route.ts
index 6dc4e93..6f3da5d 100644
--- a/src/app/api/task/[id]/route.ts
+++ b/src/app/api/task/[id]/route.ts
@@ -44,14 +44,23 @@ export async function GET(request: Request, context: { params: { id: string } })
}
})
- const semua = dataProgress.length
- const selesai = _.filter(dataProgress, { status: 1 }).length
- const progress = Math.ceil((selesai / semua) * 100)
+ if (dataProgress.length > 0) {
+ const semua = dataProgress.length
+ const selesai = _.filter(dataProgress, { status: 1 }).length
+ const progress = Math.ceil((selesai / semua) * 100)
- allData = {
- progress: progress,
- lastUpdate: moment(dataProgress[0].updatedAt).format("DD MMMM YYYY"),
+ allData = {
+ progress: progress,
+ lastUpdate: moment(dataProgress[0]?.updatedAt).format("DD MMMM YYYY"),
+ }
+ } else {
+ allData = {
+ progress: 0,
+ lastUpdate: '1 Januari 1999',
+ }
}
+
+
} else if (kategori == "task") {
const dataProgress = await prisma.divisionProjectTask.findMany({
where: {
@@ -66,7 +75,7 @@ export async function GET(request: Request, context: { params: { id: string } })
dateEnd: true,
},
orderBy: {
- status: 'desc'
+ createdAt: 'asc'
}
})
@@ -192,6 +201,34 @@ export async function POST(request: Request, context: { params: { id: string } }
}
});
+ // const cek progress
+ const dataTask = await prisma.divisionProjectTask.findMany({
+ where: {
+ isActive: true,
+ idProject: id
+ }
+ })
+
+ const semua = dataTask.length
+ const selesai = _.filter(dataTask, { status: 1 }).length
+ const progress = Math.ceil((selesai / semua) * 100)
+ let statusProject = 1
+
+ if (progress == 100) {
+ statusProject = 2
+ } else if (progress == 0) {
+ statusProject = 0
+ }
+
+ const updProject = await prisma.divisionProject.update({
+ where: {
+ id: id
+ },
+ data: {
+ status: statusProject
+ }
+ })
+
// create log user
const log = await createLogUser({ act: 'CREATE', desc: 'User menambahkan detail tugas divisi', table: 'divisionProjectTask', data: create.id })
diff --git a/src/app/api/task/route.ts b/src/app/api/task/route.ts
index a68b206..8209257 100644
--- a/src/app/api/task/route.ts
+++ b/src/app/api/task/route.ts
@@ -68,6 +68,9 @@ export async function GET(request: Request) {
idUser: true
}
}
+ },
+ orderBy: {
+ createdAt: "desc"
}
});
diff --git a/src/module/_global/layout/layout_modal.tsx b/src/module/_global/layout/layout_modal.tsx
index aa3858f..88b9cdb 100644
--- a/src/module/_global/layout/layout_modal.tsx
+++ b/src/module/_global/layout/layout_modal.tsx
@@ -30,6 +30,7 @@ export default function LayoutModal({ opened, onClose, description, onYes }: { o
>
@@ -39,6 +40,7 @@ export default function LayoutModal({ opened, onClose, description, onYes }: { o
>
diff --git a/src/module/project/ui/tab_project.tsx b/src/module/project/ui/tab_project.tsx
index ef72296..503109a 100644
--- a/src/module/project/ui/tab_project.tsx
+++ b/src/module/project/ui/tab_project.tsx
@@ -26,12 +26,12 @@ export default function TabProject() {
{
id: "0",
title: "Segera",
- icon:
+ icon:
},
{
id: "1",
title: "Dikerjakan",
- icon:
+ icon:
},
{
id: "2",
@@ -73,7 +73,7 @@ export default function TabProject() {
color={
status == item.id
? "white"
- : tema.get().utama
+ : (status == null && item.id == "0") ? "white" : tema.get().utama
}
key={index}
onClick={() => { router.push("?status=" + item.id + "&group=" + group) }}
@@ -81,8 +81,8 @@ export default function TabProject() {
radius={"xl"}
bg={
status == item.id
- ? tema.get().utama
- : "transparent"
+ ? tema.get().bgFiturDivision
+ : (status == null && item.id == "0") ? tema.get().bgFiturDivision : "transparent"
}
leftSection={item.icon}
>
diff --git a/src/module/task/ui/add_file_detail_task.tsx b/src/module/task/ui/add_file_detail_task.tsx
index ed858fe..389baa3 100644
--- a/src/module/task/ui/add_file_detail_task.tsx
+++ b/src/module/task/ui/add_file_detail_task.tsx
@@ -98,9 +98,9 @@ export default function AddFileDetailTask() {
}}
activateOnClick={false}
maxSize={3 * 1024 ** 2}
- accept={['text/csv', 'image/png', 'image/jpeg', 'image/heic', 'application/pdf']}
+ accept={['image/png', 'image/jpeg', 'image/heic', 'application/pdf']}
onReject={(files) => {
- return toast.error('File yang diizinkan: .csv, .png, .jpg, .heic, .pdf dengan ukuran maksimal 3 MB')
+ return toast.error('File yang diizinkan: .png, .jpg, .heic, .pdf dengan ukuran maksimal 3 MB')
}}
>
diff --git a/src/module/task/ui/create_task.tsx b/src/module/task/ui/create_task.tsx
index 2c6b186..2273b67 100644
--- a/src/module/task/ui/create_task.tsx
+++ b/src/module/task/ui/create_task.tsx
@@ -304,9 +304,9 @@ export default function CreateTask() {
}}
activateOnClick={false}
maxSize={3 * 1024 ** 2}
- accept={['text/csv', 'image/png', 'image/jpeg', 'image/heic', 'application/pdf']}
+ accept={['image/png', 'image/jpeg', 'image/heic', 'application/pdf']}
onReject={(files) => {
- return toast.error('File yang diizinkan: .csv, .png, .jpg, .heic, .pdf dengan ukuran maksimal 3 MB')
+ return toast.error('File yang diizinkan: .png, .jpg, .heic, .pdf dengan ukuran maksimal 3 MB')
}}
>
diff --git a/src/module/task/ui/detail_list_anggota_task.tsx b/src/module/task/ui/detail_list_anggota_task.tsx
index 1841852..71c1357 100644
--- a/src/module/task/ui/detail_list_anggota_task.tsx
+++ b/src/module/task/ui/detail_list_anggota_task.tsx
@@ -100,9 +100,8 @@ export default function ListAnggotaDetailTask() {
style={{
border: `1px solid ${"#C7D6E8"}`,
borderRadius: 10,
+ padding: 20
}}
- px={20}
- py={10}
>
{
loading ?
@@ -114,7 +113,7 @@ export default function ListAnggotaDetailTask() {
))
:
- isData.length === 0 ? Tidak ada anggota :
+ isData.length === 0 ? Tidak ada anggota :
isData.map((v, i) => {
return (
diff --git a/src/module/task/ui/detail_list_file_task.tsx b/src/module/task/ui/detail_list_file_task.tsx
index d8d4c9f..a8037d2 100644
--- a/src/module/task/ui/detail_list_file_task.tsx
+++ b/src/module/task/ui/detail_list_file_task.tsx
@@ -109,7 +109,7 @@ export default function ListFileDetailTask() {
))
:
- isData.length === 0 ? Tidak ada file :
+ isData.length === 0 ? Tidak ada file :
isData.map((item, index) => {
return (
{
loading ?
@@ -130,7 +129,7 @@ export default function ListTugasDetailTask() {
>
:
- isData.length === 0 ? Tidak ada tugas :
+ isData.length === 0 ? Tidak ada tugas :
isData.map((item, index) => {
return (
diff --git a/src/module/task/ui/edit_detail_task.tsx b/src/module/task/ui/edit_detail_task.tsx
index e2038fa..6851776 100644
--- a/src/module/task/ui/edit_detail_task.tsx
+++ b/src/module/task/ui/edit_detail_task.tsx
@@ -32,6 +32,7 @@ export default function EditDetailTask() {
const param = useParams<{ id: string, detail: string }>()
const [openModal, setOpenModal] = useState(false)
const [loading, setLoading] = useState(true)
+ const [idTugas, setIdTugas] = useState("")
const tema = useHookstate(TEMA)
async function onSubmit() {
@@ -50,6 +51,7 @@ export default function EditDetailTask() {
if (res.success) {
toast.success(res.message);
+ router.push(`/division/${param.id}/task/${idTugas}`)
} else {
toast.error(res.message);
}
@@ -65,6 +67,7 @@ export default function EditDetailTask() {
setLoading(true)
const res = await funGetDetailTask(param.detail);
if (res.success) {
+ setIdTugas(res.data.idProject)
setTitle(res.data.title)
setValue([
new Date(moment(res.data.dateStart).format('YYYY-MM-DD')),