chamcong / index.html
hotrung's picture
Add 3 files
5e11f50 verified
Raw
History Blame Contribute Delete
21.5 kB
<!DOCTYPE html>
<html lang="vi">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Chấm công tính lương</title>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
.sidebar {
transition: all 0.3s;
}
.sidebar-collapsed {
width: 70px;
}
.sidebar-collapsed .sidebar-text {
display: none;
}
.sidebar-collapsed .logo-text {
display: none;
}
.sidebar-collapsed .nav-item {
justify-content: center;
}
.content {
transition: all 0.3s;
}
.content-expanded {
margin-left: 70px;
}
.calendar-day {
transition: all 0.2s;
}
.calendar-day:hover {
transform: scale(1.05);
}
.attendance-present {
background-color: #4ade80;
}
.attendance-absent {
background-color: #f87171;
}
.attendance-leave {
background-color: #60a5fa;
}
.attendance-late {
background-color: #fbbf24;
}
.header {
height: 64px;
}
.nav-item {
padding: 0.75rem 1.5rem;
}
.table-container {
overflow-x: auto;
width: 100%;
}
table {
min-width: 1200px;
}
.attendance-dropdown {
position: relative;
display: inline-block;
}
.attendance-dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 1;
border-radius: 4px;
}
.attendance-dropdown:hover .attendance-dropdown-content {
display: block;
}
.attendance-cell {
width: 30px;
height: 30px;
text-align: center;
vertical-align: middle;
cursor: pointer;
border-radius: 4px;
position: relative;
}
.attendance-cell:hover {
background-color: #f0f0f0;
}
.attendance-X { background-color: #4ade80; color: white; }
.attendance-N { background-color: #f87171; color: white; }
.attendance-H { background-color: #fbbf24; color: white; }
.attendance-P { background-color: #60a5fa; color: white; }
.attendance-L { background-color: #a78bfa; color: white; }
.attendance-O { background-color: #f472b6; color: white; }
.attendance-K { background-color: #94a3b8; color: white; }
.stat-item {
padding: 0.5rem 1rem;
border-radius: 0.5rem;
background-color: white;
box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.dropdown-option {
padding: 8px 16px;
cursor: pointer;
display: flex;
align-items: center;
}
.dropdown-option:hover {
background-color: #f1f1f1;
}
.dropdown-option-icon {
width: 24px;
height: 24px;
display: inline-flex;
align-items: center;
justify-content: center;
margin-right: 8px;
border-radius: 4px;
color: white;
}
.print-btn {
margin-left: auto;
margin-right: 20px;
}
</style>
</head>
<body class="bg-gray-100">
<div class="flex flex-col h-screen">
<!-- Header with navigation -->
<div class="header bg-indigo-800 text-white w-full fixed top-0 left-0 z-50 shadow-md flex items-center justify-between px-4">
<div class="flex items-center">
<i class="fas fa-chalkboard-teacher text-2xl mr-3"></i>
<span class="logo-text text-xl font-bold">Chấm công tính lương</span>
</div>
<!-- Navigation menu -->
<div class="flex items-center h-full">
<div class="nav-item flex items-center text-white hover:bg-indigo-700 cursor-pointer h-full">
<i class="fas fa-users mr-3"></i>
<span class="sidebar-text">Tổng hợp</span>
</div>
<div class="nav-item flex items-center text-white hover:bg-indigo-700 cursor-pointer active-nav-item h-full">
<i class="fas fa-calendar-check mr-3"></i>
<span class="sidebar-text">Chấm công</span>
</div>
<div class="nav-item flex items-center text-white hover:bg-indigo-700 cursor-pointer h-full">
<i class="fas fa-money-bill-wave mr-3"></i>
<span class="sidebar-text">Tính lương</span>
</div>
<button class="print-btn bg-green-600 text-white px-4 py-2 rounded hover:bg-green-700 flex items-center ml-4">
<i class="fas fa-print mr-2"></i>
<span>In phiếu lương</span>
</button>
</div>
</div>
<!-- Main content -->
<div class="content flex-1 mt-16 p-6" id="content">
<!-- Compact statistics -->
<div class="flex flex-wrap gap-2 mb-6">
<div class="stat-item flex items-center text-sm">
<span class="text-gray-500 mr-2">Tổng GV/NV:</span>
<span class="font-bold">42</span>
</div>
<div class="stat-item flex items-center text-sm">
<span class="text-gray-500 mr-2">Đi làm hôm nay:</span>
<span class="font-bold">38</span>
</div>
<div class="stat-item flex items-center text-sm">
<span class="text-gray-500 mr-2">Tổng lương tháng:</span>
<span class="font-bold">324,450,000đ</span>
</div>
<div class="stat-item flex items-center text-sm">
<span class="text-gray-500 mr-2">Đi muộn hôm nay:</span>
<span class="font-bold">2</span>
</div>
</div>
<!-- Attendance calendar and teacher list -->
<div class="bg-white rounded-lg shadow overflow-hidden mb-6">
<div class="p-6 border-b border-gray-200">
<div class="flex justify-between items-center">
<h2 class="text-xl font-semibold">Chấm công tháng 11/2023</h2>
<div class="flex items-center space-x-4">
<div class="flex items-center">
<select class="p-2 border border-gray-300 rounded">
<option>Tháng 11</option>
<option>Tháng 10</option>
<option>Tháng 9</option>
</select>
</div>
<div class="flex items-center">
<select class="p-2 border border-gray-300 rounded">
<option>2023</option>
<option>2022</option>
<option>2021</option>
</select>
</div>
<button class="bg-indigo-600 text-white px-4 py-2 rounded hover:bg-indigo-700">Lưu</button>
</div>
</div>
</div>
<div class="table-container">
<table class="min-w-full divide-y divide-gray-200">
<thead class="bg-gray-50">
<tr>
<th class="px-3 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">STT</th>
<th class="px-3 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Họ và tên</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">1</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">2</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">3</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">4</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">5</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">6</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">7</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">8</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">9</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">10</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">11</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">12</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">13</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">14</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">15</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">16</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">17</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">18</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">19</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">20</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">21</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">22</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">23</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">24</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">25</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">26</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">27</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">28</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">29</th>
<th class="px-3 py-3 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">30</th>
</tr>
</thead>
<tbody class="bg-white divide-y divide-gray-200">
<tr>
<td class="px-3 py-4 whitespace-nowrap text-sm text-gray-500">1</td>
<td class="px-3 py-4 whitespace-nowrap">
<div class="flex items-center">
<div class="flex-shrink-0 h-10 w-10">
<img class="h-10 w-10 rounded-full" src="https://randomuser.me/api/portraits/women/12.jpg" alt="">
</div>
<div class="ml-4">
<div class="text-sm font-medium text-gray-900">Nguyễn Thị A</div>
</div>
</div>
</td>
<td class="px-3 py-4 whitespace-nowrap text-center">
<div class="attendance-dropdown">
<div class="attendance-cell attendance-X" data-status="X">X</div>
<div class="attendance-dropdown-content">
<div class="dropdown-option" onclick="changeAttendance(this, 'X')">
<div class="dropdown-option-icon bg-green-500">X</div>
<span>Làm việc</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'N')">
<div class="dropdown-option-icon bg-red-500">N</div>
<span>Nghỉ</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'H')">
<div class="dropdown-option-icon bg-yellow-500">1/2</div>
<span>Nửa ngày</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'P')">
<div class="dropdown-option-icon bg-blue-500">P</div>
<span>Nghỉ phép</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'L')">
<div class="dropdown-option-icon bg-purple-500">L</div>
<span>Nghỉ lễ</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'O')">
<div class="dropdown-option-icon bg-pink-500">O</div>
<span>Nghỉ ốm</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'K')">
<div class="dropdown-option-icon bg-gray-500">K</div>
<span>Khác</span>
</div>
</div>
</div>
</td>
<td class="px-3 py-4 whitespace-nowrap text-center">
<div class="attendance-dropdown">
<div class="attendance-cell attendance-X" data-status="X">X</div>
<div class="attendance-dropdown-content">
<div class="dropdown-option" onclick="changeAttendance(this, 'X')">
<div class="dropdown-option-icon bg-green-500">X</div>
<span>Làm việc</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'N')">
<div class="dropdown-option-icon bg-red-500">N</div>
<span>Nghỉ</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'H')">
<div class="dropdown-option-icon bg-yellow-500">1/2</div>
<span>Nửa ngày</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'P')">
<div class="dropdown-option-icon bg-blue-500">P</div>
<span>Nghỉ phép</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'L')">
<div class="dropdown-option-icon bg-purple-500">L</div>
<span>Nghỉ lễ</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'O')">
<div class="dropdown-option-icon bg-pink-500">O</div>
<span>Nghỉ ốm</span>
</div>
<div class="dropdown-option" onclick="changeAttendance(this, 'K')">
<div class="dropdown-option-icon bg-gray-500">K</div>
<span>Khác</span>
</div>
</div>
</div>
</td>
<td class="px-3 py-4 whitespace-nowrap text-center">
<div class="attendance-dropdown">
<div class="attendance-cell attendance-X" data-status="X">X</div>
<div class="attendance-dropdown-content">
<div class="dropdown-option" onclick="changeAttendance(this, 'X')">
<div class="dropdown-option-icon bg-green-500">X</div>
<span>Làm việc</span>
</div>
极简主义是一种生活哲学,强调去除不必要的物质和精神负担,专注于真正重要的事物。它不仅仅关乎物质上的极简,更是一种思维方式和生活态度。
极简主义的核心原则包括:
1. 少即是多 - 通过减少物品、信息和活动,获得更多时间、空间和精力
2. 质量优于数量 - 选择少量但高品质的物品和体验
3. 有意识地生活 - 对拥有的每件物品和每项承诺都保持清醒认知
4. 去除冗余 - 只保留真正需要和带来价值的事物
5. 专注当下 - 不被过去束缚,不为未来过度焦虑
实践极简主义可以从以下几个方面入手:
1. 物质极简:
- 定期整理物品,只保留必需品和真正喜爱的物品
- 建立"一进一出"原则,购买新物品前先处理旧物
- 选择多功能、耐用、易维护的物品
2. 数字极简:
- 清理电子设备中不必要的文件和应用程序
- 减少社交媒体使用时间
- 设置无干扰时段专注工作
3. 精神极简:
- 学会说"不",拒绝不必要的社交和承诺
- 培养冥想习惯,清理杂念
- 简化目标,专注于少数真正重要的事项
4. 财务极简:
- 减少冲动消费
- 建立自动储蓄机制
- 投资体验而非物质
极简主义带来的好处包括:
- 减轻压力和焦虑
- 提高生活效率
- 增强对生活的掌控感
- 获得更多时间和自由
- 提升生活品质和幸福感
值得注意的是,极简主义不是苦行僧式的自我剥夺,而是通过有意识的选择,创造更充实、更有意义的生活。每个人的极简方式可能不同,重要的是找到适合自己的平衡点
</html>