সফটওয়্যার রিকোয়ারমেন্টস ডকুমেন্ট
Company Staff Monitoring, Task Management & Salary Automation System

প্রস্তুতকৃত প্ল্যাটফর্ম: Laravel ভিত্তিক Web Application
আপডেটেড ব্যবসায়িক নিয়ম:
- Start/Stop ভিডিও ১ মিনিট
- Continuous recording হবে না
- বাংলাদেশ সময় সকাল ১০:০০ টার আগে Start বাধ্যতামূলক
- সকাল ১০:০০ টা পার হলে ওই দিনের Attendance কাউন্ট হবে না এবং Staff আর Start করতে পারবে না

১. প্রজেক্টের উদ্দেশ্য
- স্টাফদের অফিসে প্রবেশ, কাজের সময়, লাঞ্চ বিরতি এবং অফিস ত্যাগের সময় ট্র্যাক করা
- দৈনিক কাজ, টাস্ক অগ্রগতি, স্ক্রিনশট, ফাইল ও লিংক সংগ্রহ করা
- অ্যাডমিন দ্বারা টাস্ক বরাদ্দ, মূল্যায়ন, পয়েন্ট প্রদান এবং সেই পয়েন্টের উপর ভিত্তি করে মাসিক স্যালারি অটো-ক্যালকুলেশন করা

২. টেকনোলজি ও প্ল্যাটফর্ম
- Backend Framework: Laravel
- Application Type: Web Application
- Database: MySQL/MariaDB
- File Storage: Local Storage অথবা Cloud Storage
- Camera Access: Browser permission ভিত্তিক camera access
- Timezone: Asia/Dhaka (Bangladesh Standard Time)

৩. ইউজার রোলস
৩.১ Super Admin
- সব settings, salary rule, point rule, office time ও lunch policy কনফিগার করবে
- সব কোম্পানি/ব্রাঞ্চ/অ্যাডমিন/স্টাফ ম্যানেজ করবে

৩.২ Admin / HR / Manager
- স্টাফ create/edit/deactivate করবে
- স্টাফকে task assign করবে
- Attendance video, work log, file submission ও task review করবে
- Task approve/reject/rework দেবে এবং final point নিশ্চিত করবে

৩.৩ Staff / Employee
- Login করে Start Office করবে
- Start ও Stop এর সময় বাধ্যতামূলক ভিডিও দেবে
- Lunch Start/Lunch End করবে
- Daily work update, screenshot, file ও project link submit করবে
- নিজের task progress, point এবং estimated salary দেখতে পারবে

৪. কোর মডিউলসমূহ
- User & Role Management
- Attendance Start/Stop with Video
- Lunch Break Tracking
- Daily Work Update
- Task Assignment & Tracking
- Proof Submission (Screenshot/File/Link)
- Task Review & Approval
- Point System
- Salary Automation
- Reports & Analytics
- Notification System
- Settings & Audit Log

৫. অত্যন্ত গুরুত্বপূর্ণ ব্যবসায়িক নিয়ম
- স্টাফকে অবশ্যই বাংলাদেশ সময় সকাল ১০:০০ টার আগে Start করতে হবে
- সকাল ১০:০০ টা পার হয়ে গেলে ওই দিনের Attendance কাউন্ট হবে না
- সকাল ১০:০০ টার পরে Staff আর Start করতে পারবে না
- Continuous recording হবে না; শুধুমাত্র Start এর সময় ১ মিনিট এবং Stop এর সময় ১ মিনিট ভিডিও রেকর্ড হবে
- Start না করলে lunch, work session এবং stop process চালু হবে না
- Stop এর সময়ও ১ মিনিট ভিডিও mandatory হবে
- Admin approval ছাড়া earned point final হবে না
- Proof submission ছাড়া task complete ধরা যাবে না

৬. Attendance Start System
- Staff login করার পর Dashboard-এ Start Office button থাকবে
- Start button ক্লিক করলে browser camera permission চাইবে
- Camera open হয়ে ১ মিনিট ভিডিও রেকর্ড হবে
- ভিডিও auto save হবে এবং timestamp সহ attendance session শুরু হবে
- ভিডিও ও start time admin panel-এ review করা যাবে

Start System Business Rules
- প্রতিদিন মাত্র একবার Start করা যাবে
- সকাল ১০:০০ টার পরে Start button disabled/blocked থাকবে
- system message দেখাবে: “আজকের attendance সময়সীমা শেষ হয়েছে; আজ আর start করা যাবে না”
- Camera permission না দিলে Start হবে না
- ভিডিও mandatory; ভিডিও ব্যতীত attendance save হবে না

৭. Office Stop System
- দিনের কাজ শেষে Staff Stop Office button ক্লিক করবে
- Camera open হবে এবং ১ মিনিট ভিডিও রেকর্ড হবে
- Stop করার আগে বা Stop flow-এর অংশ হিসেবে Staff daily work summary, screenshot, file এবং project link submit করতে পারবে
- Stop complete হলে session end হবে এবং total working time, lunch time, net working time calculate হবে

