@@ -11,7 +11,7 @@ import { | |||||
} from "@/app/api/projects"; | } from "@/app/api/projects"; | ||||
import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | ||||
import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; | import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import CreateProject from "@/components/CreateProject"; | import CreateProject from "@/components/CreateProject"; | ||||
import { I18nProvider, getServerI18n } from "@/i18n"; | import { I18nProvider, getServerI18n } from "@/i18n"; | ||||
import { MAINTAIN_PROJECT } from "@/middleware"; | import { MAINTAIN_PROJECT } from "@/middleware"; | ||||
@@ -26,7 +26,7 @@ export const metadata: Metadata = { | |||||
const Projects: React.FC = async () => { | const Projects: React.FC = async () => { | ||||
const { t } = await getServerI18n("projects"); | const { t } = await getServerI18n("projects"); | ||||
const abilities = await getUserAbilities(); | |||||
const abilities = await fetchUserAbilities(); | |||||
if (![MAINTAIN_PROJECT].some((ability) => abilities.includes(ability))) { | if (![MAINTAIN_PROJECT].some((ability) => abilities.includes(ability))) { | ||||
notFound(); | notFound(); | ||||
@@ -13,7 +13,7 @@ import { | |||||
} from "@/app/api/projects"; | } from "@/app/api/projects"; | ||||
import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | ||||
import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; | import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import { ServerFetchError } from "@/app/utils/fetchUtil"; | import { ServerFetchError } from "@/app/utils/fetchUtil"; | ||||
import CreateProject from "@/components/CreateProject"; | import CreateProject from "@/components/CreateProject"; | ||||
import { I18nProvider, getServerI18n } from "@/i18n"; | import { I18nProvider, getServerI18n } from "@/i18n"; | ||||
@@ -28,7 +28,7 @@ export const metadata: Metadata = { | |||||
const Projects: React.FC = async () => { | const Projects: React.FC = async () => { | ||||
const { t } = await getServerI18n("projects"); | const { t } = await getServerI18n("projects"); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
if (![MAINTAIN_PROJECT].some(ability => abilities.includes(ability))) { | if (![MAINTAIN_PROJECT].some(ability => abilities.includes(ability))) { | ||||
notFound(); | notFound(); | ||||
@@ -12,7 +12,7 @@ import { | |||||
} from "@/app/api/projects"; | } from "@/app/api/projects"; | ||||
import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | ||||
import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; | import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import { ServerFetchError } from "@/app/utils/fetchUtil"; | import { ServerFetchError } from "@/app/utils/fetchUtil"; | ||||
import CreateProject from "@/components/CreateProject"; | import CreateProject from "@/components/CreateProject"; | ||||
import { I18nProvider, getServerI18n } from "@/i18n"; | import { I18nProvider, getServerI18n } from "@/i18n"; | ||||
@@ -34,7 +34,7 @@ const Projects: React.FC<Props> = async ({ searchParams }) => { | |||||
const { t } = await getServerI18n("projects"); | const { t } = await getServerI18n("projects"); | ||||
// Assume projectId is string here | // Assume projectId is string here | ||||
const projectId = searchParams["id"]; | const projectId = searchParams["id"]; | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
if (!projectId || isArray(projectId) || ![MAINTAIN_PROJECT].some(ability => abilities.includes(ability))) { | if (!projectId || isArray(projectId) || ![MAINTAIN_PROJECT].some(ability => abilities.includes(ability))) { | ||||
notFound(); | notFound(); | ||||
@@ -13,7 +13,7 @@ import { | |||||
} from "@/app/api/projects"; | } from "@/app/api/projects"; | ||||
import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | ||||
import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; | import { fetchAllTasks, fetchTaskTemplates } from "@/app/api/tasks"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import CreateProject from "@/components/CreateProject"; | import CreateProject from "@/components/CreateProject"; | ||||
import { I18nProvider, getServerI18n } from "@/i18n"; | import { I18nProvider, getServerI18n } from "@/i18n"; | ||||
import { MAINTAIN_PROJECT } from "@/middleware"; | import { MAINTAIN_PROJECT } from "@/middleware"; | ||||
@@ -34,7 +34,7 @@ const Projects: React.FC<Props> = async ({ searchParams }) => { | |||||
const { t } = await getServerI18n("projects"); | const { t } = await getServerI18n("projects"); | ||||
const projectId = searchParams["id"]; | const projectId = searchParams["id"]; | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
if (!projectId || isArray(projectId) || !abilities.includes(MAINTAIN_PROJECT)) { | if (!projectId || isArray(projectId) || !abilities.includes(MAINTAIN_PROJECT)) { | ||||
notFound(); | notFound(); | ||||
} | } | ||||
@@ -1,5 +1,5 @@ | |||||
import { fetchProjectCategories, fetchProjects, preloadProjects } from "@/app/api/projects"; | import { fetchProjectCategories, fetchProjects, preloadProjects } from "@/app/api/projects"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import ProjectSearch from "@/components/ProjectSearch"; | import ProjectSearch from "@/components/ProjectSearch"; | ||||
import { getServerI18n } from "@/i18n"; | import { getServerI18n } from "@/i18n"; | ||||
import { MAINTAIN_PROJECT, VIEW_PROJECT } from "@/middleware"; | import { MAINTAIN_PROJECT, VIEW_PROJECT } from "@/middleware"; | ||||
@@ -21,7 +21,7 @@ const Projects: React.FC = async () => { | |||||
// preloadProjects(); | // preloadProjects(); | ||||
fetchProjectCategories(); | fetchProjectCategories(); | ||||
const projects = await fetchProjects(); | const projects = await fetchProjects(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
if (![MAINTAIN_PROJECT].some(ability => abilities.includes(ability))) { | if (![MAINTAIN_PROJECT].some(ability => abilities.includes(ability))) { | ||||
notFound(); | notFound(); | ||||
} | } | ||||
@@ -8,7 +8,7 @@ import Typography from "@mui/material/Typography"; | |||||
import Link from "next/link"; | import Link from "next/link"; | ||||
import { Suspense } from "react"; | import { Suspense } from "react"; | ||||
import { fetchCompanys, preloadCompanys } from "@/app/api/companys"; | import { fetchCompanys, preloadCompanys } from "@/app/api/companys"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import { MAINTAIN_COMPANY } from "@/middleware"; | import { MAINTAIN_COMPANY } from "@/middleware"; | ||||
export const metadata: Metadata = { | export const metadata: Metadata = { | ||||
@@ -22,7 +22,7 @@ const Company: React.FC = async () => { | |||||
fetchCompanys(); | fetchCompanys(); | ||||
preloadCompanys(); | preloadCompanys(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
const maintainCompany = abilities.includes(MAINTAIN_COMPANY) | const maintainCompany = abilities.includes(MAINTAIN_COMPANY) | ||||
return ( | return ( | ||||
@@ -9,7 +9,7 @@ import { Metadata } from "next"; | |||||
import Link from "next/link"; | import Link from "next/link"; | ||||
import { Suspense } from "react"; | import { Suspense } from "react"; | ||||
import { I18nProvider } from "@/i18n"; | import { I18nProvider } from "@/i18n"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import { MAINTAIN_CLIENT } from "@/middleware"; | import { MAINTAIN_CLIENT } from "@/middleware"; | ||||
export const metadata: Metadata = { | export const metadata: Metadata = { | ||||
@@ -19,7 +19,7 @@ export const metadata: Metadata = { | |||||
const Customer: React.FC = async () => { | const Customer: React.FC = async () => { | ||||
const { t } = await getServerI18n("customer"); | const { t } = await getServerI18n("customer"); | ||||
preloadAllCustomers(); | preloadAllCustomers(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
const maintainClient = abilities.includes(MAINTAIN_CLIENT) | const maintainClient = abilities.includes(MAINTAIN_CLIENT) | ||||
return ( | return ( | ||||
@@ -8,7 +8,7 @@ import Typography from "@mui/material/Typography"; | |||||
import Link from "next/link"; | import Link from "next/link"; | ||||
import { Suspense } from "react"; | import { Suspense } from "react"; | ||||
import { fetchDepartments, preloadDepartments } from "@/app/api/departments"; | import { fetchDepartments, preloadDepartments } from "@/app/api/departments"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import { MAINTAIN_DEPARTMENT } from "@/middleware"; | import { MAINTAIN_DEPARTMENT } from "@/middleware"; | ||||
export const metadata: Metadata = { | export const metadata: Metadata = { | ||||
@@ -22,7 +22,7 @@ const Department: React.FC = async () => { | |||||
// fetchDepartments(); | // fetchDepartments(); | ||||
// preloadDepartments(); | // preloadDepartments(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
const maintainDepartment = abilities.includes(MAINTAIN_DEPARTMENT) | const maintainDepartment = abilities.includes(MAINTAIN_DEPARTMENT) | ||||
return ( | return ( | ||||
@@ -4,7 +4,7 @@ import Typography from "@mui/material/Typography"; | |||||
import { Metadata } from "next"; | import { Metadata } from "next"; | ||||
import { Suspense } from "react"; | import { Suspense } from "react"; | ||||
import { I18nProvider } from "@/i18n"; | import { I18nProvider } from "@/i18n"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import { preloadMails } from "@/app/api/mail"; | import { preloadMails } from "@/app/api/mail"; | ||||
import MailSetting from "@/components/MailSetting"; | import MailSetting from "@/components/MailSetting"; | ||||
@@ -15,7 +15,7 @@ export const metadata: Metadata = { | |||||
const Customer: React.FC = async () => { | const Customer: React.FC = async () => { | ||||
const { t } = await getServerI18n("mail"); | const { t } = await getServerI18n("mail"); | ||||
preloadMails(); | preloadMails(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
return ( | return ( | ||||
<> | <> | ||||
@@ -8,7 +8,7 @@ import Typography from "@mui/material/Typography"; | |||||
import Link from "next/link"; | import Link from "next/link"; | ||||
import { Suspense } from "react"; | import { Suspense } from "react"; | ||||
import { fetchPositions, preloadPositions } from "@/app/api/positions"; | import { fetchPositions, preloadPositions } from "@/app/api/positions"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import { MAINTAIN_POSITION } from "@/middleware"; | import { MAINTAIN_POSITION } from "@/middleware"; | ||||
export const metadata: Metadata = { | export const metadata: Metadata = { | ||||
@@ -22,7 +22,7 @@ const Position: React.FC = async () => { | |||||
// fetchPositions(); | // fetchPositions(); | ||||
// preloadPositions(); | // preloadPositions(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
const maintainPosition = abilities.includes(MAINTAIN_POSITION) | const maintainPosition = abilities.includes(MAINTAIN_POSITION) | ||||
return ( | return ( | ||||
@@ -1,5 +1,5 @@ | |||||
import { preloadClaims } from "@/app/api/claims"; | import { preloadClaims } from "@/app/api/claims"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
// import { preloadSkill, preloadTeamLeads } from "@/app/api/staff"; | // import { preloadSkill, preloadTeamLeads } from "@/app/api/staff"; | ||||
import SkillSearch from "@/components/SkillSearch"; | import SkillSearch from "@/components/SkillSearch"; | ||||
import { I18nProvider, getServerI18n } from "@/i18n"; | import { I18nProvider, getServerI18n } from "@/i18n"; | ||||
@@ -21,7 +21,7 @@ const Skill: React.FC = async () => { | |||||
// preloadTeamLeads(); | // preloadTeamLeads(); | ||||
// preloadSkill(); | // preloadSkill(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
const maintainSkill = abilities.includes(MAINTAIN_SKILL) | const maintainSkill = abilities.includes(MAINTAIN_SKILL) | ||||
return ( | return ( | ||||
@@ -1,6 +1,6 @@ | |||||
import { preloadClaims } from "@/app/api/claims"; | import { preloadClaims } from "@/app/api/claims"; | ||||
import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import StaffSearch from "@/components/StaffSearch"; | import StaffSearch from "@/components/StaffSearch"; | ||||
import { I18nProvider, getServerI18n } from "@/i18n"; | import { I18nProvider, getServerI18n } from "@/i18n"; | ||||
import { MAINTAIN_STAFF } from "@/middleware"; | import { MAINTAIN_STAFF } from "@/middleware"; | ||||
@@ -21,7 +21,7 @@ const Staff: React.FC = async () => { | |||||
preloadTeamLeads(); | preloadTeamLeads(); | ||||
preloadStaff(); | preloadStaff(); | ||||
const abilities = await getUserAbilities(); | |||||
const abilities = await fetchUserAbilities(); | |||||
const maintainStaff = abilities.includes(MAINTAIN_STAFF) | const maintainStaff = abilities.includes(MAINTAIN_STAFF) | ||||
return ( | return ( | ||||
@@ -9,7 +9,7 @@ import { Suspense } from "react"; | |||||
import { I18nProvider } from "@/i18n"; | import { I18nProvider } from "@/i18n"; | ||||
import { preloadAllSubsidiaries } from "@/app/api/subsidiary"; | import { preloadAllSubsidiaries } from "@/app/api/subsidiary"; | ||||
import SubsidiarySearch from "@/components/SubsidiarySearch"; | import SubsidiarySearch from "@/components/SubsidiarySearch"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import { MAINTAIN_SUBSIDIARY } from "@/middleware"; | import { MAINTAIN_SUBSIDIARY } from "@/middleware"; | ||||
export const metadata: Metadata = { | export const metadata: Metadata = { | ||||
@@ -19,7 +19,7 @@ export const metadata: Metadata = { | |||||
const Subsidiary: React.FC = async () => { | const Subsidiary: React.FC = async () => { | ||||
const { t } = await getServerI18n("subsidiary"); | const { t } = await getServerI18n("subsidiary"); | ||||
preloadAllSubsidiaries(); | preloadAllSubsidiaries(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
const maintainSubsidiary = abilities.includes(MAINTAIN_SUBSIDIARY) | const maintainSubsidiary = abilities.includes(MAINTAIN_SUBSIDIARY) | ||||
return ( | return ( | ||||
@@ -1,6 +1,6 @@ | |||||
import { preloadClaims } from "@/app/api/claims"; | import { preloadClaims } from "@/app/api/claims"; | ||||
import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | import { preloadStaff, preloadTeamLeads } from "@/app/api/staff"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import StaffSearch from "@/components/StaffSearch"; | import StaffSearch from "@/components/StaffSearch"; | ||||
import TeamSearch from "@/components/TeamSearch"; | import TeamSearch from "@/components/TeamSearch"; | ||||
import { I18nProvider, getServerI18n } from "@/i18n"; | import { I18nProvider, getServerI18n } from "@/i18n"; | ||||
@@ -24,7 +24,7 @@ export const metadata: Metadata = { | |||||
// preloadTeamLeads(); | // preloadTeamLeads(); | ||||
// preloadStaff(); | // preloadStaff(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
const maintainTeam = abilities.includes(MAINTAIN_TEAM) | const maintainTeam = abilities.includes(MAINTAIN_TEAM) | ||||
return ( | return ( | ||||
@@ -1,5 +1,5 @@ | |||||
import { SessionStaff, SessionWithTokens, authOptions } from "@/config/authConfig" | |||||
import { getServerSession } from "next-auth" | |||||
// import { SessionStaff, SessionWithTokens, authOptions } from "@/config/authConfig" | |||||
// import { getServerSession } from "next-auth" | |||||
export interface WildCard { | export interface WildCard { | ||||
[key: string]: any; | [key: string]: any; | ||||
} | } | ||||
@@ -51,17 +51,17 @@ export function readIntFromString(input: string): [string, number | null] | stri | |||||
return [stringPart, intPart]; | return [stringPart, intPart]; | ||||
} | } | ||||
export const getUserSession = async () => { | |||||
const session = await getServerSession(authOptions) as SessionWithTokens; | |||||
return session | |||||
} | |||||
// export const getUserSession = async () => { | |||||
// const session = await getServerSession(authOptions) as SessionWithTokens; | |||||
// return session | |||||
// } | |||||
export const getUserAbilities = async () => { | |||||
const session = await getServerSession(authOptions) as SessionWithTokens; | |||||
return session?.abilities ?? [] as string[] | |||||
} | |||||
// export const fetchUserAbilities = async () => { | |||||
// const session = await getServerSession(authOptions) as SessionWithTokens; | |||||
// return session?.abilities ?? [] as string[] | |||||
// } | |||||
export const getUserStaff = async () => { | |||||
const session = await getServerSession(authOptions) as SessionWithTokens; | |||||
return session?.staff as SessionStaff | |||||
} | |||||
// export const fetchUserStaff = async () => { | |||||
// const session = await getServerSession(authOptions) as SessionWithTokens; | |||||
// return session?.staff as SessionStaff | |||||
// } |
@@ -1,4 +1,4 @@ | |||||
import { SessionWithTokens, authOptions } from "@/config/authConfig"; | |||||
import { SessionWithTokens, authOptions, SessionStaff } from "@/config/authConfig"; | |||||
import { getServerSession } from "next-auth"; | import { getServerSession } from "next-auth"; | ||||
import { headers } from "next/headers"; | import { headers } from "next/headers"; | ||||
import { redirect } from "next/navigation"; | import { redirect } from "next/navigation"; | ||||
@@ -180,3 +180,13 @@ export const signOutUser = () => { | |||||
`/logout${referer ? `?callbackUrl=${encodeURIComponent(referer)}` : ""}`, | `/logout${referer ? `?callbackUrl=${encodeURIComponent(referer)}` : ""}`, | ||||
); | ); | ||||
}; | }; | ||||
export const fetchUserAbilities = async () => { | |||||
const session = await getServerSession(authOptions) as SessionWithTokens; | |||||
return session?.abilities ?? [] as string[] | |||||
} | |||||
export const fetchUserStaff = async () => { | |||||
const session = await getServerSession(authOptions) as SessionWithTokens; | |||||
return session?.staff as SessionStaff | |||||
} |
@@ -6,7 +6,7 @@ import { fetchCompanys } from "@/app/api/companys"; | |||||
import Holidays from "date-holidays"; | import Holidays from "date-holidays"; | ||||
import { HolidaysResult, fetchHolidays, HolidaysList } from "@/app/api/holidays"; | import { HolidaysResult, fetchHolidays, HolidaysList } from "@/app/api/holidays"; | ||||
import { convertDateArrayToString } from "@/app/utils/formatUtil"; | import { convertDateArrayToString } from "@/app/utils/formatUtil"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof CompanyHolidayLoading; | Loading: typeof CompanyHolidayLoading; | ||||
@@ -15,7 +15,7 @@ interface SubComponents { | |||||
const CompanyHolidayWrapper: React.FC & SubComponents = async () => { | const CompanyHolidayWrapper: React.FC & SubComponents = async () => { | ||||
// const Companys = await fetchCompanys(); | // const Companys = await fetchCompanys(); | ||||
const [companyHolidays, abilities] = await Promise.all([fetchHolidays(), getUserAbilities()]) | |||||
const [companyHolidays, abilities] = await Promise.all([fetchHolidays(), fetchUserAbilities()]) | |||||
// console.log(companyHolidays) | // console.log(companyHolidays) | ||||
const convertedHolidays = companyHolidays.map((holiday) => { | const convertedHolidays = companyHolidays.map((holiday) => { | ||||
@@ -3,7 +3,7 @@ import React from "react"; | |||||
import CompanySearch from "./CompanySearch"; | import CompanySearch from "./CompanySearch"; | ||||
import CompanySearchLoading from "./CompanySearchLoading"; | import CompanySearchLoading from "./CompanySearchLoading"; | ||||
import { fetchCompanys } from "@/app/api/companys"; | import { fetchCompanys } from "@/app/api/companys"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof CompanySearchLoading; | Loading: typeof CompanySearchLoading; | ||||
@@ -11,7 +11,7 @@ interface SubComponents { | |||||
const CompanySearchWrapper: React.FC & SubComponents = async () => { | const CompanySearchWrapper: React.FC & SubComponents = async () => { | ||||
// const Companys = await fetchCompanys(); | // const Companys = await fetchCompanys(); | ||||
const [Companys, abilities] = await Promise.all([fetchCompanys(), getUserAbilities()]); | |||||
const [Companys, abilities] = await Promise.all([fetchCompanys(), fetchUserAbilities()]); | |||||
return <CompanySearch companys={Companys} abilities={abilities}/>; | return <CompanySearch companys={Companys} abilities={abilities}/>; | ||||
}; | }; | ||||
@@ -1,9 +1,9 @@ | |||||
import React from "react"; | import React from "react"; | ||||
import CompanyTeamCashFlow from "./CompanyTeamCashFlow"; | import CompanyTeamCashFlow from "./CompanyTeamCashFlow"; | ||||
import { getUserAbilities, getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities, fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
const CompanyTeamCashFlowWrapper: React.FC = async () => { | const CompanyTeamCashFlowWrapper: React.FC = async () => { | ||||
const [abilities, staff] = await Promise.all([getUserAbilities(), getUserStaff()]); | |||||
const [abilities, staff] = await Promise.all([fetchUserAbilities(), fetchUserStaff()]); | |||||
return <CompanyTeamCashFlow abilities={abilities} staff={staff}/>; | return <CompanyTeamCashFlow abilities={abilities} staff={staff}/>; | ||||
}; | }; | ||||
@@ -18,7 +18,7 @@ import { | |||||
fetchCustomerTypes, | fetchCustomerTypes, | ||||
} from "@/app/api/customer"; | } from "@/app/api/customer"; | ||||
import { fetchGrades } from "@/app/api/grades"; | import { fetchGrades } from "@/app/api/grades"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
type CreateProjectProps = { | type CreateProjectProps = { | ||||
isEditMode: false; | isEditMode: false; | ||||
@@ -66,7 +66,7 @@ const CreateProjectWrapper: React.FC<Props> = async (props) => { | |||||
fetchStaff(), | fetchStaff(), | ||||
fetchGrades(), | fetchGrades(), | ||||
fetchCustomerTypes(), | fetchCustomerTypes(), | ||||
getUserAbilities(), | |||||
fetchUserAbilities(), | |||||
]); | ]); | ||||
const projectInfo = props.isEditMode | const projectInfo = props.isEditMode | ||||
@@ -2,14 +2,14 @@ import { fetchAllCustomers } from "@/app/api/customer"; | |||||
import React from "react"; | import React from "react"; | ||||
import CustomerSearch from "./CustomerSearch"; | import CustomerSearch from "./CustomerSearch"; | ||||
import CustomerSearchLoading from "./CustomerSearchLoading"; | import CustomerSearchLoading from "./CustomerSearchLoading"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof CustomerSearchLoading; | Loading: typeof CustomerSearchLoading; | ||||
} | } | ||||
const CustomerSearchWrapper: React.FC & SubComponents = async () => { | const CustomerSearchWrapper: React.FC & SubComponents = async () => { | ||||
const [customers, abilities] = await Promise.all([fetchAllCustomers(), getUserAbilities()]); | |||||
const [customers, abilities] = await Promise.all([fetchAllCustomers(), fetchUserAbilities()]); | |||||
return <CustomerSearch customers={customers} abilities={abilities}/>; | return <CustomerSearch customers={customers} abilities={abilities}/>; | ||||
}; | }; | ||||
@@ -3,14 +3,14 @@ import React from "react"; | |||||
import DepartmentSearch from "./DepartmentSearch"; | import DepartmentSearch from "./DepartmentSearch"; | ||||
import DepartmentSearchLoading from "./DepartmentSearchLoading"; | import DepartmentSearchLoading from "./DepartmentSearchLoading"; | ||||
import { fetchDepartments } from "@/app/api/departments"; | import { fetchDepartments } from "@/app/api/departments"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof DepartmentSearchLoading; | Loading: typeof DepartmentSearchLoading; | ||||
} | } | ||||
const DepartmentSearchWrapper: React.FC & SubComponents = async () => { | const DepartmentSearchWrapper: React.FC & SubComponents = async () => { | ||||
const [Departments, abilities] = await Promise.all([fetchDepartments(), getUserAbilities()]); | |||||
const [Departments, abilities] = await Promise.all([fetchDepartments(), fetchUserAbilities()]); | |||||
// const Departments:any[] = [] | // const Departments:any[] = [] | ||||
return <DepartmentSearch departments={Departments} abilities={abilities} />; | return <DepartmentSearch departments={Departments} abilities={abilities} />; | ||||
@@ -1,7 +1,7 @@ | |||||
import React from "react"; | import React from "react"; | ||||
import { fetchProjects } from "@/app/api/projects"; | import { fetchProjects } from "@/app/api/projects"; | ||||
import ExcelFileImport from "./ExcelFileImport"; | import ExcelFileImport from "./ExcelFileImport"; | ||||
import { getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
const ExcelFileImportWrapper: React.FC = async () => { | const ExcelFileImportWrapper: React.FC = async () => { | ||||
@@ -2,7 +2,7 @@ import React from "react"; | |||||
import GenerateCrossTeamChargeReportLoading from "./GenerateCrossTeamChargeReportLoading"; | import GenerateCrossTeamChargeReportLoading from "./GenerateCrossTeamChargeReportLoading"; | ||||
import GenerateCrossTeamChargeReport from "./GenerateCrossTeamChargeReport"; | import GenerateCrossTeamChargeReport from "./GenerateCrossTeamChargeReport"; | ||||
import { fetchTeam } from "@/app/api/team"; | import { fetchTeam } from "@/app/api/team"; | ||||
import { getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof GenerateCrossTeamChargeReportLoading; | Loading: typeof GenerateCrossTeamChargeReportLoading; | ||||
@@ -10,7 +10,7 @@ interface SubComponents { | |||||
const GenerateCrossTeamChargeReportWrapper: React.FC & SubComponents = async () => { | const GenerateCrossTeamChargeReportWrapper: React.FC & SubComponents = async () => { | ||||
const [teams, userStaff] = await Promise.all([fetchTeam(), getUserStaff()]) | |||||
const [teams, userStaff] = await Promise.all([fetchTeam(), fetchUserStaff()]) | |||||
return <GenerateCrossTeamChargeReport teams={!Boolean(userStaff?.isTeamLead) ? teams : teams.filter(team => team.id === userStaff?.teamId)} userStaff={userStaff}/>; | return <GenerateCrossTeamChargeReport teams={!Boolean(userStaff?.isTeamLead) ? teams : teams.filter(team => team.id === userStaff?.teamId)} userStaff={userStaff}/>; | ||||
}; | }; | ||||
@@ -2,7 +2,7 @@ import React from "react"; | |||||
import GenerateProjectCashFlowReportLoading from "./GenerateProjectCashFlowReportLoading"; | import GenerateProjectCashFlowReportLoading from "./GenerateProjectCashFlowReportLoading"; | ||||
import { fetchProjects } from "@/app/api/projects"; | import { fetchProjects } from "@/app/api/projects"; | ||||
import GenerateProjectCashFlowReport from "./GenerateProjectCashFlowReport"; | import GenerateProjectCashFlowReport from "./GenerateProjectCashFlowReport"; | ||||
import { getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof GenerateProjectCashFlowReportLoading; | Loading: typeof GenerateProjectCashFlowReportLoading; | ||||
@@ -10,7 +10,7 @@ interface SubComponents { | |||||
const GenerateProjectCashFlowReportWrapper: React.FC & SubComponents = async () => { | const GenerateProjectCashFlowReportWrapper: React.FC & SubComponents = async () => { | ||||
const projects = await fetchProjects(); | const projects = await fetchProjects(); | ||||
const staff = await getUserStaff() | |||||
const staff = await fetchUserStaff() | |||||
return <GenerateProjectCashFlowReport projects={staff?.teamId ? projects.filter(project => project.teamId === staff.teamId) : projects} />; | return <GenerateProjectCashFlowReport projects={staff?.teamId ? projects.filter(project => project.teamId === staff.teamId) : projects} />; | ||||
}; | }; | ||||
@@ -2,14 +2,14 @@ import React from "react"; | |||||
import GenerateProjectPandLReportLoading from "./GenerateProjectPandLReportLoading"; | import GenerateProjectPandLReportLoading from "./GenerateProjectPandLReportLoading"; | ||||
import { fetchProjects } from "@/app/api/projects"; | import { fetchProjects } from "@/app/api/projects"; | ||||
import GenerateProjectPandLReport from "./GenerateProjectPandLReport"; | import GenerateProjectPandLReport from "./GenerateProjectPandLReport"; | ||||
import { getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof GenerateProjectPandLReportLoading; | Loading: typeof GenerateProjectPandLReportLoading; | ||||
} | } | ||||
const GenerateProjectPandLReportWrapper: React.FC & SubComponents = async () => { | const GenerateProjectPandLReportWrapper: React.FC & SubComponents = async () => { | ||||
const [projects, userStaff] = await Promise.all([fetchProjects(), getUserStaff()]); | |||||
const [projects, userStaff] = await Promise.all([fetchProjects(), fetchUserStaff()]); | |||||
return <GenerateProjectPandLReport projects={userStaff?.teamId ? projects.filter(project => project.teamId === userStaff.teamId) : projects}/>; | return <GenerateProjectPandLReport projects={userStaff?.teamId ? projects.filter(project => project.teamId === userStaff.teamId) : projects}/>; | ||||
}; | }; | ||||
@@ -4,14 +4,14 @@ import GenerateProjectPotentialDelayReport from "./GenerateProjectPotentialDelay | |||||
import { fetchTeam } from "@/app/api/team"; | import { fetchTeam } from "@/app/api/team"; | ||||
import { fetchAllCustomers } from "@/app/api/customer"; | import { fetchAllCustomers } from "@/app/api/customer"; | ||||
import { fetchAllSubsidiaries } from "@/app/api/subsidiary"; | import { fetchAllSubsidiaries } from "@/app/api/subsidiary"; | ||||
import { getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof GenerateProjectPotentialDelayReportLoading; | Loading: typeof GenerateProjectPotentialDelayReportLoading; | ||||
} | } | ||||
const GenerateProjectPotentialDelayReportWrapper: React.FC & SubComponents = async () => { | const GenerateProjectPotentialDelayReportWrapper: React.FC & SubComponents = async () => { | ||||
const [teams, clients, subsidiaries, userStaff] = await Promise.all([fetchTeam(), fetchAllCustomers(), fetchAllSubsidiaries(), getUserStaff()]) | |||||
const [teams, clients, subsidiaries, userStaff] = await Promise.all([fetchTeam(), fetchAllCustomers(), fetchAllSubsidiaries(), fetchUserStaff()]) | |||||
return <GenerateProjectPotentialDelayReport teams={!Boolean(userStaff?.isTeamLead) ? teams : teams.filter(team => team.id === userStaff?.teamId)} clients={clients} subsidiaries={subsidiaries} userStaff={userStaff}/>; | return <GenerateProjectPotentialDelayReport teams={!Boolean(userStaff?.isTeamLead) ? teams : teams.filter(team => team.id === userStaff?.teamId)} clients={clients} subsidiaries={subsidiaries} userStaff={userStaff}/>; | ||||
}; | }; | ||||
@@ -1,4 +1,4 @@ | |||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
import MailSetting from "./MailSetting"; | import MailSetting from "./MailSetting"; | ||||
import MailSettingLoading from "./MailSettingLoading"; | import MailSettingLoading from "./MailSettingLoading"; | ||||
import { MailTemplate, fetchMailSetting, fetchMailTimesheetTemplate } from "@/app/api/mail"; | import { MailTemplate, fetchMailSetting, fetchMailTimesheetTemplate } from "@/app/api/mail"; | ||||
@@ -13,7 +13,7 @@ const MailSettingWrapper: React.FC & SubComponents = async () => { | |||||
settings, | settings, | ||||
timesheetTemplate, | timesheetTemplate, | ||||
] = await Promise.all([ | ] = await Promise.all([ | ||||
getUserAbilities(), | |||||
fetchUserAbilities(), | |||||
fetchMailSetting(), | fetchMailSetting(), | ||||
fetchMailTimesheetTemplate() | fetchMailTimesheetTemplate() | ||||
]); | ]); | ||||
@@ -3,14 +3,14 @@ import React from "react"; | |||||
import PositionSearch from "./PositionSearch"; | import PositionSearch from "./PositionSearch"; | ||||
import PositionSearchLoading from "./PositionSearchLoading"; | import PositionSearchLoading from "./PositionSearchLoading"; | ||||
import { fetchPositions } from "@/app/api/positions"; | import { fetchPositions } from "@/app/api/positions"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof PositionSearchLoading; | Loading: typeof PositionSearchLoading; | ||||
} | } | ||||
const PositionSearchWrapper: React.FC & SubComponents = async () => { | const PositionSearchWrapper: React.FC & SubComponents = async () => { | ||||
const [Positions, abilities] = await Promise.all([fetchPositions(), getUserAbilities()]); | |||||
const [Positions, abilities] = await Promise.all([fetchPositions(), fetchUserAbilities()]); | |||||
// const Positions:any[] = [] | // const Positions:any[] = [] | ||||
return <PositionSearch positions={Positions} abilities={abilities}/>; | return <PositionSearch positions={Positions} abilities={abilities}/>; | ||||
@@ -2,7 +2,7 @@ import { fetchProjectCategories, fetchProjects } from "@/app/api/projects"; | |||||
import React from "react"; | import React from "react"; | ||||
import ProjectSearch from "./ProjectSearch"; | import ProjectSearch from "./ProjectSearch"; | ||||
import ProjectSearchLoading from "./ProjectSearchLoading"; | import ProjectSearchLoading from "./ProjectSearchLoading"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof ProjectSearchLoading; | Loading: typeof ProjectSearchLoading; | ||||
@@ -12,7 +12,7 @@ const ProjectSearchWrapper: React.FC & SubComponents = async () => { | |||||
const projectCategories = await fetchProjectCategories(); | const projectCategories = await fetchProjectCategories(); | ||||
const projects = await fetchProjects(); | const projects = await fetchProjects(); | ||||
const abilities = await getUserAbilities() | |||||
const abilities = await fetchUserAbilities() | |||||
return <ProjectSearch projects={projects} projectCategories={projectCategories} abilities={abilities}/>; | return <ProjectSearch projects={projects} projectCategories={projectCategories} abilities={abilities}/>; | ||||
}; | }; | ||||
@@ -3,7 +3,7 @@ import { fetchProjectsFinancialStatus, fetchTeamCombo } from "@/app/api/reporte1 | |||||
import React from "react"; | import React from "react"; | ||||
import FinancialStatusReportGen from "./FinancialStatusReportGen"; | import FinancialStatusReportGen from "./FinancialStatusReportGen"; | ||||
import FinancialStatusReportGenLoading from "./FinancialStatusReportGenLoading"; | import FinancialStatusReportGenLoading from "./FinancialStatusReportGenLoading"; | ||||
import { getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof FinancialStatusReportGenLoading; | Loading: typeof FinancialStatusReportGenLoading; | ||||
@@ -12,7 +12,7 @@ interface SubComponents { | |||||
const FinancialStatusReportGenWrapper: React.FC & SubComponents = async () => { | const FinancialStatusReportGenWrapper: React.FC & SubComponents = async () => { | ||||
const clentprojects = await fetchProjectsFinancialStatus(); | const clentprojects = await fetchProjectsFinancialStatus(); | ||||
const [teamCombo, userStaff] = await Promise.all([fetchTeamCombo(), getUserStaff()]) | |||||
const [teamCombo, userStaff] = await Promise.all([fetchTeamCombo(), fetchUserStaff()]) | |||||
return <FinancialStatusReportGen projects={clentprojects} userStaff={userStaff} teamCombo={!Boolean(userStaff?.isTeamLead) ? teamCombo : teamCombo.filter(team => team.id === userStaff?.teamId)}/>; | return <FinancialStatusReportGen projects={clentprojects} userStaff={userStaff} teamCombo={!Boolean(userStaff?.isTeamLead) ? teamCombo : teamCombo.filter(team => team.id === userStaff?.teamId)}/>; | ||||
}; | }; | ||||
@@ -4,7 +4,7 @@ import LateStartReportGen from "./LateStartReportGen"; | |||||
import LateStartReportGenLoading from "./LateStartReportGenLoading"; | import LateStartReportGenLoading from "./LateStartReportGenLoading"; | ||||
import { fetchAllCustomers } from "@/app/api/customer"; | import { fetchAllCustomers } from "@/app/api/customer"; | ||||
import { fetchAllSubsidiaries } from "@/app/api/subsidiary"; | import { fetchAllSubsidiaries } from "@/app/api/subsidiary"; | ||||
import { getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
import { fetchTeam } from "@/app/api/team"; | import { fetchTeam } from "@/app/api/team"; | ||||
interface SubComponents { | interface SubComponents { | ||||
@@ -16,7 +16,7 @@ const LateStartReportGenWrapper: React.FC & SubComponents = async () => { | |||||
fetchProjectsLateStart(), | fetchProjectsLateStart(), | ||||
fetchAllCustomers(), | fetchAllCustomers(), | ||||
fetchAllSubsidiaries(), | fetchAllSubsidiaries(), | ||||
getUserStaff(), | |||||
fetchUserStaff(), | |||||
fetchTeam(), | fetchTeam(), | ||||
]); | ]); | ||||
@@ -3,7 +3,7 @@ import React from "react"; | |||||
import SalarySearch from "./SalarySearch"; | import SalarySearch from "./SalarySearch"; | ||||
import SalarySearchLoading from "./SalarySearchLoading"; | import SalarySearchLoading from "./SalarySearchLoading"; | ||||
import { fetchSalarys } from "@/app/api/salarys"; | import { fetchSalarys } from "@/app/api/salarys"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof SalarySearchLoading; | Loading: typeof SalarySearchLoading; | ||||
@@ -15,7 +15,7 @@ interface SubComponents { | |||||
// } | // } | ||||
const SalarySearchWrapper: React.FC & SubComponents = async () => { | const SalarySearchWrapper: React.FC & SubComponents = async () => { | ||||
const [Salarys, abilities] = await Promise.all([fetchSalarys(), getUserAbilities()]); | |||||
const [Salarys, abilities] = await Promise.all([fetchSalarys(), fetchUserAbilities()]); | |||||
// const Salarys:any[] = [] | // const Salarys:any[] = [] | ||||
const salarysWithHourlyRate = Salarys.map((salary) => { | const salarysWithHourlyRate = Salarys.map((salary) => { | ||||
// const hourlyRate = calculateHourlyRate(Number(salary.lowerLimit), Number(salary.upperLimit),22, 8) | // const hourlyRate = calculateHourlyRate(Number(salary.lowerLimit), Number(salary.upperLimit),22, 8) | ||||
@@ -2,14 +2,14 @@ import React from "react"; | |||||
import SkillSearch from "./SkillSearch"; | import SkillSearch from "./SkillSearch"; | ||||
import SkillSearchLoading from "./SkillSearchLoading"; | import SkillSearchLoading from "./SkillSearchLoading"; | ||||
import { fetchSkill } from "@/app/api/skill"; | import { fetchSkill } from "@/app/api/skill"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof SkillSearchLoading; | Loading: typeof SkillSearchLoading; | ||||
} | } | ||||
const SkillSearchWrapper: React.FC & SubComponents = async () => { | const SkillSearchWrapper: React.FC & SubComponents = async () => { | ||||
const [skill, abilities] = await Promise.all([fetchSkill(), getUserAbilities()]) | |||||
const [skill, abilities] = await Promise.all([fetchSkill(), fetchUserAbilities()]) | |||||
return <SkillSearch skill={skill} abilities={abilities}/>; | return <SkillSearch skill={skill} abilities={abilities}/>; | ||||
}; | }; | ||||
@@ -1,10 +1,10 @@ | |||||
import { getUserAbilities, getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities, fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
import StaffUtilization from "./StaffUtilization"; | import StaffUtilization from "./StaffUtilization"; | ||||
const StaffUtilizationWrapper: React.FC = async () => { | const StaffUtilizationWrapper: React.FC = async () => { | ||||
const [abilities, staff] = await Promise.all([ | const [abilities, staff] = await Promise.all([ | ||||
getUserAbilities(), | |||||
getUserStaff(), | |||||
fetchUserAbilities(), | |||||
fetchUserStaff(), | |||||
]); | ]); | ||||
return ( | return ( | ||||
@@ -2,14 +2,14 @@ import React from "react"; | |||||
import SubsidiarySearch from "./SubsidiarySearch"; | import SubsidiarySearch from "./SubsidiarySearch"; | ||||
import SubsidiarySearchLoading from "./SubsidiarySearchLoading"; | import SubsidiarySearchLoading from "./SubsidiarySearchLoading"; | ||||
import { fetchAllSubsidiaries } from "@/app/api/subsidiary"; | import { fetchAllSubsidiaries } from "@/app/api/subsidiary"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
interface SubComponents { | interface SubComponents { | ||||
Loading: typeof SubsidiarySearchLoading; | Loading: typeof SubsidiarySearchLoading; | ||||
} | } | ||||
const SubsidiarySearchWrapper: React.FC & SubComponents = async () => { | const SubsidiarySearchWrapper: React.FC & SubComponents = async () => { | ||||
const [subsidiaries, abilities] = await Promise.all([fetchAllSubsidiaries(), getUserAbilities()]); | |||||
const [subsidiaries, abilities] = await Promise.all([fetchAllSubsidiaries(), fetchUserAbilities()]); | |||||
return <SubsidiarySearch subsidiaries={subsidiaries} abilities={abilities} />; | return <SubsidiarySearch subsidiaries={subsidiaries} abilities={abilities} />; | ||||
}; | }; | ||||
@@ -3,7 +3,7 @@ import React from "react"; | |||||
import TeamSearch from "./TeamSearch"; | import TeamSearch from "./TeamSearch"; | ||||
import TeamSearchLoading from "./TeamSearchLoading"; | import TeamSearchLoading from "./TeamSearchLoading"; | ||||
import { fetchTeam } from "@/app/api/team"; | import { fetchTeam } from "@/app/api/team"; | ||||
import { getUserAbilities } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities } from "@/app/utils/fetchUtil"; | |||||
// import { preloadTeam } from "@/app/api/Team"; | // import { preloadTeam } from "@/app/api/Team"; | ||||
interface SubComponents { | interface SubComponents { | ||||
@@ -11,7 +11,7 @@ interface SubComponents { | |||||
} | } | ||||
const TeamSearchWrapper: React.FC & SubComponents = async () => { | const TeamSearchWrapper: React.FC & SubComponents = async () => { | ||||
const [Team, abilities] = await Promise.all([fetchTeam(), getUserAbilities()]); | |||||
const [Team, abilities] = await Promise.all([fetchTeam(), fetchUserAbilities()]); | |||||
console.log(Team); | console.log(Team); | ||||
return <TeamSearch team={Team} abilities={abilities}/>; | return <TeamSearch team={Team} abilities={abilities}/>; | ||||
@@ -11,7 +11,7 @@ import { | |||||
fetchTimesheets, | fetchTimesheets, | ||||
} from "@/app/api/timesheets"; | } from "@/app/api/timesheets"; | ||||
import { fetchHolidays } from "@/app/api/holidays"; | import { fetchHolidays } from "@/app/api/holidays"; | ||||
import { getUserAbilities, getUserStaff } from "@/app/utils/commonUtil"; | |||||
import { fetchUserAbilities, fetchUserStaff } from "@/app/utils/fetchUtil"; | |||||
import { | import { | ||||
MAINTAIN_TIMESHEET_FAST_TIME_ENTRY, | MAINTAIN_TIMESHEET_FAST_TIME_ENTRY, | ||||
MAINTAIN_NORMAL_STAFF_WORKSPACE, | MAINTAIN_NORMAL_STAFF_WORKSPACE, | ||||
@@ -41,8 +41,8 @@ const UserWorkspaceWrapper: React.FC = async () => { | |||||
fetchLeaves(), | fetchLeaves(), | ||||
fetchLeaveTypes(), | fetchLeaveTypes(), | ||||
fetchHolidays(), | fetchHolidays(), | ||||
getUserAbilities(), | |||||
getUserStaff(), | |||||
fetchUserAbilities(), | |||||
fetchUserStaff(), | |||||
fetchAllTasks(), | fetchAllTasks(), | ||||
]); | ]); | ||||