কোম্পানি ব্যবস্থাপনা (Company Management) মডিউলের ডেটাবেজ ডিজাইনের জন্য টেবিলগুলোতে সংরক্ষণ করা হবে কোম্পানির সমস্ত তথ্য এবং তার সাথে সম্পর্কিত অন্যান্য মডিউলের তথ্য। এ মডিউলটির মাধ্যমে বিভিন্ন কোম্পানি সম্পর্কিত সাধারণ তথ্য সংরক্ষণ, মালিক এবং ম্যানেজমেন্ট ডিটেইলস রাখা, ঠিকানা এবং যোগাযোগের তথ্য আপডেট ইত্যাদি করা যাবে।
প্রধান টেবিলসমূহ এবং ফিল্ড
- companies (কোম্পানির সাধারণ তথ্য সংরক্ষণ করবে)
- company_address (কোম্পানির ঠিকানা এবং যোগাযোগ তথ্য)
- owner_management (মালিক এবং ম্যানেজমেন্ট সম্পর্কিত তথ্য)
- company_documents (কোম্পানির গুরুত্বপূর্ণ ডকুমেন্ট সংরক্ষণ)
- company_branches (কোম্পানির শাখা বা ব্রাঞ্চ সম্পর্কিত তথ্য)
- company_policies (কোম্পানির নীতিমালা সংক্রান্ত তথ্য)
- company_bank_accounts (কোম্পানির ব্যাংক তথ্য)
1. companies
| Field Name | Data Type | Description |
|---|---|---|
| company_id | INT (PK) | প্রতিটি কোম্পানির জন্য ইউনিক আইডি |
| company_name | VARCHAR(100) | কোম্পানির নাম |
| registration_number | VARCHAR(50) | কোম্পানির রেজিস্ট্রেশন নাম্বার |
| industry_type | VARCHAR(50) | শিল্পের ধরন (যেমন, Manufacturing, IT, etc.) |
| founded_date | DATE | প্রতিষ্ঠার তারিখ |
| website | VARCHAR(100) | কোম্পানির ওয়েবসাইট লিঙ্ক |
| status | ENUM | কোম্পানির স্ট্যাটাস (Active, Inactive, Suspended) |
| created_at | TIMESTAMP | তৈরি করার তারিখ |
| updated_at | TIMESTAMP | আপডেট করার তারিখ |
2. company_address
| Field Name | Data Type | Description |
|---|---|---|
| address_id | INT (PK) | ঠিকানার জন্য ইউনিক আইডি |
| company_id | INT (FK) | কোম্পানির সাথে সংযুক্ত (Foreign Key) |
| address_line1 | VARCHAR(100) | ঠিকানা লাইন ১ |
| address_line2 | VARCHAR(100) | ঠিকানা লাইন ২ (যদি থাকে) |
| city | VARCHAR(50) | শহর |
| state | VARCHAR(50) | রাজ্য বা প্রদেশ |
| zip_code | VARCHAR(10) | পোষ্টাল কোড |
| country | VARCHAR(50) | দেশ |
| phone_number | VARCHAR(15) | ফোন নম্বর |
| VARCHAR(100) | ইমেইল ঠিকানা | |
| created_at | TIMESTAMP | তৈরি করার তারিখ |
| updated_at | TIMESTAMP | আপডেট করার তারিখ |
রিলেশন:
company_idcompanies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি ঠিকানা নির্দিষ্ট কোম্পানির অধীনে রয়েছে।
3. owner_management
| Field Name | Data Type | Description |
|---|---|---|
| owner_id | INT (PK) | মালিকের জন্য ইউনিক আইডি |
| company_id | INT (FK) | কোম্পানির সাথে সংযুক্ত (Foreign Key) |
| owner_name | VARCHAR(100) | মালিক বা ম্যানেজারের নাম |
| designation | VARCHAR(50) | পদবী (যেমন, CEO, Managing Director) |
| contact_number | VARCHAR(15) | যোগাযোগের নম্বর |
| VARCHAR(100) | ইমেইল ঠিকানা | |
| ownership_percentage | DECIMAL(5,2) | মালিকানা শতাংশ |
| status | ENUM | বর্তমানে কর্মরত কিনা (Active, Retired) |
| created_at | TIMESTAMP | তৈরি করার তারিখ |
| updated_at | TIMESTAMP | আপডেট করার তারিখ |
রিলেশন:
company_idcompanies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি মালিক বা ম্যানেজারের তথ্য নির্দিষ্ট কোম্পানির সাথে সম্পর্কিত রয়েছে।
4. company_documents
| Field Name | Data Type | Description |
|---|---|---|
| document_id | INT (PK) | ডকুমেন্টের জন্য ইউনিক আইডি |
| company_id | INT (FK) | কোম্পানির সাথে সংযুক্ত (Foreign Key) |
| document_name | VARCHAR(100) | ডকুমেন্টের নাম (যেমন, Trade License, Tax Certificate) |
| document_type | VARCHAR(50) | ডকুমেন্টের ধরন (PDF, DOC, ইত্যাদি) |
| upload_date | DATE | আপলোডের তারিখ |
| status | ENUM | ডকুমেন্টের স্ট্যাটাস (Valid, Expired) |
| created_at | TIMESTAMP | তৈরি করার তারিখ |
| updated_at | TIMESTAMP | আপডেট করার তারিখ |
রিলেশন:
company_idcompanies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি ডকুমেন্ট নির্দিষ্ট কোম্পানির সাথে সম্পর্কিত রয়েছে।
5. company_branches
| Field Name | Data Type | Description |
|---|---|---|
| branch_id | INT (PK) | শাখার জন্য ইউনিক আইডি |
| company_id | INT (FK) | কোম্পানির সাথে সংযুক্ত (Foreign Key) |
| branch_name | VARCHAR(100) | শাখার নাম |
| branch_code | VARCHAR(20) | শাখার কোড (ইউনিক আইডেন্টিফায়ার) |
| address | TEXT | শাখার ঠিকানা |
| city | VARCHAR(50) | শহর |
| state | VARCHAR(50) | রাজ্য বা প্রদেশ |
| zip_code | VARCHAR(10) | পোষ্টাল কোড |
| country | VARCHAR(50) | দেশ |
| phone_number | VARCHAR(15) | শাখার ফোন নম্বর |
| VARCHAR(100) | শাখার ইমেইল | |
| status | ENUM | শাখার অবস্থা (Active, Inactive) |
| created_at | TIMESTAMP | তৈরি করার তারিখ |
| updated_at | TIMESTAMP | আপডেট করার তারিখ |
রিলেশন:
company_idcompanies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি শাখা একটি নির্দিষ্ট কোম্পানির অধীনে রয়েছে।
6. company_policies
| Field Name | Data Type | Description |
|---|---|---|
| policy_id | INT (PK) | নীতিমালার জন্য ইউনিক আইডি |
| company_id | INT (FK) | কোম্পানির সাথে সংযুক্ত (Foreign Key) |
| policy_name | VARCHAR(100) | নীতিমালার নাম |
| description | TEXT | নীতিমালার বিবরণ |
| effective_date | DATE | নীতিমালার কার্যকরী তারিখ |
| status | ENUM | নীতিমালার অবস্থা (Active, Inactive) |
| created_at | TIMESTAMP | তৈরি করার তারিখ |
| updated_at | TIMESTAMP | আপডেট করার তারিখ |
রিলেশন:
company_idcompanies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি নীতিমালা নির্দিষ্ট কোম্পানির জন্য প্রযোজ্য।
7. company_bank_accounts
| Field Name | Data Type | Description |
|---|---|---|
| bank_account_id | INT (PK) | ব্যাংক অ্যাকাউন্টের জন্য ইউনিক আইডি |
| company_id | INT (FK) | কোম্পানির সাথে সংযুক্ত (Foreign Key) |
| bank_name | VARCHAR(100) | ব্যাংকের নাম |
| account_number | VARCHAR(20) | ব্যাংক অ্যাকাউন্ট নম্বর |
| ifsc_code | VARCHAR(15) | IFSC কোড |
| branch_name | VARCHAR(50) | ব্যাংকের শাখার নাম |
| created_at | TIMESTAMP | তৈরি করার তারিখ |
| updated_at | TIMESTAMP | আপডেট করার তারিখ |
রিলেশন:
company_idcompanies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি ব্যাংক অ্যাকাউন্ট নির্দিষ্ট কোম্পানির জন্য সংরক্ষিত।
Company Management Module সম্পর্কের সারাংশ
- companies টেবিলটি কোম্পানির মূল তথ্য সংরক্ষণ করবে এবং অন্যান্য টেবিলগুলো এতে সংযুক্ত থাকবে।
- company_address টেবিলের
company_idফিল্ডটি companies টেবিলের সাথে সংযুক্ত থাকবে, যা প্রতিটি ঠিকানা নির্দিষ্ট কোম্পানির অধীনে থাকবে। - owner_management টেবিলের
company_idফিল্ডটি companies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি মালিকের তথ্য নির্দিষ্ট কোম্পানির সাথে সম্পর্কিত। - company_documents টেবিলের
company_idফিল্ডটি companies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি ডকুমেন্ট নির্দিষ্ট কোম্পানির জন্য প্রযোজ্য। - company_branches টেবিলের
company_idফিল্ডটি companies টেবিলের সাথে সংযুক্ত থাকবে, যা নিশ্চিত করবে যে প্রতিটি শাখা নির্দিষ্ট কোম্পানির অধীনে রয়েছে। - company_policies টেবিলের
company_idফিল্ডটি companies টেবিলের সাথে সংযুক্ত থাকবে, যা প্রতিটি নীতিমালা নির্দিষ্ট কোম্পানির জন্য কার্যকর হবে। - company_bank_accounts টেবিলের
company_idফিল্ডটি companies টেবিলের সাথে সংযুক্ত থাকবে, যা প্রতিটি ব্যাংক অ্যাকাউন্ট নির্দিষ্ট কোম্পানির জন্য সংরক্ষিত।
সারসংক্ষেপ
এই আপডেটেড ডিজাইনে, Company Management মডিউলে প্রতিটি কোম্পানির তথ্য, শাখা, নীতিমালা, ডকুমেন্ট, মালিকানা এবং ব্যাংক অ্যাকাউন্টের তথ্য নির্দিষ্টভাবে সংরক্ষণ ও পরিচালনা করা যাবে।