Help us shape the future of Go! Take the 2026 Go Developer Survey

app/

directory
v0.32.24 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 27, 2026 License: Apache-2.0

README

app/ - 应用层(业务逻辑)

此目录存放业务逻辑代码,是整个应用的核心层。

目录结构

app/
└── {domain}/           # 按业务领域划分
    ├── service.go      # 服务实现
    ├── domain/         # 领域模型(可选)
    └── dto/            # 数据传输对象(可选)

职责

  • 实现核心业务逻辑
  • 协调多个 Repository 完成复杂操作
  • 事务管理
  • 业务规则验证

示例

// app/user/service.go
type Service struct {
    userRepo *dao.UserRepository
}

func NewService() *Service {
    return &Service{
        userRepo: dao.NewUserRepository(),
    }
}

func (s *Service) Create(ctx context.Context, req *CreateUserReq) (*model.UserResp, error) {
    // 业务逻辑...
}

依赖规则

  • 可以依赖:repo/、pkg/
  • 不应依赖:transport/、gen/
  • 应被依赖于:transport/、gen/http/handler/

Directories

Path Synopsis
auth.go 认证职责簇:管理员登录凭据校验与 JWT 签发(GenerateTokenForAdmin 属认证职责,单独成文件)。
auth.go 认证职责簇:管理员登录凭据校验与 JWT 签发(GenerateTokenForAdmin 属认证职责,单独成文件)。
Package anonymous 实现匿名取件 service(仿 vastsa/PigeonBox UX)。
Package anonymous 实现匿名取件 service(仿 vastsa/PigeonBox UX)。
storage.go — 分片物理操作的存储接缝(chunk 域)。
storage.go — 分片物理操作的存储接缝(chunk 域)。
config.go 站点配置模型与校验:SystemConfig/UserSettings 类型、默认值、 写库前校验(纯函数簇,自 admin 域原样迁入)。
config.go 站点配置模型与校验:SystemConfig/UserSettings 类型、默认值、 写库前校验(纯函数簇,自 admin 域原样迁入)。
directory.go — 联邦节点名录透传(2026-10-14 邀请信箱配套;2026-10-22 由 直传包搬入)。
directory.go — 联邦节点名录透传(2026-10-14 邀请信箱配套;2026-10-22 由 直传包搬入)。
Package mcp 实现 PigeonBox 的 Model Context Protocol (MCP) server。
Package mcp 实现 PigeonBox 的 Model Context Protocol (MCP) server。
Package moderation 内容审核钩子(治理 2026-10-03,方案 A:管控优先、审核留钩子)。
Package moderation 内容审核钩子(治理 2026-10-03,方案 A:管控优先、审核留钩子)。
Package notify 实现系统通知(管理员公告 + per-user 取件通知)service。
Package notify 实现系统通知(管理员公告 + per-user 取件通知)service。
Package oidc 实现 OIDC 单点登录(P2,stdlib-only,无第三方依赖)。
Package oidc 实现 OIDC 单点登录(P2,stdlib-only,无第三方依赖)。
Package presign 实现预签名上传 service。
Package presign 实现预签名上传 service。
Package preview 预览域服务:取件校验与预览生成/持久化的业务编排。
Package preview 预览域服务:取件校验与预览生成/持久化的业务编排。
Package request 寄件码/反向收件(P2):用户创建投递链接,访客凭链接上传, 文件以链接主人名义成为普通分享(复用分享过期/清理/通知机制)。
Package request 寄件码/反向收件(P2):用户创建投递链接,访客凭链接上传, 文件以链接主人名义成为普通分享(复用分享过期/清理/通知机制)。
秒传/去重的物理对象保护(2026-10-12,D1=A 同用户内去重)。
秒传/去重的物理对象保护(2026-10-12,D1=A 同用户内去重)。

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL