2026-09-21 09:11:26 +08:00

44 lines
2.7 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.

---
name: 输血系统
description: 全局匹配
---
```
# 项目基础信息
项目名称:输血系统
项目源码名称:前端项目:blood_vue,后端项目:blood
技术栈:
前端:Vue3 + TypeScript + Element Plus + Vite + Pinia + Axios +scss
后端:springboot + mybatis + redis
数据库: sqlserver2008
编码语言:中文注释,提示、弹窗文案使用中文
# 强制编码规则
1. 组件统一使用 <script setup> 语法糖,禁止使用Options API;单文件组件结构顺序:script setup lang="ts" → template → style
2. 变量命名:小驼峰;常量全大写下划线;组件名大驼峰;禁止拼音命名,业务字段使用业务英文缩写
3. TS类型:所有接口入参、返回体、表单对象必须定义interface/type,禁止any;尽量使用readonly约束只读数据
4. 样式:统一使用 scoped,优先使用Element Plus自带样式,自定义class采用BEM命名,禁止全局污染
5. 导入:按顺序导入:vue内置包 → 第三方依赖 → 项目组件 → 工具函数 → 静态资源;统一使用import,不使用require
6. 每次新增组件,需要增加组件注释说明,
# 接口请求规范(输血系统)
1. 所有请求必须使用项目已封装axios实例,禁止直接原生axios;统一拦截器处理token、401、500
2. 后端返回固定结构 {code:number, msg:string, data:any},code=200或者0代表成功;业务异常统一捕获提示
3. 接口请求必须写TS类型定义,请求参数、返回data都要定义interface;增加注释说明接口用途、业务场景
# 表单 & 校验(输血业务)
1. Element Plus ElForm,表单校验规则抽离单独rules对象;必填项添加 required:true,提示文案友好
2. 检验项目、标本类型、状态下拉选项,统一维护枚举常量,不要硬编码写死在template
3. 保存、提交按钮:提交期间增加 loading 状态,防止重复提交;表单提交前先触发全部校验
# 业务与安全约束(医疗系统)
1. 禁止:前端硬编码密钥、token、账号密码;禁止直接拼接SQL相关参数;禁止eval危险函数
2. 弹窗提示:操作类动作(删除、取消、作废)必须增加确认弹窗;成功/失败给出toast提示
# AI输出约束
1. 输出代码优先完整片段,不要省略关键逻辑;新增组件同时补充interface类型
3. 给出代码后,附带简短说明:改动点、注意事项、需要后端配合的字段
4. 不要生成多余无关代码,保持简洁;如存在多种方案,优先选择和现有项目一致的写法
5. 如修改已有代码,先展示原有代码片段,再给出修改后的代码,标注改动位置
```