feat(trade): implement second-hand trading/flea market feature
Some checks failed
Build Backend / build-docker (pull_request) Has been cancelled
Build Backend / build (pull_request) Has been cancelled
Deploy / deploy (pull_request) Has been cancelled

Add complete trade functionality including:
- TradeItem, TradeImage, TradeFavorite models with auto-migration
- TradeRepository with CRUD and favorite operations
- TradeService with business logic for listing, creating, updating, status management
- TradeHandler with RESTful endpoints for trade operations
- DTOs and converters for request/response handling

Routes include: list, get by id, create, update, delete, status update, view recording, favorite/unfavorite.
This commit is contained in:
lafay
2026-04-26 15:20:26 +08:00
parent 1b50d6c792
commit 0ca02f7ef3
13 changed files with 1131 additions and 399 deletions

View File

@@ -34,6 +34,7 @@ var HandlerSet = wire.NewSet(
handler.NewVerificationHandler,
handler.NewAdminProfileAuditHandler,
handler.NewPostHandler,
handler.NewTradeHandler,
// 需要特殊处理的 Handler
ProvideUserHandler,

View File

@@ -46,6 +46,9 @@ var RepositorySet = wire.NewSet(
// 帖子内链引用关系
repository.NewPostRefRepository,
// 二手交易相关
repository.NewTradeRepository,
)
// ProvideUserActivityRepository 提供用户活跃数据仓储

View File

@@ -68,6 +68,9 @@ var ServiceSet = wire.NewSet(
// 帖子内链引用
ProvidePostRefService,
// 二手交易
ProvideTradeService,
// 日志服务
ProvideAsyncLogManager,
ProvideOperationLogService,
@@ -496,3 +499,7 @@ func ProvidePostRefService(
) service.PostRefService {
return service.NewPostRefService(refRepo, postRepo)
}
func ProvideTradeService(tradeRepo repository.TradeRepository) service.TradeService {
return service.NewTradeService(tradeRepo)
}