import React from "react"; import { FaTimes, FaBuilding, FaUser, FaDollarSign, FaUsers, FaCalendar, FaEdit, } from "react-icons/fa"; import { HrDepartment } from "../../../types/hr"; import { mockEmployees } from "../../../mocks/mockEmployees"; interface DepartmentViewModalProps { isOpen: boolean; onClose: () => void; department: HrDepartment | null; onEdit?: (department: HrDepartment) => void; } const DepartmentViewModal: React.FC = ({ isOpen, onClose, department, onEdit, }) => { const employeeCount = mockEmployees.filter( (emp) => emp.departmantId === department?.id ).length; const departmentEmployees = mockEmployees.filter( (emp) => emp.departmantId === department?.id ); return ( isOpen && department && (

Departman Detayları

{onEdit && ( )}
{/* Temel Bilgiler */}

Temel Bilgiler

{department.code}

{department.name}

{department.description && (

{department.description}

)}
{department.isActive ? "Aktif" : "Pasif"}
{/* Hiyerarşi ve İlişkiler */}

Hiyerarşi ve İlişkiler

{department.parentDepartment?.name || "Ana Departman"}

{department.manager?.fullName || "Atanmamış"}

{department.manager && (

{department.manager.code}

)}

{department.costCenter?.name || "Atanmamış"}

{department.costCenter && (

{department.costCenter.code}

)}
{/* Finansal Bilgiler */}

Finansal Bilgiler

{department.budget ? `₺${department.budget.toLocaleString()}` : "Belirtilmemiş"}

{/* Personel Bilgileri */}

Personel Bilgileri

{employeeCount}

{departmentEmployees.length > 0 && (
{departmentEmployees.map((employee) => (

{employee.fullName}

{employee.code}

{employee.jobPosition?.name || "Pozisyon belirtilmemiş"}
))}
)}
{/* Sistem Bilgileri */}

Sistem Bilgileri

{new Date(department.creationTime).toLocaleDateString( "tr-TR" )}

{new Date( department.lastModificationTime ).toLocaleDateString("tr-TR")}

{/* Close Button */}
) ); }; export default DepartmentViewModal;