package controller import ( "context" "easygoadmin/api/v1" "easygoadmin/internal/service" ) // ============================== {{.ModuleComment}}控制器 ============================== // C{{.ModelClass}} {{.ModuleComment}}控制器 // 薄层控制器,仅负责参数透传,业务逻辑由 service.{{.ModelClass}}() 处理 type C{{.ModelClass}} struct{} // Page {{.ModuleComment}}分页 // 按查询条件分页返回{{.ModuleComment}}列表 func (c *C{{.ModelClass}}) Page(ctx context.Context, req *v1.{{.ModelClass}}PageReq) (res *v1.{{.ModelClass}}PageRes, err error) { return service.{{.ModelClass}}().Page(ctx, req) } // List {{.ModuleComment}}平铺列表 // data 直接为数组,树形结构由前端 buildTree 构建 func (c *C{{.ModelClass}}) List(ctx context.Context, req *v1.{{.ModelClass}}ListReq) (res v1.{{.ModelClass}}ListRes, err error) { return service.{{.ModelClass}}().List(ctx, req) } // Detail {{.ModuleComment}}详情 // 按主键ID查询详情 func (c *C{{.ModelClass}}) Detail(ctx context.Context, req *v1.{{.ModelClass}}DetailReq) (res *v1.{{.ModelClass}}DetailRes, err error) { return service.{{.ModelClass}}().Detail(ctx, req) } // Add 新增{{.ModuleComment}} // 新增成功后返回新记录ID func (c *C{{.ModelClass}}) Add(ctx context.Context, req *v1.{{.ModelClass}}AddReq) (res *v1.{{.ModelClass}}IdRes, err error) { return service.{{.ModelClass}}().Add(ctx, req) } // Update 修改{{.ModuleComment}} // 按主键ID更新记录 func (c *C{{.ModelClass}}) Update(ctx context.Context, req *v1.{{.ModelClass}}UpdateReq) (res *v1.{{.ModelClass}}UpdateRes, err error) { return service.{{.ModelClass}}().Update(ctx, req) } {{- if .HasStatus}} // Status {{.ModuleComment}}状态 // 设置记录的状态字段 func (c *C{{.ModelClass}}) Status(ctx context.Context, req *v1.{{.ModelClass}}StatusReq) (res *v1.{{.ModelClass}}StatusRes, err error) { return service.{{.ModelClass}}().Status(ctx, req) } {{- end}} // Delete 删除{{.ModuleComment}} // 按主键ID删除单条记录 func (c *C{{.ModelClass}}) Delete(ctx context.Context, req *v1.{{.ModelClass}}DeleteReq) (res *v1.{{.ModelClass}}DeleteRes, err error) { return service.{{.ModelClass}}().Delete(ctx, req) } // BatchDelete 批量删除{{.ModuleComment}} // 按主键ID列表批量删除记录 func (c *C{{.ModelClass}}) BatchDelete(ctx context.Context, req *v1.{{.ModelClass}}BatchDeleteReq) (res *v1.{{.ModelClass}}BatchDeleteRes, err error) { return service.{{.ModelClass}}().BatchDelete(ctx, req) } {{- if .HasImport}} // Import 导入{{.ModuleComment}} // 接收上传的 xls/xlsx 文件并批量导入数据 func (c *C{{.ModelClass}}) Import(ctx context.Context, req *v1.{{.ModelClass}}ImportReq) (res *v1.{{.ModelClass}}ImportRes, err error) { return service.{{.ModelClass}}().Import(ctx, req) } {{- end}} {{- if .HasExport}} // Export 导出{{.ModuleComment}} // 按查询条件导出数据并返回文件访问地址 func (c *C{{.ModelClass}}) Export(ctx context.Context, req *v1.{{.ModelClass}}ExportReq) (res *v1.{{.ModelClass}}ExportRes, err error) { return service.{{.ModelClass}}().Export(ctx, req) } {{- end}}