1. Architecture
Domain Tool
  • Tổng quan
  • Business | Logic
    • Admin Business Logic
    • Worker & Automation Business
    • Integration & Reliability Business
    • API INTERFACE & TASK MANAGEMENT
    • SYSTEM BUSINESS OVERVIEW
  • Project
    • ADMIN
      • Tổng quan
      • Architecture
        • Database Schema
        • System Architecture
        • Code Structure
      • Deployment
        • Local
        • Staging
        • Product
      • Hướng dẫn sử dụng
        • Tổng quan
        • Đăng nhập
        • Kiểm tra tự động
        • Kiểm tra thủ công
        • Xếp hạng thủ công
        • Xác nhận kiểm tra
        • Xếp hạng tự động
        • Quản lý từ khóa xếp hạng
        • Kiểm tra whitelist
        • Quản lý từ khóa
        • Truy vết tên miền
        • Quản lý volume từ khóa
        • Kiểm tra domain sở hữu
        • Lịch sử check domain
        • Kiểm tra và view source
        • Kiểm tra thương hiệu tên miền
        • Quản lý người dùng
        • Server
    • API
      • Tổng quan
      • Architecture
        • Database Schema
        • System Architecture
        • Code Structure
      • Deployment
        • Staging
        • Product
        • Local
      • API Interface
        • Public API
          • Xác thực
            • login
            • refresh token
          • Thông tin đăng nhập
            • get current user
            • changePasswordUser
          • Quản lý người dùng
            • getUserList
            • createUser
            • getUserItem
            • updateUser
            • deleteUser
            • updateActive
            • Update FCM Token
          • Quản lý từ khóa
            • Get list of Keywords
            • createKeyword
            • getKeywordItem
            • updateKeyword
            • deleteKeyword
            • deleteKeyword
            • totalKeywordBranchGroup
          • Quản lý Proxy
            • Get all Proxies
            • createProxy
            • getProxyItem
            • updateProxy
            • deleteProxy
            • getActiveProxyList
          • Branch
            • getBranchList
            • createBranch
            • getBranchItem
            • updateBranch
            • deleteBranch
          • Check Brand Domain Histories
            • Get list of Check Brand Domain Histories
            • export Check Brand Domain Histories Data
            • checkBrandDomainHistoriesCopy
            • Import data from Excel
            • exportSampleImportFile
          • Check Confirm
            • List Check Confirms
            • Create Check Confirm
            • Bulk create Check Confirms
            • Show Check Confirm
            • Approve or update confirm detail
            • Delete Check Confirm
            • Approve Check Confirm
            • Approve or Reject Check Confirm
            • List approvers
          • Check Owned Domain
            • Check owned domain
          • Check View Source
            • List current user's check view source histories
            • Check view source for domains
            • Delete all histories of current user
          • Tên Miền Công Ty
            • Get a list of company domains
            • Create a new company domain
            • Get a specific company domain
            • Update a specific company domain with tags
            • Delete a specific company domain
            • Import Whitelist Domains from Excel
            • deleteBulkWhitelistDomain
            • Delete company domains by tag ID
          • Xuất dữ liệu excel
            • Export company domains
            • autoCheckDomainRdrExport
            • exportExcelHistoryCheck
            • exportExcelHistoryRecord
            • autoCheckHistoryDomainRecordExport
            • AutoCheckHistoryDomainCheckExport
            • export Keyword Data
            • autoCheckKeywordExport
            • exportKeywordVolumes
            • exportTrackingDomain
            • exportExcelManualRankingKeywordHistory
            • exportExcelManualSessionHistoryCheck
            • exportExcelRankingDomainHistory
            • exportCompareProxies
            • export Ranking Keyword Data
            • autoCheckRankingKeywordExport
            • exportSampleImportFile
            • exportExcelRankingKeywordHistory
            • exportExcelRankingHistory
            • exportExcelDomainRankingHistory
            • exportExcelWhiteListDomainBlock
            • WhitelistBlockExportSampleImportFile
            • exportSampleImportFile
            • ExportWhitelistByTag
          • Copy
            • Copy company domains
            • autoCheckDomainRdrCopy
            • autoCheckHistoryDomainRecordCopy
            • autoCheckHistoryDomainCheckCopy
            • autoCheckKeywordCopy
            • copyKeywordVolumes
            • copyTrackingDomain
            • copyManualRankingKeywordHistory
            • copySessionHistory
            • copySessionHistory
            • manualUploadFileCopy
            • copyRankingDomainHistory
            • autoCheckRankingKeywordCopy
            • copyRankingKeywordHistory
            • copyRankingHistory
            • copyWhiteListDomainBlock
            • copyWhitelistByTag
          • Nhà cung cấp proxy
            • getDataUsageHistory
            • getProxyProviderList
            • createProxyProvider
            • getProxyProviderItem
            • updateProxyProvider
            • deleteProxyProvider
            • updateSortProxyProvider
            • getProviderProxyCombine
            • createProxyProvider
            • detailProviderProxyCombine
            • updateProxyProvider
            • deleteProviderProxyCombine
          • Quản lý Domain
            • getDomainList
            • createDomain
            • getDomainItem
            • updateDomain
            • deleteDomain
          • Chạy thủ công
            • Run Manual Domain
            • Run Manual Check Domain
            • Run Retry Record Domain
            • Run Retry check Domain
            • Run Manual Domain By Type
            • Run Manual Keyword
          • Domain Check Redirect
            • createDomainCheckRDR
            • getDomainCheckRDRItem
            • updateDomainCheckRDR
            • deleteDomainCheckRDR
            • createHistoryDomainCheck
            • updateHistoryDomainCheck
            • deleteHistoryDomainCheck
            • getListWebByKeyword
            • getListAppByKeyword
            • getListAdsByKeyword
            • getDomainCheckRDRList
          • Quản lý summary
            • Get Domain Wiki Statistics
            • Get Domain Wiki Details
            • Export Domain Wiki Data
            • Copy Domain Wiki List
            • Get Domain Wiki Chart Data
            • Get Summaries
            • Get Auto Summaries
            • Get ranking Summaries
          • External API
            • Create external record domain task
          • Flow
            • stop current flow search domain
            • start current flow search domain
            • get metric flow
            • Get domain RDR processing metrics
            • Get keyword processing metrics
            • Get status auto
          • Group
            • getGroupList
            • createGroup
            • getGroupItem
            • updateGroup
            • deleteGroup
          • Lấy lịch sử check domain
            • getHistoryDomainCheckList
            • getHistoryDomainRecordList
            • getHistoryDomainCheckItem
            • getHistoryDomainRecordItem
            • getHistoryDomainChart
            • getHistoryDomainRecordListV2
          • Ranking Keyword
            • setTimeToRunAutoKeyword
            • postRankingDomainHistory
            • compareProxiesDomainHistory
            • compareProxiesDomainHistoryCopy
            • getChartRankingDomainHistory
            • restartRankingDomainHistory
            • Get list of Ranking Keywords
            • createRankingKeyword
            • getRankingKeywordItem
            • updateRankingKeyword
            • deleteRankingKeyword
            • deleteRankingKeyword
            • totalRankingKeywordBranchGroup
            • Get keyword ranking metric
            • retryRankingKeyword
            • Update Order
            • Import data from Excel
            • Update Order by filter
            • deleteAllRankingKeyword
            • getRankingKeywordHistory
            • setTimeToRunAutoRanking
            • getTimeRunAutoRanking
            • Get ranking group list
          • Quản lý Keyword volume
            • 8ceaf215c302596b08d25b1e12e7ab45
            • Get maximum search volume
          • Quản lý Activities
            • getLogs
            • getLogs
            • trackingDomain
          • Manual Ranking Keyword
            • Get manual ranking keyword histories
            • Get manual ranking keyword history metric
            • GetJsonFileRanking
            • Get ranking group list
          • Quản lý Manual
            • Get list of Manual session domain
            • create manual session domain
            • Get Manual session domain
            • Update list manual session history by manual_sessions_id
            • deleteSession
            • Get list session history
            • Update manual session history by id
            • deleteSessionHistory
            • Get process of Process Manual session domain
            • Get session histories
            • Get statistics session history records
            • Get detailed session history records
            • Get Manual upload files
            • Create Manual upload files
            • Delete Manual upload files
            • deleteBulkManualUploadFiles
          • Ranking Branch
            • getRankingBranchList
            • createRankingBranch
            • getRankingBranchItem
            • updateRankingBranch
            • deleteRankingBranch
          • Ranking Group
            • getRankingGroupList
            • createRankingGroup
            • detailRankingGroup
            • updateRankingGroup
            • deleteRankingGroup
          • Reported Domains
            • getReportedDomainList
            • createReportedDomain
            • getReportedDomainItem
            • updateReportedDomain
            • deleteReportedDomain
            • deleteReportedDomain
            • deleteBulkReportedDomain
          • SearchEngine
            • getSearchEngineList
            • createSearchEngine
            • getSearchEngineItem
            • updateSearchEngine
            • deleteSearchEngine
          • Quản lý cụm Server
            • getServerList
            • createServer
            • getServerItem
            • updateServer
            • deleteServer
          • Statistics
            • getStatistics
          • Tag
            • getTagList
            • createTag
            • getTagItem
            • updateTag
            • deleteTag
            • deleteBulkTag
          • Webhook
            • Execute updateAfterRecordDomain action
            • Execute updateAfterRecordDomain action
            • Execute updateAfterRecordDomain action
            • Handle check confirm capture webhook
            • Execute updateAfterRecordDomain action
            • Execute externalRecordDomainSuccess action
            • Execute updateAfterRecordDomain action
            • Execute updateAfterRecordDomain action
            • Execute updateAfterCheckRankingDomain action
            • Execute updateDomainSearchRanking action
            • Execute updateDomainSearchRankingManual action
          • Quản lý whitelist domain block từ hệ thống
            • getWhiteListDomainBlockApiList
            • createWhiteListDomainBlockApi
            • getWhiteListDomainBlockApiItem
            • updateWhiteListDomainBlockApi
            • deleteWhiteListDomainBlockApi
            • deleteBulkWhiteListDomainBlockApi
          • Quản lý whitelist domain
            • getWhitelistDomainList
            • createWhitelistDomain
            • getWhitelistDomainList
            • getWhitelistDomainItem
            • updateWhitelistDomain
            • deleteWhitelistDomain
            • deleteWhitelistDomain
            • Import Whitelist Domains from Excel
            • deleteBulkWhitelistDomain
    • Tool Check
      • Tổng quan
      • Architecture
        • Database Schema
        • System Architecture
        • Code Structure
      • Deployment
        • Local
        • Staging
        • Product
      • API Interface
        • Public API
          • Public API
    • Tool Record
      • Tổng quan
      • Architecture
        • Database Schema
        • System Architecture
        • Code Structure
      • Deployment
        • Local
        • Staging
        • Product
      • API Interface
        • Public API
          • Task System
            • Get All Tasks
            • Create Task (List)
            • Create Task (Single)
            • Update Task
            • Delete Tasks
            • Count Processing Tasks
            • Get System Logs
            • Send single Task to Webhook
            • Send multiple Tasks to Webhooks
          • System Info
            • Root Details
            • Health Check
  1. Architecture

