AI 生成规则
2026-08-06 14:10:11

数据库

表设计规范:表创建SQL请给每个字段提供备注,不能为null,且必须有默认值,下列类似的字段优先选中以下类型

1.时间戳 BIGINT(11)

2.操作人 VARCHAR(20) DEFAULT ''

3.JSON数据 text

4.自增ID int(11) NOT NULL AUTO_INCREMENT

5.状态 TINYINT(1) DEFAULT 0

6.删除标识is_deleted DEFAULT 0 COMMENT '0未删除/1已删除'

7.用户id bigint(20)

8.新表增加排序规则:COLLATE=utf8mb4_general_ci



代码编写

Store层

写法参考:helper/sql.go封装的方法


Router层

有接口文档约束时,接收参数和响应参数实现时尽量不要改动,若觉得有问题可以统一提出来和我对一下再行动

参数传递可以使用helper定义的结构体接收,像helper.Rangetime,helper.Pagenation。

router响应使用serialize 包,如 serialize.GinServerErrorResponse,serialize.GinBadParamsResponse,serialize.GinOkResponse(c, data)

打日志

对提交内容进行cr,并进行下面优化,对于逻辑改动较大的只提出修改建议

# 判断逻辑错误,隐患问题

# 优化日志输出:

1. 如果函数中多处日志打点处filed相同,可提取logCtx

2. 避免重复输出日志,如果调用函数内包含了日志,可以考虑不要日志

3. 日志需要看严重程度使用Info/warn/error

4. msg信息必须以函数名为开头,如果某一个函数调用了另外一个函数的日志需要都列出msg

5. 对于redis或sql查询,如果返回err为空行错误,则不要打印error日志

6.需要在关键的位置增加info日志,如涉及到:风控结果、AI生成结果

代码实现

结构体和参数定义不要使用int32,尽量都使用int,除非时间和id可以使用int64

新功能实现必须遵循:单一职责、开闭原则、接口隔离、最少知识

如果参数不到三个以上,方法不要传结构体

自定义err,err的msg,不要用英文,用成中文

Prev
2026-08-06 14:10:11
Next