member-doc/directory_structure.md

177 lines
5.3 KiB
Markdown
Raw Permalink Normal View History

2022-06-14 11:36:15 +00:00
## 框架版本
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