diff --git a/src/components/dashboard/roadItems/operator/Actions/Create/Forms/GetItemInfo/MissionsDialog/MissionsList/index.jsx b/src/components/dashboard/roadItems/operator/Actions/Create/Forms/GetItemInfo/MissionsDialog/MissionsList/index.jsx
index a66e705..9bd2061 100644
--- a/src/components/dashboard/roadItems/operator/Actions/Create/Forms/GetItemInfo/MissionsDialog/MissionsList/index.jsx
+++ b/src/components/dashboard/roadItems/operator/Actions/Create/Forms/GetItemInfo/MissionsDialog/MissionsList/index.jsx
@@ -48,12 +48,9 @@ const MissionList = ({ setMission, setOpenDialog }) => {
Cell: ({ row }) => row.original.zone_fa,
},
{
- accessorFn: (row) =>
- row.type == 1
- ? moment(row.start_date).locale("fa").format("HH:mm | yyyy/MM/DD")
- : moment(row.start_date).locale("fa").format("yyyy/MM/DD"),
- header: "تاریخ شروع",
- id: "start_date",
+ accessorFn: (row) => moment(row.start_time).locale("fa").format("HH:mm | yyyy/MM/DD"),
+ header: "تاریخ خروج",
+ id: "start_time",
enableColumnFilter: true,
datatype: "date",
filterMode: "between",
@@ -61,12 +58,9 @@ const MissionList = ({ setMission, setOpenDialog }) => {
size: 100,
},
{
- accessorFn: (row) =>
- row.type == 1
- ? moment(row.end_date).locale("fa").format("HH:mm | yyyy/MM/DD")
- : moment(row.end_date).locale("fa").format("yyyy/MM/DD"),
- header: "تاریخ پایان",
- id: "end_date",
+ accessorFn: (row) => moment(row.finish_time).locale("fa").format("HH:mm | yyyy/MM/DD"),
+ header: "تاریخ ورود",
+ id: "finish_time",
enableColumnFilter: true,
datatype: "date",
filterMode: "between",
diff --git a/src/components/dashboard/roadItems/operator/OperatorList.jsx b/src/components/dashboard/roadItems/operator/OperatorList.jsx
index 7f862e4..ff5fe03 100644
--- a/src/components/dashboard/roadItems/operator/OperatorList.jsx
+++ b/src/components/dashboard/roadItems/operator/OperatorList.jsx
@@ -12,8 +12,6 @@ import RowActions from "./RowActions";
import DescriptionForm from "./RowActions/DescriptionForm";
import ImageDialog from "./RowActions/ImageForm";
import LocationForm from "./RowActions/LocationForm";
-import MachinesCodeDialog from "./RowActions/MachinesCodeForm";
-import RahdaranDialog from "./RowActions/RahdaranForm";
import Toolbar from "./Toolbar";
const OperatorList = () => {
@@ -36,6 +34,17 @@ const OperatorList = () => {
size: 100,
Cell: ({ row }) => ,
},
+ {
+ accessorKey: "mission_id",
+ header: "کد یکتا ماموریت",
+ id: "mission_id",
+ enableColumnFilter: true,
+ datatype: "text",
+ filterMode: "equals",
+ columnFilterModeOptions: ["equals", "contains"],
+ grow: false,
+ size: 100,
+ },
{
header: "اطلاعات فعالیت",
id: "info",
@@ -129,8 +138,8 @@ const OperatorList = () => {
props.dependencyFieldValue.value === ""
? "empty"
: loadingSubItemsList
- ? "loading"
- : props.filterParameters.value
+ ? "loading"
+ : props.filterParameters.value
}
columnSelectOption={getColumnSelectOptions}
/>
@@ -309,7 +318,7 @@ const OperatorList = () => {
table_name={"roadItemsOperatorList"}
TableToolbar={Toolbar}
enableRowActions
- positionActionsColumn={"last"}
+ positionActionsColumn={"first"}
RowActions={RowActions}
/>
diff --git a/src/components/dashboard/roadItems/reports/Map/PointsOnMap/DialogInfoItem/ContentInfoItem.jsx b/src/components/dashboard/roadItems/reports/Map/PointsOnMap/DialogInfoItem/ContentInfoItem.jsx
index bbe49d2..36b6362 100644
--- a/src/components/dashboard/roadItems/reports/Map/PointsOnMap/DialogInfoItem/ContentInfoItem.jsx
+++ b/src/components/dashboard/roadItems/reports/Map/PointsOnMap/DialogInfoItem/ContentInfoItem.jsx
@@ -10,6 +10,11 @@ const ContentInfoItem = ({ data }) => {
{data.id !== "" && data.id}
+
+
+
+ {data.mission_id && data.mission_id}
+
diff --git a/src/components/dashboard/roadItems/supervisor/SupervisorList.jsx b/src/components/dashboard/roadItems/supervisor/SupervisorList.jsx
index 75005b7..d2e169d 100644
--- a/src/components/dashboard/roadItems/supervisor/SupervisorList.jsx
+++ b/src/components/dashboard/roadItems/supervisor/SupervisorList.jsx
@@ -78,6 +78,17 @@ const SupervisorList = () => {
size: 100,
Cell: ({ row }) => ,
},
+ {
+ accessorKey: "mission_id",
+ header: "کد یکتا ماموریت",
+ id: "mission_id",
+ enableColumnFilter: true,
+ datatype: "text",
+ filterMode: "equals",
+ columnFilterModeOptions: ["equals", "contains"],
+ grow: false,
+ size: 100,
+ },
...(hasCountryPermission ? [dynamicColumns] : []),
{
header: "اداره",
@@ -127,8 +138,8 @@ const SupervisorList = () => {
props.dependencyFieldValue?.value === ""
? "empty"
: loadingEdaratList
- ? "loading"
- : props.filterParameters.value
+ ? "loading"
+ : props.filterParameters.value
}
columnSelectOption={getColumnSelectOptions}
/>
@@ -227,8 +238,8 @@ const SupervisorList = () => {
props.dependencyFieldValue.value === ""
? "empty"
: loadingSubItemsList
- ? "loading"
- : props.filterParameters.value
+ ? "loading"
+ : props.filterParameters.value
}
columnSelectOption={getColumnSelectOptions}
/>
@@ -325,7 +336,7 @@ const SupervisorList = () => {
filterMode: "between",
grow: false,
size: 100,
- },
+ }
],
},
{
@@ -373,7 +384,7 @@ const SupervisorList = () => {
table_name={"roadItemsSupervisorList"}
TableToolbar={Toolbar}
enableRowActions
- positionActionsColumn={"last"}
+ positionActionsColumn={"first"}
RowActions={RowActions}
/>
diff --git a/src/components/dashboard/roadMissions/transportation/RowActions/Allocation/Form/MachinesDialog/MachineList/RowActions/Allocate/index.jsx b/src/components/dashboard/roadMissions/transportation/RowActions/Allocation/Form/MachinesDialog/MachineList/RowActions/Allocate/index.jsx
index 9718815..fd0e3c6 100644
--- a/src/components/dashboard/roadMissions/transportation/RowActions/Allocation/Form/MachinesDialog/MachineList/RowActions/Allocate/index.jsx
+++ b/src/components/dashboard/roadMissions/transportation/RowActions/Allocation/Form/MachinesDialog/MachineList/RowActions/Allocate/index.jsx
@@ -1,5 +1,5 @@
import { Done } from "@mui/icons-material";
-import { IconButton, Tooltip } from "@mui/material";
+import { Button, IconButton, Tooltip } from "@mui/material";
const Allocate = ({ row, setMachine, setOpenMachinesDialog }) => {
const handleClick = () => {
@@ -9,11 +9,9 @@ const Allocate = ({ row, setMachine, setOpenMachinesDialog }) => {
return (
<>
-
-
-
-
-
+ } color="primary" sx={{ textTransform: "unset", alignSelf: "center" }} onClick={handleClick}>
+ تخصیص
+
>
);
};
diff --git a/src/components/dashboard/roadPatrols/operator/OperatorList.jsx b/src/components/dashboard/roadPatrols/operator/OperatorList.jsx
index 71357d6..937f874 100644
--- a/src/components/dashboard/roadPatrols/operator/OperatorList.jsx
+++ b/src/components/dashboard/roadPatrols/operator/OperatorList.jsx
@@ -1,14 +1,12 @@
"use client";
-import { useMemo } from "react";
-import { Box, Stack, Typography } from "@mui/material";
import DataTableWithAuth from "@/core/components/DataTableWithAuth";
-import Toolbar from "./Toolbar";
import { GET_ROAD_PATROL_OPERATOR_LIST } from "@/core/utils/routes";
+import { Box, Stack } from "@mui/material";
import moment from "jalali-moment";
+import { useMemo } from "react";
import RowActions from "./RowActions";
import ReportForm from "./RowActions/ReportForm";
-import RahdaranDialog from "./RowActions/RahdaranForm";
-import MachinePerformanceForm from "./RowActions/MachinePerformanceForm";
+import Toolbar from "./Toolbar";
const OperatorList = () => {
const columns = useMemo(
@@ -25,59 +23,15 @@ const OperatorList = () => {
size: 100,
},
{
- header: "عملکرد خودرو", // Car ID
+ accessorKey: "mission_id",
+ header: "کد یکتا ماموریت",
+ id: "mission_id",
enableColumnFilter: true,
- id: "cmmsMachines__machine_code",
datatype: "text",
- filterMode: "contains",
- columnFilterModeOptions: ["equals", "contains"],
- enableSorting: false,
- grow: false,
- size: 100,
- muiTableBodyCellProps: {
- sx: {
- borderLeft: "1px solid #e1e1e1",
- py: 0,
- "&:first-of-type": {
- borderLeft: "unset",
- },
- },
- },
- Cell: ({ renderedCellValue, row }) => {
- return (
-
-
-
- );
- },
- },
- {
- accessorKey: "rahdaran",
- header: "راهداران",
- id: "rahdaran__code",
- enableColumnFilter: true,
- enableSorting: false,
- datatype: "text",
- filterMode: "contains",
+ filterMode: "equals",
columnFilterModeOptions: ["equals", "contains"],
grow: false,
size: 100,
- muiTableBodyCellProps: {
- sx: {
- borderLeft: "1px solid #e1e1e1",
- py: 0,
- "&:first-of-type": {
- borderLeft: "unset",
- },
- },
- },
- Cell: ({ renderedCellValue, row }) => {
- return (
-
-
-
- );
- },
},
{
accessorFn: (row) => moment(row.start_time).locale("fa").format("HH:mm | yyyy/MM/DD"),
@@ -148,7 +102,7 @@ const OperatorList = () => {
table_name={"roadPatrolOperatorList"}
TableToolbar={Toolbar}
enableRowActions
- positionActionsColumn={"last"}
+ positionActionsColumn={"first"}
RowActions={RowActions}
/>
diff --git a/src/components/dashboard/roadPatrols/supervisor/SupervisorList.jsx b/src/components/dashboard/roadPatrols/supervisor/SupervisorList.jsx
index 1a5224e..47b3c01 100644
--- a/src/components/dashboard/roadPatrols/supervisor/SupervisorList.jsx
+++ b/src/components/dashboard/roadPatrols/supervisor/SupervisorList.jsx
@@ -1,20 +1,18 @@
"use client";
-import { useEffect, useMemo, useState } from "react";
-import { Box, Stack, Typography } from "@mui/material";
-import DataTableWithAuth from "@/core/components/DataTableWithAuth";
-import Toolbar from "./Toolbar";
-import { GET_ROAD_PATROL_SUPERVISOR_LIST } from "@/core/utils/routes";
-import moment from "jalali-moment";
-import RowActions from "./RowActions";
-import useProvinces from "@/lib/hooks/useProvince";
import CustomSelectByDependency from "@/core/components/DataTable/filter/fieldsType/CustomSelectByDependency";
+import DataTableWithAuth from "@/core/components/DataTableWithAuth";
+import { GET_ROAD_PATROL_SUPERVISOR_LIST } from "@/core/utils/routes";
+import { useAuth } from "@/lib/contexts/auth";
import useEdaratLists from "@/lib/hooks/useEdaratLists";
+import { usePermissions } from "@/lib/hooks/usePermissions";
+import useProvinces from "@/lib/hooks/useProvince";
+import { Box, Stack } from "@mui/material";
+import moment from "jalali-moment";
+import { useEffect, useMemo, useState } from "react";
+import RowActions from "./RowActions";
import OfficerDescriptionForm from "./RowActions/OfficerDescription";
import ReportForm from "./RowActions/ReportForm";
-import RahdaranDialog from "./RowActions/RahdaranForm";
-import { usePermissions } from "@/lib/hooks/usePermissions";
-import { useAuth } from "@/lib/contexts/auth";
-import MachinePerformanceForm from "./RowActions/MachinePerformanceForm";
+import Toolbar from "./Toolbar";
const SupervisorList = () => {
const { data: userPermissions } = usePermissions();
@@ -69,6 +67,17 @@ const SupervisorList = () => {
grow: false,
size: 100,
},
+ {
+ accessorKey: "mission_id",
+ header: "کد یکتا ماموریت",
+ id: "mission_id",
+ enableColumnFilter: true,
+ datatype: "text",
+ filterMode: "equals",
+ columnFilterModeOptions: ["equals", "contains"],
+ grow: false,
+ size: 100,
+ },
...(hasCountryPermission ? [dynamicColumns] : []),
{
accessorKey: "edare_id",
@@ -119,8 +128,8 @@ const SupervisorList = () => {
props.dependencyFieldValue?.value === ""
? "empty"
: loadingEdaratList
- ? "loading"
- : props.filterParameters.value
+ ? "loading"
+ : props.filterParameters.value
}
columnSelectOption={getColumnSelectOptions}
/>
@@ -128,60 +137,6 @@ const SupervisorList = () => {
},
Cell: ({ renderedCellValue, row }) => <>{row.original.edare_name}>,
},
- {
- header: "عملکرد خودرو",
- enableColumnFilter: true,
- id: "cmmsMachines__machine_code",
- datatype: "text",
- filterMode: "contains",
- columnFilterModeOptions: ["equals", "contains"],
- enableSorting: false,
- grow: false,
- size: 100,
- muiTableBodyCellProps: {
- sx: {
- borderLeft: "1px solid #e1e1e1",
- py: 0,
- "&:first-of-type": {
- borderLeft: "unset",
- },
- },
- },
- Cell: ({ row }) => (
-
-
-
- ),
- },
- {
- accessorKey: "rahdaran",
- header: "راهداران",
- id: "rahdaran__code",
- enableColumnFilter: true,
- enableSorting: false,
- datatype: "text",
- filterMode: "contains",
- columnFilterModeOptions: ["equals", "contains"],
- grow: false,
- size: 100,
- muiTableBodyCellProps: {
- sx: {
- borderLeft: "1px solid #e1e1e1",
- py: 0,
- "&:first-of-type": {
- borderLeft: "unset",
- },
- },
- },
- Cell: ({ renderedCellValue }) =>
- renderedCellValue ? (
-
-
-
- ) : (
- -
- ),
- },
{
accessorFn: (row) => moment(row.start_time).locale("fa").format("HH:mm | yyyy/MM/DD"),
header: "تاریخ شروع",
@@ -271,7 +226,7 @@ const SupervisorList = () => {
table_name={"roadPatrolSupervisorList"}
TableToolbar={Toolbar}
enableRowActions
- positionActionsColumn={"last"}
+ positionActionsColumn={"first"}
RowActions={RowActions}
/>
diff --git a/src/core/utils/pageMenu.js b/src/core/utils/pageMenu.js
index c3928fe..b9cf8ba 100644
--- a/src/core/utils/pageMenu.js
+++ b/src/core/utils/pageMenu.js
@@ -150,7 +150,7 @@ export const pageMenu = [
id: "roadItemManagmentSupervisorCartable",
label: "کارتابل",
type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_items/supervisor/cartable",
+ route: "/dashboard/road-items/supervisor",
permissions: [
"show-road-item-supervise-cartable",
"show-road-item-supervise-cartable-province",
@@ -166,18 +166,11 @@ export const pageMenu = [
hasSubitems: true,
badges: [{ key: "roadItem.operation_cnt" }],
Subitems: [
- {
- id: "roadItemManagmentOparationCreate",
- label: "ثبت فعالیت",
- type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_items/operator/create",
- permissions: ["create-road-item"],
- },
{
id: "roadItemManagmentOparationCartable",
label: "کارتابل",
type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_items/operator/cartable",
+ route: "/dashboard/road-items/operator",
permissions: ["create-road-item"],
},
],
@@ -186,7 +179,7 @@ export const pageMenu = [
id: "roadItemManagmentMap",
label: "پراکندگی بر روی نقشه",
type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/map?type=road_items",
+ route: "/dashboard/road-items/reports/map",
icon: ,
permissions: [
"show-road-item-supervise-cartable",
@@ -197,13 +190,32 @@ export const pageMenu = [
{
id: "roadItemManagmentReport",
label: "گزارش ها",
- type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_items/report",
- icon: ,
- permissions: [
- "show-road-item-supervise-cartable",
- "show-road-item-supervise-cartable-province",
- "create-road-item",
+ type: "menu",
+ icon: ,
+ hasSubitems: true,
+ Subitems: [
+ {
+ id: "roadItemManagmentReportProvince",
+ label: "تعداد فعالیت ها به تفکیک آیتم",
+ type: "page",
+ route: "/dashboard/road-items/reports/items-report",
+ permissions: [
+ "show-road-item-supervise-cartable",
+ "show-road-item-supervise-cartable-province",
+ "create-road-item",
+ ],
+ },
+ {
+ id: "roadItemManagmentReportItems",
+ label: "تعداد و حجم فعالیت ها به تفکیک موارد اقدام شده",
+ type: "page",
+ route: "/dashboard/road-items/reports/sub-items-report",
+ permissions: [
+ "show-road-item-supervise-cartable",
+ "show-road-item-supervise-cartable-province",
+ "create-road-item",
+ ],
+ },
],
},
],
@@ -226,7 +238,7 @@ export const pageMenu = [
id: "roadPatrolManagmentSupervisorCartable",
label: "کارتابل",
type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_patrols/supervisor/cartable",
+ route: "/dashboard/road-patrols/supervisor",
permissions: [
"show-road-patrol-supervise-cartable",
"show-road-patrol-supervise-cartable-province",
@@ -241,18 +253,11 @@ export const pageMenu = [
icon: ,
hasSubitems: true,
Subitems: [
- {
- id: "roadPatrolManagmentOparationCreate",
- label: "ثبت اقدام",
- type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_patrols/operator/create",
- permissions: ["add-road-patrol"],
- },
{
id: "roadPatrolManagmentOparationCartable",
label: "کارتابل",
type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_patrols/operator/cartable",
+ route: "/dashboard/road-patrols/operator",
permissions: ["add-road-patrol"],
},
],
@@ -273,8 +278,8 @@ export const pageMenu = [
id: "roadPatrolManagmentReport",
label: "گزارش ها",
type: "page",
- route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_patrols/report",
- icon: ,
+ route: "/dashboard/road-patrols/reports",
+ icon: ,
permissions: [
"add-road-patrol",
"show-road-patrol-supervise-cartable",