feat: live module and jenkins pipeline to harbor deploy
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
package livechat
|
||||
|
||||
import (
|
||||
"context"
|
||||
biz "kra/internal/biz/livechat"
|
||||
"kra/internal/service/dto"
|
||||
)
|
||||
|
||||
type Service struct{ uc *biz.Usecase }
|
||||
|
||||
func NewService(uc *biz.Usecase) *Service { return &Service{uc: uc} }
|
||||
|
||||
func (s *Service) History(ctx context.Context, roomID uint, limit int) ([]*dto.LiveChatMessageResponse, error) {
|
||||
items, err := s.uc.ListRecent(ctx, roomID, limit)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
out := make([]*dto.LiveChatMessageResponse, 0, len(items))
|
||||
for _, item := range items {
|
||||
out = append(out, MessageResponse(item))
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func MessageResponse(item *biz.Message) *dto.LiveChatMessageResponse {
|
||||
return &dto.LiveChatMessageResponse{ID: item.ID, RoomID: item.RoomID, Type: item.Type, UserID: item.UserID, Username: item.Username, Nickname: item.Nickname, Avatar: item.Avatar, Content: item.Content, GiftID: item.GiftID, GiftName: item.GiftName, GiftIcon: item.GiftIcon, Quantity: item.Quantity, DiamondTotal: item.DiamondTotal, CreatedAt: item.CreatedAt}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
package livechat
|
||||
|
||||
import "github.com/google/wire"
|
||||
|
||||
var ProviderSet = wire.NewSet(NewService)
|
||||
Reference in New Issue
Block a user