import{_ as l,o as i,c as o,a2 as a}from"./chunks/framework.BbmSSMjL.js";const p=JSON.parse('{"title":"12.5 代码审查清单","description":"","frontmatter":{},"headers":[],"relativePath":"zh/standards/code-review.md","filePath":"zh/standards/code-review.md"}'),d={name:"zh/standards/code-review.md"};function c(t,e,r,s,n,u){return i(),o("div",null,[...e[0]||(e[0]=[a('
概述
代码审查(Code Review)是保证代码质量的重要环节。以下清单涵盖后端和前端的审查要点。
Model(业务模型位于 app/Models/)protected $table 显式指定表名(含前缀或与 DB_PREFIX 推导一致)SoftDeletesByFlag(is_delete 软删除)与 HasAuditColumns(审计字段)Trait$fillable 白名单完整(批量赋值字段)BaseService 或 BaseTenantService,树形模块不参与租户隔离)$modelClass 配置正确HasCrudOperations / HasQueryScopes / HasSerializeMaps / HasUniqueCheck / HasFileProcessing)pageLikeFields / pageEqFields)pageOrderBy / orderFieldAllow 白名单)uniqueFields)serializeMaps)fileFields / fileSaveDir)HasCrudOperations 已用 DB::transaction 包裹,自定义逻辑需补充)app/Http/Controllers/Api/,瘦控制器(参数获取 → 调 Service → 返回 JSON)#[Permission] 注解#[OperationLog] 注解sys:模块名:操作)JsonResponse,使用基类 success/fail/paginate/_page 等方法BaseRequest(failedValidation 统一抛出 code=1 响应)rules() 覆盖全部必填与格式字段config/file.php + FormRequest)#[Permission])getXxxPage / xxxAdd / xxxUpdate / xxxDelete)<script setup lang="ts"> 语法v-perm 指令(如 v-perm="['sys:example:add']",多权限全满足用 v-perms)#[Permission] 注解一致vendor/bin/pint --test(后端风格)与 pnpm lint:eslint(前端风格)