📋 主要变更: - ✅ 补充完整的7个业务模块表命名规范 - ✅ 新增后勤管理模块:hq_ 前缀 - ✅ 明确系统公共模块:common_ 前缀 - ✅ 提供完整的命名示例和实体类映射规则 - ✅ 更新变更记录文档 🎯 覆盖模块: - 后勤管理(hq_)、人事管理(rs_)、财务管理(cw_) - 学工管理(xg_)、招生就业(zsjy_)、安全保卫(aqbw_) - 系统公共(common_) 📚 文件变更: - .cursor/cursorrules-backend.md - 数据库表命名规范 - docs/变更管理/code-adjust-record-2025-01-23-wuzilong.md - 变更记录 - 各业务模块工程文件和前端结构文件 Co-authored-by: Cursor AI <cursor@cursor.sh>
3.5 KiB
3.5 KiB
代码风格和约定规范
Java后端代码规范
命名约定
- 类名: 使用PascalCase,如
PmRepairOrderController - 方法名: 使用camelCase,如
updateRepairOrder - 常量: 使用UPPER_SNAKE_CASE,如
DEFAULT_PAGE_SIZE - 包名: 使用小写,如
org.dromara.hq.service
项目结构模式
org.dromara.zhxy.hq/
├── controller/ # 控制器层
├── service/ # 服务层
│ └── impl/ # 服务实现
├── mapper/ # 数据访问层
├── domain/ # 实体类
│ ├── vo/ # 视图对象
│ └── bo/ # 业务对象
└── config/ # 配置类
注解使用
- Controller:
@RestController,@RequestMapping - Service:
@Service,@Transactional - Mapper:
@Mapper - 权限校验:
@RequiresPermissions("hq:repair:list") - 日志记录:
@Log(title = "报修管理", businessType = BusinessType.UPDATE)
数据库设计规范
- 主键: 使用雪花ID
@TableId(type = IdType.ASSIGN_ID) - 基础字段: 继承
BaseEntity(id, create_time, create_by, update_time, update_by, tenant_id) - 命名: 使用下划线命名法,如
repair_order,user_name - 多租户: 所有业务表包含
tenant_id字段
Vue前端代码规范
命名约定
- 组件名: 使用PascalCase,如
RepairOrderList.vue - 文件名: 使用kebab-case,如
repair-order-list.vue - 变量名: 使用camelCase,如
repairOrderList - 常量: 使用UPPER_SNAKE_CASE,如
API_BASE_URL
组件结构
<template>
<!-- 模板内容 -->
</template>
<script setup lang="ts">
// 导入
// 类型定义
// 响应式数据
// 计算属性
// 生命周期钩子
// 方法定义
</script>
<style scoped>
/* 样式 */
</style>
TypeScript类型定义
- 接口命名: 使用PascalCase + Interface后缀,如
RepairOrderInterface - 类型导出: 统一在
types/目录管理 - API响应: 使用泛型
R<RepairOrderVo>
API调用规范
// API定义
export const getRepairOrderList = (params: RepairOrderQuery) => {
return request<RepairOrderVo[]>({
url: '/hq/repair/list',
method: 'get',
params
})
}
// 组件中使用
const { data, loading, refresh } = useRequest(getRepairOrderList)
通用开发规范
注释规范
/**
* 获取报修订单列表
*
* @param bo 查询条件
* @return 报修订单列表
* @author wuzilong
* @date 2025-07-01
*/
public List<PmRepairOrderVo> queryPageList(PmRepairOrderBo bo)
错误处理
- 后端: 使用统一异常处理
@ControllerAdvice - 前端: 使用统一的错误提示组件
- 日志记录: 使用
@Log注解记录关键操作
权限控制
- 接口级:
@RequiresPermissions("hq:repair:add") - 按钮级:
v-hasPermi="['hq:repair:edit']" - 数据级: 使用
@DataPermission注解
多租户规范
- 数据隔离: 自动注入
tenant_id条件 - 缓存隔离: 使用租户前缀
- 权限隔离: 基于租户的权限控制
国际化支持
- 前端: 使用
$t('message.key') - 后端: 使用
MessageUtils.message("key") - 配置文件: 统一在
i18n/目录管理
测试规范
- 单元测试: 使用JUnit 5 + Mockito
- 接口测试: 使用
@Test注解 - 覆盖率: 要求 >80%
文档规范
- API文档: 使用Swagger/OpenAPI注解自动生成
- 代码文档: 重要方法必须有JavaDoc
- 变更记录: 每次变更必须更新变更日志