৮. Lunch Break Management
- স্ট্যান্ডার্ড lunch window: দুপুর ১:০০ টা থেকে ২:০০ টা
- Lunch Start করলে lunch timer চলবে; Lunch End করলে timer বন্ধ হবে
- Lunch শুধুমাত্র active office session-এ ব্যবহার করা যাবে
- ১ ঘণ্টার বেশি lunch হলে admin report-এ over lunch হিসেবে দেখাবে

৯. Daily Work Update Module
- Staff সারাদিন কী কাজ করেছে তা লিখিতভাবে submit করতে পারবে
- একাধিক work entry বা task-wise note দেওয়া যাবে
- Title, description, completion status, blocker/issue এবং remark যোগ করা যাবে
- দিনের শেষে summary update submit করা যাবে

১০. Task Assignment & Tracking
- Admin staff কে task assign করবে
- Task-এর সাথে title, description, deadline, priority, point value এবং expected output থাকবে
- Staff task progress percentage update করতে পারবে
- Progress 0% থেকে 100% পর্যন্ত update করা যাবে
- Final submission এর সময় screenshot, file, live link, project link, GitHub/repository link যুক্ত করা যাবে

১১. Task Review, Approval & Point System
- Admin task submission review করে approve/reject/rework status দেবে
- Admin completion percentage override করতে পারবে
- 100% acceptable হলে full point
- partial completion হলে partial point
- rejected task-এ 0 point বা custom deduction
- Admin approval এর পরই earned point staff account-এ যুক্ত হবে

১২. Salary Automation Module
- Salary point ভিত্তিক auto-generate হবে
- System admin ১ point = কত টাকা সেট করে দেবে
- Monthly target point অনুযায়ী expected salary দেখা যাবে
- Earned Salary = Earned Point × Per Point Value
- অসম্পূর্ণ বা reject হওয়া task-এর কারণে salary কমলে তার reason staff dashboard-এ দেখাতে হবে

Example:
- ১ point = ১,০০০ টাকা
- monthly target = ১৫ point
- ১৫ point complete = ১৫,০০০ টাকা
- ১৩ point complete = ১৩,০০০ টাকা
- বাকি point-এর কারণ reason আকারে দেখাতে হবে

১৩. Dashboard Requirements
Admin Dashboard
- আজ কারা Start করেছে, কারা Lunch-এ আছে, কারা Stop করেছে
- Pending task submissions
- approved/rejected task count
- late বা missing attendance list
- missing stop video বা missing work log list
- monthly point leaderboard ও salary summary

Staff Dashboard
- আজ Start হয়েছে কি না এবং Stop হয়েছে কি না
- current working timer এবং lunch timer
- assigned task, pending task, completed task
- monthly earned point, target point, estimated salary
- rejected task reason ও admin feedback

১৪. Reports & Export
- Daily attendance report
- Staff-wise attendance report
- Start/Stop video report
- Lunch duration report
- Task performance report
- Point earning report
- Monthly salary report
- PDF / Excel / CSV export

১৫. Settings Module
- Office start deadline = সকাল ১০:০০ AM (BST)
- Lunch start/end time = ১:০০ PM – ২:০০ PM
- Start video duration = ১ মিনিট
- Stop video duration = ১ মিনিট
- Point প্রতি টাকা
- Monthly target point
- Allowed file types and upload size
- Late attendance / no-start restriction policy

১৬. Suggested Database Tables
- users
- roles
- departments
- designations
- attendance_sessions
- attendance_videos
- lunch_breaks
- daily_work_logs
- tasks
- task_progress_logs
- task_submissions
- task_submission_files
- points
- salary_rules
- salary_records
- notifications
- settings
- activity_logs

১৭. MVP Development Scope
- Login & Role Management
- Start Attendance with ১ মিনিট ভিডিও
- Stop Attendance with ১ মিনিট ভিডিও
- ১০:০০ AM এর পরে Start block rule
- Lunch Start / End tracking
- Daily work update
- Task assignment & task progress
- Screenshot / file / link submission
- Admin review & point approval
- Point-based salary report

১৮. Developer Summary
এই সিস্টেমটি একটি Laravel ভিত্তিক web application হবে যেখানে staff login করে office start ও stop করতে পারবে এবং Start/Stop-এর সময় ১ মিনিটের বাধ্যতামূলক ভিডিও রেকর্ড হবে। বাংলাদেশ সময় সকাল ১০:০০ টার আগে Start না করলে ওই দিনের attendance গণনা হবে না এবং ১০:০০ টার পরে Start করা যাবে না। Lunch tracking, daily work update, admin task assignment, screenshot/file/link proof submission, admin approval-based point system এবং point অনুযায়ী monthly salary auto-calculation থাকতে হবে।
