{{isLight?'☀️':'🌙'}}
{{pageTitle}}
ADMIN {{today}}
{{isLight?'☀️':'🌙'}}
{{tasks.length}}
মোট টাস্ক
{{tasks.filter(t=>t.status==='done').length}}
সম্পন্ন
{{tasks.filter(t=>t.status==='progress').length}}
চলমান
{{clients.length}}
ক্লায়েন্ট
কর্মী অ্যাক্টিভিটি
{{emp.initials}}
{{emp.name}}
{{getEmpAllTasks(emp.id).length}} টাস্ক · {{getEmpDone(emp.id)}} সম্পন্ন · {{getEmpSelfTasks(emp.id).length}} নিজস্ব
{{getEmpAllTasks(emp.id).length?Math.round(getEmpDone(emp.id)/getEmpAllTasks(emp.id).length*100):0}}%
সাম্প্রতিক কার্যক্রম
{{act.title}}
{{act.userName}} · {{act.time}}
কোনো কার্যক্রম নেই
সাম্প্রতিক টাস্কসমূহ
টাস্ককর্মীক্লায়েন্টধরনস্ট্যাটাসশেষ তারিখ
{{t.title}}
{{getUserById(aid)?.initials||'?'}}
{{(t.assigneeIds||[t.assigneeId]).filter(Boolean).map(id=>getUserById(id)?.name||'?').join(', ')}}
{{getClientById(t.clientId)?.name||'—'}}— নিজস্বঅ্যাসাইন {{statusLabel(t.status)}} {{t.endDate||'—'}}
{{myAssignedTasks.length}}
অ্যাসাইন করা টাস্ক
{{mySelfTasks.length}}
নিজস্ব টাস্ক
{{myAllTasks.filter(t=>t.status==='done').length}}
সম্পন্ন
আমার সাম্প্রতিক কাজ
📭
কোনো টাস্ক নেই
{{t.title}} নিজস্ব
{{getProjectById(t.projectId)?.name||'কোনো প্রজেক্ট নেই'}} {{t.clientId?'· '+getClientById(t.clientId)?.name:''}}
{{statusLabel(t.status)}}
প্রোফাইল
{{currentUser.initials}}
✏
{{currentUser.name}}
{{currentUser.department||'কর্মী'}}
📧 {{currentUser.email||'ইমেইল নেই'}}
{{s.trim()}}
{{t.title}} নিজস্ব
🤝 {{getClientById(t.clientId)?.name}}
{{(t.description||'').substring(0,70)}}{{(t.description||'').length>70?'...':''}}
অগ্রগতি{{t.percentage}}%
{{statusLabel(t.status)}} 🏁 {{t.endDate||'?'}} {{priorityLabel(t.priority)}}
👥
{{getUserById(aid)?.initials||'?'}}
{{(t.assigneeIds||[t.assigneeId]).filter(Boolean).map(id=>getUserById(id)?.name||'?').join(', ')}}
🔍
কোনো টাস্ক পাওয়া যায়নি
🧑‍💼 আমার অধীনস্থ কর্মীগণ
আপনি এই কর্মীদের টাস্ক দিতে পারবেন
{{getUserById(empId).initials}}
{{getUserById(empId).name}}
{{getUserById(empId).department||''}} · {{getEmpAllTasks(empId).length}} টাস্ক · {{getEmpDone(empId)}} সম্পন্ন
{{t.title}} নিজস্ব আপনি দিয়েছেন
{{getProjectById(t.projectId)?.name||'কোনো প্রজেক্ট নেই'}} {{t.clientId?'· '+getClientById(t.clientId)?.name:''}}
{{statusLabel(t.status)}}
আরও {{getEmpAllTasks(empId).length - 5}} টি টাস্ক আছে
কোনো টাস্ক নেই
টাস্ককর্মীক্লায়েন্টধরনস্ট্যাটাসশুরুশেষঅ্যাকশন
{{t.title}}
{{getUserById(aid)?.initials||'?'}}
{{(t.assigneeIds||[t.assigneeId]).filter(Boolean).map(id=>getUserById(id)?.name||'?').join(', ')}}
{{getClientById(t.clientId)?.name}}— নিজস্বঅ্যাসাইন {{statusLabel(t.status)}} {{t.startDate||'—'}} {{t.endDate||'—'}}
🔍
কোনো টাস্ক পাওয়া যায়নি
মোট {{kanbanAllTasks.length}} টাস্ক
করতে হবে
{{kanbanCols.todo.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{(t.description||'').substring(0,55)}}{{(t.description||'').length>55?'…':''}}
{{t.endDate||'তারিখ নেই'}} 💬{{t.comments.length}}
{{getUserById(aid)?.initials||'?'}}
+{{(t.assigneeIds||[t.assigneeId]).length-3}}
📭
কোনো টাস্ক নেই
চলমান
{{kanbanCols.progress.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{(t.description||'').substring(0,55)}}{{(t.description||'').length>55?'…':''}}
{{t.endDate||'তারিখ নেই'}} 💬{{t.comments.length}}
{{getUserById(aid)?.initials||'?'}}
+{{(t.assigneeIds||[t.assigneeId]).length-3}}
⚡
কোনো চলমান টাস্ক নেই
রিভিউতে
{{kanbanCols.review.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{(t.description||'').substring(0,55)}}{{(t.description||'').length>55?'…':''}}
{{t.endDate||'তারিখ নেই'}} 💬{{t.comments.length}}
{{getUserById(aid)?.initials||'?'}}
+{{(t.assigneeIds||[t.assigneeId]).length-3}}
🔍
রিভিউতে কিছু নেই
সম্পন্ন
{{kanbanCols.done.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{(t.description||'').substring(0,55)}}{{(t.description||'').length>55?'…':''}}
{{t.endDate||'তারিখ নেই'}} 💬{{t.comments.length}}
{{getUserById(aid)?.initials||'?'}}
+{{(t.assigneeIds||[t.assigneeId]).length-3}}
✅
এখনো কিছু সম্পন্ন হয়নি
🏃 স্প্রিন্ট {{activeSprint.number}}  ·  {{activeSprint.name}} 📅 {{activeSprint.startDate}} → {{activeSprint.endDate}} · মোট পয়েন্ট: {{scrumTotalPoints}}  |  সম্পন্ন: {{scrumDonePoints}}
📋 ব্যাকলগ
{{scrumCols.backlog.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{t.endDate||'—'}} {{t.storyPoints}} pts
{{getProjectById(t.projectId)?.name||'—'}}
{{getUserById(aid)?.initials||'?'}}
📋
ব্যাকলগ খালি
📌 করতে হবে
{{scrumCols.todo.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{t.endDate||'—'}} {{t.storyPoints}} pts
{{getProjectById(t.projectId)?.name||'—'}}
{{getUserById(aid)?.initials||'?'}}
📭
কোনো কার্ড নেই
⚡ চলমান
{{scrumCols.progress.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{t.endDate||'—'}} {{t.storyPoints}} pts
{{getProjectById(t.projectId)?.name||'—'}}
{{getUserById(aid)?.initials||'?'}}
⚡
কোনো কার্ড নেই
🔍 রিভিউতে
{{scrumCols.review.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{t.endDate||'—'}} {{t.storyPoints}} pts
{{getProjectById(t.projectId)?.name||'—'}}
{{getUserById(aid)?.initials||'?'}}
🔍
কোনো কার্ড নেই
✅ সম্পন্ন
{{scrumCols.done.length}}
🤝 {{getClientById(t.clientId)?.name}}
{{t.title}}
{{t.endDate||'—'}} {{t.storyPoints}} pts ✓
{{getProjectById(t.projectId)?.name||'—'}}
{{getUserById(aid)?.initials||'?'}}
🎯
এখনো সম্পন্ন হয়নি
কার্যক্রম লগ
{{filteredActLogs.length}} টি এন্ট্রি
{{getUserById(act.userId)?.initials||'?'}}
{{act.userName}} {{act.title}} {{getClientById(act.clientId)?.name}}
{{act.time}} · {{act.date}}
{{act.detail}}
📋
কোনো কার্যক্রম নেই
{{c.name.substring(0,2).toUpperCase()}}
{{c.name}}
{{c.industry||'শিল্প নেই'}}
{{c.description||'বিবরণ নেই'}}
📋 {{getClientTasks(c.id).length}} টাস্ক 📝 {{getClientNotes(c.id).length}} নোট 👥 {{(c.assignedTo||[]).length}} কর্মী
🤝
কোনো ক্লায়েন্ট নেই
ক্লায়েন্ট নোট যোগ করুন
আমার ক্লায়েন্ট নোট
📝
কোনো নোট নেই
{{getClientById(n.clientId)?.name||'—'}}
{{n.subject||'বিষয় নেই'}}
{{n.text}}
{{n.noteType}} · {{n.date}}
🔒
এই পেজ দেখার অনুমতি নেই
আপনি যাদের কাজ দেখতে পারবেন:
{{getUserById(empId).initials}}
{{getUserById(empId).name}}
{{getUserById(empId).department||''}}
{{t.title}} নিজস্ব
{{getProjectById(t.projectId)?.name||''}} {{t.clientId?'· '+getClientById(t.clientId)?.name:''}}
{{statusLabel(t.status)}}
কোনো টাস্ক নেই
{{emp.initials}}
{{emp.name}}
{{emp.department||''}}
অন্য কর্মীর কাজ দেখতে পারবে
তার supervised কর্মীদের টাস্ক দেখার অনুমতি
অধীনস্থ কর্মীদের টাস্ক অ্যাসাইন করতে পারবে
সুপারভিশন পেজে যাকে supervisor বানানো হবে, সে তার subordinate-দের টাস্ক দিতে পারবে
⚠ এই কর্মীর অধীনে কেউ নেই। Supervision পেজ থেকে subordinate সেট করুন।
✅ অধীনস্থ: {{getSubordinates(emp.id).map(s=>s.name).join(', ')}}
ক্লায়েন্ট নোট লিখতে পারবে
ক্লায়েন্ট সম্পর্কিত নোট রাখার সুবিধা
কোন ক্লায়েন্টের তথ্য দেখতে পারবে:
👥
কোনো কর্মী নেই
প্রতিটি কর্মীর জন্য সুপারভাইজার এবং তাদের অধীনে কারা আছে তা নির্ধারণ করুন।
{{emp.initials}}
{{emp.name}}
সুপারভাইজার: {{getSupervisor(emp.id)?.name}}
{{emp.name}} যাদের সুপারভাইজ করছেন: {{sub.name}} কেউ নেই
{{emp.initials}}
{{emp.name}}
{{emp.department||'বিভাগ নেই'}}
🏷 {{emp.designation}}
{{getSupervisor(emp.id)?.name}}-এর অধীনে
🔐 {{emp.username}}
কাজের অগ্রগতি{{getEmpAllTasks(emp.id).length?Math.round(getEmpDone(emp.id)/getEmpAllTasks(emp.id).length*100):0}}%
অ্যাসাইন: {{getEmpTasks(emp.id).length}} নিজস্ব: {{getEmpSelfTasks(emp.id).length}} সম্পন্ন: {{getEmpDone(emp.id)}}
📁 {{proj.name}}
{{proj.description}}
{{statusLabel(proj.status)}}
CLIENT
{{getClientById(proj.clientId)?.name?.substring(0,2).toUpperCase()}}
{{getClientById(proj.clientId)?.name}}
কোনো ক্লায়েন্ট নেই
TIMELINE
📅 শুরু: {{proj.startDate||'—'}} 🏁 শেষ: {{proj.endDate||'—'}}
TASKS
{{tasks.filter(t=>t.projectId===proj.id).length}} / {{proj.taskCount||'?'}} নির্ধারিত
ASSIGNED PEOPLE
{{getUserById(empId)?.initials||'?'}}
{{getUserById(empId)?.name}}
কেউ অ্যাসাইন নেই
{{projProgress(proj.id)}}% সম্পন্ন {{tasks.filter(t=>t.projectId===proj.id&&t.status==='done').length}} / {{tasks.filter(t=>t.projectId===proj.id).length}} টাস্ক সম্পন্ন · ⚖️ ওজন-ভিত্তিক
PROJECT TASKS
{{t.title}}
⚖️ {{t.weight}}% {{statusLabel(t.status)}}
{{getUserById(aid)?.initials||'?'}}
🏁 {{t.endDate||'?'}}
GENERAL অফিসের সাধারণ টাস্ক
কোনো প্রজেক্টের অন্তর্ভুক্ত নয় — দৈনন্দিন অফিস কাজ
{{gt.title}}
{{statusLabel(gt.status)}}
{{gt.description.substring(0,60)}}{{gt.description.length>60?'...':''}}
{{getUserById(aid)?.initials||'?'}}
🏁 {{gt.endDate||'?'}}
📋
কোনো সাধারণ টাস্ক নেই
📁
কোনো প্রজেক্ট নেই
📁 {{proj.name}}
{{statusLabel(proj.status)}} {{expandedProjects.includes(proj.id)?'▲':'▼'}}
শুরু: {{proj.startDate}}শেষ: {{proj.endDate}}অগ্রগতি: {{projProgress(proj.id)}}%
টাস্কওজনকর্মীক্লায়েন্টস্ট্যাটাসশেষ
{{t.title}} {{t.weight}}%—
{{getUserById(aid)?.initials||'?'}}
{{(t.assigneeIds||[t.assigneeId]).filter(Boolean).map(id=>getUserById(id)?.name||'?').join(', ')}}
{{getClientById(t.clientId)?.name}}— {{statusLabel(t.status)}} {{t.endDate||'—'}}
📝 নতুন কাজের বিবরণ
সারাংশ
{{totalLogHours}}
মোট ঘণ্টা
{{myWorkLogs.length}}
মোট এন্ট্রি
টাস্ক অনুযায়ী সময়
{{t.title}} {{getTaskLogHours(t.id)}}h
সব লগ এন্ট্রি
📋
কোনো লগ নেই
{{getTaskById(log.taskId)?.title||'অজানা'}} 📅 {{log.date}} ⏱ {{log.hours||0}}h {{log.minutes||0}}m
{{log.text}}
💬 {{log.note}}
প্রোফাইল তথ্য
{{currentUser.initials}}
📷
ছবিতে ক্লিক করে পরিবর্তন করুন
কাজের পরিসংখ্যান
অ্যাসাইন টাস্ক{{myAssignedTasks.length}}
নিজস্ব টাস্ক{{mySelfTasks.length}}
সম্পন্ন{{myAllTasks.filter(t=>t.status==='done').length}}
মোট লগ সময়{{totalLogHours}}h
আমার পার্মিশনসমূহ
✓ টিম ভিউ ✓ টাস্ক অ্যাসাইন ✓ ক্লায়েন্ট নোট ✓ {{(getEmpPerm(currentUser.id,'clientAccess')||[]).length}} ক্লায়েন্ট অ্যাক্সেস কোনো বিশেষ পার্মিশন নেই