Compare commits

...

11 Commits

6 changed files with 2224 additions and 7892 deletions

File diff suppressed because it is too large Load Diff

View File

@ -121,7 +121,7 @@ export function ProcessInnovationPage() {
direction: "asc",
});
const [selectedProjects, setSelectedProjects] = useState<Set<string>>(
new Set(),
new Set()
);
const [detailsDialogOpen, setDetailsDialogOpen] = useState(false);
const [selectedProjectDetails, setSelectedProjectDetails] =
@ -167,7 +167,7 @@ export function ProcessInnovationPage() {
title: "جلوگیری از توقفات تولید",
value: formatNumber(
stats.productionStopsPreventionSum.toFixed?.(1) ??
stats.productionStopsPreventionSum,
stats.productionStopsPreventionSum
),
description: "تن افزایش یافته",
icon: <CirclePause />,
@ -186,7 +186,7 @@ export function ProcessInnovationPage() {
id: "currency-reduction",
title: "کاهش ارز بری",
value: formatNumber(
stats.currencyReductionSum.toFixed?.(0) ?? stats.currencyReductionSum,
stats.currencyReductionSum.toFixed?.(0) ?? stats.currencyReductionSum
),
description: "دلار کاهش یافته",
icon: <DollarSign />,
@ -197,7 +197,7 @@ export function ProcessInnovationPage() {
title: "کاهش خرابی های پرتکرار",
value: formatNumber(
stats.frequentFailuresReductionSum.toFixed?.(1) ??
stats.frequentFailuresReductionSum,
stats.frequentFailuresReductionSum
),
description: "مجموع درصد کاهش خرابی",
icon: <Wrench />,
@ -418,22 +418,22 @@ export function ProcessInnovationPage() {
totalProjects: parseNum(payload?.count_innovation_process_projects),
averageScore: parseNum(payload?.average_project_score),
productionStopsPreventionSum: parseNum(
payload?.sum_stopping_production,
payload?.sum_stopping_production
),
bottleneckRemovalCount: parseNum(payload?.count_throat_removal),
currencyReductionSum: parseNum(payload?.sum_reduction_value_currency),
frequentFailuresReductionSum: parseNum(
payload?.sum_reducing_breakdowns,
payload?.sum_reducing_breakdowns
),
percentProductionStops: parseNum(
payload?.percent_sum_stopping_production,
payload?.percent_sum_stopping_production
),
percentBottleneckRemoval: parseNum(payload?.percent_throat_removal),
percentCurrencyReduction: parseNum(
payload?.percent_reduction_value_currency,
payload?.percent_reduction_value_currency
),
percentFailuresReduction: parseNum(
payload?.percent_reducing_breakdowns,
payload?.percent_reducing_breakdowns
),
};
@ -841,7 +841,7 @@ export function ProcessInnovationPage() {
{formatNumber(
((stats.averageScore ?? 0) as number).toFixed?.(1) ??
stats.averageScore ??
0,
0
)}
</div>
</div>
@ -882,7 +882,7 @@ export function ProcessInnovationPage() {
{selectedProjectDetails?.start_date
? moment(
selectedProjectDetails?.start_date,
"YYYY-MM-DD",
"YYYY-MM-DD"
).format("YYYY/MM/DD")
: "-"}
</span>
@ -897,7 +897,7 @@ export function ProcessInnovationPage() {
{selectedProjectDetails?.done_date
? moment(
selectedProjectDetails?.done_date,
"YYYY-MM-DD",
"YYYY-MM-DD"
).format("YYYY/MM/DD")
: "-"}
</span>
@ -913,9 +913,9 @@ export function ProcessInnovationPage() {
Number(
selectedProjectDetails?.approved_budget.replaceAll(
",",
"",
),
),
""
)
)
) || "-"}
</span>
</div>

View File

@ -8,10 +8,18 @@ export default [
"dashboard/innovation-basket/process-innovation",
"routes/innovation-basket.process-innovation.tsx"
),
route(
"dashboard/innovation-basket/green-innovation",
"routes/green-innovation.tsx"
),
route(
"/dashboard/innovation-basket/digital-innovation",
"routes/digital-innovation-page.tsx"
),
route(
"dashboard/innovation-basket/green-innovation",
"routes/green-innovation.tsx"
),
route("projects", "routes/projects.tsx"),
route("dashboard/ecosystem", "routes/ecosystem.tsx"),
route("404", "routes/404.tsx"),

View File

@ -0,0 +1,17 @@
import { ProtectedRoute } from "~/components/auth/protected-route";
import GreenInnovationPage from "~/components/dashboard/project-management/green-innovation-page";
export function meta() {
return [
{ title: "نوآوری در فرآیند - سیستم مدیریت فناوری و نوآوری" },
{ name: "description", content: "مدیریت پروژه‌های نوآوری در فرآیند" },
];
}
export default function GreenInnovation() {
return (
<ProtectedRoute requireAuth={true}>
<GreenInnovationPage />
</ProtectedRoute>
);
}

6859
package-lock.json generated

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff