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 ( <> - - - - - + ); }; 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",