Merge branch 'dev-sabda-v2' of https://gitlab.com/hanifsalafi/mediahub_redesign
This commit is contained in:
commit
2b8f7b724e
|
|
@ -68,7 +68,7 @@ export default function TaskTaTable() {
|
|||
const [totalData, setTotalData] = React.useState<number>(1);
|
||||
const [sorting, setSorting] = React.useState<SortingState>([]);
|
||||
const [columnFilters, setColumnFilters] = React.useState<ColumnFiltersState>(
|
||||
[]
|
||||
[],
|
||||
);
|
||||
const [columnVisibility, setColumnVisibility] =
|
||||
React.useState<VisibilityState>({});
|
||||
|
|
@ -81,7 +81,7 @@ export default function TaskTaTable() {
|
|||
});
|
||||
|
||||
const [activeTab, setActiveTab] = React.useState<ActiveTab>(
|
||||
isMabesApprover ? "mabes-koor" : "ta"
|
||||
isMabesApprover ? "mabes-koor" : "ta",
|
||||
);
|
||||
const [statusFilter, setStatusFilter] = React.useState<number[]>([]);
|
||||
const [dateFilter, setDateFilter] = React.useState("");
|
||||
|
|
@ -91,6 +91,8 @@ export default function TaskTaTable() {
|
|||
const [page, setPage] = React.useState(1);
|
||||
const [totalPage, setTotalPage] = React.useState(1);
|
||||
|
||||
const KOOR_KURATOR_USER_ID = "464";
|
||||
|
||||
// ✅ columns based on tab
|
||||
const columns = useTableColumns(activeTab);
|
||||
|
||||
|
|
@ -133,6 +135,8 @@ export default function TaskTaTable() {
|
|||
activeTab,
|
||||
]);
|
||||
|
||||
const isKoorKurator = String(userId) === KOOR_KURATOR_USER_ID;
|
||||
|
||||
async function fetchData() {
|
||||
const formattedStartDate = dateFilter
|
||||
? format(new Date(dateFilter), "yyyy-MM-dd")
|
||||
|
|
@ -149,7 +153,7 @@ export default function TaskTaTable() {
|
|||
filterByCode,
|
||||
formattedStartDate,
|
||||
"atensi-khusus",
|
||||
statusFilter
|
||||
statusFilter,
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -161,7 +165,7 @@ export default function TaskTaTable() {
|
|||
filterByCode,
|
||||
formattedStartDate,
|
||||
"tugas-harian",
|
||||
statusFilter
|
||||
statusFilter,
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -173,21 +177,20 @@ export default function TaskTaTable() {
|
|||
filterByCode,
|
||||
formattedStartDate,
|
||||
"atensi-khusus",
|
||||
statusFilter
|
||||
statusFilter,
|
||||
);
|
||||
}
|
||||
|
||||
// ✅ TAB BARU: khusus Mabes Approver
|
||||
if (activeTab === "mabes-koor") {
|
||||
// kalau bukan Mabes Approver, jangan fetch
|
||||
if (!isMabesApprover) {
|
||||
// hanya blok kalau BUKAN Mabes Approver DAN BUKAN Koor Kurator
|
||||
if (!isMabesApprover && !isKoorKurator) {
|
||||
setDataTable([]);
|
||||
setTotalData(0);
|
||||
setTotalPage(0);
|
||||
return;
|
||||
}
|
||||
|
||||
// NOTE: backend endpoint harus return tasks mabes -> koorkurator
|
||||
res = await listTaskTa(
|
||||
page - 1,
|
||||
search,
|
||||
|
|
@ -195,12 +198,20 @@ export default function TaskTaTable() {
|
|||
filterByCode,
|
||||
formattedStartDate,
|
||||
"atensi-khusus",
|
||||
statusFilter
|
||||
statusFilter,
|
||||
);
|
||||
}
|
||||
|
||||
let contentData = res?.data?.data?.content || [];
|
||||
|
||||
// 🚫 TAB TA: SEMBUNYIKAN TASK MABES → KOOR
|
||||
if (activeTab === "ta") {
|
||||
contentData = contentData.filter((item: any) => {
|
||||
const assignedUsers = String(item?.assignedToUsers || "");
|
||||
return !assignedUsers.split(",").includes(KOOR_KURATOR_USER_ID);
|
||||
});
|
||||
}
|
||||
|
||||
// ⛔ blok task baru kalau upload belum selesai (fitur kamu)
|
||||
const isUploadingTA =
|
||||
localStorage.getItem("TA_UPLOAD_IN_PROGRESS") === "true";
|
||||
|
|
@ -235,13 +246,14 @@ export default function TaskTaTable() {
|
|||
// }
|
||||
if (activeTab === "mabes-koor") {
|
||||
contentData = contentData.filter((item: any) => {
|
||||
const createdByLevel = item?.createdBy?.userLevel?.name || "";
|
||||
const createdByLevel =
|
||||
item?.createdBy?.userLevel?.name || item?.createdByLevelName || "";
|
||||
|
||||
const assignedUsers = String(item?.assignedToUsers || "");
|
||||
|
||||
return (
|
||||
/MABES/i.test(createdByLevel) &&
|
||||
assignedUsers.split(",").includes("464")
|
||||
assignedUsers.split(",").includes(KOOR_KURATOR_USER_ID)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
|
@ -270,7 +282,7 @@ export default function TaskTaTable() {
|
|||
|
||||
function handleStatusCheckboxChange(value: number) {
|
||||
setStatusFilter((prev) =>
|
||||
prev.includes(value) ? prev.filter((s) => s !== value) : [...prev, value]
|
||||
prev.includes(value) ? prev.filter((s) => s !== value) : [...prev, value],
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -463,7 +475,7 @@ export default function TaskTaTable() {
|
|||
? null
|
||||
: flexRender(
|
||||
header.column.columnDef.header,
|
||||
header.getContext()
|
||||
header.getContext(),
|
||||
)}
|
||||
</TableHead>
|
||||
))}
|
||||
|
|
|
|||
Loading…
Reference in New Issue