diff --git a/src/API/LayoutApi/tasks.ts b/src/API/LayoutApi/tasks.ts index a6c5afe..42b0d8e 100644 --- a/src/API/LayoutApi/tasks.ts +++ b/src/API/LayoutApi/tasks.ts @@ -9,6 +9,7 @@ export type TTasksGetParams = { team?: string; page?: number; page_size: number; + team_monitoring?: string; }; export type TTasksPutParams = { diff --git a/src/API/LayoutApi/teams.ts b/src/API/LayoutApi/teams.ts index d2ff81e..60a77de 100644 --- a/src/API/LayoutApi/teams.ts +++ b/src/API/LayoutApi/teams.ts @@ -19,6 +19,25 @@ export type TTeamPostParams = { is_active?: boolean; }; +export interface TeamMonitorCreatePayload { + name: string; + company_ids: number[]; +} + +export interface TeamMonitorUpdatePayload { + name?: string; + is_active?: boolean; +} + +export interface UpdateTeamMonitorVars { + id: string; + payload: { + name?: string; + is_active?: boolean; + company_ids?: any[]; + }; +} + export const teamController = { async read(obj: TTeamGetParams) { const params = { ...obj }; @@ -86,4 +105,47 @@ export const teamController = { } return { data: res, error }; }, + // Team Monitoring + + async readTeamsMonitor(obj: TTeamGetParams) { + const params: any = {}; + + if (obj.page) params.page = obj.page; + if (obj.page_size) params.page_size = obj.page_size; + if (obj.name) params.name = obj.name; + + const { data } = await instance.get("/teams-monitor/", { + params, + }); + + return data; + }, + + async createTeamMonitor(payload: TeamMonitorCreatePayload) { + const { data } = await instance.post("/team-monitor/", payload); + return data; + }, + + async readTeamsGetOne(id: any) { + const { data } = await instance.get(`/team-monitor/${id}/`); + + return data; + }, + + async deleteTeamMonitor(id: string) { + try { + const { data } = await instance.delete(`/team-monitor/${id}`); + return data; + } catch (err) { + throw new Error("Oops something went wrong!"); + } + }, + async updateTeamMonitor(id: string, payload: TeamMonitorUpdatePayload) { + try { + const { data } = await instance.put(`/team-monitor/${id}/`, payload); + return data; + } catch (error) { + throw new Error("Failed to update team monitor"); + } + }, }; diff --git a/src/Components/Accounting/AccountingCurrent.tsx b/src/Components/Accounting/AccountingCurrent.tsx index f03023c..f9fd248 100644 --- a/src/Components/Accounting/AccountingCurrent.tsx +++ b/src/Components/Accounting/AccountingCurrent.tsx @@ -654,6 +654,14 @@ const AccountingCurrent: React.FC = () => { } }, }, + { + title: "Salary Rate", + dataIndex: "salary_rate", + key: "salary_rate", + render: (text: string, record: any) => ( +
${record?.salary_rate}
+ ), + }, { title: "Base Salary", dataIndex: "salary_base_amount", diff --git a/src/Components/Accounting/AccountingHistory.tsx b/src/Components/Accounting/AccountingHistory.tsx index e15dacc..cc4ae00 100644 --- a/src/Components/Accounting/AccountingHistory.tsx +++ b/src/Components/Accounting/AccountingHistory.tsx @@ -305,6 +305,14 @@ const AccountingHistory: React.FC = () => { } }, }, + { + title: "Salary Rate", + dataIndex: "salary_rate", + key: "salary_rate", + render: (text: string, record: any) => ( +${record?.salary_rate}
+ ), + }, { title: "Base Salary", dataIndex: "total_base_salary", diff --git a/src/Components/Accounting/AccountingLast.tsx b/src/Components/Accounting/AccountingLast.tsx index fa91fd3..e950cb8 100644 --- a/src/Components/Accounting/AccountingLast.tsx +++ b/src/Components/Accounting/AccountingLast.tsx @@ -818,6 +818,14 @@ const AccountingCurrent: React.FC = () => { } }, }, + { + title: "Salary Rate", + dataIndex: "salary_rate", + key: "salary_rate", + render: (text: string, record: any) => ( +${record?.salary_rate}
+ ), + }, { title: "Base Salary", dataIndex: "salary_base_amount", diff --git a/src/Components/Companies/CompaniesTable.tsx b/src/Components/Companies/CompaniesTable.tsx index 93992c7..f846986 100644 --- a/src/Components/Companies/CompaniesTable.tsx +++ b/src/Components/Companies/CompaniesTable.tsx @@ -78,7 +78,7 @@ function CompanyTable({ { title: "Company", dataIndex: "name", - width: "25%", + width: "20%", ellipsis: { showTitle: false, }, @@ -98,12 +98,21 @@ function CompanyTable({ ), }, { - title: "Team", + title: "Service Team", dataIndex: "team", render: (status: string, record: TCompany) => ( {record?.team?.name} ), }, + { + title: "Monitoring Team", + dataIndex: "team_monitoring", + render: (status: string, record: TCompany) => ( + + {record?.team_monitoring?.name} + + ), + }, { title: "USDOT", dataIndex: "usdot", diff --git a/src/Components/Tasks/AddTask.tsx b/src/Components/Tasks/AddTask.tsx index f3a01db..cb64cea 100644 --- a/src/Components/Tasks/AddTask.tsx +++ b/src/Components/Tasks/AddTask.tsx @@ -31,7 +31,6 @@ import tt from "../../assets/tticon.svg"; import addicon from "../../assets/addiconpng.png"; //ts-ignore import fileUpload from "../../assets/upload-file.png"; -import closeIcon from "../../assets/closeIcon.png"; import AddCustomer from "../Customers/AddCustomer"; import AddDriver from "../Companies/AddDriver"; @@ -210,6 +209,23 @@ const AddTask = ({ return tt; } }; + + const handleSubmit = async (values: any) => { + values.attachment_ids = fileIds; + values.note = + (text ? text + ", " : "") + + (note ? note + ", " : "") + + (note2 ? note2 + ", " : ""); + + try { + await taskController.addTaskController(values); + form.resetFields(); + setOpen(false); + } catch (error) { + console.error(error); + } + }; + return (