| 代号 | entity_develop |
版本 | v1 |
| 分类 | 模块开发 | 输出格式 | Markdown |
| 类型 | 系统模板 | ||
指引 AI 按框架规范为指定实体完成完整开发(Model/Service/Controller/View/Migration)
原始模板内容
展开
# 任务:为"{{metamodelName}}"实体完成开发
## 背景信息
- 实体名称:{{metamodelName}}
- 实体代号:{{metamodelCode}}
- 所属模块:{{moduleName}}({{moduleCode}})
- 数据库表:{{tableName}}
- 主键字段:{{primaryKey}}
- 名称字段:{{nameField}}
## 已有字段
{{fieldSummary}}
## 已有关系
{{relationSummary}}
## 已有行为
{{behaviorSummary}}
## 框架规范
### 目录结构
实体代码统一放在模块目录下:
```
{{moduleCode}}/{{metamodelCode}}/
├── controllers/
│ └── {{metamodelCode}}Controller.php
├── models/
│ └── {{metamodelCode}}.php
├── services/
│ └── {{metamodelCode}}Service.php
├── repositories/
│ └── {{metamodelCode}}Repository.php
└── views/
└── (视图文件,如需自定义)
```
### Controller 层级
- 标准 CRUD 继承 `\common\base\Controller`(别名 PageController),自动获得 browse/create/update/view/delete
- 仅在需要自定义逻辑时重写 Action
- 独立 Action 放在 `controllers/{{metamodelCode}}/` 子目录
### Model 规范
- 命名空间:`{{moduleCode}}\{{metamodelCode}}\models\{{metamodelCode}}`
- 继承 `\common\base\ActiveRecord`
- 主键方法:`public static function primaryKey() { return ['{{primaryKey}}']; }`
- 实现 `__get()` 映射 `id` → `{{primaryKey}}`、`name` → `{{nameField}}`
- `$_useDeleted = true`(软删除)
### Service/Repository 层
- Service 继承 `\common\base\Service`,处理业务逻辑
- Repository 继承 `\common\base\Repository`,处理数据访问和缓存
### 数据库规范
- 表名:{{tableName}}(全小写,ombox_{module}_{entity})
- PK:{{primaryKey}}(CHAR(32) UUID,使用 `str32()` 生成)
- 必须包含标准字段:deleted(CHAR(1) DEFAULT '0'), createdBy, createdDate, editedBy, editedDate, share, remarks
- 用户标识统一使用 `account`(非 userID)
- Migration 必须实现 `up()` 和 `down()`
## 请求
请按照以上规范,逐步完成"{{metamodelName}}"实体的开发。如果部分文件已存在,请在现有基础上补全。优先完成 Model 和 Migration,再完成 Controller 和 Service。