upd: task

Deskripsi:
- update status task
- progress task

No Issues
This commit is contained in:
amel
2024-08-20 17:31:19 +08:00
parent 21c9aa4270
commit 7338d3041b
5 changed files with 37 additions and 7 deletions

View File

@@ -1,5 +1,6 @@
import { prisma } from "@/module/_global";
import { funGetUserByCookies } from "@/module/auth";
import _ from "lodash";
import moment from "moment";
import { NextResponse } from "next/server";
@@ -62,7 +63,7 @@ export async function PUT(request: Request, context: { params: { id: string } })
}
const { id } = context.params;
const { status } = (await request.json());
const { status, idProject } = (await request.json());
const data = await prisma.divisionProjectTask.count({
where: {
id: id,
@@ -88,6 +89,34 @@ export async function PUT(request: Request, context: { params: { id: string } })
},
});
// const cek progress
const dataTask = await prisma.divisionProjectTask.findMany({
where: {
isActive: true,
idProject: idProject
}
})
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: idProject
},
data: {
status: statusProject
}
})
return NextResponse.json(
{
success: true,

View File

@@ -49,7 +49,8 @@ export async function GET(request: Request) {
isActive: true
},
select: {
title: true
title: true,
status: true
}
},
DivisionProjectMember: {
@@ -65,7 +66,7 @@ export async function GET(request: Request) {
const formatData = data.map((v: any) => ({
..._.omit(v, ["DivisionProjectTask", "DivisionProjectMember"]),
progress: ceil(v.DivisionProjectTask.filter((i: any) => i.status === 1).length / v.DivisionProjectTask.length),
progress: ceil((v.DivisionProjectTask.filter((i: any) => i.status == 1).length*100) / v.DivisionProjectTask.length),
member: v.DivisionProjectMember.length
}))