member-doc/directory_structure.md
zhouyangyang a4b70328c6 提交
2022-06-14 19:36:15 +08:00

177 lines
5.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 框架版本
hyperf 2.[1-2].[*]
## 目录结构
```
├── Amqp //mq 消费者&生产者定义
│   ├── Consumer //消费者
│   │   ├── Config
│   │   ├── Member
│   │   └── Notice
│   └── Producer //生产者
│   ├── Member
│   └── Notice
├── Constant //定义常量
├── Controller //控制器
│   ├── Auth
│   ├── Card
│   ├── Company
│   ├── Flow
│   ├── GenConfig
│   ├── Group
│   ├── Log
│   ├── Manage
│   ├── Member
│   ├── Notice
│   ├── Order
│   ├── Organize
│   ├── Response
│   │   └── Enum
│   ├── SignIn
│   ├── Task
│   └── Verification
├── Event //事件
│   ├── Company
│   ├── Log
│   ├── Member
│   ├── Organize
│   └── Task
├── Exception //异常
│   └── Handler
├── JsonRpc //RPC 2.1 版本 起始
│   ├── Consumers
│   │   └── Tenant
│   ├── Providers
│   │   └── Member
│   └── Traits
├── Listener //监听
│   ├── Member
│   ├── Notice
│   ├── Organize
│   └── Task
├── Middleware //中间件
│   ├── Auth
│   ├── Manage
│   └── Service
├── Model //数据模型
│   ├── QueryBuild
│   │   └── resolves
│   ├── Scope
│   └── Traits
├── Process //自定义进程
│   ├── Extra
│   │   └── Job
│   ├── Order
│   │   └── Job
│   └── Task
│   └── Level
│   └── Job
├── Request //定义前端请求文件
│   ├── Card
│   ├── Company
│   ├── Config
│   ├── Credit
│   ├── Flow
│   ├── Group
│   ├── Manage
│   ├── Oauth
│   ├── Order
│   ├── Organize
│   └── Traits
├── Script //自定义脚本文件
└── Service //服务模块
├── ApiDispatch // api 代理分发
├── Assist // 辅助功能类库
├── Common // 公共服务
│   └── Config
├── LogicModule // 逻辑业务模块
│   ├── Auth //权限
│   │   ├── Oauth //授权
│   │   ├── Third //三方登录
│   │   └── Traits //特性
│   ├── Card
│   │   └── Bind
│   ├── Company
│   ├── Contract
│   ├── Flow
│   │   ├── Client
│   │   └── Traits
│   ├── Group
│   ├── Logger
│   ├── Manage
│   │   └── Auth
│   ├── Member
│   │   ├── Card
│   │   │   ├── Order
│   │   │   └── Pay
│   │   │   └── Traits
│   │   ├── Medal
│   │   │   └── Traits
│   │   ├── Member
│   │   ├── MemberSave
│   │   ├── Privilege
│   │   │   └── Traits
│   │   └── Statistics
│   ├── Menu
│   ├── Notice
│   ├── Order
│   ├── Organize
│   │   └── Traits
│   ├── SignIn
│   │   └── Contract
│   ├── Task
│   │   ├── Contract
│   │   ├── Exec
│   │   │   └── Handler
│   │   ├── Privilege
│   │   │   └── Handler
│   │   ├── Process
│   │   │   └── Handler
│   │   ├── Risk
│   │   │   └── Handler
│   │   ├── TaskObj
│   │   │   └── Relate
│   │   ├── Template
│   │   └── Traits
│   └── Traits
│   └── Member
├── MessageWatch
└── RiskControl // 风控层
├── Contract //契约
├── Filter //过滤
│   └── sensitive
├── Task
└── Verification
├── Attribute
├── Code
│   └── Sms
└── Traits
```
## 编码&工具规范
### 编码
1. PHP编码完全按照[psr ](https://www.php-fig.org/psr/) 规范。
3. PHPDoc必须保留空行在第一个标记前使用空行。
4. 数组需要对其键值对。
5. 必须使用php7.4语法(更容易编写规范代码),函数入参/类属性 需要申明指定类型。
6. 必须使用公司php7.4容器开发,以保持环境一致。
### 工具
1. 强烈建议PHPstrom 新版作为开发工具。
2. 建议安装sonarlint 静态分析解决major坏味道及霉味代码。
## 依赖注入
官方文档https://hyperf.wiki/2.2/#/zh-cn/di
## 函数
封装了部分函数,方便调用 位置于app/Functions.php
常见函数如下:
1. get_redis() 获取redis 实列
2. list_to_tree() 列表转成tree
3. get_member_id() 获取当前会员id