本次提交包含多模块功能更新: 1. 权限系统重构:移除硬编码admin放行逻辑,新增精细化权限控制,完善权限树形结构与用户/角色保护 2. 新增物料导入导出接口,补充台账查询条件 3. 优化列表查询排序逻辑,新增区域编码大小写不敏感搜索 4. 修复帮助抽屉重复弹出问题,补充页面权限控制 5. 新增弱密码提示逻辑,优化MES/WMS用户/角色管理权限 6. 调整路由结构,新增权限校验脚本与前端权限树重构 7. 补充数据库字段与依赖包更新
43 lines
1.6 KiB
Go
43 lines
1.6 KiB
Go
package schema
|
||
|
||
import (
|
||
"entgo.io/ent"
|
||
"entgo.io/ent/dialect/entsql"
|
||
"entgo.io/ent/schema"
|
||
"entgo.io/ent/schema/field"
|
||
"entgo.io/ent/schema/index"
|
||
)
|
||
|
||
// Permission 权限/菜单
|
||
// 模型移植自 MES(schema/permission.go),按 WMS 约定调整字段命名与时间类型。
|
||
// type 区分两类:
|
||
// - MENU 菜单权限:对应侧栏菜单项,path 为前端路由
|
||
// - BUTTON 按钮权限:对应页面内的操作按钮,无 path
|
||
type Permission struct {
|
||
ent.Schema
|
||
}
|
||
|
||
func (Permission) Annotations() []schema.Annotation {
|
||
return []schema.Annotation{entsql.Annotation{Table: "permissions"}}
|
||
}
|
||
|
||
func (Permission) Fields() []ent.Field {
|
||
return []ent.Field{
|
||
field.String("code").Unique().MaxLen(64).Comment("权限编码,如 inbound:view"),
|
||
field.String("name").MaxLen(64).Comment("名称"),
|
||
field.String("type").Default("MENU").MaxLen(20).Comment("类型 MENU菜单/BUTTON按钮"),
|
||
field.String("parent_code").Default("").MaxLen(64).Optional().
|
||
Comment("所属菜单编码(BUTTON 填其所属 MENU 的 code;全局按钮填空)"),
|
||
field.String("path").Default("").MaxLen(128).Optional().Comment("前端路由(菜单类)"),
|
||
field.String("icon").Default("").MaxLen(64).Optional().Comment("图标(菜单类)"),
|
||
field.Int("sort").Default(0).Optional().Comment("排序"),
|
||
field.String("remark").Default("").MaxLen(255).Optional().Comment("备注"),
|
||
field.Int64("created_at").DefaultFunc(nowUnix).Comment("创建时间"),
|
||
field.Int64("updated_at").DefaultFunc(nowUnix).Comment("更新时间"),
|
||
}
|
||
}
|
||
|
||
func (Permission) Indexes() []ent.Index {
|
||
return []ent.Index{index.Fields("code").Unique()}
|
||
}
|