Code Structure

CẤU TRÚC MÃ NGUỒN: ADMIN FRONTEND (CODE STRUCTURE)#

Dự án Admin Frontend của hệ thống Check Domain được tổ chức tuân theo tiêu chuẩn Enterprise Vue Pattern. Cấu trúc này giúp phân tách rõ ràng các ranh giới giữa Giao diện (UI), Xử lý logic (Composables), Trạng thái toàn cục (State), và Tầng giao tiếp mạng (Network/API), từ đó giúp dự án dễ dàng bảo trì và mở rộng trong tương lai.

1. Sơ Đồ Cây Thư Mục Tổng Quan#

Dưới đây là kiến trúc thư mục cốt lõi của toàn bộ dự án:
admin/
├── public/                 # Các tài nguyên tĩnh không đi qua bộ Build (favicon, raw static).
├── src/                    #  THƯ MỤC LÕI SOURCE CODE (Chứa toàn bộ logic dự án)
│   ├── App.vue             # Component Root (Gốc) của toàn bộ ứng dụng.
│   ├── main.ts             # Điểm neo (Entry point), khởi tạo Vue, thiết lập Pinia, Router.
│   ├── assets/             # Chứa Images, Icons, và hệ thống Global Stylesheets (Tailwind & SCSS).
│   ├── components/         # Các Base UI Components tái sử dụng (Buttons, Modals, Cards...).
│   ├── composables/        # Custom Vue Hooks chứa các Logic tách rời dùng lại nhiều lần.
│   ├── configs/            # Configs toàn cục (Lõi axios.ts, định nghĩa color.ts, firebase config).
│   ├── layouts/            # Bố cục giao diện trang (VD: Default Layout với SideBar & Header).
│   ├── plugins/            # Cấu hình plugin Vue (VD: i18n cho đa ngôn ngữ dịch thuật).
│   ├── router/             # Nơi quản lý Vue Router (Danh sách đường dẫn, Navigation Guards).
│   ├── services/api/       #  Tầng Network: Định nghĩa toàn bộ API Requests trỏ lên Backend.
│   ├── stores/             # Các trạng thái Global Pinia (auth, user, settings).
│   ├── types/modules/      # Khai báo TypeScript Interfaces đóng vai trò Data Schema.
│   └── views/              # Chứa các giao diện (Pages) từng màn hình riêng biệt gắn vào Router.
├── package.json            # Manifest file, chứa toàn bộ npm scripts và dependencies.
├── tsconfig.json           # Cấu hình rule cho trình biên dịch TypeScript.
├── vite.config.ts          # Cấu hình quy trình Build Vite (Aliases, server port, plugins).
└── tailwind.config.ts      # Bố cục System Design Tokens của Tailwind CSS.

