mirror of
https://github.com/crmeb/CRMEB.git
synced 2026-10-29 05:50:50 +00:00
【程序文件】docs: 添加crmeb项目目录及核心模块结构说明文档
This commit is contained in:
parent
cdcb871dad
commit
f51f4e68c1
70
crmeb/FILE_GUIDE.md
Normal file
70
crmeb/FILE_GUIDE.md
Normal file
@ -0,0 +1,70 @@
|
||||
# crmeb 目录文件说明
|
||||
|
||||
## 目录结构概览
|
||||
```
|
||||
crmeb/
|
||||
├── app/ # 应用程序核心代码(控制器、模型、服务等)
|
||||
├── backup/ # 数据备份文件
|
||||
├── config/ # 配置文件(数据库、缓存、接口等)
|
||||
├── crmeb/ # 项目内部公共模块或扩展库
|
||||
├── public/ # Web 可访问入口(静态资源、index.php)
|
||||
├── route/ # 路由定义
|
||||
├── runtime/ # 运行时缓存、日志、Session 等(需忽略版本控制)
|
||||
│
|
||||
├── .constant # 常量定义文件(需忽略版本控制)
|
||||
├── .dockerignore # Docker 构建忽略规则
|
||||
├── .env # 环境变量配置(敏感信息)(需忽略版本控制)
|
||||
├── .env.example # 环境变量示例文件
|
||||
├── .htaccess # Apache 重写规则
|
||||
├── .phpstorm.meta.php # PhpStorm 元数据
|
||||
├── .travis.yml # Travis CI 配置
|
||||
├── .version # 版本信息
|
||||
├── Dockerfile # Docker 镜像构建文件
|
||||
├── LICENSE.txt # 开源许可协议
|
||||
├── README.md # 项目说明
|
||||
├── build.example.php # 构建示例脚本
|
||||
├── composer.json # Composer 依赖配置
|
||||
├── composer.lock # Composer 锁定版本
|
||||
├── filetree.txt # 文件树结构快照
|
||||
├── index.html # 默认首页(防访问目录)
|
||||
├── my.cnf # MySQL 自定义配置(需忽略版本控制)
|
||||
├── nginx.conf # Nginx 配置(需忽略版本控制)
|
||||
├── php-fpm.conf # PHP-FPM 配置(需忽略版本控制)
|
||||
├── php-ini-overrides.ini# PHP 自定义 ini 覆盖(需忽略版本控制)
|
||||
├── redis.conf # Redis 配置(需忽略版本控制)
|
||||
├── start.sh # 项目启动脚本(需忽略版本控制)
|
||||
├── supervisord.conf # Supervisor 进程管理配置(需忽略版本控制)
|
||||
├── think # ThinkPHP 框架入口文件
|
||||
├── vhost.conf # 虚拟主机配置(需忽略版本控制)
|
||||
└── workerman.bat # Windows 下 Workerman 启动脚本
|
||||
```
|
||||
|
||||
## 主要目录说明
|
||||
- **app/**
|
||||
存放业务逻辑的核心代码,包括控制器(Controller)、模型(Model)、服务层(Service)等,遵循 MVC 或类似分层架构。
|
||||
- **backup/**
|
||||
用于存放数据库或重要数据的备份文件,建议定期清理旧备份。
|
||||
- **config/**
|
||||
各种环境与应用配置文件,如数据库、缓存、队列、接口认证等。
|
||||
- **crmeb/**
|
||||
项目内部的公共模块或第三方 SDK 集成,可能包含一些工具类或扩展功能。
|
||||
- **public/**
|
||||
Web 服务器根目录,放置可直接通过浏览器访问的资源(如图片、JS、CSS)以及入口文件 `index.php`。
|
||||
- **route/**
|
||||
路由定义文件,用于映射 URL 请求到具体的控制器方法。
|
||||
- **runtime/**
|
||||
存放运行时生成的缓存、日志、Session 等临时数据;此目录应在 `.gitignore` 中忽略。
|
||||
|
||||
## 主要文件说明
|
||||
- **.env / .env.example**
|
||||
环境变量配置与示例,`.env` 含敏感信息,不要提交到代码库。
|
||||
- **composer.json / composer.lock**
|
||||
PHP 项目依赖管理配置与锁定文件。
|
||||
- **Dockerfile / docker-compose 相关**
|
||||
用于容器化部署的配置。
|
||||
- **my.cnf / redis.conf / nginx.conf**
|
||||
各类服务的自定义配置。
|
||||
- **start.sh**
|
||||
项目本地或服务器启动入口脚本。
|
||||
- **think**
|
||||
ThinkPHP 框架的统一入口文件,负责初始化框架并分发请求。
|
||||
@ -1,70 +1,41 @@
|
||||
### 系统目录介绍优化方案
|
||||
# app 目录结构说明
|
||||
|
||||
#### 1. 引言
|
||||
在优化系统目录介绍时,我们的目标是使目录结构更加清晰、易于理解,并突出每个目录的核心功能和作用。
|
||||
## 目录结构
|
||||
|
||||
#### 2. 目录结构优化概述
|
||||
我们将通过以下几个步骤来优化目录介绍:
|
||||
- **明确目录层级**:清晰展示主目录与子目录的关系。
|
||||
- **突出核心功能**:简要概括每个目录的主要作用和包含的文件类型。
|
||||
- **增加示例或用途说明**:对于关键目录,提供简短的示例或用途描述,帮助开发者快速理解。
|
||||
```
|
||||
.
|
||||
├── adminapi/ # 后台管理端API接口
|
||||
├── api/ # 移动端API接口
|
||||
├── dao/ # DAO层(数据访问对象)
|
||||
├── http/ # HTTP中间件
|
||||
├── jobs/ # 队列任务
|
||||
├── kefuapi/ # 客服端API接口
|
||||
├── lang/ # 语言包
|
||||
├── listener/ # 事件监听器目录
|
||||
├── model/ # Model层
|
||||
├── services/ # Services层
|
||||
├── subscribes/ # 事件订阅
|
||||
├── AppService.php # 应用服务类
|
||||
├── ExceptionHandle.php # 异常处理器
|
||||
├── Request.php # 封装Request类
|
||||
├── build.php # 构建配置
|
||||
├── common.php # 公共方法
|
||||
├── event.php # 事件配置
|
||||
├── middleware.php # 中间件配置
|
||||
├── provider.php # 容器Provider定义文件
|
||||
└── service.php # 服务配置
|
||||
```
|
||||
|
||||
#### 3. 优化后的目录介绍
|
||||
## 目录说明
|
||||
|
||||
##### app/
|
||||
- **核心目录**:存放应用程序的核心代码和资源。
|
||||
- **包含内容**:业务逻辑、控制器、模型、视图等。
|
||||
|
||||
###### app/adminapi/
|
||||
- **功能**:管理端应用控制器。
|
||||
- **用途**:处理管理端用户请求、业务逻辑和数据交互。
|
||||
- **示例**:管理员登录、权限管理等。
|
||||
|
||||
###### app/api/
|
||||
- **功能**:用户端应用控制器。
|
||||
- **用途**:处理用户端请求、业务逻辑和数据交互。
|
||||
- **示例**:用户注册、商品浏览等。
|
||||
|
||||
###### app/dao/
|
||||
- **功能**:数据访问对象(DAO)。
|
||||
- **用途**:封装数据访问操作,提供统一接口。
|
||||
- **文件类型**:类文件。
|
||||
|
||||
###### app/http/
|
||||
- **功能**:HTTP请求和响应跨域中间键。
|
||||
- **用途**:处理跨域请求,确保前后端通信顺畅。
|
||||
|
||||
###### app/jobs/
|
||||
- **功能**:消息队列任务。
|
||||
- **用途**:处理异步任务,如邮件发送、数据同步等。
|
||||
|
||||
###### app/kefuapi/
|
||||
- **功能**:客服端应用控制器。
|
||||
- **用途**:处理客服端请求、业务逻辑和数据交互。
|
||||
- **示例**:客服聊天、工单处理等。
|
||||
|
||||
###### app/lang/
|
||||
- **功能**:语言包。
|
||||
- **用途**:支持多语言功能,提供不同语言的文本资源。
|
||||
|
||||
###### app/listener/
|
||||
- **功能**:事件监听器。
|
||||
- **用途**:监听和处理系统事件,如用户登录、订单生成等。
|
||||
|
||||
###### app/model/
|
||||
- **功能**:模型类。
|
||||
- **用途**:封装数据访问操作,提供统一接口。
|
||||
- **与dao区别**:模型类更侧重于业务逻辑层面的数据操作。
|
||||
|
||||
###### app/outapi/
|
||||
- **功能**:对外接口应用控制器。
|
||||
- **用途**:处理外部系统请求、业务逻辑和数据交互。
|
||||
- **示例**:第三方支付回调、API对接等。
|
||||
|
||||
###### app/service/
|
||||
- **功能**:服务类。
|
||||
- **用途**:封装业务逻辑和数据交互操作,提供统一服务接口。
|
||||
- **示例**:用户服务、订单服务等。
|
||||
|
||||
#### 4. 结语
|
||||
通过上述优化,我们使`app`目录及其子目录的介绍更加清晰、条理分明。每个目录的核心功能和用途都得到了突出展示,有助于开发者快速理解和定位代码。同时,增加的示例和用途说明也进一步降低了理解门槛,提升了开发效率。
|
||||
- **adminapi/** - 后台管理端API接口模块
|
||||
- **api/** - 移动端API接口模块
|
||||
- **dao/** - 数据访问对象层,负责数据库操作
|
||||
- **http/** - HTTP中间件相关文件
|
||||
- **jobs/** - 异步队列任务处理
|
||||
- **kefuapi/** - 客服系统API接口
|
||||
- **lang/** - 多语言包文件
|
||||
- **listener/** - 事件监听器,处理系统事件
|
||||
- **model/** - 数据模型层,定义数据结构和业务逻辑
|
||||
- **services/** - 业务服务层,封装复杂业务逻辑
|
||||
- **subscribes/** - 事件订阅器
|
||||
@ -1,17 +1,35 @@
|
||||
crmeb/app/adminapi这个目录主要是后台管理系统的API接口文件。
|
||||
# adminapi 目录结构说明
|
||||
|
||||
具体来说:
|
||||
## 目录结构
|
||||
|
||||
- adminapi目录下的文件都是后台管理系统的控制器(Controller)文件,这些控制器被用来处理后台系统的各种请求。
|
||||
```
|
||||
.
|
||||
├── config/ # 配置目录
|
||||
├── controller/ # 控制器目录
|
||||
├── lang/ # 语言包目录
|
||||
├── middleware/ # 中间件目录
|
||||
├── route/ # 路由配置目录
|
||||
├── validate/ # 验证器目录
|
||||
├── AdminApiExceptionHandle.php # 异常处理器
|
||||
├── common.php # 公共方法
|
||||
├── event.php # 事件配置
|
||||
└── provider.php # 服务提供者
|
||||
```
|
||||
|
||||
- 每一个控制器文件对应后台管理系统某个功能模块,比如AuthController处理认证模块请求,StoreProduct处理商品模块请求等。
|
||||
## 目录说明
|
||||
|
||||
- 控制器内有各种方法,这些方法就相当于API接口,可以处理GET、POST请求,返回JSON数据。
|
||||
- **config/** - 后台管理端专用配置
|
||||
- **controller/** - 后台管理控制器,处理管理端业务逻辑
|
||||
- **lang/** - 后台管理端多语言文件
|
||||
- **middleware/** - 后台管理中间件,如权限验证、日志记录等
|
||||
- **route/** - 后台管理路由配置
|
||||
- **validate/** - 后台管理数据验证器
|
||||
|
||||
- 浏览器或APP在调用这些API接口时,会发送请求到相应的控制器方法,例如登录接口请求到Login文件的login方法。
|
||||
## 功能说明
|
||||
|
||||
- 控制器处理完请求后,通过返回Response对象返回处理结果给浏览器或APP。
|
||||
|
||||
所以简单来说,adminapi目录负责后台管理系统的所有API接口,这些接口被APP或前端调用来完成各种管理操作,如查询数据、添加修改删除等。开发者在新增后台功能时,也需要在此目录增加对应的控制器和接口。
|
||||
|
||||
它实际上负责后台系统的通信交互层,解耦了后端逻辑和前端展示,采用 RESTful规范设计。
|
||||
adminapi模块专门用于处理后台管理系统的API接口,包括:
|
||||
- 用户权限管理
|
||||
- 商品管理
|
||||
- 订单处理
|
||||
- 数据统计
|
||||
- 系统设置等后台管理功能
|
||||
@ -1,14 +0,0 @@
|
||||
.
|
||||
├── config
|
||||
├── controller
|
||||
├── lang
|
||||
├── middleware
|
||||
├── route
|
||||
├── validate
|
||||
├── AdminApiExceptionHandle.php
|
||||
├── common.php
|
||||
├── event.php
|
||||
├── filetree.txt
|
||||
└── provider.php
|
||||
|
||||
6 directories, 5 files
|
||||
@ -1,28 +1,35 @@
|
||||
crmeb/app/api目录是网站前端(非管理后台)的API接口目录。
|
||||
# api 目录结构说明
|
||||
|
||||
它与adminapi目录的区别在于:
|
||||
## 目录结构
|
||||
|
||||
- adminapi目录下的是管理后台系统的API接口
|
||||
- api目录下的是网站前端系统(手机端/微信小程序/H5等)的API接口
|
||||
```
|
||||
.
|
||||
├── config/ # 配置目录
|
||||
├── controller/ # 控制器目录
|
||||
├── lang/ # 语言包目录
|
||||
├── middleware/ # 中间件目录
|
||||
├── route/ # 路由配置目录
|
||||
├── validate/ # 验证器目录
|
||||
├── ApiExceptionHandle.php # 异常处理器
|
||||
├── common.php # 公共方法
|
||||
├── event.php # 事件配置
|
||||
└── provider.php # 服务提供者
|
||||
```
|
||||
|
||||
具体来说:
|
||||
## 目录说明
|
||||
|
||||
- api目录下也是采用控制器(Controller)方式组织接口代码
|
||||
- 每个控制器对应一个功能模块,如OrderController负责订单相关接口等
|
||||
- 接口用于前端页面的ajax请求,获取数据用于渲染
|
||||
- 接口也采用RESTful风格设计
|
||||
- **config/** - 移动端API专用配置
|
||||
- **controller/** - 移动端控制器,处理移动端业务逻辑
|
||||
- **lang/** - 移动端多语言文件
|
||||
- **middleware/** - 移动端中间件,如用户认证、请求日志等
|
||||
- **route/** - 移动端路由配置
|
||||
- **validate/** - 移动端数据验证器
|
||||
|
||||
例如:
|
||||
## 功能说明
|
||||
|
||||
- 用户注册接口在UserController的register方法
|
||||
- 获取订单列表在OrderController的lists方法
|
||||
- 支付结果通知在PayController的notify方法
|
||||
|
||||
和adminapi目录一样,api目录也通过定义清晰的接口,解耦了前后端,让前端更专注于业务展示。
|
||||
|
||||
区别在于目标用户不同:
|
||||
|
||||
- adminapi为后台管理员使用
|
||||
- api目录下的接口为前台用户(手机端、小程序端等)提供数据服务
|
||||
|
||||
所以二者都起到了前后端分离的关键作用。
|
||||
api模块专门用于处理移动端应用的API接口,包括:
|
||||
- 用户注册登录
|
||||
- 商品浏览购买
|
||||
- 订单管理
|
||||
- 支付功能
|
||||
- 个人中心等移动端功能
|
||||
@ -1,14 +0,0 @@
|
||||
.
|
||||
├── config
|
||||
├── controller
|
||||
├── lang
|
||||
├── middleware
|
||||
├── route
|
||||
├── validate
|
||||
├── ApiExceptionHandle.php
|
||||
├── common.php
|
||||
├── event.php
|
||||
├── filetree.txt
|
||||
└── provider.php
|
||||
|
||||
6 directories, 5 files
|
||||
@ -1,28 +1,143 @@
|
||||
crmeb/app/dao目录是项目数据访问对象(DAO)层的代码目录。
|
||||
# dao 目录结构说明
|
||||
|
||||
DAO层主要职责和作用如下:
|
||||
## 目录结构
|
||||
|
||||
1. 实现数据持久层访问,对数据库进行CURD操作。
|
||||
```
|
||||
.
|
||||
├── activity/ # 营销活动相关DAO
|
||||
│ ├── advance/ # 预售活动
|
||||
│ ├── bargain/ # 砍价活动
|
||||
│ ├── combination/ # 拼团活动
|
||||
│ ├── coupon/ # 优惠券
|
||||
│ ├── integral/ # 积分活动
|
||||
│ ├── live/ # 直播活动
|
||||
│ ├── lottery/ # 抽奖活动
|
||||
│ └── seckill/ # 秒杀活动
|
||||
├── agent/ # 分销代理相关DAO
|
||||
│ ├── AgentLevelDao.php # 代理等级
|
||||
│ ├── AgentLevelTaskDao.php # 代理等级任务
|
||||
│ ├── AgentLevelTaskRecordDao.php # 代理等级任务记录
|
||||
│ └── DivisionAgentApplyDao.php # 分销代理申请
|
||||
├── article/ # 文章相关DAO
|
||||
│ ├── ArticleCategoryDao.php # 文章分类
|
||||
│ ├── ArticleContentDao.php # 文章内容
|
||||
│ └── ArticleDao.php # 文章主表
|
||||
├── diy/ # 自定义页面相关DAO
|
||||
│ ├── DiyDao.php # DIY页面
|
||||
│ ├── PageCategoryDao.php # 页面分类
|
||||
│ └── PageLinkDao.php # 页面链接
|
||||
├── order/ # 订单相关DAO
|
||||
│ ├── DeliveryServiceDao.php # 配送服务
|
||||
│ ├── OtherOrderDao.php # 其他订单
|
||||
│ ├── OtherOrderStatusDao.php # 其他订单状态
|
||||
│ ├── StoreCartDao.php # 购物车
|
||||
│ ├── StoreOrderCartInfoDao.php # 订单商品信息
|
||||
│ ├── StoreOrderDao.php # 订单主表
|
||||
│ ├── StoreOrderEconomizeDao.php # 订单节省金额
|
||||
│ ├── StoreOrderInvoiceDao.php # 订单发票
|
||||
│ ├── StoreOrderRefundDao.php # 订单退款
|
||||
│ ├── StoreOrderStatusDao.php # 订单状态
|
||||
│ ├── StoreOrderStoreOrderCartInfoDao.php # 订单商品关联
|
||||
│ └── StoreOrderStoreOrderStatusDao.php # 订单状态关联
|
||||
├── other/ # 其他功能DAO
|
||||
│ ├── AgreementDao.php # 协议
|
||||
│ ├── AuxiliaryDao.php # 辅助数据
|
||||
│ ├── CacheDao.php # 缓存
|
||||
│ ├── CategoryDao.php # 分类
|
||||
│ ├── QrcodeDao.php # 二维码
|
||||
│ └── TemplateMessageDao.php # 模板消息
|
||||
├── product/ # 商品相关DAO
|
||||
│ ├── product/ # 商品主表
|
||||
│ └── sku/ # SKU管理
|
||||
├── service/ # 客服相关DAO
|
||||
│ ├── StoreServiceAuxiliaryDao.php # 客服辅助
|
||||
│ ├── StoreServiceDao.php # 客服主表
|
||||
│ ├── StoreServiceFeedbackDao.php # 客服反馈
|
||||
│ ├── StoreServiceLogDao.php # 客服日志
|
||||
│ ├── StoreServiceRecordDao.php # 客服记录
|
||||
│ └── StoreServiceSpeechcraftDao.php # 客服话术
|
||||
├── shipping/ # 物流配送相关DAO
|
||||
│ ├── ExpressDao.php # 快递公司
|
||||
│ ├── ShippingTemplatesDao.php # 运费模板
|
||||
│ ├── ShippingTemplatesFreeCityDao.php # 运费模板免费城市
|
||||
│ ├── ShippingTemplatesFreeDao.php # 运费模板免费设置
|
||||
│ ├── ShippingTemplatesNoDeliveryCityDao.php # 运费模板不配送城市
|
||||
│ ├── ShippingTemplatesNoDeliveryDao.php # 运费模板不配送设置
|
||||
│ ├── ShippingTemplatesRegionCityDao.php # 运费模板区域城市
|
||||
│ ├── ShippingTemplatesRegionDao.php # 运费模板区域
|
||||
│ └── SystemCityDao.php # 系统城市
|
||||
├── sms/ # 短信相关DAO
|
||||
│ ├── SmsAdminDao.php # 短信管理
|
||||
│ └── SmsRecordDao.php # 短信记录
|
||||
├── system/ # 系统相关DAO
|
||||
│ ├── admin/ # 管理员
|
||||
│ ├── attachment/ # 附件
|
||||
│ ├── config/ # 配置
|
||||
│ ├── log/ # 日志
|
||||
│ ├── statistics/ # 统计
|
||||
│ ├── store/ # 店铺
|
||||
│ ├── AppVersionDao.php # 应用版本
|
||||
│ ├── MessageSystemDao.php # 系统消息
|
||||
│ ├── SystemMenusDao.php # 系统菜单
|
||||
│ ├── SystemNotificationDao.php # 系统通知
|
||||
│ └── SystemUserLevelDao.php # 系统用户等级
|
||||
├── user/ # 用户相关DAO
|
||||
│ ├── MemberCardBatchDao.php # 会员卡批次
|
||||
│ ├── MemberCardDao.php # 会员卡
|
||||
│ ├── MemberRightDao.php # 会员权益
|
||||
│ ├── MemberShipDao.php # 会员关系
|
||||
│ ├── UserAddressDao.php # 用户地址
|
||||
│ ├── UserAuthDao.php # 用户认证
|
||||
│ ├── UserBillDao.php # 用户账单
|
||||
│ ├── UserBillStoreOrderDao.php # 用户账单订单关联
|
||||
│ ├── UserBrokerageDao.php # 用户佣金
|
||||
│ ├── UserBrokerageFrozenDao.php # 用户冻结佣金
|
||||
│ ├── UserCancelDao.php # 用户注销
|
||||
│ ├── UserDao.php # 用户主表
|
||||
│ ├── UserExtractDao.php # 用户提现
|
||||
│ ├── UserFriendsDao.php # 用户好友
|
||||
│ ├── UserGroupDao.php # 用户分组
|
||||
│ ├── UserInvoiceDao.php # 用户发票
|
||||
│ ├── UserLabelCateDao.php # 用户标签分类
|
||||
│ ├── UserLabelDao.php # 用户标签
|
||||
│ ├── UserLabelRelationDao.php # 用户标签关系
|
||||
│ ├── UserLevelDao.php # 用户等级
|
||||
│ ├── UserMoneyDao.php # 用户余额
|
||||
│ ├── UserRechargeDao.php # 用户充值
|
||||
│ ├── UserSearchDao.php # 用户搜索
|
||||
│ ├── UserSignDao.php # 用户签到
|
||||
│ ├── UserSpreadDao.php # 用户推广
|
||||
│ ├── UserStoreOrderDao.php # 用户订单关联
|
||||
│ ├── UserTaskFinishDao.php # 用户任务完成
|
||||
│ ├── UserUserBillDao.php # 用户账单关联
|
||||
│ ├── UserUserBrokerageDao.php # 用户佣金关联
|
||||
│ ├── UserVisitDao.php # 用户访问
|
||||
│ └── UserWechatUserDao.php # 用户微信关联
|
||||
├── wechat/ # 微信相关DAO
|
||||
│ ├── WechatKeyDao.php # 微信密钥
|
||||
│ ├── WechatMediaDao.php # 微信媒体
|
||||
│ ├── WechatMenuDao.php # 微信菜单
|
||||
│ ├── WechatMessageDao.php # 微信消息
|
||||
│ ├── WechatNewsCategoryDao.php # 微信图文分类
|
||||
│ ├── WechatQrcodeCateDao.php # 微信二维码分类
|
||||
│ ├── WechatQrcodeDao.php # 微信二维码
|
||||
│ ├── WechatQrcodeRecordDao.php # 微信二维码记录
|
||||
│ ├── WechatReplyDao.php # 微信回复
|
||||
│ ├── WechatReplyKeyDao.php # 微信回复关键词
|
||||
│ └── WechatUserDao.php # 微信用户
|
||||
├── BaseDao.php # DAO基类
|
||||
└── readme.md # 目录说明文件
|
||||
```
|
||||
|
||||
2. 依赖数据库连接,实现对表的基本增删改查功能。
|
||||
## 功能说明
|
||||
|
||||
3. 封装数据库操作原语(查询,插入,更新等),简化开发难度。
|
||||
dao(数据访问对象)层负责数据库操作,封装了所有业务模块的数据访问逻辑:
|
||||
|
||||
4. 与数据库解藕,提供统一接口,便于扩展和维护。
|
||||
- **活动模块** - 管理各种营销活动的数据访问
|
||||
- **代理模块** - 处理分销代理相关的数据操作
|
||||
- **订单模块** - 订单数据的增删改查
|
||||
- **用户模块** - 用户信息管理和操作
|
||||
- **商品模块** - 商品数据管理
|
||||
- **系统模块** - 系统配置和数据管理
|
||||
|
||||
具体来说:
|
||||
|
||||
- dao目录下每个文件对应一个数据表或业务模块
|
||||
- 文件内封装了对表基本操作的方法,如查找,插入,更新等
|
||||
- 方法的参数和返回值类型为模型对象(Model),实现数据和业务的解耦
|
||||
- 提供丰富的查询条件以方便调用
|
||||
- 底层利用ThinkPHP的ActiveRecord实现数据操作
|
||||
|
||||
使用DAO层的好处:
|
||||
|
||||
- 提供对象化的数据操作接口
|
||||
- 屏蔽数据库差异,提高移植性
|
||||
- 方便测试和扩展
|
||||
- 实现业务和数据层的分离
|
||||
|
||||
所以该目录负责项目的底层数据操作,其他业务需要调用它来操作数据库。
|
||||
DAO层提供统一的数据访问接口,确保数据操作的一致性和安全性。
|
||||
@ -1,126 +0,0 @@
|
||||
.
|
||||
├── activity
|
||||
│ ├── advance
|
||||
│ ├── bargain
|
||||
│ ├── combination
|
||||
│ ├── coupon
|
||||
│ ├── integral
|
||||
│ ├── live
|
||||
│ ├── lottery
|
||||
│ └── seckill
|
||||
├── agent
|
||||
│ ├── AgentLevelDao.php
|
||||
│ ├── AgentLevelTaskDao.php
|
||||
│ ├── AgentLevelTaskRecordDao.php
|
||||
│ └── DivisionAgentApplyDao.php
|
||||
├── article
|
||||
│ ├── ArticleCategoryDao.php
|
||||
│ ├── ArticleContentDao.php
|
||||
│ └── ArticleDao.php
|
||||
├── diy
|
||||
│ ├── DiyDao.php
|
||||
│ ├── PageCategoryDao.php
|
||||
│ └── PageLinkDao.php
|
||||
├── order
|
||||
│ ├── DeliveryServiceDao.php
|
||||
│ ├── OtherOrderDao.php
|
||||
│ ├── OtherOrderStatusDao.php
|
||||
│ ├── StoreCartDao.php
|
||||
│ ├── StoreOrderCartInfoDao.php
|
||||
│ ├── StoreOrderDao.php
|
||||
│ ├── StoreOrderEconomizeDao.php
|
||||
│ ├── StoreOrderInvoiceDao.php
|
||||
│ ├── StoreOrderRefundDao.php
|
||||
│ ├── StoreOrderStatusDao.php
|
||||
│ ├── StoreOrderStoreOrderCartInfoDao.php
|
||||
│ └── StoreOrderStoreOrderStatusDao.php
|
||||
├── other
|
||||
│ ├── AgreementDao.php
|
||||
│ ├── AuxiliaryDao.php
|
||||
│ ├── CacheDao.php
|
||||
│ ├── CategoryDao.php
|
||||
│ ├── QrcodeDao.php
|
||||
│ └── TemplateMessageDao.php
|
||||
├── product
|
||||
│ ├── product
|
||||
│ └── sku
|
||||
├── service
|
||||
│ ├── StoreServiceAuxiliaryDao.php
|
||||
│ ├── StoreServiceDao.php
|
||||
│ ├── StoreServiceFeedbackDao.php
|
||||
│ ├── StoreServiceLogDao.php
|
||||
│ ├── StoreServiceRecordDao.php
|
||||
│ └── StoreServiceSpeechcraftDao.php
|
||||
├── shipping
|
||||
│ ├── ExpressDao.php
|
||||
│ ├── ShippingTemplatesDao.php
|
||||
│ ├── ShippingTemplatesFreeCityDao.php
|
||||
│ ├── ShippingTemplatesFreeDao.php
|
||||
│ ├── ShippingTemplatesNoDeliveryCityDao.php
|
||||
│ ├── ShippingTemplatesNoDeliveryDao.php
|
||||
│ ├── ShippingTemplatesRegionCityDao.php
|
||||
│ ├── ShippingTemplatesRegionDao.php
|
||||
│ └── SystemCityDao.php
|
||||
├── sms
|
||||
│ ├── SmsAdminDao.php
|
||||
│ └── SmsRecordDao.php
|
||||
├── system
|
||||
│ ├── admin
|
||||
│ ├── attachment
|
||||
│ ├── config
|
||||
│ ├── log
|
||||
│ ├── statistics
|
||||
│ ├── store
|
||||
│ ├── AppVersionDao.php
|
||||
│ ├── MessageSystemDao.php
|
||||
│ ├── SystemMenusDao.php
|
||||
│ ├── SystemNotificationDao.php
|
||||
│ └── SystemUserLevelDao.php
|
||||
├── user
|
||||
│ ├── MemberCardBatchDao.php
|
||||
│ ├── MemberCardDao.php
|
||||
│ ├── MemberRightDao.php
|
||||
│ ├── MemberShipDao.php
|
||||
│ ├── UserAddressDao.php
|
||||
│ ├── UserAuthDao.php
|
||||
│ ├── UserBillDao.php
|
||||
│ ├── UserBillStoreOrderDao.php
|
||||
│ ├── UserBrokerageDao.php
|
||||
│ ├── UserBrokerageFrozenDao.php
|
||||
│ ├── UserCancelDao.php
|
||||
│ ├── UserDao.php
|
||||
│ ├── UserExtractDao.php
|
||||
│ ├── UserFriendsDao.php
|
||||
│ ├── UserGroupDao.php
|
||||
│ ├── UserInvoiceDao.php
|
||||
│ ├── UserLabelCateDao.php
|
||||
│ ├── UserLabelDao.php
|
||||
│ ├── UserLabelRelationDao.php
|
||||
│ ├── UserLevelDao.php
|
||||
│ ├── UserMoneyDao.php
|
||||
│ ├── UserRechargeDao.php
|
||||
│ ├── UserSearchDao.php
|
||||
│ ├── UserSignDao.php
|
||||
│ ├── UserSpreadDao.php
|
||||
│ ├── UserStoreOrderDao.php
|
||||
│ ├── UserTaskFinishDao.php
|
||||
│ ├── UserUserBillDao.php
|
||||
│ ├── UserUserBrokerageDao.php
|
||||
│ ├── UserVisitDao.php
|
||||
│ └── UserWechatUserDao.php
|
||||
├── wechat
|
||||
│ ├── WechatKeyDao.php
|
||||
│ ├── WechatMediaDao.php
|
||||
│ ├── WechatMenuDao.php
|
||||
│ ├── WechatMessageDao.php
|
||||
│ ├── WechatNewsCategoryDao.php
|
||||
│ ├── WechatQrcodeCateDao.php
|
||||
│ ├── WechatQrcodeDao.php
|
||||
│ ├── WechatQrcodeRecordDao.php
|
||||
│ ├── WechatReplyDao.php
|
||||
│ ├── WechatReplyKeyDao.php
|
||||
│ └── WechatUserDao.php
|
||||
├── BaseDao.php
|
||||
└── filetree.txt
|
||||
|
||||
29 directories, 95 files
|
||||
@ -1,24 +0,0 @@
|
||||
.
|
||||
├── adminapi //后台管理端API接口
|
||||
├── api //移动端API接口
|
||||
├── dao //dao层
|
||||
├── http //中间件
|
||||
├── jobs //队列
|
||||
├── kefuapi //客服端API接口
|
||||
├── lang //语言包
|
||||
├── listener //事件目录
|
||||
├── model //model层
|
||||
├── services //services层
|
||||
├── subscribes //订阅事件
|
||||
├── AppService.php //
|
||||
├── ExceptionHandle.php //异常处理
|
||||
├── Request.php //封装request类
|
||||
├── build.php //
|
||||
├── common.php //公共方法
|
||||
├── event.php //事件配置
|
||||
├── middleware.php //中间件
|
||||
├── provider.php //容器Provider定义文件
|
||||
├── service.php
|
||||
└── filetree.txt //目录说明
|
||||
|
||||
11 directories, 12 files
|
||||
@ -0,0 +1,24 @@
|
||||
# http 目录结构说明
|
||||
|
||||
## 目录结构
|
||||
|
||||
```
|
||||
:.
|
||||
├── middleware/ # 全局中间件目录
|
||||
│ ├── AllowOriginMiddleware.php # 跨域请求中间件
|
||||
│ └── BaseMiddleware.php # 中间件基类
|
||||
└── README.md # 目录说明文件
|
||||
```
|
||||
|
||||
## 目录说明
|
||||
|
||||
- **middleware/** - 全局HTTP中间件目录,包含跨域请求处理和中间件基类
|
||||
|
||||
## 功能说明
|
||||
|
||||
http目录包含应用全局的HTTP中间件:
|
||||
|
||||
- **跨域中间件** - 处理跨域请求,允许指定域名访问API
|
||||
- **中间件基类** - 定义中间件的基础抽象类
|
||||
|
||||
这些中间件对所有应用模块生效,提供统一的请求处理和响应过滤功能。
|
||||
@ -1,29 +1,80 @@
|
||||
crmeb/app/jobs目录是CRMEB项目队列任务类的代码目录。
|
||||
# jobs 目录结构说明
|
||||
|
||||
队列任务在项目开发中有以下几个重要作用:
|
||||
## 目录结构
|
||||
|
||||
1. 异步处理。可以将一些耗时较长的任务放入队列以异步处理,不阻塞主线程。
|
||||
```
|
||||
:.
|
||||
├── notice/ # 通知相关任务目录
|
||||
│ ├── EnterpriseWechatJob.php # 企业微信通知任务
|
||||
│ ├── PrintJob.php # 小票打印任务
|
||||
│ ├── SmsJob.php # 短信通知任务
|
||||
│ └── SyncMessageJob.php # 同步消息任务
|
||||
├── AgentJob.php # 代理相关任务
|
||||
├── AutoCommentJob.php # 自动评论任务
|
||||
├── CheckQueueJob.php # 队列检查任务
|
||||
├── LiveJob.php # 直播相关任务
|
||||
├── MiniOrderJob.php # 小程序订单任务
|
||||
├── OrderCreateAfterJob.php # 订单创建后任务
|
||||
├── OrderExpressJob.php # 订单物流任务
|
||||
├── OrderInvoiceJob.php # 订单发票任务
|
||||
├── OrderJob.php # 订单处理主任务
|
||||
├── OtherOrderJob.php # 其他订单任务
|
||||
├── OutPushJob.php # 外部推送任务
|
||||
├── PinkJob.php # 拼团任务
|
||||
├── PosterJob.php # 海报生成任务
|
||||
├── ProductCopyJob.php # 商品复制任务
|
||||
├── ProductLogJob.php # 商品日志任务
|
||||
├── ProductStockJob.php # 商品库存任务
|
||||
├── RefundOrderJob.php # 退款订单任务
|
||||
├── TakeOrderJob.php # 接单任务
|
||||
├── TaskJob.php # 定时任务
|
||||
├── TemplateJob.php # 模板消息任务
|
||||
├── TranslateJob.php # 翻译任务
|
||||
├── UnpaidOrderCancelJob.php # 未支付订单取消任务
|
||||
├── UnpaidOrderSend.php # 未支付订单发送任务
|
||||
├── UpgradeJob.php # 升级任务
|
||||
├── UserJob.php # 用户相关任务
|
||||
└── README.md # 目录说明文件
|
||||
```
|
||||
|
||||
2. 延迟处理。可以指定队列任务在一定时间后异步执行,比如发送短信或邮件。
|
||||
## 目录说明
|
||||
|
||||
3. 分布处理。可以将队列任务分布到不同服务器进行处理,提高服务器使用效率。
|
||||
- **notice/** - 通知相关任务,处理短信、微信、企业微信、小票打印等通知
|
||||
- **AgentJob.php** - 代理相关异步任务
|
||||
- **AutoCommentJob.php** - 自动评论任务
|
||||
- **CheckQueueJob.php** - 队列检查任务
|
||||
- **LiveJob.php** - 直播相关任务
|
||||
- **MiniOrderJob.php** - 小程序订单任务
|
||||
- **OrderCreateAfterJob.php** - 订单创建后的异步处理任务
|
||||
- **OrderExpressJob.php** - 订单物流相关任务
|
||||
- **OrderInvoiceJob.php** - 订单发票相关任务
|
||||
- **OrderJob.php** - 订单主任务类
|
||||
- **OtherOrderJob.php** - 其他类型订单任务
|
||||
- **OutPushJob.php** - 外部系统推送任务
|
||||
- **PinkJob.php** - 拼团活动相关任务
|
||||
- **PosterJob.php** - 海报生成任务
|
||||
- **ProductCopyJob.php** - 商品复制任务
|
||||
- **ProductLogJob.php** - 商品日志记录任务
|
||||
- **ProductStockJob.php** - 商品库存同步任务
|
||||
- **RefundOrderJob.php** - 退款订单处理任务
|
||||
- **TakeOrderJob.php** - 订单核销任务
|
||||
- **TaskJob.php** - 定时任务调度
|
||||
- **TemplateJob.php** - 模板消息发送任务
|
||||
- **TranslateJob.php** - 商品翻译任务
|
||||
- **UnpaidOrderCancelJob.php** - 未支付订单自动取消任务
|
||||
- **UnpaidOrderSend.php** - 未支付订单提醒发送任务
|
||||
- **UpgradeJob.php** - 系统升级任务
|
||||
- **UserJob.php** - 用户相关异步任务
|
||||
|
||||
此目录下主要包含以下内容:
|
||||
## 功能说明
|
||||
|
||||
- 每个任务类对应一个业务任务,实现Job接口。
|
||||
jobs目录包含所有异步队列任务,用于处理耗时较长的操作:
|
||||
|
||||
- 任务类内定义具体任务业务逻辑,如发送短信/邮件等。
|
||||
- **通知类任务** - 发送短信、微信模板消息、企业微信通知、小票打印等
|
||||
- **订单类任务** - 订单创建后的处理、未支付订单取消、物流查询、发票开具、核销等
|
||||
- **商品类任务** - 商品复制、商品日志记录、库存同步、商品翻译等
|
||||
- **用户类任务** - 用户相关异步操作
|
||||
- **营销类任务** - 拼团活动处理、海报生成等
|
||||
- **系统类任务** - 定时任务、系统升级、队列检查等
|
||||
|
||||
- 通过Broker进行任务的发送和异步处理。
|
||||
|
||||
- 支持任务延时、失败重试等功能。
|
||||
|
||||
使用队列可以使得项目性能更优:
|
||||
|
||||
- 阻塞任务剥离出来异步执行。
|
||||
|
||||
- 分布式下每个任务独立运行,不阻塞其他进程。
|
||||
|
||||
- 通过Broker复用同一服务,且伸缩性好。
|
||||
|
||||
所以此目录负责项目中所有异步任务的编写和调度,起到优化系统性能和扩展能力的重要作用。
|
||||
这些任务通过消息队列异步执行,提高系统响应速度和并发处理能力。
|
||||
|
||||
@ -1,26 +0,0 @@
|
||||
.
|
||||
├── notice
|
||||
│ ├── EnterpriseWechatJob.php
|
||||
│ ├── PrintJob.php
|
||||
│ └── SmsJob.php
|
||||
├── AgentJob.php
|
||||
├── AutoCommentJob.php
|
||||
├── LiveJob.php
|
||||
├── OrderCreateAfterJob.php
|
||||
├── OrderJob.php
|
||||
├── OtherOrderJob.php
|
||||
├── PinkJob.php
|
||||
├── PosterJob.php
|
||||
├── ProductCopyJob.php
|
||||
├── ProductLogJob.php
|
||||
├── RoutineTemplateJob.php
|
||||
├── TakeOrderJob.php
|
||||
├── TaskJob.php
|
||||
├── TemplateJob.php
|
||||
├── UnpaidOrderCancelJob.php
|
||||
├── UnpaidOrderSend.php
|
||||
├── UserJob.php
|
||||
├── WechatTemplateJob.php
|
||||
└── filetree.txt
|
||||
|
||||
1 directory, 22 files
|
||||
@ -1,33 +1,46 @@
|
||||
crmeb/app/kefuapi这个目录是用来放置客服相关接口的。
|
||||
# kefuapi 目录结构说明
|
||||
|
||||
主要作用和特征:
|
||||
## 目录结构
|
||||
|
||||
1. 提供客服系统与商城前后端交互的API接口。
|
||||
```
|
||||
:.
|
||||
├── config/ # 配置目录
|
||||
├── controller/ # 控制器目录
|
||||
├── middleware/ # 中间件目录
|
||||
├── route/ # 路由配置目录
|
||||
├── validate/ # 验证器目录
|
||||
├── KefuApiExceptionHandle.php # 异常处理器
|
||||
├── provider.php # 服务提供者
|
||||
└── README.md # 目录说明文件
|
||||
```
|
||||
|
||||
2. 接口主要用于聊天记录的增删改查以及发送消息等功能。
|
||||
## 目录说明
|
||||
|
||||
3. 使用ThinkPHP的Restful风格定义接口请求方式和参数。
|
||||
- **config/** - 客服API专用配置
|
||||
- **controller/** - 客服API控制器,处理客服业务逻辑
|
||||
- **middleware/** - 客服API中间件
|
||||
- **route/** - 客服API路由配置
|
||||
- **validate/** - 客服API数据验证器
|
||||
- **KefuApiExceptionHandle.php** - 客服API异常处理器
|
||||
- **provider.php** - 客服API服务提供者
|
||||
|
||||
4. 接口供移动端APP和PC网站调用实现客服聊天功能。
|
||||
## 功能说明
|
||||
|
||||
5. 后台也可以调用相关接口对客服记录进行管理。
|
||||
kefuapi模块专门用于处理客服系统的API接口:
|
||||
|
||||
具体包含:
|
||||
- 提供客服系统与商城前后端交互的API接口
|
||||
- 接口主要用于聊天记录的增删改查以及发送消息等功能
|
||||
- 使用ThinkPHP的Restful风格定义接口请求方式和参数
|
||||
- 接口供移动端APP和PC网站调用实现客服聊天功能
|
||||
- 后台也可以调用相关接口对客服记录进行管理
|
||||
|
||||
- 控制器定义各API接口方法接受请求。
|
||||
具体包含:
|
||||
- 控制器定义各API接口方法接受请求
|
||||
- 业务处理逻辑以及与数据库的交互
|
||||
- 数据验证和结果输出
|
||||
|
||||
- 业务处理逻辑以及与数据库的交互。
|
||||
|
||||
- 数据验证和结果输出。
|
||||
|
||||
使用这个目录定义的客服API,可以:
|
||||
|
||||
- 商城各端实现在线客服功能。
|
||||
|
||||
- 查看历史记录。
|
||||
|
||||
- 服务端管理客服信息。
|
||||
|
||||
- 第三方也可以实现其它客服系统对接。
|
||||
|
||||
所以总之,此目录主要对客服系统开放API接口,便于商城多端整合用户支持体系。
|
||||
使用这个目录定义的客服API可以:
|
||||
- 商城各端实现在线客服功能
|
||||
- 查看历史聊天记录
|
||||
- 服务端管理客服信息
|
||||
- 第三方实现其它客服系统对接
|
||||
|
||||
@ -1,29 +1,66 @@
|
||||
crmeb/app/listener目录用来定义项目的事件监听器。
|
||||
# listener 目录结构说明
|
||||
|
||||
在ThinkPHP框架中,事件监听器是一个重要的机制。它可以用于:
|
||||
## 目录结构
|
||||
|
||||
- 项目运行过程中的各个时间点自动调用指定的监听方法。
|
||||
```
|
||||
:.
|
||||
├── admin/ # 管理员相关监听器目录
|
||||
│ └── AdminLoginListener.php # 管理员登录监听器
|
||||
├── http/ # HTTP相关监听器目录
|
||||
│ └── HttpEndListener.php # HTTP请求结束监听器
|
||||
├── notice/ # 通知相关监听器目录
|
||||
│ ├── CustomNoticeListener.php # 自定义通知监听器
|
||||
│ └── NoticeListener.php # 通知监听器主类
|
||||
├── order/ # 订单相关监听器目录
|
||||
│ ├── OrderCreateAfterListener.php # 订单创建后监听器
|
||||
│ ├── OrderDeliveryListener.php # 订单配送监听器
|
||||
│ ├── OrderPaySuccessListener.php # 订单支付成功监听器
|
||||
│ ├── OrderRefundCancelAfterListener.php # 订单退款取消后监听器
|
||||
│ ├── OrderRefundCreateAfterListener.php # 订单退款创建后监听器
|
||||
│ ├── OrderShippingListener.php # 订单发货监听器
|
||||
│ └── OrderTakeListener.php # 订单核销监听器
|
||||
├── out/ # 外部推送监听器目录
|
||||
│ └── OutPushListener.php # 外部推送监听器
|
||||
├── pay/ # 支付相关监听器目录
|
||||
│ └── NotifyListener.php # 支付回调监听器
|
||||
├── queue/ # 队列相关监听器目录
|
||||
│ └── QueueStartListener.php # 队列开始监听器
|
||||
├── user/ # 用户相关监听器目录
|
||||
│ ├── LoginListener.php # 用户登录监听器
|
||||
│ ├── RegisterListener.php # 用户注册监听器
|
||||
│ ├── UserLevelListener.php # 用户等级监听器
|
||||
│ └── UserVisitListener.php # 用户访问监听器
|
||||
├── wechat/ # 微信相关监听器目录
|
||||
│ └── AuthListener.php # 微信授权监听器
|
||||
├── CustomEventListener.php # 自定义事件监听器
|
||||
└── README.md # 目录说明文件
|
||||
```
|
||||
|
||||
- 监听特定事物(如请求、响应等)发生后自动执行回调。
|
||||
## 目录说明
|
||||
|
||||
- 监听其它模块触发的事件,实现扩展钩子函数。
|
||||
- **admin/** - 管理员相关事件监听器
|
||||
- **http/** - HTTP请求生命周期事件监听器
|
||||
- **notice/** - 通知发送事件监听器
|
||||
- **order/** - 订单状态变化事件监听器
|
||||
- **out/** - 外部推送事件监听器
|
||||
- **pay/** - 支付回调事件监听器
|
||||
- **queue/** - 队列执行事件监听器
|
||||
- **user/** - 用户行为事件监听器
|
||||
- **wechat/** - 微信相关事件监听器
|
||||
- **CustomEventListener.php** - 自定义事件监听器
|
||||
|
||||
具体来说:
|
||||
## 功能说明
|
||||
|
||||
- 监听器类实现接口定义监听方法。
|
||||
listener目录包含事件监听器,用于响应系统事件:
|
||||
|
||||
- 方法内可以完成业务逻辑,也可以触发下一个监听器。
|
||||
- **HTTP事件监听** - 监听HTTP请求生命周期事件,如请求结束
|
||||
- **订单事件监听** - 监听订单创建、支付成功、配送、发货、退款、核销等状态变化
|
||||
- **用户事件监听** - 监听用户登录、注册、等级变化、访问记录等
|
||||
- **通知事件监听** - 监听通知发送事件,触发短信、微信模板消息等
|
||||
- **支付事件监听** - 监听支付回调事件,处理支付结果
|
||||
- **微信事件监听** - 监听微信授权、OAuth等事件
|
||||
- **队列事件监听** - 监听队列执行相关事件
|
||||
- **管理员事件监听** - 监听管理员登录等事件
|
||||
- **外部推送事件监听** - 监听外部系统推送事件
|
||||
|
||||
- 监听器在配置中注册,在特定点自动调用定义的回调方法。
|
||||
|
||||
- 常见监听点有请求开始、响应结束等生命周期点。
|
||||
|
||||
这种设计可以:
|
||||
|
||||
- 实现跨模块调用无需依赖。
|
||||
|
||||
- 解耦业务和基础模块。
|
||||
|
||||
- 让第三方功能易于插拔扩展。
|
||||
|
||||
所以此目录定义的就是项目各种事件监听回调,起到系统级的扩展与定制作用。
|
||||
监听器采用观察者模式,实现系统解耦和异步处理,提高代码的可维护性和扩展性。
|
||||
|
||||
@ -1,21 +0,0 @@
|
||||
.
|
||||
├── http
|
||||
│ └── HttpEnd.php
|
||||
├── notice
|
||||
│ └── Notice.php
|
||||
├── order
|
||||
│ ├── OrderCreateAfter.php
|
||||
│ ├── OrderDelivery.php
|
||||
│ ├── OrderPaySuccess.php
|
||||
│ ├── OrderRefund.php
|
||||
│ └── OrderTake.php
|
||||
├── user
|
||||
│ ├── Login.php
|
||||
│ ├── Register.php
|
||||
│ ├── UserLevel.php
|
||||
│ └── UserVisit.php
|
||||
├── wechat
|
||||
│ └── Auth.php
|
||||
└── filetree.txt
|
||||
|
||||
5 directories, 13 files
|
||||
@ -1,33 +1,127 @@
|
||||
crmeb/app/model目录用于定义项目的数据模型类。
|
||||
# model 目录结构说明
|
||||
|
||||
数据模型类的主要作用和特征有:
|
||||
## 目录结构
|
||||
|
||||
1. 每个模型类对应数据库中的一张表。
|
||||
```
|
||||
.
|
||||
├── activity/ # 营销活动相关Model
|
||||
│ ├── advance/ # 预售活动
|
||||
│ ├── bargain/ # 砍价活动
|
||||
│ ├── combination/ # 拼团活动
|
||||
│ ├── coupon/ # 优惠券
|
||||
│ ├── integral/ # 积分活动
|
||||
│ ├── live/ # 直播活动
|
||||
│ ├── lottery/ # 抽奖活动
|
||||
│ └── seckill/ # 秒杀活动
|
||||
├── agent/ # 分销代理相关Model
|
||||
│ ├── AgentLevel.php # 代理等级
|
||||
│ ├── AgentLevelTask.php # 代理等级任务
|
||||
│ ├── AgentLevelTaskRecord.php # 代理等级任务记录
|
||||
│ └── DivisionAgentApply.php # 分销代理申请
|
||||
├── article/ # 文章相关Model
|
||||
│ ├── Article.php # 文章主表
|
||||
│ ├── ArticleCategory.php # 文章分类
|
||||
│ └── ArticleContent.php # 文章内容
|
||||
├── diy/ # 自定义页面相关Model
|
||||
│ ├── Diy.php # DIY页面
|
||||
│ ├── PageCategory.php # 页面分类
|
||||
│ └── PageLink.php # 页面链接
|
||||
├── order/ # 订单相关Model
|
||||
│ ├── DeliveryService.php # 配送服务
|
||||
│ ├── OtherOrder.php # 其他订单
|
||||
│ ├── OtherOrderStatus.php # 其他订单状态
|
||||
│ ├── StoreCart.php # 购物车
|
||||
│ ├── StoreOrder.php # 订单主表
|
||||
│ ├── StoreOrderCartInfo.php # 订单商品信息
|
||||
│ ├── StoreOrderEconomize.php # 订单节省金额
|
||||
│ ├── StoreOrderInvoice.php # 订单发票
|
||||
│ ├── StoreOrderRefund.php # 订单退款
|
||||
│ ├── StoreOrderStatus.php # 订单状态
|
||||
│ └── StorePink.php # 拼团订单
|
||||
├── other/ # 其他功能Model
|
||||
│ ├── Agreement.php # 协议
|
||||
│ ├── Auxiliary.php # 辅助数据
|
||||
│ ├── Cache.php # 缓存
|
||||
│ ├── Category.php # 分类
|
||||
│ ├── Express.php # 快递
|
||||
│ ├── Qrcode.php # 二维码
|
||||
│ └── TemplateMessage.php # 模板消息
|
||||
├── product/ # 商品相关Model
|
||||
│ ├── product/ # 商品主表
|
||||
│ └── sku/ # SKU管理
|
||||
├── service/ # 客服相关Model
|
||||
│ ├── StoreService.php # 客服主表
|
||||
│ ├── StoreServiceFeedback.php # 客服反馈
|
||||
│ ├── StoreServiceLog.php # 客服日志
|
||||
│ ├── StoreServiceRecord.php # 客服记录
|
||||
│ └── StoreServiceSpeechcraft.php # 客服话术
|
||||
├── shipping/ # 物流配送相关Model
|
||||
│ ├── ShippingTemplates.php # 运费模板
|
||||
│ ├── ShippingTemplatesFree.php # 运费模板免费设置
|
||||
│ ├── ShippingTemplatesNoDelivery.php # 运费模板不配送设置
|
||||
│ ├── ShippingTemplatesRegion.php # 运费模板区域
|
||||
│ └── SystemCity.php # 系统城市
|
||||
├── sms/ # 短信相关Model
|
||||
│ └── SmsRecord.php # 短信记录
|
||||
├── system/ # 系统相关Model
|
||||
│ ├── admin/ # 管理员
|
||||
│ ├── attachment/ # 附件
|
||||
│ ├── config/ # 配置
|
||||
│ ├── log/ # 日志
|
||||
│ ├── statistics/ # 统计
|
||||
│ ├── store/ # 店铺
|
||||
│ ├── AppVersion.php # 应用版本
|
||||
│ ├── MessageSystem.php # 系统消息
|
||||
│ ├── SystemMenus.php # 系统菜单
|
||||
│ ├── SystemNotification.php # 系统通知
|
||||
│ ├── SystemUserLevel.php # 系统用户等级
|
||||
│ └── SystemUserTask.php # 系统用户任务
|
||||
├── user/ # 用户相关Model
|
||||
│ ├── MemberCard.php # 会员卡
|
||||
│ ├── MemberCardBatch.php # 会员卡批次
|
||||
│ ├── MemberRight.php # 会员权益
|
||||
│ ├── MemberShip.php # 会员关系
|
||||
│ ├── User.php # 用户主表
|
||||
│ ├── UserAddress.php # 用户地址
|
||||
│ ├── UserBill.php # 用户账单
|
||||
│ ├── UserBrokerage.php # 用户佣金
|
||||
│ ├── UserBrokerageFrozen.php # 用户冻结佣金
|
||||
│ ├── UserCancel.php # 用户注销
|
||||
│ ├── UserExtract.php # 用户提现
|
||||
│ ├── UserFriends.php # 用户好友
|
||||
│ ├── UserGroup.php # 用户分组
|
||||
│ ├── UserInvoice.php # 用户发票
|
||||
│ ├── UserLabel.php # 用户标签
|
||||
│ ├── UserLabelCate.php # 用户标签分类
|
||||
│ ├── UserLabelRelation.php # 用户标签关系
|
||||
│ ├── UserLevel.php # 用户等级
|
||||
│ ├── UserMoney.php # 用户余额
|
||||
│ ├── UserRecharge.php # 用户充值
|
||||
│ ├── UserSearch.php # 用户搜索
|
||||
│ ├── UserSign.php # 用户签到
|
||||
│ ├── UserSpread.php # 用户推广
|
||||
│ ├── UserTaskFinish.php # 用户任务完成
|
||||
│ └── UserVisit.php # 用户访问
|
||||
├── wechat/ # 微信相关Model
|
||||
│ ├── WechatKey.php # 微信密钥
|
||||
│ ├── WechatMedia.php # 微信媒体
|
||||
│ ├── WechatMessage.php # 微信消息
|
||||
│ ├── WechatNewsCategory.php # 微信图文分类
|
||||
│ ├── WechatQrcode.php # 微信二维码
|
||||
│ ├── WechatQrcodeCate.php # 微信二维码分类
|
||||
│ ├── WechatQrcodeRecord.php # 微信二维码记录
|
||||
│ ├── WechatReply.php # 微信回复
|
||||
│ └── WechatUser.php # 微信用户
|
||||
└── readme.md # 目录说明文件
|
||||
```
|
||||
|
||||
2. 类属性定义表结构,与表结构一一对应。
|
||||
## 功能说明
|
||||
|
||||
3. 包含读写数据相关方法,通过ActiveRecord实现。
|
||||
model层定义数据结构和业务逻辑,每个Model对应数据库中的一个表:
|
||||
|
||||
4. 提供数据与数据库层解耦,统一的数据访问接口。
|
||||
- **数据映射** - 将数据库表映射为PHP对象
|
||||
- **业务逻辑** - 封装数据操作和业务规则
|
||||
- **数据验证** - 提供数据验证和过滤功能
|
||||
- **关联关系** - 定义表之间的关联关系
|
||||
|
||||
5. 数据验证机制,保证数据完整性和一致性。
|
||||
|
||||
具体包含:
|
||||
|
||||
- 定义模型属性,字段名称对应表结构。
|
||||
|
||||
- 自动返回属性值和赋值属性值。
|
||||
|
||||
- 实现基础的CRUD方法操作数据库。
|
||||
|
||||
- 可扩展自定义数据逻辑和验证规则。
|
||||
|
||||
使用模型类可以:
|
||||
|
||||
- 减少直接操作数据库带来的复杂性。
|
||||
|
||||
- 跨项目重用数据层逻辑。
|
||||
|
||||
- 提高项目的可扩展性与复用性。
|
||||
|
||||
所以该目录定义的数据模型层,统一封装了项目运用的数据表模型和操作方式。
|
||||
Model层是MVC架构中的核心组件,负责数据的持久化和业务逻辑处理。
|
||||
@ -1,112 +0,0 @@
|
||||
.
|
||||
├── activity
|
||||
│ ├── advance
|
||||
│ ├── bargain
|
||||
│ ├── combination
|
||||
│ ├── coupon
|
||||
│ ├── integral
|
||||
│ ├── live
|
||||
│ ├── lottery
|
||||
│ └── seckill
|
||||
├── agent
|
||||
│ ├── AgentLevel.php
|
||||
│ ├── AgentLevelTask.php
|
||||
│ ├── AgentLevelTaskRecord.php
|
||||
│ └── DivisionAgentApply.php
|
||||
├── article
|
||||
│ ├── Article.php
|
||||
│ ├── ArticleCategory.php
|
||||
│ └── ArticleContent.php
|
||||
├── diy
|
||||
│ ├── Diy.php
|
||||
│ ├── PageCategory.php
|
||||
│ └── PageLink.php
|
||||
├── order
|
||||
│ ├── DeliveryService.php
|
||||
│ ├── OtherOrder.php
|
||||
│ ├── OtherOrderStatus.php
|
||||
│ ├── StoreCart.php
|
||||
│ ├── StoreOrder.php
|
||||
│ ├── StoreOrderCartInfo.php
|
||||
│ ├── StoreOrderEconomize.php
|
||||
│ ├── StoreOrderInvoice.php
|
||||
│ ├── StoreOrderRefund.php
|
||||
│ ├── StoreOrderStatus.php
|
||||
│ └── StorePink.php
|
||||
├── other
|
||||
│ ├── Agreement.php
|
||||
│ ├── Auxiliary.php
|
||||
│ ├── Cache.php
|
||||
│ ├── Category.php
|
||||
│ ├── Express.php
|
||||
│ ├── Qrcode.php
|
||||
│ └── TemplateMessage.php
|
||||
├── product
|
||||
│ ├── product
|
||||
│ └── sku
|
||||
├── service
|
||||
│ ├── StoreService.php
|
||||
│ ├── StoreServiceFeedback.php
|
||||
│ ├── StoreServiceLog.php
|
||||
│ ├── StoreServiceRecord.php
|
||||
│ └── StoreServiceSpeechcraft.php
|
||||
├── shipping
|
||||
│ ├── ShippingTemplates.php
|
||||
│ ├── ShippingTemplatesFree.php
|
||||
│ ├── ShippingTemplatesNoDelivery.php
|
||||
│ ├── ShippingTemplatesRegion.php
|
||||
│ └── SystemCity.php
|
||||
├── sms
|
||||
│ └── SmsRecord.php
|
||||
├── system
|
||||
│ ├── admin
|
||||
│ ├── attachment
|
||||
│ ├── config
|
||||
│ ├── log
|
||||
│ ├── statistics
|
||||
│ ├── store
|
||||
│ ├── AppVersion.php
|
||||
│ ├── MessageSystem.php
|
||||
│ ├── SystemMenus.php
|
||||
│ ├── SystemNotification.php
|
||||
│ ├── SystemUserLevel.php
|
||||
│ └── SystemUserTask.php
|
||||
├── user
|
||||
│ ├── MemberCard.php
|
||||
│ ├── MemberCardBatch.php
|
||||
│ ├── MemberRight.php
|
||||
│ ├── MemberShip.php
|
||||
│ ├── User.php
|
||||
│ ├── UserAddress.php
|
||||
│ ├── UserBill.php
|
||||
│ ├── UserBrokerage.php
|
||||
│ ├── UserBrokerageFrozen.php
|
||||
│ ├── UserCancel.php
|
||||
│ ├── UserExtract.php
|
||||
│ ├── UserFriends.php
|
||||
│ ├── UserGroup.php
|
||||
│ ├── UserInvoice.php
|
||||
│ ├── UserLabel.php
|
||||
│ ├── UserLabelCate.php
|
||||
│ ├── UserLabelRelation.php
|
||||
│ ├── UserLevel.php
|
||||
│ ├── UserMoney.php
|
||||
│ ├── UserRecharge.php
|
||||
│ ├── UserSearch.php
|
||||
│ ├── UserSign.php
|
||||
│ ├── UserSpread.php
|
||||
│ ├── UserTaskFinish.php
|
||||
│ └── UserVisit.php
|
||||
├── wechat
|
||||
│ ├── WechatKey.php
|
||||
│ ├── WechatMedia.php
|
||||
│ ├── WechatMessage.php
|
||||
│ ├── WechatNewsCategory.php
|
||||
│ ├── WechatQrcode.php
|
||||
│ ├── WechatQrcodeCate.php
|
||||
│ ├── WechatQrcodeRecord.php
|
||||
│ ├── WechatReply.php
|
||||
│ └── WechatUser.php
|
||||
└── filetree.txt
|
||||
|
||||
29 directories, 80 files
|
||||
@ -1,29 +1,57 @@
|
||||
crmeb/app/outapi目录用于定义项目对外开放的接口。
|
||||
# outapi 目录结构说明
|
||||
|
||||
具体来说:
|
||||
## 目录结构
|
||||
|
||||
```
|
||||
:.
|
||||
├── config/ # 配置目录
|
||||
├── controller/ # 控制器目录
|
||||
├── middleware/ # 中间件目录
|
||||
├── route/ # 路由配置目录
|
||||
├── validate/ # 验证器目录
|
||||
├── OutApiExceptionHandle.php # 异常处理器
|
||||
├── provider.php # 服务提供者
|
||||
└── README.md # 目录说明文件
|
||||
```
|
||||
|
||||
## 目录说明
|
||||
|
||||
- **config/** - 外部API专用配置
|
||||
- **controller/** - 外部API控制器
|
||||
- **middleware/** - 外部API中间件
|
||||
- **route/** - 外部API路由配置
|
||||
- **validate/** - 外部API数据验证器
|
||||
- **OutApiExceptionHandle.php** - 外部API异常处理器
|
||||
- **provider.php** - 外部API服务提供者
|
||||
|
||||
## 控制器说明
|
||||
|
||||
- **AuthController.php** - 授权控制器,处理第三方授权
|
||||
- **Login.php** - 登录控制器,处理外部登录
|
||||
- **RefundOrder.php** - 退款订单控制器
|
||||
- **StoreCategory.php** - 商品分类控制器
|
||||
- **StoreCoupon.php** - 优惠券控制器
|
||||
- **StoreOrder.php** - 订单控制器
|
||||
- **StoreProduct.php** - 商品控制器
|
||||
- **User.php** - 用户控制器
|
||||
- **UserLevel.php** - 用户等级控制器
|
||||
|
||||
## 功能说明
|
||||
|
||||
outapi目录用于定义项目对外开放的接口:
|
||||
|
||||
- 是项目对合作第三方开放的API接口定义目录
|
||||
|
||||
- 这里的接口可以被第三方直接调用来获取数据或完成相关业务
|
||||
|
||||
- 这类API接口与内部使用的API有区别:
|
||||
|
||||
- 对外开放,不需要登录授权
|
||||
- 安全限制较严,只提供必要接口
|
||||
- 与内部使用的API有区别:
|
||||
- 对外开放,不需要登录授权(部分接口)
|
||||
- 安全限制较严,只提供必要接口
|
||||
- 接口规范遵循RESTful原则
|
||||
|
||||
- 常见场景:
|
||||
|
||||
- 第方小程序/APP直接获取商品数据
|
||||
- 第方商户后台系统同步订单信息
|
||||
- 常见场景:
|
||||
- 第三方小程序/APP直接获取商品数据
|
||||
- 第三方商户后台系统同步订单信息
|
||||
- 小程序支付回调通知接口
|
||||
|
||||
使用这个目录定义外部接口可以:
|
||||
|
||||
使用这个目录定义外部接口可以:
|
||||
- 实现与其他系统的深度集成
|
||||
|
||||
- 让更多场景能够使用CRMEB提供的能力
|
||||
|
||||
- 降低对第方的侵入性,仅开放必要接口
|
||||
|
||||
所以总结来说,outapi用于项目对外部开放的公开API,扩展第三方接入能力。
|
||||
- 降低对第三方的侵入性,仅开放必要接口
|
||||
|
||||
@ -1,31 +1,185 @@
|
||||
crmeb/app/services目录用于定义项目的业务服务类。
|
||||
# services 目录结构说明
|
||||
|
||||
服务类的主要特征和作用包括:
|
||||
## 目录结构
|
||||
|
||||
1. 服务类封装具体的业务逻辑和规则。
|
||||
```
|
||||
.
|
||||
├── activity/ # 营销活动服务
|
||||
│ ├── advance/ # 预售活动服务
|
||||
│ ├── bargain/ # 砍价活动服务
|
||||
│ ├── combination/ # 拼团活动服务
|
||||
│ ├── coupon/ # 优惠券服务
|
||||
│ ├── integral/ # 积分活动服务
|
||||
│ ├── live/ # 直播活动服务
|
||||
│ ├── lottery/ # 抽奖活动服务
|
||||
│ └── seckill/ # 秒杀活动服务
|
||||
├── agent/ # 分销代理服务
|
||||
│ ├── AgentLevelServices.php # 代理等级服务
|
||||
│ ├── AgentLevelTaskRecordServices.php # 代理等级任务记录服务
|
||||
│ ├── AgentLevelTaskServices.php # 代理等级任务服务
|
||||
│ ├── AgentManageServices.php # 代理管理服务
|
||||
│ ├── DivisionAgentApplyServices.php # 分销代理申请服务
|
||||
│ └── DivisionServices.php # 分销服务
|
||||
├── article/ # 文章服务
|
||||
│ ├── ArticleCategoryServices.php # 文章分类服务
|
||||
│ ├── ArticleContentServices.php # 文章内容服务
|
||||
│ └── ArticleServices.php # 文章服务
|
||||
├── diy/ # 自定义页面服务
|
||||
│ ├── DiyServices.php # DIY页面服务
|
||||
│ ├── PageCategoryServices.php # 页面分类服务
|
||||
│ └── PageLinkServices.php # 页面链接服务
|
||||
├── kefu/ # 客服服务
|
||||
│ ├── service/ # 客服相关服务
|
||||
│ ├── KefuServices.php # 客服主服务
|
||||
│ ├── LoginServices.php # 客服登录服务
|
||||
│ ├── ProductServices.php # 客服商品服务
|
||||
│ └── UserServices.php # 客服用户服务
|
||||
├── message/ # 消息服务
|
||||
│ ├── notice/ # 通知服务
|
||||
│ ├── wechat/ # 微信消息服务
|
||||
│ ├── MessageSystemServices.php # 系统消息服务
|
||||
│ ├── NoticeService.php # 通知服务
|
||||
│ ├── SystemNotificationServices.php # 系统通知服务
|
||||
│ └── TemplateMessageServices.php # 模板消息服务
|
||||
├── order/ # 订单服务
|
||||
│ ├── DeliveryServiceServices.php # 配送服务
|
||||
│ ├── OtherOrderServices.php # 其他订单服务
|
||||
│ ├── OtherOrderStatusServices.php # 其他订单状态服务
|
||||
│ ├── StoreCartServices.php # 购物车服务
|
||||
│ ├── StoreOrderCartInfoServices.php # 订单商品信息服务
|
||||
│ ├── StoreOrderComputedServices.php # 订单计算服务
|
||||
│ ├── StoreOrderCreateServices.php # 订单创建服务
|
||||
│ ├── StoreOrderDeliveryServices.php # 订单配送服务
|
||||
│ ├── StoreOrderEconomizeServices.php # 订单节省服务
|
||||
│ ├── StoreOrderInvoiceServices.php # 订单发票服务
|
||||
│ ├── StoreOrderRefundServices.php # 订单退款服务
|
||||
│ ├── StoreOrderServices.php # 订单主服务
|
||||
│ ├── StoreOrderSplitServices.php # 订单拆分服务
|
||||
│ ├── StoreOrderStatusServices.php # 订单状态服务
|
||||
│ ├── StoreOrderStoreOrderCartInfoServices.php # 订单商品关联服务
|
||||
│ ├── StoreOrderStoreOrderStatusServices.php # 订单状态关联服务
|
||||
│ ├── StoreOrderSuccessServices.php # 订单成功服务
|
||||
│ ├── StoreOrderTakeServices.php # 订单接单服务
|
||||
│ ├── StoreOrderWapServices.php # WAP订单服务
|
||||
│ └── StoreOrderWriteOffServices.php # 订单核销服务
|
||||
├── other/ # 其他服务
|
||||
│ ├── export/ # 导出服务
|
||||
│ ├── AgreementServices.php # 协议服务
|
||||
│ ├── CacheServices.php # 缓存服务
|
||||
│ ├── CategoryServices.php # 分类服务
|
||||
│ ├── PosterServices.php # 海报服务
|
||||
│ ├── QrcodeServices.php # 二维码服务
|
||||
│ └── UploadService.php # 上传服务
|
||||
├── out/ # 外部服务
|
||||
│ └── LoginServices.php # 外部登录服务
|
||||
├── pay/ # 支付服务
|
||||
│ ├── OrderOfflineServices.php # 线下支付服务
|
||||
│ ├── OrderPayServices.php # 订单支付服务
|
||||
│ ├── PayNotifyServices.php # 支付通知服务
|
||||
│ ├── PayServices.php # 支付主服务
|
||||
│ ├── RechargeServices.php # 充值服务
|
||||
│ └── YuePayServices.php # 余额支付服务
|
||||
├── pc/ # PC端服务
|
||||
│ ├── CartServices.php # 购物车服务
|
||||
│ ├── HomeServices.php # 首页服务
|
||||
│ ├── LoginServices.php # 登录服务
|
||||
│ ├── OrderServices.php # 订单服务
|
||||
│ ├── ProductServices.php # 商品服务
|
||||
│ ├── PublicServices.php # 公共服务
|
||||
│ └── UserServices.php # 用户服务
|
||||
├── product/ # 商品服务
|
||||
│ ├── product/ # 商品主服务
|
||||
│ └── sku/ # SKU服务
|
||||
├── serve/ # 服务平台服务
|
||||
│ └── ServeServices.php # 服务平台主服务
|
||||
├── shipping/ # 物流配送服务
|
||||
│ ├── ExpressServices.php # 快递服务
|
||||
│ ├── ShippingTemplatesFreeCityServices.php # 运费模板免费城市服务
|
||||
│ ├── ShippingTemplatesFreeServices.php # 运费模板免费设置服务
|
||||
│ ├── ShippingTemplatesNoDeliveryCityServices.php # 运费模板不配送城市服务
|
||||
│ ├── ShippingTemplatesNoDeliveryServices.php # 运费模板不配送设置服务
|
||||
│ ├── ShippingTemplatesRegionCityServices.php # 运费模板区域城市服务
|
||||
│ ├── ShippingTemplatesRegionServices.php # 运费模板区域服务
|
||||
│ ├── ShippingTemplatesServices.php # 运费模板主服务
|
||||
│ └── SystemCityServices.php # 系统城市服务
|
||||
├── statistic/ # 统计服务
|
||||
│ ├── CapitalFlowServices.php # 资金流水统计
|
||||
│ ├── OrderStatisticServices.php # 订单统计
|
||||
│ ├── ProductStatisticServices.php # 商品统计
|
||||
│ ├── TradeStatisticServices.php # 交易统计
|
||||
│ └── UserStatisticServices.php # 用户统计
|
||||
├── system/ # 系统服务
|
||||
│ ├── admin/ # 管理员服务
|
||||
│ ├── attachment/ # 附件服务
|
||||
│ ├── config/ # 配置服务
|
||||
│ ├── log/ # 日志服务
|
||||
│ ├── store/ # 店铺服务
|
||||
│ ├── AppVersionServices.php # 应用版本服务
|
||||
│ ├── SystemAuthServices.php # 系统权限服务
|
||||
│ ├── SystemClearServices.php # 系统清理服务
|
||||
│ ├── SystemDatabackupServices.php # 系统备份服务
|
||||
│ ├── SystemMenusServices.php # 系统菜单服务
|
||||
│ └── SystemUserLevelServices.php # 系统用户等级服务
|
||||
├── user/ # 用户服务
|
||||
│ ├── member/ # 会员服务
|
||||
│ ├── LoginServices.php # 登录服务
|
||||
│ ├── UserAddressServices.php # 用户地址服务
|
||||
│ ├── UserAuthServices.php # 用户认证服务
|
||||
│ ├── UserBillServices.php # 用户账单服务
|
||||
│ ├── UserBillStoreOrderServices.php # 用户账单订单关联服务
|
||||
│ ├── UserBrokerageFrozenServices.php # 用户冻结佣金服务
|
||||
│ ├── UserBrokerageServices.php # 用户佣金服务
|
||||
│ ├── UserCancelServices.php # 用户注销服务
|
||||
│ ├── UserExtractServices.php # 用户提现服务
|
||||
│ ├── UserFriendsServices.php # 用户好友服务
|
||||
│ ├── UserGroupServices.php # 用户分组服务
|
||||
│ ├── UserInvoiceServices.php # 用户发票服务
|
||||
│ ├── UserLabelCateServices.php # 用户标签分类服务
|
||||
│ ├── UserLabelRelationServices.php # 用户标签关系服务
|
||||
│ ├── UserLabelServices.php # 用户标签服务
|
||||
│ ├── UserLevelServices.php # 用户等级服务
|
||||
│ ├── UserMoneyServices.php # 用户余额服务
|
||||
│ ├── UserRechargeServices.php # 用户充值服务
|
||||
│ ├── UserSearchServices.php # 用户搜索服务
|
||||
│ ├── UserServices.php # 用户主服务
|
||||
│ ├── UserSignServices.php # 用户签到服务
|
||||
│ ├── UserSpreadServices.php # 用户推广服务
|
||||
│ ├── UserStoreOrderServices.php # 用户订单关联服务
|
||||
│ ├── UserTaskFinishServices.php # 用户任务完成服务
|
||||
│ ├── UserUserBillServices.php # 用户账单关联服务
|
||||
│ ├── UserUserBrokerageServices.php # 用户佣金关联服务
|
||||
│ ├── UserVisitServices.php # 用户访问服务
|
||||
│ └── UserWechatuserServices.php # 用户微信关联服务
|
||||
├── wechat/ # 微信服务
|
||||
│ ├── RoutineServices.php # 小程序服务
|
||||
│ ├── WechatKeyServices.php # 微信密钥服务
|
||||
│ ├── WechatMediaServices.php # 微信媒体服务
|
||||
│ ├── WechatMenuServices.php # 微信菜单服务
|
||||
│ ├── WechatMessageServices.php # 微信消息服务
|
||||
│ ├── WechatNewsCategoryServices.php # 微信图文分类服务
|
||||
│ ├── WechatQrcodeCateServices.php # 微信二维码分类服务
|
||||
│ ├── WechatQrcodeRecordServices.php # 微信二维码记录服务
|
||||
│ ├── WechatQrcodeServices.php # 微信二维码服务
|
||||
│ ├── WechatReplyKeyServices.php # 微信回复关键词服务
|
||||
│ ├── WechatReplyServices.php # 微信回复服务
|
||||
│ ├── WechatServices.php # 微信主服务
|
||||
│ └── WechatUserServices.php # 微信用户服务
|
||||
├── yihaotong/ # 易号通短信服务
|
||||
│ ├── SmsAdminServices.php # 短信管理服务
|
||||
│ ├── SmsRecordServices.php # 短信记录服务
|
||||
│ └── SmsTemplateApplyServices.php # 短信模板申请服务
|
||||
├── BaseServices.php # 服务基类
|
||||
└── readme.md # 目录说明文件
|
||||
```
|
||||
|
||||
2. 完成功能模块的抽象,提供统一的业务接口。
|
||||
## 功能说明
|
||||
|
||||
3. 解耦项目各部分,降低他们之间的耦合度。
|
||||
services层封装复杂的业务逻辑,提供统一的业务接口:
|
||||
|
||||
4. 提供给上下文的整个环境使用。
|
||||
- **业务逻辑封装** - 将复杂业务逻辑封装为服务方法
|
||||
- **事务管理** - 提供数据库事务管理
|
||||
- **数据验证** - 业务数据验证和过滤
|
||||
- **第三方服务集成** - 集成支付、短信、微信等第三方服务
|
||||
- **数据统计** - 提供各种数据统计和分析功能
|
||||
|
||||
具体来说:
|
||||
|
||||
- 每个服务类对应一个独立的业务功能或规则集合。
|
||||
|
||||
- 类内部可以调用其它模块完成业务需求。
|
||||
|
||||
- 对外提供简单的业务接口,隐藏内部实现细节。
|
||||
|
||||
- 服务类存在依赖关系,可以互相调用实现聚合服务。
|
||||
|
||||
使用服务层设计可以:
|
||||
|
||||
- 松耦合各个模块,提高扩展和重用能力。
|
||||
|
||||
- 同一个业务规则在多个场景复用。
|
||||
|
||||
- 加强项目的可测试性与维护性。
|
||||
|
||||
所以此目录定义了项目核心业务服务模块,对外提供可复用的核心能力。
|
||||
Services层是业务逻辑的核心,负责协调各个模块完成复杂的业务操作。
|
||||
@ -1,169 +0,0 @@
|
||||
.
|
||||
├── activity
|
||||
│ ├── advance
|
||||
│ ├── bargain
|
||||
│ ├── combination
|
||||
│ ├── coupon
|
||||
│ ├── integral
|
||||
│ ├── live
|
||||
│ ├── lottery
|
||||
│ └── seckill
|
||||
├── agent
|
||||
│ ├── AgentLevelServices.php
|
||||
│ ├── AgentLevelTaskRecordServices.php
|
||||
│ ├── AgentLevelTaskServices.php
|
||||
│ ├── AgentManageServices.php
|
||||
│ ├── DivisionAgentApplyServices.php
|
||||
│ └── DivisionServices.php
|
||||
├── article
|
||||
│ ├── ArticleCategoryServices.php
|
||||
│ ├── ArticleContentServices.php
|
||||
│ └── ArticleServices.php
|
||||
├── diy
|
||||
│ ├── DiyServices.php
|
||||
│ ├── PageCategoryServices.php
|
||||
│ └── PageLinkServices.php
|
||||
├── kefu
|
||||
│ ├── service
|
||||
│ ├── KefuServices.php
|
||||
│ ├── LoginServices.php
|
||||
│ ├── ProductServices.php
|
||||
│ └── UserServices.php
|
||||
├── message
|
||||
│ ├── notice
|
||||
│ ├── wechat
|
||||
│ ├── MessageSystemServices.php
|
||||
│ ├── NoticeService.php
|
||||
│ ├── SystemNotificationServices.php
|
||||
│ └── TemplateMessageServices.php
|
||||
├── order
|
||||
│ ├── DeliveryServiceServices.php
|
||||
│ ├── OtherOrderServices.php
|
||||
│ ├── OtherOrderStatusServices.php
|
||||
│ ├── StoreCartServices.php
|
||||
│ ├── StoreOrderCartInfoServices.php
|
||||
│ ├── StoreOrderComputedServices.php
|
||||
│ ├── StoreOrderCreateServices.php
|
||||
│ ├── StoreOrderDeliveryServices.php
|
||||
│ ├── StoreOrderEconomizeServices.php
|
||||
│ ├── StoreOrderInvoiceServices.php
|
||||
│ ├── StoreOrderRefundServices.php
|
||||
│ ├── StoreOrderServices.php
|
||||
│ ├── StoreOrderSplitServices.php
|
||||
│ ├── StoreOrderStatusServices.php
|
||||
│ ├── StoreOrderStoreOrderCartInfoServices.php
|
||||
│ ├── StoreOrderStoreOrderStatusServices.php
|
||||
│ ├── StoreOrderSuccessServices.php
|
||||
│ ├── StoreOrderTakeServices.php
|
||||
│ ├── StoreOrderWapServices.php
|
||||
│ └── StoreOrderWriteOffServices.php
|
||||
├── other
|
||||
│ ├── export
|
||||
│ ├── AgreementServices.php
|
||||
│ ├── CacheServices.php
|
||||
│ ├── CategoryServices.php
|
||||
│ ├── PosterServices.php
|
||||
│ ├── QrcodeServices.php
|
||||
│ └── UploadService.php
|
||||
├── out
|
||||
│ └── LoginServices.php
|
||||
├── pay
|
||||
│ ├── OrderOfflineServices.php
|
||||
│ ├── OrderPayServices.php
|
||||
│ ├── PayNotifyServices.php
|
||||
│ ├── PayServices.php
|
||||
│ ├── RechargeServices.php
|
||||
│ └── YuePayServices.php
|
||||
├── pc
|
||||
│ ├── CartServices.php
|
||||
│ ├── HomeServices.php
|
||||
│ ├── LoginServices.php
|
||||
│ ├── OrderServices.php
|
||||
│ ├── ProductServices.php
|
||||
│ ├── PublicServices.php
|
||||
│ └── UserServices.php
|
||||
├── product
|
||||
│ ├── product
|
||||
│ └── sku
|
||||
├── serve
|
||||
│ └── ServeServices.php
|
||||
├── shipping
|
||||
│ ├── ExpressServices.php
|
||||
│ ├── ShippingTemplatesFreeCityServices.php
|
||||
│ ├── ShippingTemplatesFreeServices.php
|
||||
│ ├── ShippingTemplatesNoDeliveryCityServices.php
|
||||
│ ├── ShippingTemplatesNoDeliveryServices.php
|
||||
│ ├── ShippingTemplatesRegionCityServices.php
|
||||
│ ├── ShippingTemplatesRegionServices.php
|
||||
│ ├── ShippingTemplatesServices.php
|
||||
│ └── SystemCityServices.php
|
||||
├── statistic
|
||||
│ ├── CapitalFlowServices.php
|
||||
│ ├── OrderStatisticServices.php
|
||||
│ ├── ProductStatisticServices.php
|
||||
│ ├── TradeStatisticServices.php
|
||||
│ └── UserStatisticServices.php
|
||||
├── system
|
||||
│ ├── admin
|
||||
│ ├── attachment
|
||||
│ ├── config
|
||||
│ ├── log
|
||||
│ ├── store
|
||||
│ ├── AppVersionServices.php
|
||||
│ ├── SystemAuthServices.php
|
||||
│ ├── SystemClearServices.php
|
||||
│ ├── SystemDatabackupServices.php
|
||||
│ ├── SystemMenusServices.php
|
||||
│ └── SystemUserLevelServices.php
|
||||
├── user
|
||||
│ ├── member
|
||||
│ ├── LoginServices.php
|
||||
│ ├── UserAddressServices.php
|
||||
│ ├── UserAuthServices.php
|
||||
│ ├── UserBillServices.php
|
||||
│ ├── UserBillStoreOrderServices.php
|
||||
│ ├── UserBrokerageFrozenServices.php
|
||||
│ ├── UserBrokerageServices.php
|
||||
│ ├── UserCancelServices.php
|
||||
│ ├── UserExtractServices.php
|
||||
│ ├── UserFriendsServices.php
|
||||
│ ├── UserGroupServices.php
|
||||
│ ├── UserInvoiceServices.php
|
||||
│ ├── UserLabelCateServices.php
|
||||
│ ├── UserLabelRelationServices.php
|
||||
│ ├── UserLabelServices.php
|
||||
│ ├── UserLevelServices.php
|
||||
│ ├── UserMoneyServices.php
|
||||
│ ├── UserRechargeServices.php
|
||||
│ ├── UserSearchServices.php
|
||||
│ ├── UserServices.php
|
||||
│ ├── UserSignServices.php
|
||||
│ ├── UserSpreadServices.php
|
||||
│ ├── UserStoreOrderServices.php
|
||||
│ ├── UserTaskFinishServices.php
|
||||
│ ├── UserUserBillServices.php
|
||||
│ ├── UserUserBrokerageServices.php
|
||||
│ ├── UserVisitServices.php
|
||||
│ └── UserWechatuserServices.php
|
||||
├── wechat
|
||||
│ ├── RoutineServices.php
|
||||
│ ├── WechatKeyServices.php
|
||||
│ ├── WechatMediaServices.php
|
||||
│ ├── WechatMenuServices.php
|
||||
│ ├── WechatMessageServices.php
|
||||
│ ├── WechatNewsCategoryServices.php
|
||||
│ ├── WechatQrcodeCateServices.php
|
||||
│ ├── WechatQrcodeRecordServices.php
|
||||
│ ├── WechatQrcodeServices.php
|
||||
│ ├── WechatReplyKeyServices.php
|
||||
│ ├── WechatReplyServices.php
|
||||
│ ├── WechatServices.php
|
||||
│ └── WechatUserServices.php
|
||||
├── yihaotong
|
||||
│ ├── SmsAdminServices.php
|
||||
│ ├── SmsRecordServices.php
|
||||
│ └── SmsTemplateApplyServices.php
|
||||
├── BaseServices.php
|
||||
└── filetree.txt
|
||||
|
||||
39 directories, 128 files
|
||||
@ -1 +1,24 @@
|
||||
crmeb/backup 目录在CRMEB项目中的主要作用是用于保存备份文件和数据库文件的。
|
||||
# backup 目录结构说明
|
||||
|
||||
## 目录说明
|
||||
|
||||
backup目录在CRMEB项目中用于保存备份文件和数据库文件。
|
||||
|
||||
## 功能说明
|
||||
|
||||
- **数据库备份** - 存放数据库定时备份文件
|
||||
- **文件备份** - 存放系统重要文件的备份
|
||||
- **恢复功能** - 支持从备份文件恢复数据和配置
|
||||
|
||||
## 使用场景
|
||||
|
||||
- 定期自动备份数据库
|
||||
- 系统升级前的手动备份
|
||||
- 数据迁移时的导出备份
|
||||
- 灾难恢复时的数据还原
|
||||
|
||||
## 注意事项
|
||||
|
||||
- 定期清理过期备份文件,释放存储空间
|
||||
- 备份文件应定期验证完整性
|
||||
- 敏感数据备份应注意加密保护
|
||||
|
||||
@ -1,27 +1,67 @@
|
||||
crmeb/config目录用来存放项目的配置文件。
|
||||
# config 目录结构说明
|
||||
|
||||
在PHP项目开发中,配置文件扮演着非常重要的角色:
|
||||
## 目录结构
|
||||
|
||||
- 放置各种系统级参数和设置,如数据库连接信息等
|
||||
- 分离软件代码和运行环境设置,方便部署
|
||||
- 运行时根据配置加载系统服务和组件
|
||||
- 参数可在不修改代码的情况下进行变更
|
||||
```
|
||||
:.
|
||||
├── ajcaptcha.php # 滑块验证码配置
|
||||
├── app.php # 应用基础配置
|
||||
├── cache.php # 缓存配置
|
||||
├── captcha.php # 验证码配置
|
||||
├── console.php # 命令行配置
|
||||
├── cookie.php # Cookie配置
|
||||
├── database.php # 数据库配置
|
||||
├── filesystem.php # 文件系统配置
|
||||
├── lang.php # 多语言配置
|
||||
├── log.php # 日志配置
|
||||
├── pay.php # 支付配置
|
||||
├── plat.php # 对接平台配置
|
||||
├── printer.php # 小票打印机配置
|
||||
├── qrcode.php # 二维码配置
|
||||
├── queue.php # 队列配置
|
||||
├── route.php # 路由配置
|
||||
├── session.php # Session配置
|
||||
├── sms.php # 短信配置
|
||||
├── trace.php # 调试配置
|
||||
├── upload.php # 上传配置
|
||||
├── view.php # 模板配置
|
||||
├── workerman.php # Workerman配置
|
||||
└── README.md # 目录说明文件
|
||||
```
|
||||
|
||||
CRMEB项目中config目录负责:
|
||||
## 文件说明
|
||||
|
||||
- 放置如数据库、本地缓存、第三方开放API等系统配置
|
||||
- 定义项目组件自动加载机制
|
||||
- 路由和URL重写规则
|
||||
- 错误和日志输出级别
|
||||
- 各环境参数差异配置隔离
|
||||
- **ajcaptcha.php** - 滑块验证码配置,用于行为验证
|
||||
- **app.php** - 应用基础配置,包括时区、字符集、应用模式等
|
||||
- **cache.php** - 缓存驱动配置,支持Redis、Memcached、文件等
|
||||
- **captcha.php** - 验证码生成和验证配置
|
||||
- **console.php** - 命令行应用配置
|
||||
- **cookie.php** - Cookie配置,包括域名、路径、有效期等
|
||||
- **database.php** - 数据库连接和查询配置,支持MySQL、SQLite等
|
||||
- **filesystem.php** - 本地存储和云存储配置
|
||||
- **lang.php** - 多语言配置,默认语言、语言包路径等
|
||||
- **log.php** - 日志配置,记录方式、级别、路径等
|
||||
- **pay.php** - 支付接口配置,包括微信支付、支付宝等
|
||||
- **plat.php** - 对接平台配置,如小程序、公众号等
|
||||
- **printer.php** - 小票打印机配置,连接方式、打印模板等
|
||||
- **qrcode.php** - 二维码生成配置
|
||||
- **queue.php** - 消息队列配置,支持Redis、数据库、Sync驱动
|
||||
- **route.php** - 路由配置,URL路由规则、域名部署等
|
||||
- **session.php** - Session配置,驱动、过期时间等
|
||||
- **sms.php** - 短信服务配置,支持腾讯云、阿里云等
|
||||
- **trace.php** - 调试配置,页面Trace显示
|
||||
- **upload.php** - 文件上传配置,大小限制、保存路径等
|
||||
- **view.php** - 模板引擎配置,模板路径、缓存配置等
|
||||
- **workerman.php** - Workerman WebSocket服务配置
|
||||
|
||||
项目在运行时会加载并解析这些配置:
|
||||
## 功能说明
|
||||
|
||||
- 初始化系统服务如数据库连接
|
||||
- 注册组件到容器
|
||||
- 根据配置加载运行环境
|
||||
- 提供参数和变量给其它模块
|
||||
config目录包含系统所有的配置文件:
|
||||
|
||||
所以该目录定义了项目的系统架构和运行环境,对项目有重要影响。
|
||||
- **应用配置** - 定义应用的基础运行参数
|
||||
- **数据存储** - 数据库、缓存、文件存储配置
|
||||
- **第三方服务** - 支付、短信、验证码配置
|
||||
- **路由与安全** - 路由规则、跨域、认证配置
|
||||
- **开发调试** - 日志、调试、Trace配置
|
||||
|
||||
它通过配置实现项目的可配置性和扩展性。
|
||||
修改配置文件后需要清除缓存或重启服务生效。
|
||||
|
||||
@ -1,26 +0,0 @@
|
||||
.
|
||||
├── app.php //
|
||||
├── cache.php //缓存配置
|
||||
├── captcha.php //验证码配置
|
||||
├── console.php //命令行配置
|
||||
├── cookie.php //cookie配置
|
||||
├── database.php //数据库配置
|
||||
├── filesystem.php //系统文件目录配置
|
||||
├── lang.php //多语言配置
|
||||
├── log.php //日志配置
|
||||
├── pay.php //支付配置
|
||||
├── plat.php //对接平台配置
|
||||
├── printer.php //小票打印机配置
|
||||
├── qrcode.php //二维码配置
|
||||
├── queue.php //队列配置
|
||||
├── route.php //路由配置
|
||||
├── session.php //session配置
|
||||
├── sms.php //短信发送配置
|
||||
├── template.php //微信模版消息配置
|
||||
├── trace.php //调试配置
|
||||
├── upload.php //上传配置
|
||||
├── view.php //模版配置
|
||||
├── workerman.php //workerman配置
|
||||
└── filetree.txt //目录文件说明
|
||||
|
||||
0 directories, 23 files
|
||||
@ -1,15 +1,86 @@
|
||||
crmeb目录在CRMEB项目中的作用是一个特殊目录
|
||||
# crmeb 核心目录结构说明
|
||||
|
||||
- crmeb目录实际上是整个项目的核心库目录
|
||||
- 它包含项目的核心类、traits、异常定义等
|
||||
- 这些核心文件提供给整个项目 reused
|
||||
- 例如请求处理类、响应处理类等
|
||||
- 它实现了项目特定的封装和扩展
|
||||
- 使项目各部分能够在一套框架体系下开发
|
||||
## 目录结构
|
||||
|
||||
简而言之,crmeb目录:
|
||||
```
|
||||
.
|
||||
├── basic/ # 基础类库
|
||||
│ ├── BaseController.php # 控制器基类
|
||||
│ ├── BaseJobs.php # 队列基类
|
||||
│ ├── BaseManager.php # 驱动管理基类
|
||||
│ ├── BaseModel.php # Model基类
|
||||
│ └── BaseStorage.php # 驱动基类
|
||||
├── command/ # 命令行工具
|
||||
│ ├── stubs/ # 命令模板
|
||||
│ ├── Dao.php # 创建Dao类命令
|
||||
│ ├── Service.php # 创建Service类命令
|
||||
│ ├── Timer.php # 定时任务命令类
|
||||
│ └── Workerman.php # Workerman命令类
|
||||
├── exceptions/ # 异常处理类
|
||||
│ ├── AdminException.php # 后台管理端异常
|
||||
│ ├── ApiException.php # 移动端接口异常
|
||||
│ ├── AuthException.php # 用户授权异常
|
||||
│ ├── PayException.php # 支付异常
|
||||
│ ├── SmsException.php # 短信异常
|
||||
│ ├── TemplateException.php # 微信模板消息异常
|
||||
│ ├── UploadException.php # 上传异常
|
||||
│ └── WechatReplyException.php # 微信自动回复异常
|
||||
├── interfaces/ # 接口定义
|
||||
│ ├── JobInterface.php # 队列任务接口
|
||||
│ ├── ListenerInterface.php # 事件接口
|
||||
│ ├── MiddlewareInterface.php # 中间件接口
|
||||
│ └── ProviderInterface.php # 容器接口
|
||||
├── services/ # 服务类
|
||||
│ ├── app/ # 应用端服务
|
||||
│ ├── easywechat/ # EasyWechat集成
|
||||
│ ├── express/ # 物流查询服务
|
||||
│ ├── pay/ # 支付服务
|
||||
│ ├── printer/ # 打印机服务
|
||||
│ ├── copyproduct/ # 商品采集服务
|
||||
│ ├── serve/ # 服务平台服务
|
||||
│ ├── sms/ # 短信服务
|
||||
│ ├── template/ # 模板消息服务
|
||||
│ ├── upload/ # 上传服务
|
||||
│ ├── workerman/ # Workerman服务
|
||||
│ ├── AccessTokenServeService.php # Token获取服务
|
||||
│ ├── AliPayService.php # 支付宝服务
|
||||
│ ├── CacheService.php # 缓存服务
|
||||
│ ├── FileService.php # 文件处理服务
|
||||
│ ├── FormBuilder.php # 表单生成器
|
||||
│ ├── GroupDataService.php # 组合数据服务
|
||||
│ ├── HttpService.php # HTTP请求服务
|
||||
│ ├── MysqlBackupService.php # 数据库备份服务
|
||||
│ ├── SpreadsheetExcelService.php # Excel处理服务
|
||||
│ ├── SystemConfigService.php # 系统配置服务
|
||||
│ ├── UpgradeService.php # 系统更新服务
|
||||
│ └── UploadService.php # 文件上传服务
|
||||
├── traits/ # Trait扩展
|
||||
│ ├── ErrorTrait.php # 错误处理扩展
|
||||
│ ├── JwtAuthModelTrait.php # JWT鉴权扩展
|
||||
│ ├── ModelTrait.php # Model扩展
|
||||
│ ├── QueueTrait.php # 队列扩展
|
||||
│ ├── SearchDaoTrait.php # DAO扩展
|
||||
│ └── ServicesTrait.php # Services扩展
|
||||
└── utils/ # 工具类
|
||||
├── Arr.php # 数组操作工具
|
||||
├── Canvas.php # 图片处理工具
|
||||
├── Captcha.php # 验证码工具
|
||||
├── DownloadImage.php # 远程图片下载工具
|
||||
├── ErrorCode.php # 错误码处理工具
|
||||
├── Hook.php # 钩子工具
|
||||
├── Json.php # JSON处理工具
|
||||
├── JwtAuth.php # JWT鉴权工具
|
||||
├── QRcode.php # 二维码工具
|
||||
├── Queue.php # 队列工具
|
||||
└── Str.php # 字符串处理工具
|
||||
```
|
||||
|
||||
- 包含项目的各种核心基础支持类
|
||||
- 为整个项目提供基础功能定定义
|
||||
- 使项目具备一致性和可扩展性
|
||||
- 是项目最核心和基础的代码库
|
||||
## 目录说明
|
||||
|
||||
- **basic/** - 基础类库,提供各种基类供业务模块继承
|
||||
- **command/** - 命令行工具,用于生成代码和系统维护
|
||||
- **exceptions/** - 自定义异常类,提供统一的异常处理
|
||||
- **interfaces/** - 接口定义,规范各模块的实现
|
||||
- **services/** - 核心服务类,封装各种第三方服务和业务逻辑
|
||||
- **traits/** - Trait扩展,提供可复用的代码片段
|
||||
- **utils/** - 工具类,提供各种实用功能
|
||||
|
||||
@ -1,73 +0,0 @@
|
||||
.
|
||||
├── basic
|
||||
│ ├── BaseController.php //控制器基类
|
||||
│ ├── BaseJobs.php //队列基类
|
||||
│ ├── BaseManager.php //驱动管理基类
|
||||
│ ├── BaseModel.php //model基类
|
||||
│ └── BaseStorage.php //驱动基类
|
||||
├── command
|
||||
│ ├── stubs //命令模版
|
||||
│ ├── Dao.php //创建Dao类命令
|
||||
│ ├── Service.php //创建Service类命令
|
||||
│ ├── Timer.php //定时任务命令类
|
||||
│ └── Workerman.php //workman命令类
|
||||
├── exceptions
|
||||
│ ├── AdminException.php //后台管理端异常处理
|
||||
│ ├── ApiException.php //移动端接口异常处理
|
||||
│ ├── AuthException.php //用户授权异常处理
|
||||
│ ├── PayException.php //支付异常处理
|
||||
│ ├── SmsException.php //短信异常处理
|
||||
│ ├── TemplateException.php //微信模版消息异常处理
|
||||
│ ├── UploadException.php //上传异常处理
|
||||
│ └── WechatReplyException.php //微信自动回复异常处理
|
||||
├── interfaces
|
||||
│ ├── JobInterface.php //队列任务
|
||||
│ ├── ListenerInterface.php //事件
|
||||
│ ├── MiddlewareInterface.php //中间件
|
||||
│ └── ProviderInterface.php //容器
|
||||
├── services
|
||||
│ ├── app //应用端
|
||||
│ ├── easywechat //easywechat
|
||||
│ ├── express //物流查询
|
||||
│ ├── pay //支付
|
||||
│ ├── printer //打印机
|
||||
│ ├── copyproduct //采集商品
|
||||
│ ├── serve //服务平台
|
||||
│ ├── sms //短信
|
||||
│ ├── template //模版消息
|
||||
│ ├── upload //上传
|
||||
│ ├── workerman //workerman
|
||||
│ ├── AccessTokenServeService.php //获取token
|
||||
│ ├── AliPayService.php
|
||||
│ ├── CacheService.php //缓存类
|
||||
│ ├── FileService.php //文件处理类
|
||||
│ ├── FormBuilder.php //自动生成表单类
|
||||
│ ├── GroupDataService.php //组合数据类
|
||||
│ ├── HttpService.php //curl 请求处理类
|
||||
│ ├── MysqlBackupService.php //数据库备份管理类
|
||||
│ ├── SpreadsheetExcelService.php //excel处理类
|
||||
│ ├── SystemConfigService.php //系统配置获取类
|
||||
│ ├── UpgradeService.php //系统更新类
|
||||
│ └── UploadService.php //文件上传类
|
||||
├── traits
|
||||
│ ├── ErrorTrait.php //错误处理扩展类
|
||||
│ ├── JwtAuthModelTrait.php //Jwt鉴权扩展类
|
||||
│ ├── ModelTrait.php //model扩展类
|
||||
│ ├── QueueTrait.php //队列扩展累
|
||||
│ ├── SearchDaoTrait.php //dao扩展类
|
||||
│ └── ServicesTrait.php //Services扩展类
|
||||
├── utils
|
||||
│ ├── Arr.php //操作数组帮助类
|
||||
│ ├── Canvas.php //图片处理类
|
||||
│ ├── Captcha.php //验证码类
|
||||
│ ├── DownloadImage.php //远程图片下载类
|
||||
│ ├── ErrorCode.php //错误码处理类
|
||||
│ ├── Hook.php //钩子类
|
||||
│ ├── Json.php //Json处理类
|
||||
│ ├── JwtAuth.php //Jwt鉴权类
|
||||
│ ├── QRcode.php //二维码获取类 TODO
|
||||
│ ├── Queue.php //队列类
|
||||
│ └── Str.php //字符处理类
|
||||
└── filetree.txt
|
||||
|
||||
17 directories, 70 files
|
||||
@ -1,24 +0,0 @@
|
||||
.
|
||||
├── app 程序主目录
|
||||
├── backup 数据库/程序升级备份目录
|
||||
├── config 系统配置
|
||||
├── crmeb crmeb核心文件目录
|
||||
├── public 程序入口目录
|
||||
├── route 程序入口路由配置
|
||||
├── runtime 缓存目录
|
||||
├── temp docker临时文件目录
|
||||
├── vendor 扩展包compose 安装目录
|
||||
├── LICENSE.txt 开源协议
|
||||
├── README.md 系统说明
|
||||
├── baota.sh 宝塔快速配置环境文件
|
||||
├── build.example.php
|
||||
├── composer.json
|
||||
├── composer.lock
|
||||
├── filetree.txt
|
||||
├── think tp命令文件入口
|
||||
├── timer.pid 定时任务生成文件
|
||||
├── updatesql.sql
|
||||
├── workerman.bat windows 启动workerman命令文件
|
||||
└── workerman.pid workerman生成文件
|
||||
|
||||
9 directories, 12 files
|
||||
@ -1,29 +1,51 @@
|
||||
crmeb/public目录在CRMEB项目中的主要作用是:
|
||||
# public 目录结构说明
|
||||
|
||||
- 作为网站前端或移动端访问的入口目录
|
||||
## 目录结构
|
||||
|
||||
- 存放项目对外访问的静态资源,如css、js、图片等文件
|
||||
```
|
||||
:.
|
||||
├── .htaccess # Apache伪静态配置
|
||||
├── admin/ # 后台管理静态资源
|
||||
├── assets/ # 公共静态资源
|
||||
├── favicon.ico # 网站图标
|
||||
├── index.html # 静态HTML入口
|
||||
├── index.php # PHP入口文件
|
||||
├── install/ # 安装向导目录
|
||||
├── mobile.html # 移动端入口HTML
|
||||
├── nginx.htaccess # Nginx伪静态配置
|
||||
├── pages/ # 页面模板目录
|
||||
├── product_migration.xlsx # 商品迁移Excel模板
|
||||
├── robots.txt # 搜索引擎robots文件
|
||||
├── router.php # 路由入口文件
|
||||
├── service_pay_result.html # 支付结果页面
|
||||
├── static/ # 静态文件目录
|
||||
├── statics/ # 静态资源目录(样式、脚本)
|
||||
├── upgrade/ # 升级向导目录
|
||||
├── uploads/ # 上传文件目录
|
||||
└── README.md # 目录说明文件
|
||||
```
|
||||
|
||||
- 包含index.php入口文件,用于路由到具体控制器
|
||||
## 目录说明
|
||||
|
||||
- 通过.htaccess实现伪静态URL规则的解析
|
||||
- **admin/** - 后台管理端静态资源(CSS、JS、图片)
|
||||
- **assets/** - 项目公共静态资源
|
||||
- **index.php** - 项目主入口文件
|
||||
- **install/** - 系统安装向导
|
||||
- **static/statics** - 前端静态资源目录
|
||||
- **uploads/** - 用户上传文件目录
|
||||
- **pages/** - 移动端页面模板
|
||||
|
||||
具体来说:
|
||||
## 功能说明
|
||||
|
||||
- 用户通过浏览器或APP都访问public目录下的文件
|
||||
public目录是网站的入口目录:
|
||||
|
||||
- 目录下文件不会包含任何项目核心代码
|
||||
- **入口作用** - 外部访问项目的唯一入口
|
||||
- **静态资源** - 存放CSS、JS、图片等静态文件
|
||||
- **安全隔离** - 通过入口文件路由,隐藏项目内部结构
|
||||
- **伪静态** - 通过.htaccess实现URL重写
|
||||
|
||||
- 路由解析后分发到实际的控制器处处理
|
||||
## 安全说明
|
||||
|
||||
- 资源文件可以通过CDN或其他方式托管发布
|
||||
|
||||
使用这个目录设计的优点:
|
||||
|
||||
- 隐藏实际项目内部文件结构
|
||||
|
||||
- 提高安全性,外部无法直接访问代码
|
||||
|
||||
- 实现静态资源优化发布效果
|
||||
|
||||
所以它扮演着项目对外"外壳"的作用,承担了项目入口和资源存放功能。
|
||||
- 不应在此目录存放敏感文件
|
||||
- 上传目录应限制文件类型
|
||||
- 定期清理临时上传文件
|
||||
|
||||
@ -1,34 +1,36 @@
|
||||
crmeb/route目录在CRMEB项目中的主要作用是用于定义项目的路由规则。
|
||||
# route 目录结构说明
|
||||
|
||||
1. 定义一个 Route::miss 方法处理路由未匹配的情况
|
||||
## 目录结构
|
||||
|
||||
2. 根据请求路径获取应用名称(如 admin、app 等)
|
||||
```
|
||||
:.
|
||||
├── route.php # 主路由配置
|
||||
└── README.md # 目录说明文件
|
||||
```
|
||||
|
||||
3. 根据应用名称返回不同的视图文件
|
||||
## 文件说明
|
||||
|
||||
- admin前台后台分别返回不同入口
|
||||
- **route.php** - 项目主路由配置文件
|
||||
|
||||
- app/kefu定义了对应的视图
|
||||
## 功能说明
|
||||
|
||||
- home覆盖移动端和PC入口
|
||||
route目录用于定义项目的路由规则:
|
||||
|
||||
- 其它情况判断是否移动端返回不同视图
|
||||
- **路由匹配** - 定义URL与控制器的映射关系
|
||||
- **路由未匹配** - 处理404情况,返回默认页面
|
||||
- **应用分发** - 根据域名或路径判断请求的应用(admin、app、kefu等)
|
||||
- **视图分发** - 根据请求信息智能匹配视图资源文件
|
||||
- **多端适配** - 实现PC端和移动端自动切换
|
||||
|
||||
4. 完整定义了项目所有可能的路由入口
|
||||
## 路由规则说明
|
||||
|
||||
5. 根据请求信息智能匹配视图资源文件
|
||||
- 解析请求路径获取应用名称
|
||||
- 根据应用名称返回不同的视图或API
|
||||
- 支持域名绑定和路由分组
|
||||
- 统一处理所有路由匹配情况
|
||||
|
||||
主要作用:
|
||||
## 注意事项
|
||||
|
||||
- 统一处理所有路由匹配
|
||||
- 隐藏实际控制器入口
|
||||
- 根据应用名分发页面
|
||||
- 实现PC端和移动端自动切换
|
||||
|
||||
这种设计可以:
|
||||
|
||||
- 完整覆盖所有路由情况
|
||||
- 隐藏实际路由层次结构
|
||||
- 实现智能的页面分发
|
||||
|
||||
是动态路由设计的一个很好范例。
|
||||
- 修改路由后清除缓存
|
||||
- 路由规则有优先级,从上到下匹配
|
||||
- 避免路由冲突
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user