package service import ( "context" "easygoadmin/api/v1" ) // 按模块独立拆分(代码生成器产出)。 // logic 方法签名变更时需同步维护本文件(不再整体运行 gf gen service)。 // ============================== {{.ModuleComment}}服务接口 ============================== // I{{.ModelClass}} {{.ModuleComment}}服务接口 // 实现位于 internal/logic/{{.ModuleCamel}}.go type I{{.ModelClass}} interface { // Page {{.ModuleComment}}分页 // 按查询条件分页返回{{.ModuleComment}}列表 Page(ctx context.Context, req *v1.{{.ModelClass}}PageReq) (res *v1.{{.ModelClass}}PageRes, err error) // List {{.ModuleComment}}平铺列表 // data 直接为数组,树形结构由前端构建 List(ctx context.Context, req *v1.{{.ModelClass}}ListReq) (res v1.{{.ModelClass}}ListRes, err error) // Detail {{.ModuleComment}}详情 // 按主键ID查询详情 Detail(ctx context.Context, req *v1.{{.ModelClass}}DetailReq) (res *v1.{{.ModelClass}}DetailRes, err error) // Add 新增{{.ModuleComment}} // 新增成功后返回新记录ID Add(ctx context.Context, req *v1.{{.ModelClass}}AddReq) (res *v1.{{.ModelClass}}IdRes, err error) // Update 修改{{.ModuleComment}} // 按主键ID更新记录 Update(ctx context.Context, req *v1.{{.ModelClass}}UpdateReq) (res *v1.{{.ModelClass}}UpdateRes, err error) {{- if .HasStatus}} // Status {{.ModuleComment}}状态 // 设置记录的状态字段 Status(ctx context.Context, req *v1.{{.ModelClass}}StatusReq) (res *v1.{{.ModelClass}}StatusRes, err error) {{- end}} // Delete 删除{{.ModuleComment}} // 按主键ID删除单条记录 Delete(ctx context.Context, req *v1.{{.ModelClass}}DeleteReq) (res *v1.{{.ModelClass}}DeleteRes, err error) // BatchDelete 批量删除{{.ModuleComment}} // 按主键ID列表批量删除记录 BatchDelete(ctx context.Context, req *v1.{{.ModelClass}}BatchDeleteReq) (res *v1.{{.ModelClass}}BatchDeleteRes, err error) {{- if .HasImport}} // Import 导入{{.ModuleComment}} // 接收上传的 xls/xlsx 文件并批量导入数据 Import(ctx context.Context, req *v1.{{.ModelClass}}ImportReq) (res *v1.{{.ModelClass}}ImportRes, err error) {{- end}} {{- if .HasExport}} // Export 导出{{.ModuleComment}} // 按查询条件导出数据并返回文件访问地址 Export(ctx context.Context, req *v1.{{.ModelClass}}ExportReq) (res *v1.{{.ModelClass}}ExportRes, err error) {{- end}} } // local{{.ModelClass}} {{.ModuleComment}}服务实现实例 var local{{.ModelClass}} I{{.ModelClass}} // {{.ModelClass}} 获取{{.ModuleComment}}服务实例 func {{.ModelClass}}() I{{.ModelClass}} { if local{{.ModelClass}} == nil { panic("implement not found for interface I{{.ModelClass}}, forgot register?") } return local{{.ModelClass}} } // Register{{.ModelClass}} 注册{{.ModuleComment}}服务实现 func Register{{.ModelClass}}(i I{{.ModelClass}}) { local{{.ModelClass}} = i }