2. Phân Tích Chi Tiết Các Phân Hệ Lõi (Trong src/)#

Để giúp Lập trình viên mới dễ dàng nắm bắt, dưới đây là chức năng chi tiết của các thư mục quan trọng nhất bên trong src/:

Tầng Giao Diện & Bố Cục (UI Layer)#

views/: Chứa các trang (Pages) hoàn chỉnh. Mỗi file trong này thường tương ứng với một Route (đường dẫn URL) cụ thể trên trình duyệt.
layouts/: Chứa các khung giao diện bọc ngoài views. Ví dụ: DefaultLayout sẽ chứa thanh Sidebar menu và Header dùng chung cho mọi trang quản trị, phần nội dung thay đổi sẽ nằm ở giữa (slot/router-view).
components/: Chứa các mảnh ghép giao diện nhỏ (Dumb/Presentational Components) có thể tái sử dụng nhiều lần như Nút bấm (Button), Bảng (Table), Hộp thoại (Modal).

Tầng Xử Lý Logic & Trạng Thái (Logic & State Layer)#

composables/: Áp dụng triệt để sức mạnh của Vue 3 Composition API. Nơi đây chứa các hàm logic được tách rời (ví dụ: usePagination, useFormatter) để tái sử dụng ở nhiều component khác nhau mà không bị trùng lặp code.
stores/: Nơi cấu hình Pinia. Quản lý các trạng thái toàn cục (Global State) cần chia sẻ giữa nhiều component mà không cần truyền props phức tạp (Ví dụ: Trạng thái đăng nhập authStore, thông tin người dùng userStore).

