提交2: 发布群核心功能实现
- 实现 EnsureListingConversation: 发布时建发布群,发欢迎语+二维码 - 实现 AddRenterToListingConversation: 付款后拉租客进群 - 实现 RemoveRenterFromListingConversation: 订单终态移出租客 - 实现消息可见性过滤: 租客只能看到 joined_at 之后的消息 - listing 模块注入 ListingChatCreator 接口,发布时建群 - ListingDTO 新增 listing_group_conversation_id 字段 - 付款流程改为拉租客进发布群(替代建订单群) - 订单完成和取消时自动移出租客 - 创建 chat 适配器实现接口解耦 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -151,10 +151,7 @@ func New(cfg config.Config, deps Dependencies, logger *zap.Logger) *gin.Engine {
|
||||
}
|
||||
realnameService := realname.NewService(realnameRepo, newRealnameProvider(cfg, fieldEncryptor, logger), logger)
|
||||
realnameHandler := realname.NewHandler(realnameService)
|
||||
var listingRepo *listing.Repository
|
||||
if deps.DB != nil {
|
||||
listingRepo = listing.NewRepository(deps.DB)
|
||||
}
|
||||
|
||||
var chatHub *chathub.Hub
|
||||
if deps.DB != nil {
|
||||
chatHub = chathub.NewHub(deps.DB)
|
||||
@@ -163,6 +160,14 @@ func New(cfg config.Config, deps Dependencies, logger *zap.Logger) *gin.Engine {
|
||||
if deps.DB != nil {
|
||||
chatRepo = chat.NewRepository(deps.DB, chatHub)
|
||||
}
|
||||
|
||||
// 创建 chat 适配器用于 listing
|
||||
chatCreator := chat.NewListingChatCreatorAdapter()
|
||||
|
||||
var listingRepo *listing.Repository
|
||||
if deps.DB != nil {
|
||||
listingRepo = listing.NewRepository(deps.DB, chatCreator)
|
||||
}
|
||||
var paymentRepo *payment.Repository
|
||||
var orderRepo *order.Repository
|
||||
if deps.DB != nil {
|
||||
|
||||
Reference in New Issue
Block a user