Files
xk-doctor-wx/.cursor/rules/Api-Module-Split.mdc
李琦 1fbc14638a feat: 工作台首页与即将到访预约抽屉
- 工作台:workbench 首页、诊所/平台 admin 首页改造
- 预约:新增 appointment-upcoming-drawer 即将到访预约抽屉
- 接口:reception/clinicAdmin/platformAdmin 模块补充接口
- 规范:新增 Api-Module-Split.mdc 接口模块拆分规则
2026-08-14 13:27:28 +08:00

42 lines
2.0 KiB
Plaintext
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.
---
description: 接口迁移到 xk-api 后必须拆出独立模块文件,禁止再往 all.js 大文件里塞
alwaysApply: true
---
# API 模块拆分规则xk-api 迁移必读)
`api/all.js`(约 1700+ 行)是历史遗留的 Yii 接口聚合文件。
**任何迁移到 xk-api 的接口、以及所有新增的 xk-api 接口,一律不得写进 `all.js`**,必须提取/新建到 `api/` 下的独立业务模块文件。
## 必须做
1. **按业务域建独立文件**`api/<module>.js`,小驼峰命名(已有先例:`pharmacistExamine.js`、`reception.js`、`clinicAdmin.js`、`platformAdmin.js`、`chat.js`
2. **xk-api 接口 URL 必须带 `/newApi/` 前缀**`common/js/common.js` 据此切到 `newApiBase`Yii 接口用无前缀相对路径
3. **文件头注释标明后端与取值方式**,每个函数注释标 HTTP 方法与路径,例如:
```js
/**
* 药师审方相关接口xk-api取值用 code / result / message配合 unwrapXkApi
* 老 Yii service/v1/examine/* 已迁移到 xk-api 的 /pharmacist-examine/*
*/
import { req } from '@/common/js/index.js';
/** 审方列表 xk-api GET /pharmacist-examine/list */
export function getExamineList(data) {
return req.request({
url: '/newApi/pharmacist-examine/list',
method: 'GET',
data
})
}
```
4. **迁移某接口时**Yii → xk-api把它从 `all.js` 挪到对应模块文件,`all.js` 里原函数直接删除(调用方改 import确实来不及改完所有调用方时才允许在 `all.js` 保留一行 re-export 并标 `@deprecated`
5. 页面取值统一 `unwrapXkApi`(见 Api-Response.mdc
## 禁止做
- 禁止在 `all.js` 中新增任何函数(包括 Yii 接口——新 Yii 接口也应放模块文件)
- 禁止新代码写 `unwrapClinicRes` 这类「双形态自动兼容」取值;按后端固定取值
- 禁止一个模块文件里混装两个后端的接口而不加注释区分;同一文件确需并存时,每个函数注释必须标明 `// xk-api` 或 `// Yii`