Tầng Giao Tiếp Backend (Network Layer)#

configs/axios.ts: Cấu hình lõi của Axios, thiết lập Interceptors để đính kèm Token và xử lý cơ chế làm mới Token ngầm (Silent Token Refresh).
services/api/: Trung tâm giao tiếp với Backend. Phân chia thành các module rõ ràng như domains.ts, keywords.ts, users.ts... Mọi lời gọi API từ giao diện đều phải thông qua thư mục này.

🛡️ Tầng Định Nghĩa Dữ Liệu (Typing Layer)#

types/modules/: Đặc sản của TypeScript. Chứa các Interface mô phỏng chính xác (mapping 1-1) với cấu trúc cơ sở dữ liệu từ Backend trả về, đảm bảo code không bị lỗi sai kiểu dữ liệu trong quá trình dev.

3. Tầng Cấu Hình Môi Trường (Config Layer)#

Các file nằm ngoài cùng gốc dự án chịu trách nhiệm cho việc build và tiêu chuẩn code:
vite.config.ts: Quản lý các plugin tối ưu hoá, thiết lập tự động import (auto-import components/methods), cấu hình Port server dev và bí danh đường dẫn (Path Aliases như @/).
tailwind.config.ts: Khai báo hệ thống Design Tokens (Màu sắc, kích thước, font chữ) phục vụ cho việc sử dụng các class của Tailwind CSS.
Modified at 2026-03-28 02:45:21
Previous
System Architecture
Next
Local
Built with