Feature/amiriis missions
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
export default function DataTableFilterDataStructure(filterData, isValueEmpty) {
|
||||
return Object.values(filterData)
|
||||
.filter((filter) => !isValueEmpty(filter.value))
|
||||
.map(({ filterMode, id, datatype, value }) => ({
|
||||
id: id.replace(/__/g, "."),
|
||||
fn: filterMode,
|
||||
datatype,
|
||||
value,
|
||||
}));
|
||||
}
|
||||
export default function DataTableFilterDataStructure(filterData, isValueEmpty) {
|
||||
return Object.values(filterData)
|
||||
.filter((filter) => !isValueEmpty(filter.value))
|
||||
.map(({ filterMode, id, datatype, value }) => ({
|
||||
id: id.replace(/__/g, "."),
|
||||
fn: filterMode,
|
||||
datatype,
|
||||
value,
|
||||
}));
|
||||
}
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
"use client";
|
||||
import createCache from "@emotion/cache";
|
||||
import { prefixer } from "stylis";
|
||||
import stylisRTLPlugin from "stylis-plugin-rtl";
|
||||
import { CacheProvider } from "@emotion/react";
|
||||
|
||||
const isBrowser = typeof document !== "undefined";
|
||||
|
||||
const createEmotionCache = () => {
|
||||
let insertionPoint;
|
||||
|
||||
if (isBrowser) {
|
||||
const emotionInsertionPoint = document.querySelector('meta[name="emotion-insertion-point"]');
|
||||
insertionPoint = emotionInsertionPoint ?? undefined;
|
||||
}
|
||||
|
||||
return createCache({
|
||||
insertionPoint,
|
||||
key: "mui-rtl",
|
||||
stylisPlugins: [prefixer, stylisRTLPlugin],
|
||||
});
|
||||
};
|
||||
|
||||
const cacheProviderRtl = (props) => {
|
||||
return <CacheProvider value={createEmotionCache()}>{props.children}</CacheProvider>;
|
||||
};
|
||||
|
||||
export default cacheProviderRtl;
|
||||
"use client";
|
||||
import createCache from "@emotion/cache";
|
||||
import { prefixer } from "stylis";
|
||||
import stylisRTLPlugin from "stylis-plugin-rtl";
|
||||
import { CacheProvider } from "@emotion/react";
|
||||
|
||||
const isBrowser = typeof document !== "undefined";
|
||||
|
||||
const createEmotionCache = () => {
|
||||
let insertionPoint;
|
||||
|
||||
if (isBrowser) {
|
||||
const emotionInsertionPoint = document.querySelector('meta[name="emotion-insertion-point"]');
|
||||
insertionPoint = emotionInsertionPoint ?? undefined;
|
||||
}
|
||||
|
||||
return createCache({
|
||||
insertionPoint,
|
||||
key: "mui-rtl",
|
||||
stylisPlugins: [prefixer, stylisRTLPlugin],
|
||||
});
|
||||
};
|
||||
|
||||
const cacheProviderRtl = (props) => {
|
||||
return <CacheProvider value={createEmotionCache()}>{props.children}</CacheProvider>;
|
||||
};
|
||||
|
||||
export default cacheProviderRtl;
|
||||
|
||||
@@ -1,65 +1,65 @@
|
||||
"use client";
|
||||
import { toast } from "react-toastify";
|
||||
import {
|
||||
errorAccessDeniedToast,
|
||||
errorClientToast,
|
||||
errorLogicToast,
|
||||
errorServerToast,
|
||||
errorTooManyToast,
|
||||
errorUnauthorizedToast,
|
||||
errorValidationToast,
|
||||
} from "@/core/components/Toasts/error";
|
||||
|
||||
const isServerError = (status) => status >= 500 && status <= 599;
|
||||
const isClientError = (status) => status >= 400 && status <= 499;
|
||||
|
||||
const errorServer = (response, notification, toastContainer) => {
|
||||
if (notification) errorServerToast(toastContainer);
|
||||
};
|
||||
|
||||
const errorClient = (response, notification, toastContainer, logout) => {
|
||||
switch (response.status) {
|
||||
case 401:
|
||||
logout();
|
||||
if (notification) errorUnauthorizedToast(toastContainer);
|
||||
break;
|
||||
case 403:
|
||||
if (notification) errorAccessDeniedToast(response.data.message, toastContainer);
|
||||
break;
|
||||
case 422:
|
||||
if ("type" in response.data) {
|
||||
if (Array.isArray(response.data.message)) {
|
||||
response.data.message.map((item) => {
|
||||
if (notification) errorLogicToast(item, toastContainer);
|
||||
});
|
||||
} else {
|
||||
if (notification) errorLogicToast(response.data.message, toastContainer);
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (notification) {
|
||||
const errorsMap = Object.keys(response.data.errors);
|
||||
const errorsArray = response.data.errors;
|
||||
|
||||
errorsMap.map((item, index) => {
|
||||
errorValidationToast(errorsArray[item][0], toastContainer);
|
||||
});
|
||||
}
|
||||
break;
|
||||
case 429:
|
||||
if (notification) errorTooManyToast(toastContainer);
|
||||
break;
|
||||
default:
|
||||
if (notification) errorClientToast(toastContainer);
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
export const errorResponse = (response, notification, toastContainer, logout) => {
|
||||
if (notification) toast.dismiss({ containerId: toastContainer });
|
||||
if (isServerError(response.status)) {
|
||||
errorServer(response, notification, toastContainer);
|
||||
} else if (isClientError(response.status)) {
|
||||
errorClient(response, notification, toastContainer, logout);
|
||||
}
|
||||
};
|
||||
"use client";
|
||||
import { toast } from "react-toastify";
|
||||
import {
|
||||
errorAccessDeniedToast,
|
||||
errorClientToast,
|
||||
errorLogicToast,
|
||||
errorServerToast,
|
||||
errorTooManyToast,
|
||||
errorUnauthorizedToast,
|
||||
errorValidationToast,
|
||||
} from "@/core/components/Toasts/error";
|
||||
|
||||
const isServerError = (status) => status >= 500 && status <= 599;
|
||||
const isClientError = (status) => status >= 400 && status <= 499;
|
||||
|
||||
const errorServer = (response, notification, toastContainer) => {
|
||||
if (notification) errorServerToast(toastContainer);
|
||||
};
|
||||
|
||||
const errorClient = (response, notification, toastContainer, logout) => {
|
||||
switch (response.status) {
|
||||
case 401:
|
||||
logout();
|
||||
if (notification) errorUnauthorizedToast(toastContainer);
|
||||
break;
|
||||
case 403:
|
||||
if (notification) errorAccessDeniedToast(response.data.message, toastContainer);
|
||||
break;
|
||||
case 422:
|
||||
if ("type" in response.data) {
|
||||
if (Array.isArray(response.data.message)) {
|
||||
response.data.message.map((item) => {
|
||||
if (notification) errorLogicToast(item, toastContainer);
|
||||
});
|
||||
} else {
|
||||
if (notification) errorLogicToast(response.data.message, toastContainer);
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (notification) {
|
||||
const errorsMap = Object.keys(response.data.errors);
|
||||
const errorsArray = response.data.errors;
|
||||
|
||||
errorsMap.map((item, index) => {
|
||||
errorValidationToast(errorsArray[item][0], toastContainer);
|
||||
});
|
||||
}
|
||||
break;
|
||||
case 429:
|
||||
if (notification) errorTooManyToast(toastContainer);
|
||||
break;
|
||||
default:
|
||||
if (notification) errorClientToast(toastContainer);
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
export const errorResponse = (response, notification, toastContainer, logout) => {
|
||||
if (notification) toast.dismiss({ containerId: toastContainer });
|
||||
if (isServerError(response.status)) {
|
||||
errorServer(response, notification, toastContainer);
|
||||
} else if (isClientError(response.status)) {
|
||||
errorClient(response, notification, toastContainer, logout);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
export function filterMenuItems(items, _permissions = []) {
|
||||
return items.reduce((acc, item) => {
|
||||
if (item.permissions) {
|
||||
if (item.permissions.some((permission) => _permissions.includes(permission))) {
|
||||
acc.push(item);
|
||||
}
|
||||
} else if (item.hasSubitems) {
|
||||
const filteredSubItems = filterMenuItems(item.Subitems, _permissions);
|
||||
if (filteredSubItems.length > 0) {
|
||||
acc.push({ ...item, Subitems: filteredSubItems });
|
||||
}
|
||||
} else {
|
||||
acc.push(item);
|
||||
}
|
||||
return acc;
|
||||
}, []);
|
||||
}
|
||||
export function filterMenuItems(items, _permissions = []) {
|
||||
return items.reduce((acc, item) => {
|
||||
if (item.permissions) {
|
||||
if (item.permissions.some((permission) => _permissions.includes(permission))) {
|
||||
acc.push(item);
|
||||
}
|
||||
} else if (item.hasSubitems) {
|
||||
const filteredSubItems = filterMenuItems(item.Subitems, _permissions);
|
||||
if (filteredSubItems.length > 0) {
|
||||
acc.push({ ...item, Subitems: filteredSubItems });
|
||||
}
|
||||
} else {
|
||||
acc.push(item);
|
||||
}
|
||||
return acc;
|
||||
}, []);
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
export const flattenArrayOfObjects = (array, key) => {
|
||||
return array.reduce((acc, obj) => {
|
||||
acc.push(obj);
|
||||
if (Array.isArray(obj[key])) {
|
||||
acc.push(...flattenArrayOfObjects(obj[key], key));
|
||||
}
|
||||
return acc;
|
||||
}, []);
|
||||
};
|
||||
export const flattenArrayOfObjects = (array, key) => {
|
||||
return array.reduce((acc, obj) => {
|
||||
acc.push(obj);
|
||||
if (Array.isArray(obj[key])) {
|
||||
acc.push(...flattenArrayOfObjects(obj[key], key));
|
||||
}
|
||||
return acc;
|
||||
}, []);
|
||||
};
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
export const flattenObjectOfObjects = (obj, res = {}) => {
|
||||
for (let key in obj) {
|
||||
if (obj.hasOwnProperty(key)) {
|
||||
if (typeof obj[key] === "object" && obj[key] !== null) {
|
||||
flattenObjectOfObjects(obj[key], res);
|
||||
} else {
|
||||
res[key] = obj[key];
|
||||
}
|
||||
}
|
||||
}
|
||||
return res;
|
||||
};
|
||||
export const flattenObjectOfObjects = (obj, res = {}) => {
|
||||
for (let key in obj) {
|
||||
if (obj.hasOwnProperty(key)) {
|
||||
if (typeof obj[key] === "object" && obj[key] !== null) {
|
||||
flattenObjectOfObjects(obj[key], res);
|
||||
} else {
|
||||
res[key] = obj[key];
|
||||
}
|
||||
}
|
||||
}
|
||||
return res;
|
||||
};
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
export const formatCounter = (counter) => {
|
||||
const minutes = Math.floor(counter / 60)
|
||||
.toString()
|
||||
.padStart(2, "0");
|
||||
const seconds = (counter % 60).toString().padStart(2, "0");
|
||||
return `${minutes}:${seconds}`;
|
||||
};
|
||||
export const formatCounter = (counter) => {
|
||||
const minutes = Math.floor(counter / 60)
|
||||
.toString()
|
||||
.padStart(2, "0");
|
||||
const seconds = (counter % 60).toString().padStart(2, "0");
|
||||
return `${minutes}:${seconds}`;
|
||||
};
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import moment from "jalali-moment";
|
||||
|
||||
export const formatSecondsToHHMMSS = (seconds) => {
|
||||
const duration = moment.duration(seconds, "seconds");
|
||||
const hours = Math.floor(duration.asHours());
|
||||
const minutes = duration.minutes();
|
||||
const secs = duration.seconds();
|
||||
|
||||
return `${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}:${String(secs).padStart(2, "0")}`;
|
||||
};
|
||||
import moment from "jalali-moment";
|
||||
|
||||
export const formatSecondsToHHMMSS = (seconds) => {
|
||||
const duration = moment.duration(seconds, "seconds");
|
||||
const hours = Math.floor(duration.asHours());
|
||||
const minutes = duration.minutes();
|
||||
const secs = duration.seconds();
|
||||
|
||||
return `${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}:${String(secs).padStart(2, "0")}`;
|
||||
};
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
export const getValueByPath = (obj, path) => {
|
||||
const keys = path.split(".");
|
||||
|
||||
let value = obj;
|
||||
|
||||
for (const key of keys) {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
value = value[key];
|
||||
}
|
||||
|
||||
return value;
|
||||
};
|
||||
export const getValueByPath = (obj, path) => {
|
||||
const keys = path.split(".");
|
||||
|
||||
let value = obj;
|
||||
|
||||
for (const key of keys) {
|
||||
if (value === undefined) {
|
||||
return undefined;
|
||||
}
|
||||
value = value[key];
|
||||
}
|
||||
|
||||
return value;
|
||||
};
|
||||
|
||||
@@ -1,82 +1,82 @@
|
||||
const api = process.env.NEXT_PUBLIC_API_URL;
|
||||
|
||||
export const headerMenu = [
|
||||
{
|
||||
title: "تصادفات",
|
||||
subMenu: [
|
||||
[
|
||||
{
|
||||
title: "تصادفات روزانه",
|
||||
href: api + "/v2/daily_accidents/create",
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "گزارش های جامع",
|
||||
subMenu: [
|
||||
[
|
||||
{
|
||||
title: "گزارش محوری",
|
||||
href: api + "/v2/axis_reports",
|
||||
},
|
||||
{
|
||||
title: "هوش تجاری (BI)",
|
||||
href: api + "/v2/axis_reports",
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "زیرساخت و ناوگان",
|
||||
subMenu: [
|
||||
[
|
||||
{
|
||||
title: "پراکندگی بر روی نقشه راهدارخانه ها",
|
||||
href: api + "/v2/map?type=rahdar",
|
||||
},
|
||||
{
|
||||
title: "راهدارخانه ها",
|
||||
href: "/infrastructure/toll-house",
|
||||
},
|
||||
],
|
||||
[
|
||||
{
|
||||
title: "ممیزی ماشین آلات راهداری کشور",
|
||||
href: api + "/cmms-audit",
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "سامانه های راهداری",
|
||||
subMenu: [
|
||||
[
|
||||
{
|
||||
title: "تحقیق و توسعه",
|
||||
href: api + "/RandD",
|
||||
},
|
||||
{
|
||||
title: "سامانه مدیریت یکپارچه زیرساخت های راه (PMS,BMS,SMS)",
|
||||
href: "http://roadams.rmto.ir",
|
||||
},
|
||||
{
|
||||
title: "سامانه مدیریت ناوگان (FMS)",
|
||||
href: "http://fms.141.ir",
|
||||
},
|
||||
{
|
||||
title: "سامانه جامع مدیریت سوانح و حوادث جاده ای",
|
||||
href: "https://items.rmto.ir",
|
||||
},
|
||||
{
|
||||
title: "سامانه مدیریت نگهداری ماشین آلات (CMMS)",
|
||||
href: "https://cmms.rmto.ir/Login.aspx?ReturnUrl=%2f",
|
||||
},
|
||||
{
|
||||
title: "درگاه کاتالوگ داده",
|
||||
href: "https://roadams.rmto.ir:8080",
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
];
|
||||
const api = process.env.NEXT_PUBLIC_API_URL;
|
||||
|
||||
export const headerMenu = [
|
||||
{
|
||||
title: "تصادفات",
|
||||
subMenu: [
|
||||
[
|
||||
{
|
||||
title: "تصادفات روزانه",
|
||||
href: api + "/v2/daily_accidents/create",
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "گزارش های جامع",
|
||||
subMenu: [
|
||||
[
|
||||
{
|
||||
title: "گزارش محوری",
|
||||
href: api + "/v2/axis_reports",
|
||||
},
|
||||
{
|
||||
title: "هوش تجاری (BI)",
|
||||
href: api + "/v2/axis_reports",
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "زیرساخت و ناوگان",
|
||||
subMenu: [
|
||||
[
|
||||
{
|
||||
title: "پراکندگی بر روی نقشه راهدارخانه ها",
|
||||
href: api + "/v2/map?type=rahdar",
|
||||
},
|
||||
{
|
||||
title: "راهدارخانه ها",
|
||||
href: "/infrastructure/toll-house",
|
||||
},
|
||||
],
|
||||
[
|
||||
{
|
||||
title: "ممیزی ماشین آلات راهداری کشور",
|
||||
href: api + "/cmms-audit",
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "سامانه های راهداری",
|
||||
subMenu: [
|
||||
[
|
||||
{
|
||||
title: "تحقیق و توسعه",
|
||||
href: api + "/RandD",
|
||||
},
|
||||
{
|
||||
title: "سامانه مدیریت یکپارچه زیرساخت های راه (PMS,BMS,SMS)",
|
||||
href: "http://roadams.rmto.ir",
|
||||
},
|
||||
{
|
||||
title: "سامانه مدیریت ناوگان (FMS)",
|
||||
href: "http://fms.141.ir",
|
||||
},
|
||||
{
|
||||
title: "سامانه جامع مدیریت سوانح و حوادث جاده ای",
|
||||
href: "https://items.rmto.ir",
|
||||
},
|
||||
{
|
||||
title: "سامانه مدیریت نگهداری ماشین آلات (CMMS)",
|
||||
href: "https://cmms.rmto.ir/Login.aspx?ReturnUrl=%2f",
|
||||
},
|
||||
{
|
||||
title: "درگاه کاتالوگ داده",
|
||||
href: "https://roadams.rmto.ir:8080",
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
export default function isArrayEmpty(value) {
|
||||
if (Array.isArray(value)) {
|
||||
return value.length === 0 || value.every((v) => v === "");
|
||||
}
|
||||
return value === "" || value === null || value === undefined;
|
||||
}
|
||||
export default function isArrayEmpty(value) {
|
||||
if (Array.isArray(value)) {
|
||||
return value.length === 0 || value.every((v) => v === "");
|
||||
}
|
||||
return value === "" || value === null || value === undefined;
|
||||
}
|
||||
|
||||
4
src/core/utils/machineTypes.js
Normal file
4
src/core/utils/machineTypes.js
Normal file
@@ -0,0 +1,4 @@
|
||||
export const machineType = [
|
||||
{ id: "grader", name_fa: "گریدر" },
|
||||
{ id: "loder", name_fa: "لودر" },
|
||||
];
|
||||
@@ -1,30 +1,30 @@
|
||||
function validateNationalCode(code) {
|
||||
const invalidCodes = [
|
||||
"1111111111",
|
||||
"2222222222",
|
||||
"3333333333",
|
||||
"4444444444",
|
||||
"5555555555",
|
||||
"6666666666",
|
||||
"7777777777",
|
||||
"8888888888",
|
||||
"9999999999",
|
||||
];
|
||||
if (invalidCodes.includes(code)) return false;
|
||||
|
||||
const L = code.length;
|
||||
if (L < 8 || parseInt(code, 10) === 0) return false;
|
||||
|
||||
code = code.padStart(10, "0");
|
||||
if (parseInt(code.substr(3, 6), 10) === 0) return false;
|
||||
|
||||
const c = parseInt(code.charAt(9), 10);
|
||||
let s = 0;
|
||||
for (let i = 0; i < 9; i++) {
|
||||
s += parseInt(code.charAt(i), 10) * (10 - i);
|
||||
}
|
||||
s = s % 11;
|
||||
return (s < 2 && c === s) || (s >= 2 && c === 11 - s);
|
||||
}
|
||||
|
||||
export default validateNationalCode;
|
||||
function validateNationalCode(code) {
|
||||
const invalidCodes = [
|
||||
"1111111111",
|
||||
"2222222222",
|
||||
"3333333333",
|
||||
"4444444444",
|
||||
"5555555555",
|
||||
"6666666666",
|
||||
"7777777777",
|
||||
"8888888888",
|
||||
"9999999999",
|
||||
];
|
||||
if (invalidCodes.includes(code)) return false;
|
||||
|
||||
const L = code.length;
|
||||
if (L < 8 || parseInt(code, 10) === 0) return false;
|
||||
|
||||
code = code.padStart(10, "0");
|
||||
if (parseInt(code.substr(3, 6), 10) === 0) return false;
|
||||
|
||||
const c = parseInt(code.charAt(9), 10);
|
||||
let s = 0;
|
||||
for (let i = 0; i < 9; i++) {
|
||||
s += parseInt(code.charAt(i), 10) * (10 - i);
|
||||
}
|
||||
s = s % 11;
|
||||
return (s < 2 && c === s) || (s >= 2 && c === 11 - s);
|
||||
}
|
||||
|
||||
export default validateNationalCode;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,178 +1,193 @@
|
||||
const api = process.env.NEXT_PUBLIC_API_URL;
|
||||
|
||||
export const GET_USER_ROUTE = api + "/api/v3/profile/info";
|
||||
export const LOGOUT_USER_ROUTE = api + "/api/v3/logout";
|
||||
export const UPDATE_USER_ROUTE = api + "/api/v3/profile/edit";
|
||||
export const CHANGE_USER_PASSWORD = api + "/api/v3/profile/change_password";
|
||||
export const GET_LOGIN_ROUTE = api + "/login_dev";
|
||||
export const GET_PERMISSIONS_ROUTE = api + "/webapi/user/get-permission";
|
||||
export const GET_SIDEBAR_BADGE_ROUTE = api + "/api/v3/notifications";
|
||||
export const REFER_ADMIN_PROVINCE = "/v3/api/fake-submit";
|
||||
export const REFER_ADMIN_CITY = "/v3/api/fake-submit";
|
||||
export const GET_CITY_LISTS = api + "/public/contents/provinces";
|
||||
export const GET_PROVINCE_LISTS = api + "/public/contents/provinces";
|
||||
export const GET_PREV_STATE_OPINION = "/v3/api/fake-prev-state-opinion";
|
||||
export const SUBMIT_ROAD_SAFETY_FORM = "/v3/api/fake-submit";
|
||||
export const CREATE_AZMAYESH = api + "/api/v3/azmayeshes/store";
|
||||
export const UPDATE_AZMAYESH = api + "/api/v3/azmayeshes/update";
|
||||
export const GET_AZMAYESH_TYPE_LIST = api + "/api/v3/azmayesh_types/list";
|
||||
export const GET_AZMAYESH_TYPE_LIST_TABLE = api + "/api/v3/azmayesh_types";
|
||||
export const GET_AZMAYESH_LIST = api + "/api/v3/azmayeshes";
|
||||
export const DELETE_AZMAYESH = api + "/api/v3/azmayeshes/delete";
|
||||
export const GET_AZMAYESH_SAMPLE_FIELDS = api + "/api/v3/azmayesh_types/fields";
|
||||
export const ADD_SAMPLE_TO_AZMAYESH = api + "/api/v3/azmayesh_samples/store";
|
||||
export const UPDATE_SAMPLE_OF_AZMAYESH = api + "/api/v3/azmayesh_samples/update";
|
||||
export const GET_SAMPLE_LIST = api + "/api/v3/azmayesh_samples";
|
||||
export const DELETE_SAMPLE_LIST = api + "/api/v3/azmayesh_samples/delete";
|
||||
export const DELETE_AZMAYESH_TYPE_LIST = api + "/api/v3/azmayesh_types/delete";
|
||||
export const ADD_AZMAYESH_TYPE = api + "/api/v3/azmayesh_types/store";
|
||||
export const UPDATE_AZMAYESH_TYPE = api + "/api/v3/azmayesh_types/update";
|
||||
|
||||
//road patrol
|
||||
export const GET_ROAD_PATROL_OPERATOR_LIST = api + "/api/v3/road_patrols/operator_index";
|
||||
export const EXPORT_ROAD_PATROL_OPERATOR_LIST = api + "/api/v3/road_patrols/operator_report";
|
||||
export const GET_ROAD_PATROL_SUPERVISOR_LIST = api + "/api/v3/road_patrols/supervisor_index";
|
||||
export const EXPORT_ROAD_PATROL_SUPERVISOR_LIST = api + "/api/v3/road_patrols/supervisor_report";
|
||||
export const EXPORT_PROVINCE_ROAD_PATROL_REPORTS = api + "/api/v3/road_patrol_reports/province_activity_excel";
|
||||
export const EXPORT_COUNTRY_ROAD_PATROL_REPORTS = api + "/api/v3/road_patrol_reports/country_activity_excel";
|
||||
export const DELETE_ROAD_PATROL_SUPERVISOR = api + "/api/v3/road_patrols/delete";
|
||||
export const GET_CMMS_MACHINE_ROAD_PATROL = api + "/api/v3/road_patrols/machines";
|
||||
export const GET_ROAD_PATROL_OPERATOR_REPORT = api + "/v2/road_patrols/operator/report";
|
||||
export const GET_ROAD_PATROL_SUPERVISOR_REPORT = api + "/v2/road_patrols/operator/report";
|
||||
export const GET_RAHDARAN_ROAD_POTROL = api + "/api/v3/road_patrols/rahdaran";
|
||||
export const CREATE_PATROL = api + "/api/v3/road_patrols/store";
|
||||
export const GET_FMS_DATA = api + "/api/v3/fms_vehicle/get_activity";
|
||||
export const GET_OTP_TOKEN = api + "/api/v3/otp/get_token";
|
||||
export const GET_PROVINCE_ACTIVITY_REPORT = api + "/api/v3/road_patrol_reports/country_activity";
|
||||
export const GET_CITY_ACTIVITY_REPORT = api + "/api/v3/road_patrol_reports/province_activity";
|
||||
|
||||
// road items
|
||||
export const GET_ROAD_ITEMS_SUPERVISOR_LIST = api + "/api/v3/road_items/supervisor_index";
|
||||
export const EXPORT_ROAD_ITEMS_SUPERVISOR_LIST = api + "/api/v3/road_items/supervisor_report";
|
||||
export const GET_ROAD_ITEMS_OPERATOR_LIST = api + "/api/v3/road_items/operator_index";
|
||||
export const EXPORT_ROAD_ITEMS_OPERATOR_LIST = api + "/api/v3/road_items/operator_report";
|
||||
export const EXPORT_PROVINCE_ROAD_ITEM_REPORTS_PER_ITEM =
|
||||
api + "/api/v3/road_item_reports/province_activity_excel_per_item";
|
||||
export const EXPORT_COUNTRY_ROAD_ITEM_REPORTS_PER_ITEM =
|
||||
api + "/api/v3/road_item_reports/country_activity_excel_per_item";
|
||||
export const EXPORT_PROVINCE_ROAD_ITEM_REPORTS_PER_SUB_ITEM =
|
||||
api + "/api/v3/road_item_reports/province_activity_excel_per_sub_item";
|
||||
export const EXPORT_COUNTRY_ROAD_ITEM_REPORTS_PER_SUB_ITEM =
|
||||
api + "/api/v3/road_item_reports/country_activity_excel_per_sub_item";
|
||||
export const GET_ROAD_ITEMS_ITEM = api + "/api/v3/items";
|
||||
export const GET_ROAD_ITEMS_SUB_ITEM = api + "/api/v3/sub_items";
|
||||
export const GET_EDARAT_LISTS = api + "/public/contents/edarate_shahri_by_province";
|
||||
export const CREATE_ROAD_ITEMS = api + "/api/v3/road_items/store";
|
||||
export const UPDATE_ROAD_ITEMS = api + "/api/v3/road_items/update";
|
||||
export const VERIFY_BY_SUPERVISOR = api + "/api/v3/road_items/verify_by_supervisor";
|
||||
export const REJECT_BY_SUPERVISOR = api + "/api/v3/road_items/verify_by_supervisor";
|
||||
export const DELETE_BY_SUPERVISOR = api + "/api/v3/road_items/delete";
|
||||
export const RESTORE_BY_SUPERVISOR = api + "/api/v3/road_items/restore";
|
||||
export const GET_CAR_LIST_SEARCH = api + "/api/v3/cmms_machines/search";
|
||||
export const GET_RAHDARANS_LIST_SEARCH = api + "/api/v3/rahdaran/search";
|
||||
export const GET_OBSERVED_GASHT_LIST = api + "/api/v3/observed_items/filter";
|
||||
export const GET_ROAD_ITEMS_REPORT_MAP = api + "/api/v3/road_item_reports/activities_on_map";
|
||||
export const GET_ROAD_ITEM = api + "/api/v3/road_item_reports/show_on_map";
|
||||
export const GET_PROVINCE_ACTIVITY_PER_ITEM = api + "/api/v3/road_item_reports/country_activity_per_item";
|
||||
export const GET_CITY_ACTIVITY_PER_ITEM = api + "/api/v3/road_item_reports/province_activity_per_item";
|
||||
export const GET_PROVINCE_ACTIVITY_PER_SUB_ITEM = api + "/api/v3/road_item_reports/country_activity_per_sub_item";
|
||||
export const GET_CITY_ACTIVITY_PER_SUB_ITEM = api + "/api/v3/road_item_reports/province_activity_per_sub_item";
|
||||
export const GET_IMAGES_ROAD_ITEM = api + "/api/v3/road_items/files";
|
||||
export const GET_CMMS_MACHINE_ROAD_ITEM = api + "/api/v3/road_items/machines";
|
||||
export const GET_RAHDARAN_ROAD_ITEM = api + "/api/v3/road_items/rahdaran";
|
||||
|
||||
// damage items
|
||||
export const GET_RECEIPT_DAMAGE_ITEMS_LIST = api + "/api/v3/damages";
|
||||
export const CREATE_RECEIPT_DAMAGE_ITEMS = api + "/api/v3/damages";
|
||||
export const UPDATE_RECEIPT_DAMAGE_ITEMS = api + "/api/v3/damages";
|
||||
export const ATIVITY_RECEIPT_DAMAGE_ITEMS = api + "/api/v3/damages/activate";
|
||||
|
||||
// damage receipt
|
||||
export const GET_TECHNICAL_DAMAGE_OPERATOR_LIST = api + "/api/v3/receipts";
|
||||
export const CREATE_DAMAGE = api + "/api/v3/receipts";
|
||||
export const GET_DAMAGE_ITEM_LIST = api + "/api/v3/damages/list";
|
||||
export const DELETE_DAMAGE_ITEM = api + "/api/v3/receipts";
|
||||
export const CREATE_FACTOR_DAMAGE = api + "/api/v3/receipts/submit_invoice";
|
||||
export const CONFIRM_PAYMENT_INFO = api + "/api/v3/receipts/confirm_payment_info";
|
||||
export const CHECK_PAYMENT_STATUS = api + "/api/v3/receipts/check_payment_status";
|
||||
export const SEND_SMS_AGAIN = api + "/api/v3/receipts/send_sms_again";
|
||||
export const EXPORT_DAMAGES_OPERATOR_LIST = api + "/api/v3/receipts/excel_report";
|
||||
export const GET_DAMAGE_ITEM_DETAILS = api + "/api/v3/receipts";
|
||||
export const UPDATE_DAMAGE_ITEM = api + "/api/v3/receipts";
|
||||
export const GET_INSURANCE = api + "/api/v3/receipts/generate_insurance_letter";
|
||||
export const GET_INSURANCE_PAGE = api + "/v2/receipt/send-to-insurance";
|
||||
export const GET_POLICERAH = api + "/api/v3/receipts/generate_police_document";
|
||||
export const GET_POLICERAH_PAGE = api + "/v2/receipt/document-release";
|
||||
|
||||
// recept report
|
||||
export const GET_COUNTRY_RECEIPT_REPORT = api + "/api/v3/receipt_reports/country_report";
|
||||
export const GET_PROVINCE_RECEIPT_REPORT = api + "/api/v3/receipt_reports/province_report";
|
||||
export const EXPORT_COUNTRY_RECEIPT_REPORT = api + "/api/v3/receipt_reports/country_excel_report";
|
||||
export const EXPORT_PROVINCE_RECEIPT_REPORT = api + "/api/v3/receipt_reports/province_excel_report";
|
||||
|
||||
// activity code log
|
||||
export const ACTIVITY_LOG = api + "/api/v3/profile/add_activity";
|
||||
|
||||
// fast react
|
||||
export const GET_FAST_REACT_SUPERVISOR = api + "/api/v3/road_observations/supervisor/index";
|
||||
export const GET_FAST_REACT_COMPLAINTS = api + "/api/v3/road_observations/complaints_index";
|
||||
export const VERIFY_BY_FAST_REACT_SUPERVISOR = api + "/api/v3/road_observations/supervisor/verify";
|
||||
export const REJECT_BY_FAST_REACT_SUPERVISOR = api + "/api/v3/road_observations/supervisor/verify";
|
||||
export const REGISTER_COMPLAINTS_LIST = api + "/api/v3/road_observations/operator/register";
|
||||
export const GET_FAST_REACT_OPERATOR = api + "/api/v3/road_observations/operator/cartable";
|
||||
export const GET_FAST_REACT_REFER_LIST = api + "/api/v3/road_observations/refer_list";
|
||||
export const REFER_FAST_REACT = api + "/api/v3/road_observations/refer";
|
||||
export const RESTORE_FAST_REACT = api + "/api/v3/road_observations/supervisor/restore";
|
||||
export const GET_FAST_REACT_ITEM_DETAIL = api + "/api/v3/road_observations";
|
||||
export const UPDATE_FAST_REACT = api + "/api/v3/road_observations/operator/modify_registration";
|
||||
export const EXPORT_FAST_REACT_SUPERVISOR_LIST = api + "/api/v3/road_observations/supervisor/report";
|
||||
export const EXPORT_FAST_REACT_OPERATOR_LIST = api + "/api/v3/road_observations/operator/report";
|
||||
export const EXPORT_FAST_REACT_COMPLAINT_LIST = api + "/api/v3/road_observations/complaints_report";
|
||||
|
||||
// road safety
|
||||
export const GET_SAFETY_AND_PRIVACY_OPERATOR = api + "/api/v3/safety_and_privacy/operator";
|
||||
export const DELETE_SAFETY_AND_PRIVACY = api + "/api/v3/safety_and_privacy/operator";
|
||||
export const FIRST_STEP_STORE = api + "/api/v3/safety_and_privacy/operator/first_step_store";
|
||||
export const SECOND_STEP_STORE = api + "/api/v3/safety_and_privacy/operator/second_step_store";
|
||||
export const THIRD_STEP_STORE = api + "/api/v3/safety_and_privacy/operator/third_step_store";
|
||||
export const UPDATE_SAFETY_AND_PRIVACY = api + "/api/v3/safety_and_privacy/operator";
|
||||
export const FINISH_ROAD_SAFETY_BY_SUPERVISOR = api + "/api/v3/safety_and_privacy/operator/finish";
|
||||
export const EXPORT_OPERATOR_ROAD_SAFETY = api + "/api/v3/safety_and_privacy/operator/excel_report";
|
||||
|
||||
export const GET_SAFETY_AND_PRIVACY_SUPERVISOR = api + "/api/v3/safety_and_privacy/supervisor";
|
||||
export const EXPORT_SUPERVISOR_ROAD_SAFETY = api + "/api/v3/safety_and_privacy/supervisor/excel_report";
|
||||
export const CONFIRM_ROAD_SAFETY_BY_SUPERVISOR = api + "/api/v3/safety_and_privacy/supervisor/confirm";
|
||||
export const REJECT_ROAD_SAFETY_BY_SUPERVISOR = api + "/api/v3/safety_and_privacy/supervisor/reject";
|
||||
|
||||
export const DESERIALIZE_JUDICIARY_DOCUMENT = api + "/api/v3/safety_and_privacy/deserialize";
|
||||
export const GET_SAFETY_AND_PRIVACY_ITEM = api + "/api/v3/safety_and_privacy/sub_items";
|
||||
export const GET_ROAD_SAFETY_PROVINCE_ACTIVITY_REPORT =
|
||||
api + "/api/v3/safety_and_privacy_report/operator/country_activity";
|
||||
export const GET_ROAD_SAFETY_CITY_ACTIVITY_REPORT =
|
||||
api + "/api/v3/safety_and_privacy_report/operator/province_activity";
|
||||
export const GET_ROAD_SAFETY_REPORT_MAP = api + "/api/v3/safety_and_privacy/map";
|
||||
export const GET_ROAD_SAFETY_DETAILS = api + "/api/v3/safety_and_privacy/operator";
|
||||
export const EXPORT_COUNTRY_ROAD_SAFETY_REPORT =
|
||||
api + "/api/v3/safety_and_privacy_report/operator/country_excel_activity";
|
||||
export const EXPORT_PROVINCE_ROAD_SAFETY_REPORT =
|
||||
api + "/api/v3/safety_and_privacy_report/operator/province_excel_activity";
|
||||
|
||||
// permission table
|
||||
export const GET_PERMISSION_TABLE_LIST = api + "/api/v3/permissions";
|
||||
export const DELETE_PERMISSION = api + "/api/v3/permissions";
|
||||
export const UPDATE_PERMISSION = api + "/api/v3/permissions";
|
||||
export const CREATE_PERMISSION = api + "/api/v3/permissions";
|
||||
|
||||
// user activities
|
||||
export const GET_USER_ACTIVITIES_LIST = api + "/api/v3/log_list";
|
||||
export const CREATE_USER_ACTIVITY = api + "/api/v3/log_list";
|
||||
export const UPDATE_USER_ACTIVITY = api + "/api/v3/log_list";
|
||||
export const DELETE_USER_ACTIVITIES = api + "/api/v3/log_list";
|
||||
|
||||
// toll-house
|
||||
export const GET_TOLL_HOUSE_LIST = api + "/api/v3/road_maintenance_station";
|
||||
export const CREATE_TOLL_HOUSE = api + "/api/v3/road_maintenance_station";
|
||||
export const GET_TOLL_HOUSE_DETAILS = api + "/api/v3/road_maintenance_station";
|
||||
export const DELETE_TOLL_HOUSE_ITEM = api + "/api/v3/road_maintenance_station";
|
||||
export const UPDATE_TOLL_HOUSE_ITEM = api + "/api/v3/road_maintenance_station";
|
||||
export const GET_TOLL_HOUSE_IMAGES = api + "/api/v3/road_maintenance_station/images";
|
||||
const api = process.env.NEXT_PUBLIC_API_URL;
|
||||
|
||||
export const GET_USER_ROUTE = api + "/api/v3/profile/info";
|
||||
export const LOGOUT_USER_ROUTE = api + "/api/v3/logout";
|
||||
export const UPDATE_USER_ROUTE = api + "/api/v3/profile/edit";
|
||||
export const CHANGE_USER_PASSWORD = api + "/api/v3/profile/change_password";
|
||||
export const GET_LOGIN_ROUTE = api + "/login_dev";
|
||||
export const GET_PERMISSIONS_ROUTE = api + "/webapi/user/get-permission";
|
||||
export const GET_SIDEBAR_BADGE_ROUTE = api + "/api/v3/notifications";
|
||||
export const REFER_ADMIN_PROVINCE = "/v3/api/fake-submit";
|
||||
export const REFER_ADMIN_CITY = "/v3/api/fake-submit";
|
||||
export const GET_CITY_LISTS = api + "/public/contents/provinces";
|
||||
export const GET_PROVINCE_LISTS = api + "/public/contents/provinces";
|
||||
export const GET_PREV_STATE_OPINION = "/v3/api/fake-prev-state-opinion";
|
||||
export const SUBMIT_ROAD_SAFETY_FORM = "/v3/api/fake-submit";
|
||||
export const CREATE_AZMAYESH = api + "/api/v3/azmayeshes/store";
|
||||
export const UPDATE_AZMAYESH = api + "/api/v3/azmayeshes/update";
|
||||
export const GET_AZMAYESH_TYPE_LIST = api + "/api/v3/azmayesh_types/list";
|
||||
export const GET_AZMAYESH_TYPE_LIST_TABLE = api + "/api/v3/azmayesh_types";
|
||||
export const GET_AZMAYESH_LIST = api + "/api/v3/azmayeshes";
|
||||
export const DELETE_AZMAYESH = api + "/api/v3/azmayeshes/delete";
|
||||
export const GET_AZMAYESH_SAMPLE_FIELDS = api + "/api/v3/azmayesh_types/fields";
|
||||
export const ADD_SAMPLE_TO_AZMAYESH = api + "/api/v3/azmayesh_samples/store";
|
||||
export const UPDATE_SAMPLE_OF_AZMAYESH = api + "/api/v3/azmayesh_samples/update";
|
||||
export const GET_SAMPLE_LIST = api + "/api/v3/azmayesh_samples";
|
||||
export const DELETE_SAMPLE_LIST = api + "/api/v3/azmayesh_samples/delete";
|
||||
export const DELETE_AZMAYESH_TYPE_LIST = api + "/api/v3/azmayesh_types/delete";
|
||||
export const ADD_AZMAYESH_TYPE = api + "/api/v3/azmayesh_types/store";
|
||||
export const UPDATE_AZMAYESH_TYPE = api + "/api/v3/azmayesh_types/update";
|
||||
|
||||
//road patrol
|
||||
export const GET_ROAD_PATROL_OPERATOR_LIST = api + "/api/v3/road_patrols/operator_index";
|
||||
export const EXPORT_ROAD_PATROL_OPERATOR_LIST = api + "/api/v3/road_patrols/operator_report";
|
||||
export const GET_ROAD_PATROL_SUPERVISOR_LIST = api + "/api/v3/road_patrols/supervisor_index";
|
||||
export const EXPORT_ROAD_PATROL_SUPERVISOR_LIST = api + "/api/v3/road_patrols/supervisor_report";
|
||||
export const EXPORT_PROVINCE_ROAD_PATROL_REPORTS = api + "/api/v3/road_patrol_reports/province_activity_excel";
|
||||
export const EXPORT_COUNTRY_ROAD_PATROL_REPORTS = api + "/api/v3/road_patrol_reports/country_activity_excel";
|
||||
export const DELETE_ROAD_PATROL_SUPERVISOR = api + "/api/v3/road_patrols/delete";
|
||||
export const GET_CMMS_MACHINE_ROAD_PATROL = api + "/api/v3/road_patrols/machines";
|
||||
export const GET_ROAD_PATROL_OPERATOR_REPORT = api + "/v2/road_patrols/operator/report";
|
||||
export const GET_ROAD_PATROL_SUPERVISOR_REPORT = api + "/v2/road_patrols/operator/report";
|
||||
export const GET_RAHDARAN_ROAD_POTROL = api + "/api/v3/road_patrols/rahdaran";
|
||||
export const CREATE_PATROL = api + "/api/v3/road_patrols/store";
|
||||
export const GET_FMS_DATA = api + "/api/v3/fms_vehicle/get_activity";
|
||||
export const GET_OTP_TOKEN = api + "/api/v3/otp/get_token";
|
||||
export const GET_PROVINCE_ACTIVITY_REPORT = api + "/api/v3/road_patrol_reports/country_activity";
|
||||
export const GET_CITY_ACTIVITY_REPORT = api + "/api/v3/road_patrol_reports/province_activity";
|
||||
|
||||
// road items
|
||||
export const GET_ROAD_ITEMS_SUPERVISOR_LIST = api + "/api/v3/road_items/supervisor_index";
|
||||
export const EXPORT_ROAD_ITEMS_SUPERVISOR_LIST = api + "/api/v3/road_items/supervisor_report";
|
||||
export const GET_ROAD_ITEMS_OPERATOR_LIST = api + "/api/v3/road_items/operator_index";
|
||||
export const EXPORT_ROAD_ITEMS_OPERATOR_LIST = api + "/api/v3/road_items/operator_report";
|
||||
export const EXPORT_PROVINCE_ROAD_ITEM_REPORTS_PER_ITEM =
|
||||
api + "/api/v3/road_item_reports/province_activity_excel_per_item";
|
||||
export const EXPORT_COUNTRY_ROAD_ITEM_REPORTS_PER_ITEM =
|
||||
api + "/api/v3/road_item_reports/country_activity_excel_per_item";
|
||||
export const EXPORT_PROVINCE_ROAD_ITEM_REPORTS_PER_SUB_ITEM =
|
||||
api + "/api/v3/road_item_reports/province_activity_excel_per_sub_item";
|
||||
export const EXPORT_COUNTRY_ROAD_ITEM_REPORTS_PER_SUB_ITEM =
|
||||
api + "/api/v3/road_item_reports/country_activity_excel_per_sub_item";
|
||||
export const GET_ROAD_ITEMS_ITEM = api + "/api/v3/items";
|
||||
export const GET_ROAD_ITEMS_SUB_ITEM = api + "/api/v3/sub_items";
|
||||
export const GET_EDARAT_LISTS = api + "/public/contents/edarate_shahri_by_province";
|
||||
export const CREATE_ROAD_ITEMS = api + "/api/v3/road_items/store";
|
||||
export const UPDATE_ROAD_ITEMS = api + "/api/v3/road_items/update";
|
||||
export const VERIFY_BY_SUPERVISOR = api + "/api/v3/road_items/verify_by_supervisor";
|
||||
export const REJECT_BY_SUPERVISOR = api + "/api/v3/road_items/verify_by_supervisor";
|
||||
export const DELETE_BY_SUPERVISOR = api + "/api/v3/road_items/delete";
|
||||
export const RESTORE_BY_SUPERVISOR = api + "/api/v3/road_items/restore";
|
||||
export const GET_CAR_LIST_SEARCH = api + "/api/v3/cmms_machines/search";
|
||||
export const GET_RAHDARANS_LIST_SEARCH = api + "/api/v3/rahdaran/search";
|
||||
export const GET_OBSERVED_GASHT_LIST = api + "/api/v3/observed_items/filter";
|
||||
export const GET_ROAD_ITEMS_REPORT_MAP = api + "/api/v3/road_item_reports/activities_on_map";
|
||||
export const GET_ROAD_ITEM = api + "/api/v3/road_item_reports/show_on_map";
|
||||
export const GET_PROVINCE_ACTIVITY_PER_ITEM = api + "/api/v3/road_item_reports/country_activity_per_item";
|
||||
export const GET_CITY_ACTIVITY_PER_ITEM = api + "/api/v3/road_item_reports/province_activity_per_item";
|
||||
export const GET_PROVINCE_ACTIVITY_PER_SUB_ITEM = api + "/api/v3/road_item_reports/country_activity_per_sub_item";
|
||||
export const GET_CITY_ACTIVITY_PER_SUB_ITEM = api + "/api/v3/road_item_reports/province_activity_per_sub_item";
|
||||
export const GET_IMAGES_ROAD_ITEM = api + "/api/v3/road_items/files";
|
||||
export const GET_CMMS_MACHINE_ROAD_ITEM = api + "/api/v3/road_items/machines";
|
||||
export const GET_RAHDARAN_ROAD_ITEM = api + "/api/v3/road_items/rahdaran";
|
||||
|
||||
// damage items
|
||||
export const GET_RECEIPT_DAMAGE_ITEMS_LIST = api + "/api/v3/damages";
|
||||
export const CREATE_RECEIPT_DAMAGE_ITEMS = api + "/api/v3/damages";
|
||||
export const UPDATE_RECEIPT_DAMAGE_ITEMS = api + "/api/v3/damages";
|
||||
export const ATIVITY_RECEIPT_DAMAGE_ITEMS = api + "/api/v3/damages/activate";
|
||||
|
||||
// damage receipt
|
||||
export const GET_TECHNICAL_DAMAGE_OPERATOR_LIST = api + "/api/v3/receipts";
|
||||
export const CREATE_DAMAGE = api + "/api/v3/receipts";
|
||||
export const GET_DAMAGE_ITEM_LIST = api + "/api/v3/damages/list";
|
||||
export const DELETE_DAMAGE_ITEM = api + "/api/v3/receipts";
|
||||
export const CREATE_FACTOR_DAMAGE = api + "/api/v3/receipts/submit_invoice";
|
||||
export const CONFIRM_PAYMENT_INFO = api + "/api/v3/receipts/confirm_payment_info";
|
||||
export const CHECK_PAYMENT_STATUS = api + "/api/v3/receipts/check_payment_status";
|
||||
export const SEND_SMS_AGAIN = api + "/api/v3/receipts/send_sms_again";
|
||||
export const EXPORT_DAMAGES_OPERATOR_LIST = api + "/api/v3/receipts/excel_report";
|
||||
export const GET_DAMAGE_ITEM_DETAILS = api + "/api/v3/receipts";
|
||||
export const UPDATE_DAMAGE_ITEM = api + "/api/v3/receipts";
|
||||
export const GET_INSURANCE = api + "/api/v3/receipts/generate_insurance_letter";
|
||||
export const GET_INSURANCE_PAGE = api + "/v2/receipt/send-to-insurance";
|
||||
export const GET_POLICERAH = api + "/api/v3/receipts/generate_police_document";
|
||||
export const GET_POLICERAH_PAGE = api + "/v2/receipt/document-release";
|
||||
|
||||
// recept report
|
||||
export const GET_COUNTRY_RECEIPT_REPORT = api + "/api/v3/receipt_reports/country_report";
|
||||
export const GET_PROVINCE_RECEIPT_REPORT = api + "/api/v3/receipt_reports/province_report";
|
||||
export const EXPORT_COUNTRY_RECEIPT_REPORT = api + "/api/v3/receipt_reports/country_excel_report";
|
||||
export const EXPORT_PROVINCE_RECEIPT_REPORT = api + "/api/v3/receipt_reports/province_excel_report";
|
||||
|
||||
// activity code log
|
||||
export const ACTIVITY_LOG = api + "/api/v3/profile/add_activity";
|
||||
|
||||
// fast react
|
||||
export const GET_FAST_REACT_SUPERVISOR = api + "/api/v3/road_observations/supervisor/index";
|
||||
export const GET_FAST_REACT_COMPLAINTS = api + "/api/v3/road_observations/complaints_index";
|
||||
export const VERIFY_BY_FAST_REACT_SUPERVISOR = api + "/api/v3/road_observations/supervisor/verify";
|
||||
export const REJECT_BY_FAST_REACT_SUPERVISOR = api + "/api/v3/road_observations/supervisor/verify";
|
||||
export const REGISTER_COMPLAINTS_LIST = api + "/api/v3/road_observations/operator/register";
|
||||
export const GET_FAST_REACT_OPERATOR = api + "/api/v3/road_observations/operator/cartable";
|
||||
export const GET_FAST_REACT_REFER_LIST = api + "/api/v3/road_observations/refer_list";
|
||||
export const REFER_FAST_REACT = api + "/api/v3/road_observations/refer";
|
||||
export const RESTORE_FAST_REACT = api + "/api/v3/road_observations/supervisor/restore";
|
||||
export const GET_FAST_REACT_ITEM_DETAIL = api + "/api/v3/road_observations";
|
||||
export const UPDATE_FAST_REACT = api + "/api/v3/road_observations/operator/modify_registration";
|
||||
export const EXPORT_FAST_REACT_SUPERVISOR_LIST = api + "/api/v3/road_observations/supervisor/report";
|
||||
export const EXPORT_FAST_REACT_OPERATOR_LIST = api + "/api/v3/road_observations/operator/report";
|
||||
export const EXPORT_FAST_REACT_COMPLAINT_LIST = api + "/api/v3/road_observations/complaints_report";
|
||||
|
||||
// road safety
|
||||
export const GET_SAFETY_AND_PRIVACY_OPERATOR = api + "/api/v3/safety_and_privacy/operator";
|
||||
export const DELETE_SAFETY_AND_PRIVACY = api + "/api/v3/safety_and_privacy/operator";
|
||||
export const FIRST_STEP_STORE = api + "/api/v3/safety_and_privacy/operator/first_step_store";
|
||||
export const SECOND_STEP_STORE = api + "/api/v3/safety_and_privacy/operator/second_step_store";
|
||||
export const THIRD_STEP_STORE = api + "/api/v3/safety_and_privacy/operator/third_step_store";
|
||||
export const UPDATE_SAFETY_AND_PRIVACY = api + "/api/v3/safety_and_privacy/operator";
|
||||
export const FINISH_ROAD_SAFETY_BY_SUPERVISOR = api + "/api/v3/safety_and_privacy/operator/finish";
|
||||
export const EXPORT_OPERATOR_ROAD_SAFETY = api + "/api/v3/safety_and_privacy/operator/excel_report";
|
||||
|
||||
export const GET_SAFETY_AND_PRIVACY_SUPERVISOR = api + "/api/v3/safety_and_privacy/supervisor";
|
||||
export const EXPORT_SUPERVISOR_ROAD_SAFETY = api + "/api/v3/safety_and_privacy/supervisor/excel_report";
|
||||
export const CONFIRM_ROAD_SAFETY_BY_SUPERVISOR = api + "/api/v3/safety_and_privacy/supervisor/confirm";
|
||||
export const REJECT_ROAD_SAFETY_BY_SUPERVISOR = api + "/api/v3/safety_and_privacy/supervisor/reject";
|
||||
|
||||
export const DESERIALIZE_JUDICIARY_DOCUMENT = api + "/api/v3/safety_and_privacy/deserialize";
|
||||
export const GET_SAFETY_AND_PRIVACY_ITEM = api + "/api/v3/safety_and_privacy/sub_items";
|
||||
export const GET_ROAD_SAFETY_PROVINCE_ACTIVITY_REPORT =
|
||||
api + "/api/v3/safety_and_privacy_report/operator/country_activity";
|
||||
export const GET_ROAD_SAFETY_CITY_ACTIVITY_REPORT =
|
||||
api + "/api/v3/safety_and_privacy_report/operator/province_activity";
|
||||
export const GET_ROAD_SAFETY_REPORT_MAP = api + "/api/v3/safety_and_privacy/map";
|
||||
export const GET_ROAD_SAFETY_DETAILS = api + "/api/v3/safety_and_privacy/operator";
|
||||
export const EXPORT_COUNTRY_ROAD_SAFETY_REPORT =
|
||||
api + "/api/v3/safety_and_privacy_report/operator/country_excel_activity";
|
||||
export const EXPORT_PROVINCE_ROAD_SAFETY_REPORT =
|
||||
api + "/api/v3/safety_and_privacy_report/operator/province_excel_activity";
|
||||
|
||||
// permission table
|
||||
export const GET_PERMISSION_TABLE_LIST = api + "/api/v3/permissions";
|
||||
export const DELETE_PERMISSION = api + "/api/v3/permissions";
|
||||
export const UPDATE_PERMISSION = api + "/api/v3/permissions";
|
||||
export const CREATE_PERMISSION = api + "/api/v3/permissions";
|
||||
|
||||
// user activities
|
||||
export const GET_USER_ACTIVITIES_LIST = api + "/api/v3/log_list";
|
||||
export const CREATE_USER_ACTIVITY = api + "/api/v3/log_list";
|
||||
export const UPDATE_USER_ACTIVITY = api + "/api/v3/log_list";
|
||||
export const DELETE_USER_ACTIVITIES = api + "/api/v3/log_list";
|
||||
|
||||
// toll-house
|
||||
export const GET_TOLL_HOUSE_LIST = api + "/api/v3/road_maintenance_station";
|
||||
export const CREATE_TOLL_HOUSE = api + "/api/v3/road_maintenance_station";
|
||||
export const GET_TOLL_HOUSE_DETAILS = api + "/api/v3/road_maintenance_station";
|
||||
export const DELETE_TOLL_HOUSE_ITEM = api + "/api/v3/road_maintenance_station";
|
||||
export const UPDATE_TOLL_HOUSE_ITEM = api + "/api/v3/road_maintenance_station";
|
||||
export const GET_TOLL_HOUSE_IMAGES = api + "/api/v3/road_maintenance_station/images";
|
||||
|
||||
// road missions
|
||||
export const GET_ROAD_MISSIONS_OPERATOR_LIST = api + "/api/v3/missions/request_portal";
|
||||
export const GET_ROAD_MISSIONS_TRANSPORTATION_LIST = api + "/api/v3/missions/transportation_unit";
|
||||
export const GET_ROAD_MISSIONS_CONTROL_LIST = api + "/api/v3/missions/control_unit";
|
||||
export const REQUEST_MISSION = api + "/api/v3/missions/request_portal";
|
||||
export const UPDATE_REQUEST_MISSION = api + "/api/v3/missions/request_portal";
|
||||
export const DELETE_REQUEST_MISSION = api + "/api/v3/missions/request_portal";
|
||||
export const GET_RAHDARAN_BY_ID = api + "/api/v3/missions/details/rahdaran";
|
||||
export const ALLOCATE_REQUEST_MISSION = api + "/api/v3/missions/transportation_unit/allocate";
|
||||
export const DEALLOCATE_REQUEST_MISSION = api + "/api/v3/missions/transportation_unit/deallocate";
|
||||
export const START_MISSION = api + "/api/v3/missions/control_unit/start";
|
||||
export const FINISH_MISSION = api + "/api/v3/missions/control_unit/finish";
|
||||
|
||||
export const GET_MACHINES_TABLE_LIST = api + "/api/v3/cmms_machines";
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
"use client";
|
||||
import { toast } from "react-toastify";
|
||||
import { successToast } from "@/core/components/Toasts/success";
|
||||
|
||||
export const successRequest = (notification, toastContainer) => {
|
||||
if (notification) {
|
||||
toast.dismiss({ containerId: toastContainer });
|
||||
successToast(toastContainer);
|
||||
}
|
||||
};
|
||||
"use client";
|
||||
import { toast } from "react-toastify";
|
||||
import { successToast } from "@/core/components/Toasts/success";
|
||||
|
||||
export const successRequest = (notification, toastContainer) => {
|
||||
if (notification) {
|
||||
toast.dismiss({ containerId: toastContainer });
|
||||
successToast(toastContainer);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1,36 +1,36 @@
|
||||
"use client";
|
||||
import { createTheme } from "@mui/material";
|
||||
import { grey } from "@mui/material/colors";
|
||||
|
||||
const theme = createTheme({
|
||||
direction: "rtl",
|
||||
typography: {
|
||||
fontFamily: `IRANSansFaNum, sans-serif`,
|
||||
fontSize: 12,
|
||||
},
|
||||
palette: {
|
||||
primary: {
|
||||
main: "#2070af",
|
||||
contrastText: "#fff",
|
||||
},
|
||||
primary2: {
|
||||
main: "#015688",
|
||||
contrastText: "#fff",
|
||||
},
|
||||
secondary: {
|
||||
main: grey[700],
|
||||
},
|
||||
},
|
||||
components: {
|
||||
MuiBackdrop: {
|
||||
styleOverrides: {
|
||||
root: {
|
||||
backdropFilter: "blur(2px)",
|
||||
backgroundColor: "rgba(0, 0, 0, 0.5)",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
export default theme;
|
||||
"use client";
|
||||
import { createTheme } from "@mui/material";
|
||||
import { grey } from "@mui/material/colors";
|
||||
|
||||
const theme = createTheme({
|
||||
direction: "rtl",
|
||||
typography: {
|
||||
fontFamily: `IRANSansFaNum, sans-serif`,
|
||||
fontSize: 12,
|
||||
},
|
||||
palette: {
|
||||
primary: {
|
||||
main: "#2070af",
|
||||
contrastText: "#fff",
|
||||
},
|
||||
primary2: {
|
||||
main: "#015688",
|
||||
contrastText: "#fff",
|
||||
},
|
||||
secondary: {
|
||||
main: grey[700],
|
||||
},
|
||||
},
|
||||
components: {
|
||||
MuiBackdrop: {
|
||||
styleOverrides: {
|
||||
root: {
|
||||
backdropFilter: "blur(2px)",
|
||||
backgroundColor: "rgba(0, 0, 0, 0.5)",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
export default theme;
|
||||
|
||||
@@ -1,120 +1,150 @@
|
||||
import { alpha, darken } from "@mui/material";
|
||||
|
||||
export const parseCSSVarId = (id) => id.replace(/[^a-zA-Z0-9]/g, "_");
|
||||
|
||||
export const parseFromValuesOrFunc = (fn, arg) => (fn instanceof Function ? fn(arg) : fn);
|
||||
|
||||
export const getCommonToolbarStyles = ({ table }) => ({
|
||||
alignItems: "flex-start",
|
||||
backgroundColor: table.options.mrtTheme.baseBackgroundColor,
|
||||
display: "grid",
|
||||
flexWrap: "wrap-reverse",
|
||||
minHeight: "3.5rem",
|
||||
overflow: "hidden",
|
||||
position: "relative",
|
||||
transition: "all 150ms ease-in-out",
|
||||
zIndex: 1,
|
||||
});
|
||||
|
||||
export const getCommonTooltipProps = (placement) => ({
|
||||
disableInteractive: true,
|
||||
enterDelay: 500,
|
||||
enterNextDelay: 500,
|
||||
placement,
|
||||
});
|
||||
|
||||
export const flipIconStyles = (theme) =>
|
||||
theme.direction === "rtl" ? { style: { transform: "scaleX(-1)" } } : undefined;
|
||||
|
||||
export const getCommonPinnedCellStyles = ({ column, table, theme }) => {
|
||||
const { baseBackgroundColor } = table.options.mrtTheme;
|
||||
const isPinned = column?.getIsPinned();
|
||||
|
||||
return {
|
||||
'&[data-pinned="true"]': {
|
||||
"&:before": {
|
||||
backgroundColor: alpha(darken(baseBackgroundColor, theme.palette.mode === "dark" ? 0.05 : 0.01), 0.97),
|
||||
boxShadow: column
|
||||
? isPinned === "left" && column.getIsLastColumn(isPinned)
|
||||
? `-4px 0 4px -4px ${alpha(theme.palette.grey[700], 0.5)} inset`
|
||||
: isPinned === "right" && column.getIsFirstColumn(isPinned)
|
||||
? `4px 0 4px -4px ${alpha(theme.palette.grey[700], 0.5)} inset`
|
||||
: undefined
|
||||
: undefined,
|
||||
...commonCellBeforeAfterStyles,
|
||||
},
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
export const getCommonMRTCellStyles = ({ column, header, table, tableCellProps, theme }) => {
|
||||
const {
|
||||
getState,
|
||||
options: { enableColumnVirtualization, layoutMode },
|
||||
} = table;
|
||||
const { draggingColumn } = getState();
|
||||
const { columnDef } = column;
|
||||
const { columnDefType } = columnDef;
|
||||
|
||||
const isColumnPinned = columnDef.columnDefType !== "group" && column.getIsPinned();
|
||||
|
||||
const widthStyles = {
|
||||
minWidth: `max(calc(var(--${header ? "header" : "col"}-${parseCSSVarId(
|
||||
header?.id ?? column.id
|
||||
)}-size) * 1px), ${columnDef.minSize ?? 30}px)`,
|
||||
width: `calc(var(--${header ? "header" : "col"}-${parseCSSVarId(header?.id ?? column.id)}-size) * 1px)`,
|
||||
};
|
||||
|
||||
if (layoutMode === "grid") {
|
||||
widthStyles.flex = `${
|
||||
[0, false].includes(columnDef.grow)
|
||||
? 0
|
||||
: `var(--${header ? "header" : "col"}-${parseCSSVarId(header?.id ?? column.id)}-size)`
|
||||
} 0 auto`;
|
||||
} else if (layoutMode === "grid-no-grow") {
|
||||
widthStyles.flex = `${+(columnDef.grow || 0)} 0 auto`;
|
||||
}
|
||||
|
||||
const pinnedStyles = isColumnPinned
|
||||
? {
|
||||
...getCommonPinnedCellStyles({ column, table, theme }),
|
||||
left: isColumnPinned === "left" ? `${column.getStart("left")}px` : undefined,
|
||||
opacity: 0.97,
|
||||
position: "sticky",
|
||||
right: isColumnPinned === "right" ? `${column.getAfter("right")}px` : undefined,
|
||||
}
|
||||
: {};
|
||||
|
||||
return {
|
||||
backgroundColor: "inherit",
|
||||
backgroundImage: "inherit",
|
||||
display: layoutMode?.startsWith("grid") ? "flex" : undefined,
|
||||
justifyContent:
|
||||
columnDefType === "group" ? "center" : layoutMode?.startsWith("grid") ? tableCellProps.align : undefined,
|
||||
opacity:
|
||||
table.getState().draggingColumn?.id === column.id || table.getState().hoveredColumn?.id === column.id
|
||||
? 0.5
|
||||
: 1,
|
||||
position: "relative",
|
||||
transition: enableColumnVirtualization ? "none" : `padding 150ms ease-in-out`,
|
||||
zIndex:
|
||||
column.getIsResizing() || draggingColumn?.id === column.id
|
||||
? 2
|
||||
: columnDefType !== "group" && isColumnPinned
|
||||
? 1
|
||||
: 0,
|
||||
...pinnedStyles,
|
||||
...widthStyles,
|
||||
...parseFromValuesOrFunc(tableCellProps?.sx, theme),
|
||||
};
|
||||
};
|
||||
|
||||
export const commonCellBeforeAfterStyles = {
|
||||
content: '""',
|
||||
height: "100%",
|
||||
left: 0,
|
||||
position: "absolute",
|
||||
top: 0,
|
||||
width: "100%",
|
||||
zIndex: -1,
|
||||
};
|
||||
import { alpha, darken } from "@mui/material";
|
||||
|
||||
export const parseCSSVarId = (id) => id.replace(/[^a-zA-Z0-9]/g, "_");
|
||||
|
||||
export const parseFromValuesOrFunc = (fn, arg) => (fn instanceof Function ? fn(arg) : fn);
|
||||
|
||||
export const getCommonToolbarStyles = ({ table }) => ({
|
||||
alignItems: "flex-start",
|
||||
backgroundColor: table.options.mrtTheme.baseBackgroundColor,
|
||||
display: "grid",
|
||||
flexWrap: "wrap-reverse",
|
||||
minHeight: "3.5rem",
|
||||
overflow: "hidden",
|
||||
position: "relative",
|
||||
transition: "all 150ms ease-in-out",
|
||||
zIndex: 1,
|
||||
});
|
||||
|
||||
export const getCommonTooltipProps = (placement) => ({
|
||||
disableInteractive: true,
|
||||
enterDelay: 500,
|
||||
enterNextDelay: 500,
|
||||
placement,
|
||||
});
|
||||
|
||||
export const flipIconStyles = (theme) =>
|
||||
theme.direction === "rtl" ? { style: { transform: "scaleX(-1)" } } : undefined;
|
||||
|
||||
export const getCommonPinnedCellStyles = ({ column, table, theme }) => {
|
||||
const { baseBackgroundColor } = table.options.mrtTheme;
|
||||
const isPinned = column?.getIsPinned();
|
||||
|
||||
return {
|
||||
'&[data-pinned="true"]': {
|
||||
"&:before": {
|
||||
backgroundColor: alpha(darken(baseBackgroundColor, theme.palette.mode === "dark" ? 0.05 : 0.01), 0.97),
|
||||
boxShadow: column
|
||||
? isPinned === "left" && column.getIsLastColumn(isPinned)
|
||||
? `-4px 0 4px -4px ${alpha(theme.palette.grey[700], 0.5)} inset`
|
||||
: isPinned === "right" && column.getIsFirstColumn(isPinned)
|
||||
? `4px 0 4px -4px ${alpha(theme.palette.grey[700], 0.5)} inset`
|
||||
: undefined
|
||||
: undefined,
|
||||
...commonCellBeforeAfterStyles,
|
||||
},
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
export const getCommonMRTCellStyles = ({ column, header, table, tableCellProps, theme }) => {
|
||||
const {
|
||||
getState,
|
||||
options: { enableColumnVirtualization, layoutMode },
|
||||
} = table;
|
||||
const { draggingColumn } = getState();
|
||||
const { columnDef } = column;
|
||||
const { columnDefType } = columnDef;
|
||||
|
||||
const isColumnPinned = columnDef.columnDefType !== "group" && column.getIsPinned();
|
||||
|
||||
const widthStyles = {
|
||||
minWidth: `max(calc(var(--${header ? "header" : "col"}-${parseCSSVarId(
|
||||
header?.id ?? column.id
|
||||
)}-size) * 1px), ${columnDef.minSize ?? 30}px)`,
|
||||
width: `calc(var(--${header ? "header" : "col"}-${parseCSSVarId(header?.id ?? column.id)}-size) * 1px)`,
|
||||
};
|
||||
|
||||
if (layoutMode === "grid") {
|
||||
widthStyles.flex = `${
|
||||
[0, false].includes(columnDef.grow)
|
||||
? 0
|
||||
: `var(--${header ? "header" : "col"}-${parseCSSVarId(header?.id ?? column.id)}-size)`
|
||||
} 0 auto`;
|
||||
} else if (layoutMode === "grid-no-grow") {
|
||||
widthStyles.flex = `${+(columnDef.grow || 0)} 0 auto`;
|
||||
}
|
||||
|
||||
const pinnedStyles = isColumnPinned
|
||||
? {
|
||||
...getCommonPinnedCellStyles({ column, table, theme }),
|
||||
left: isColumnPinned === "left" ? `${column.getStart("left")}px` : undefined,
|
||||
opacity: 0.97,
|
||||
position: "sticky",
|
||||
right: isColumnPinned === "right" ? `${column.getAfter("right")}px` : undefined,
|
||||
}
|
||||
: {};
|
||||
|
||||
return {
|
||||
backgroundColor: "inherit",
|
||||
backgroundImage: "inherit",
|
||||
display: layoutMode?.startsWith("grid") ? "flex" : undefined,
|
||||
justifyContent:
|
||||
columnDefType === "group" ? "center" : layoutMode?.startsWith("grid") ? tableCellProps.align : undefined,
|
||||
opacity:
|
||||
table.getState().draggingColumn?.id === column.id || table.getState().hoveredColumn?.id === column.id
|
||||
? 0.5
|
||||
: 1,
|
||||
position: "relative",
|
||||
transition: enableColumnVirtualization ? "none" : `padding 150ms ease-in-out`,
|
||||
zIndex:
|
||||
column.getIsResizing() || draggingColumn?.id === column.id
|
||||
? 2
|
||||
: columnDefType !== "group" && isColumnPinned
|
||||
? 1
|
||||
: 0,
|
||||
...pinnedStyles,
|
||||
...widthStyles,
|
||||
...parseFromValuesOrFunc(tableCellProps?.sx, theme),
|
||||
};
|
||||
};
|
||||
|
||||
export const commonCellBeforeAfterStyles = {
|
||||
content: '""',
|
||||
height: "100%",
|
||||
left: 0,
|
||||
position: "absolute",
|
||||
top: 0,
|
||||
width: "100%",
|
||||
zIndex: -1,
|
||||
};
|
||||
|
||||
function closePolygonIfNeeded(coords) {
|
||||
if (
|
||||
coords.length > 0 &&
|
||||
(coords[0][0] !== coords[coords.length - 1][0] || coords[0][1] !== coords[coords.length - 1][1])
|
||||
) {
|
||||
coords.push(coords[0]);
|
||||
}
|
||||
return coords;
|
||||
}
|
||||
|
||||
export const getClosedPolygonCoordinates = (polygon) => {
|
||||
const latLngs = polygon.getLatLngs();
|
||||
|
||||
// گرفتن حلقه اصلی (فرض بر این است که فقط یک ring وجود دارد)
|
||||
const ring = Array.isArray(latLngs[0]) ? latLngs[0] : latLngs;
|
||||
|
||||
// تبدیل به آرایه ساده [lat, lng]
|
||||
const coordinates = ring.map((point) => [point.lat, point.lng]);
|
||||
|
||||
// بررسی بسته بودن حلقه
|
||||
const first = coordinates[0];
|
||||
const last = coordinates[coordinates.length - 1];
|
||||
|
||||
if (first[0] !== last[0] || first[1] !== last[1]) {
|
||||
coordinates.push(first); // بستن حلقه
|
||||
}
|
||||
|
||||
return coordinates;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user