sqlx: add some logic implement 5%

r/paopao-ce-plus
Michael Li 2 years ago
parent fe11dae223
commit 2d0477cf65
No known key found for this signature in database

@ -88,8 +88,8 @@ type TweetInfo struct {
type TweetItem struct { type TweetItem struct {
ID int64 `json:"id"` ID int64 `json:"id"`
UserID int64 `json:"user_id"` UserID int64 `json:"user_id"`
User *UserInfo `json:"user"` User *UserInfo `db:"user" json:"user"`
Contents []*TweetBlock `json:"contents"` Contents []*TweetBlock `db:"-" json:"contents"`
CommentCount int64 `json:"comment_count"` CommentCount int64 `json:"comment_count"`
CollectionCount int64 `json:"collection_count"` CollectionCount int64 `json:"collection_count"`
UpvoteCount int64 `json:"upvote_count"` UpvoteCount int64 `json:"upvote_count"`

@ -38,7 +38,7 @@ type TweetManageService interface {
CreatePostCollection(postID, userID int64) (*ms.PostCollection, error) CreatePostCollection(postID, userID int64) (*ms.PostCollection, error)
DeletePostCollection(p *ms.PostCollection) error DeletePostCollection(p *ms.PostCollection) error
CreatePostContent(content *ms.PostContent) (*ms.PostContent, error) CreatePostContent(content *ms.PostContent) (*ms.PostContent, error)
CreateAttachment(obj *cs.Attachment) (int64, error) CreateAttachment(obj *ms.Attachment) (int64, error)
} }
// TweetHelpService 推文辅助服务 // TweetHelpService 推文辅助服务

@ -14,8 +14,8 @@ import (
type PostCollection struct { type PostCollection struct {
*Model *Model
Post *Post `json:"-"` Post *Post `json:"-"`
PostID int64 `json:"post_id"` PostID int64 `db:"post_id" json:"post_id"`
UserID int64 `json:"user_id"` UserID int64 `db:"user_id" json:"user_id"`
} }
func (p *PostCollection) Get(db *gorm.DB) (*PostCollection, error) { func (p *PostCollection) Get(db *gorm.DB) (*PostCollection, error) {

@ -44,7 +44,7 @@ type PostContent struct {
} }
type PostContentFormated struct { type PostContentFormated struct {
ID int64 `json:"id"` ID int64 `db:"id" json:"id"`
PostID int64 `json:"post_id"` PostID int64 `json:"post_id"`
Content string `json:"content"` Content string `json:"content"`
Type PostContentT `json:"type"` Type PostContentT `json:"type"`

@ -28,7 +28,7 @@ type User struct {
} }
type UserFormated struct { type UserFormated struct {
ID int64 `json:"id"` ID int64 `db:"id" json:"id"`
Nickname string `json:"nickname"` Nickname string `json:"nickname"`
Username string `json:"username"` Username string `json:"username"`
Status int `json:"status"` Status int `json:"status"`

@ -197,9 +197,9 @@ func (s *tweetManageSrv) CreatePostContent(content *ms.PostContent) (*ms.PostCon
return content.Create(s.db) return content.Create(s.db)
} }
func (s *tweetManageSrv) CreateAttachment(obj *cs.Attachment) (int64, error) { func (s *tweetManageSrv) CreateAttachment(obj *ms.Attachment) (int64, error) {
// TODO attachment, err := obj.Create(s.db)
return 0, debug.ErrNotImplemented return attachment.ID, err
} }
func (s *tweetManageSrv) CreatePost(post *ms.Post) (*ms.Post, error) { func (s *tweetManageSrv) CreatePost(post *ms.Post) (*ms.Post, error) {

@ -22,32 +22,27 @@ type contactManageSrv struct {
} }
func (s *contactManageSrv) RequestingFriend(userId int64, friendId int64, greetings string) (err error) { func (s *contactManageSrv) RequestingFriend(userId int64, friendId int64, greetings string) (err error) {
// TODO _, err = s.q.RejectFriend.Query(userId, friendId, greetings)
debug.NotImplemented() return
return nil
} }
func (s *contactManageSrv) AddFriend(userId int64, friendId int64) (err error) { func (s *contactManageSrv) AddFriend(userId int64, friendId int64) (err error) {
// TODO _, err = s.q.AddFriend.Exec(userId, friendId)
debug.NotImplemented() return
return nil
} }
func (s *contactManageSrv) RejectFriend(userId int64, friendId int64) (err error) { func (s *contactManageSrv) RejectFriend(userId int64, friendId int64) (err error) {
// TODO _, err = s.q.RejectFriend.Exec(userId, friendId)
debug.NotImplemented() return
return nil
} }
func (s *contactManageSrv) DeleteFriend(userId int64, friendId int64) (err error) { func (s *contactManageSrv) DeleteFriend(userId int64, friendId int64) (err error) {
// TODO _, err = s.q.DelFriend.Exec(userId, friendId)
debug.NotImplemented() return
return nil
} }
func (s *contactManageSrv) GetContacts(userId int64, offset int, limit int) (*ms.ContactList, error) { func (s *contactManageSrv) GetContacts(userId int64, offset int, limit int) (*ms.ContactList, error) {
// TODO // TODO
debug.NotImplemented()
return nil, nil return nil, nil
} }

@ -58,57 +58,140 @@ type tweetHelpSrvA struct {
// MergePosts post数据整合 // MergePosts post数据整合
func (s *tweetHelpSrv) MergePosts(posts []*ms.Post) ([]*ms.PostFormated, error) { func (s *tweetHelpSrv) MergePosts(posts []*ms.Post) ([]*ms.PostFormated, error) {
// TODO postIds := make([]int64, 0, len(posts))
debug.NotImplemented() userIds := make([]int64, 0, len(posts))
return nil, nil for _, post := range posts {
postIds = append(postIds, post.ID)
userIds = append(userIds, post.UserID)
}
postContents, err := s.getPostContentsByIDs(postIds)
if err != nil {
return nil, err
}
users, err := s.getUsersByIDs(userIds)
if err != nil {
return nil, err
}
userMap := make(map[int64]*dbr.UserFormated, len(users))
for _, user := range users {
userMap[user.ID] = user
}
contentMap := make(map[int64][]*dbr.PostContentFormated, len(postContents))
for _, content := range postContents {
contentMap[content.PostID] = append(contentMap[content.PostID], content)
}
// 数据整合
postsFormated := make([]*dbr.PostFormated, 0, len(posts))
for _, post := range posts {
postFormated := post.Format()
postFormated.User = userMap[post.UserID]
postFormated.Contents = contentMap[post.ID]
postsFormated = append(postsFormated, postFormated)
}
return postsFormated, nil
} }
// RevampPosts post数据整形修复 // RevampPosts post数据整形修复
func (s *tweetHelpSrv) RevampPosts(posts []*ms.PostFormated) ([]*ms.PostFormated, error) { func (s *tweetHelpSrv) RevampPosts(posts []*ms.PostFormated) ([]*ms.PostFormated, error) {
// TODO postIds := make([]int64, 0, len(posts))
debug.NotImplemented() userIds := make([]int64, 0, len(posts))
return nil, nil for _, post := range posts {
postIds = append(postIds, post.ID)
userIds = append(userIds, post.UserID)
}
postContents, err := s.getPostContentsByIDs(postIds)
if err != nil {
return nil, err
}
users, err := s.getUsersByIDs(userIds)
if err != nil {
return nil, err
}
userMap := make(map[int64]*dbr.UserFormated, len(users))
for _, user := range users {
userMap[user.ID] = user
}
contentMap := make(map[int64][]*dbr.PostContentFormated, len(postContents))
for _, content := range postContents {
contentMap[content.PostID] = append(contentMap[content.PostID], content)
}
// 数据整合
for _, post := range posts {
post.User = userMap[post.UserID]
post.Contents = contentMap[post.ID]
}
return posts, nil
} }
func (s *tweetHelpSrv) getPostContentsByIDs(ids []int64) ([]*dbr.PostContent, error) { func (s *tweetHelpSrv) getPostContentsByIDs(ids []int64) ([]*dbr.PostContentFormated, error) {
// TODO res := []*dbr.PostContentFormated{}
debug.NotImplemented() err := s.inSelect(s.db, &res, s.q.GetPostContentByIds, ids)
return nil, nil return res, err
} }
func (s *tweetHelpSrv) getUsersByIDs(ids []int64) ([]*dbr.User, error) { func (s *tweetHelpSrv) getUsersByIDs(ids []int64) ([]*dbr.UserFormated, error) {
// TODO res := []*dbr.UserFormated{}
debug.NotImplemented() err := s.inSelect(s.db, &res, s.q.GetUsersByIds, ids)
return nil, nil return res, err
} }
func (s *tweetManageSrv) CreatePostCollection(postID, userID int64) (*ms.PostCollection, error) { func (s *tweetManageSrv) CreatePostCollection(postID, userID int64) (*ms.PostCollection, error) {
// TODO res, err := s.q.AddPostCollection.Exec(postID, userID)
debug.NotImplemented() if err != nil {
return nil, nil return nil, err
}
id, err := res.LastInsertId()
if err != nil {
return nil, err
}
return &ms.PostCollection{
Model: &dbr.Model{
ID: id,
},
PostID: postID,
UserID: userID,
}, nil
} }
func (s *tweetManageSrv) DeletePostCollection(p *ms.PostCollection) error { func (s *tweetManageSrv) DeletePostCollection(r *ms.PostCollection) error {
// TODO _, err := s.q.DelPostCollection.Exec(r.ID)
debug.NotImplemented() return err
return nil
} }
func (s *tweetManageSrv) CreatePostContent(content *ms.PostContent) (*ms.PostContent, error) { func (s *tweetManageSrv) CreatePostContent(r *ms.PostContent) (*ms.PostContent, error) {
// TODO res, err := s.q.AddPostContent.Exec(r.PostID, r.UserID, r.Content, r.Type, r.Sort)
debug.NotImplemented() if err != nil {
return nil, nil return nil, err
}
r.Model = &dbr.Model{}
r.ID, err = res.LastInsertId()
if err != nil {
return nil, err
}
return r, nil
} }
func (s *tweetManageSrv) CreateAttachment(obj *cs.Attachment) (int64, error) { func (s *tweetManageSrv) CreateAttachment(r *ms.Attachment) (int64, error) {
// TODO res, err := s.q.AddAttachment.Exec(r.UserID, r.FileSize, r.ImgWidth, r.ImgHeight, r.Type, r.Content)
return 0, debug.ErrNotImplemented if err != nil {
return 0, err
}
return res.LastInsertId()
} }
func (s *tweetManageSrv) CreatePost(post *ms.Post) (*ms.Post, error) { func (s *tweetManageSrv) CreatePost(r *ms.Post) (*ms.Post, error) {
// TODO res, err := s.q.AddPost.Exec(r.UserID, r.Visibility, r.Tags, r.AttachmentPrice, r.IP, r.IPLoc)
debug.NotImplemented() if err != nil {
return nil, nil return nil, err
}
if id, err := res.LastInsertId(); err == nil {
r.Model = &dbr.Model{
ID: id,
}
} else {
return nil, err
}
return r, nil
} }
func (s *tweetManageSrv) DeletePost(post *ms.Post) ([]string, error) { func (s *tweetManageSrv) DeletePost(post *ms.Post) ([]string, error) {
@ -117,164 +200,193 @@ func (s *tweetManageSrv) DeletePost(post *ms.Post) ([]string, error) {
return nil, nil return nil, nil
} }
func (s *tweetManageSrv) LockPost(post *ms.Post) error { func (s *tweetManageSrv) LockPost(r *ms.Post) error {
// TODO _, err := s.q.LockPost.Exec(r.ID)
debug.NotImplemented() return err
return nil
} }
func (s *tweetManageSrv) StickPost(post *ms.Post) error { func (s *tweetManageSrv) StickPost(r *ms.Post) error {
// TODO _, err := s.q.StickPost.Exec(r.ID)
debug.NotImplemented() return err
return nil
} }
func (s *tweetManageSrv) VisiblePost(post *ms.Post, visibility core.PostVisibleT) error { func (s *tweetManageSrv) VisiblePost(r *ms.Post, visibility core.PostVisibleT) error {
// TODO _, err := s.q.VisiblePost.Exec(r.ID, visibility)
debug.NotImplemented() return err
return nil
} }
func (s *tweetManageSrv) UpdatePost(post *ms.Post) error { func (s *tweetManageSrv) UpdatePost(r *ms.Post) error {
// TODO if _, err := s.q.UpdatePost.Exec(r.CommentCount, r.UpvoteCount, r.ID); err != nil {
debug.NotImplemented() return err
}
s.cis.SendAction(core.IdxActUpdatePost, r)
return nil return nil
} }
func (s *tweetManageSrv) CreatePostStar(postID, userID int64) (*ms.PostStar, error) { func (s *tweetManageSrv) CreatePostStar(postID, userID int64) (*ms.PostStar, error) {
// TODO res, err := s.q.AddPostStar.Exec(postID, userID)
debug.NotImplemented() if err != nil {
return nil, nil return nil, err
}
id, err := res.LastInsertId()
if err != nil {
return nil, err
}
return &ms.PostStar{
Model: &dbr.Model{
ID: id,
},
PostID: postID,
UserID: userID,
}, nil
} }
func (s *tweetManageSrv) DeletePostStar(p *ms.PostStar) error { func (s *tweetManageSrv) DeletePostStar(r *ms.PostStar) error {
// TODO _, err := s.q.DelPostStar.Exec(r.ID)
debug.NotImplemented() return err
return nil
} }
func (s *tweetSrv) GetPostByID(id int64) (*ms.Post, error) { func (s *tweetSrv) GetPostByID(id int64) (*ms.Post, error) {
// TODO res := &ms.Post{}
debug.NotImplemented() err := s.q.GetPostById.Get(res, id)
return nil, nil return res, err
} }
func (s *tweetSrv) GetPosts(conditions *ms.ConditionsT, offset, limit int) ([]*ms.Post, error) { func (s *tweetSrv) GetPosts(conditions *ms.ConditionsT, offset, limit int) ([]*ms.Post, error) {
// TODO // TODO 需要精细化接口
debug.NotImplemented() debug.NotImplemented()
return nil, nil return nil, nil
} }
func (s *tweetSrv) GetPostCount(conditions *ms.ConditionsT) (int64, error) { func (s *tweetSrv) GetPostCount(conditions *ms.ConditionsT) (int64, error) {
// TODO // TODO 需要精细化接口
debug.NotImplemented() debug.NotImplemented()
return 0, nil return 0, nil
} }
func (s *tweetSrv) GetUserPostStar(postID, userID int64) (*ms.PostStar, error) { func (s *tweetSrv) GetUserPostStar(postID, userID int64) (*ms.PostStar, error) {
// TODO res := &ms.PostStar{}
debug.NotImplemented() err := s.q.GetUserPostStar.Get(res, postID, userID)
return nil, nil return res, err
} }
func (s *tweetSrv) GetUserPostStars(userID int64, offset, limit int) ([]*ms.PostStar, error) { func (s *tweetSrv) GetUserPostStars(userID int64, offset, limit int) ([]*ms.PostStar, error) {
// TODO res := []*ms.PostStar{}
debug.NotImplemented() err := s.q.GetUserPostStar.Select(&res, userID, limit, offset)
return nil, nil return res, err
} }
func (s *tweetSrv) GetUserPostStarCount(userID int64) (int64, error) { func (s *tweetSrv) GetUserPostStarCount(userID int64) (res int64, err error) {
// TODO err = s.q.GetUserPostStarCount.Get(&res, userID)
debug.NotImplemented() return
return 0, nil
} }
func (s *tweetSrv) GetUserPostCollection(postID, userID int64) (*ms.PostCollection, error) { func (s *tweetSrv) GetUserPostCollection(postID, userID int64) (*ms.PostCollection, error) {
// TODO res := &ms.PostCollection{}
debug.NotImplemented() err := s.q.GetUserPostCollection.Get(res, postID, userID)
return nil, nil return res, err
} }
func (s *tweetSrv) GetUserPostCollections(userID int64, offset, limit int) ([]*ms.PostCollection, error) { func (s *tweetSrv) GetUserPostCollections(userID int64, offset, limit int) ([]*ms.PostCollection, error) {
// TODO res := []*ms.PostCollection{}
debug.NotImplemented() err := s.q.GetUserPostCollections.Select(&res, userID, limit, offset)
return nil, nil return res, err
}
func (s *tweetSrv) GetUserPostCollectionCount(userID int64) (int64, error) {
// TODO
debug.NotImplemented()
return 0, nil
}
func (s *tweetSrv) GetUserWalletBills(userID int64, offset, limit int) ([]*ms.WalletStatement, error) {
// TODO
debug.NotImplemented()
return nil, nil
} }
func (s *tweetSrv) GetUserWalletBillCount(userID int64) (int64, error) { func (s *tweetSrv) GetUserPostCollectionCount(userID int64) (res int64, err error) {
// TODO err = s.q.GetUserPostCollectionCount.Get(&res)
debug.NotImplemented() return
return 0, nil
} }
func (s *tweetSrv) GetPostAttatchmentBill(postID, userID int64) (*ms.PostAttachmentBill, error) { func (s *tweetSrv) GetPostAttatchmentBill(postID, userID int64) (*ms.PostAttachmentBill, error) {
// TODO res := &ms.PostAttachmentBill{}
debug.NotImplemented() err := s.q.GetPostAttachmentBill.Get(res, postID, userID)
return nil, nil return res, err
} }
func (s *tweetSrv) GetPostContentsByIDs(ids []int64) ([]*ms.PostContent, error) { func (s *tweetSrv) GetPostContentsByIDs(ids []int64) ([]*ms.PostContent, error) {
// TODO res := []*ms.PostContent{}
debug.NotImplemented() err := s.inSelect(s.db, &res, s.q.GetPostContetnsByIds, ids)
return nil, nil return res, err
} }
func (s *tweetSrv) GetPostContentByID(id int64) (*ms.PostContent, error) { func (s *tweetSrv) GetPostContentByID(id int64) (*ms.PostContent, error) {
// TODO res := &ms.PostContent{}
debug.NotImplemented() err := s.q.GetPostContentById.Get(res, id)
return nil, nil return res, err
} }
func (s *tweetSrvA) TweetInfoById(id int64) (*cs.TweetInfo, error) { func (s *tweetSrvA) TweetInfoById(id int64) (*cs.TweetInfo, error) {
// TODO res := &cs.TweetInfo{}
return nil, debug.ErrNotImplemented err := s.q.TweetInfoById.Get(res, id)
return res, err
} }
func (s *tweetSrvA) TweetItemById(id int64) (*cs.TweetItem, error) { func (s *tweetSrvA) TweetItemById(id int64) (*cs.TweetItem, error) {
// TODO res := &cs.TweetItem{}
return nil, debug.ErrNotImplemented err := s.q.TweetItemById.Get(res, id)
if err != nil {
return nil, err
}
// TODO need add contents info to res
return res, nil
}
func (s *tweetSrvA) UserTweets(visitorId, userId int64) (res cs.TweetList, err error) {
res = cs.TweetList{}
switch s.checkRelationBy(visitorId, userId) {
case 0: // admin
err = s.q.UserTweetsByAdmin.Select(&res, userId)
case 1: // self
err = s.q.UserTweetsBySelf.Select(&res, userId)
case 2: // friend
err = s.q.UserTweetsByFriend.Select(&res, userId)
case 3: // follower
fallthrough
default: // guest
err = s.q.UserTweetsByGuest.Select(&res, userId)
}
if err != nil {
return nil, err
}
// TODO need add contents info to res
return res, nil
} }
func (s *tweetSrvA) UserTweets(visitorId, userId int64) (cs.TweetList, error) { // checkRelationBy check the relation of visitor with user
func (s *tweetSrvA) checkRelationBy(visitorId, userId int64) uint {
// TODO // TODO
return nil, debug.ErrNotImplemented return 0
} }
func (s *tweetSrvA) ReactionByTweetId(userId int64, tweetId int64) (*cs.ReactionItem, error) { func (s *tweetSrvA) ReactionByTweetId(userId int64, tweetId int64) (*cs.ReactionItem, error) {
// TODO res := &cs.ReactionItem{}
return nil, debug.ErrNotImplemented err := s.q.ReactionByTweetId.Get(res, userId, tweetId)
return res, err
} }
func (s *tweetSrvA) UserReactions(userId int64, limit int, offset int) (cs.ReactionList, error) { func (s *tweetSrvA) UserReactions(userId int64, limit int, offset int) (cs.ReactionList, error) {
// TODO res := cs.ReactionList{}
return nil, debug.ErrNotImplemented err := s.q.UserReactions.Select(&res, userId)
return res, err
} }
func (s *tweetSrvA) FavoriteByTweetId(userId int64, tweetId int64) (*cs.FavoriteItem, error) { func (s *tweetSrvA) FavoriteByTweetId(userId int64, tweetId int64) (*cs.FavoriteItem, error) {
// TODO res := &cs.FavoriteItem{}
return nil, debug.ErrNotImplemented err := s.q.FavoriteByTweetId.Get(res, userId, tweetId)
return res, err
} }
func (s *tweetSrvA) UserFavorites(userId int64, limit int, offset int) (cs.FavoriteList, error) { func (s *tweetSrvA) UserFavorites(userId int64, limit int, offset int) (cs.FavoriteList, error) {
// TODO res := cs.FavoriteList{}
return nil, debug.ErrNotImplemented err := s.q.UserFavorites.Select(&res, userId)
return res, err
} }
func (s *tweetSrvA) AttachmentByTweetId(userId int64, tweetId int64) (*cs.AttachmentBill, error) { func (s *tweetSrvA) AttachmentByTweetId(userId int64, tweetId int64) (*cs.AttachmentBill, error) {
// TODO res := &cs.AttachmentBill{}
return nil, debug.ErrNotImplemented err := s.q.AttachmentByTweetId.Get(res, userId, tweetId)
return res, err
} }
func (s *tweetManageSrvA) CreateAttachment(obj *cs.Attachment) (int64, error) { func (s *tweetManageSrvA) CreateAttachment(obj *cs.Attachment) (int64, error) {

@ -8,8 +8,8 @@ import (
"github.com/jmoiron/sqlx" "github.com/jmoiron/sqlx"
"github.com/rocboss/paopao-ce/internal/core" "github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/ms" "github.com/rocboss/paopao-ce/internal/core/ms"
"github.com/rocboss/paopao-ce/internal/dao/jinzhu/dbr"
"github.com/rocboss/paopao-ce/internal/dao/sakila/yesql/cc" "github.com/rocboss/paopao-ce/internal/dao/sakila/yesql/cc"
"github.com/rocboss/paopao-ce/pkg/debug"
) )
var ( var (
@ -22,45 +22,48 @@ type userManageSrv struct {
} }
func (s *userManageSrv) GetUserByID(id int64) (*ms.User, error) { func (s *userManageSrv) GetUserByID(id int64) (*ms.User, error) {
// TODO res := &ms.User{}
debug.NotImplemented() err := s.q.GetUserById.Get(res, id)
return nil, nil return res, err
} }
func (s *userManageSrv) GetUserByUsername(username string) (*ms.User, error) { func (s *userManageSrv) GetUserByUsername(username string) (*ms.User, error) {
// TODO res := &ms.User{}
debug.NotImplemented() err := s.q.GetUserByUsername.Get(res, username)
return nil, nil return res, err
} }
func (s *userManageSrv) GetUserByPhone(phone string) (*ms.User, error) { func (s *userManageSrv) GetUserByPhone(phone string) (*ms.User, error) {
// TODO res := &ms.User{}
debug.NotImplemented() err := s.q.GetUserByPhone.Get(res, phone)
return nil, nil return res, err
} }
func (s *userManageSrv) GetUsersByIDs(ids []int64) ([]*ms.User, error) { func (s *userManageSrv) GetUsersByIDs(ids []int64) ([]*ms.User, error) {
// TODO res := []*ms.User{}
debug.NotImplemented() err := s.inSelect(s.db, &res, s.q.GetUsersByIds, ids)
return nil, nil return res, err
} }
func (s *userManageSrv) GetUsersByKeyword(keyword string) ([]*ms.User, error) { func (s *userManageSrv) GetUsersByKeyword(keyword string) ([]*ms.User, error) {
// TODO res := []*ms.User{}
debug.NotImplemented() err := s.q.GetUsersByKeyword.Select(&res, keyword)
return nil, nil return res, err
} }
func (s *userManageSrv) CreateUser(user *ms.User) (*ms.User, error) { func (s *userManageSrv) CreateUser(r *ms.User) (*ms.User, error) {
// TODO res, err := s.q.AddUser.Exec(r.Username, r.Nickname, r.Password, r.Salt, r.Avatar)
debug.NotImplemented() if err != nil {
return nil, nil return nil, err
}
r.Model = &dbr.Model{}
r.ID, err = res.LastInsertId()
return r, err
} }
func (s *userManageSrv) UpdateUser(user *ms.User) error { func (s *userManageSrv) UpdateUser(r *ms.User) error {
// TODO _, err := s.q.UpdateUser.Exec(r.Nickname, r.Password, r.Salt, r.Phone, r.Status)
debug.NotImplemented() return err
return nil
} }
func newUserManageService(db *sqlx.DB) core.UserManageService { func newUserManageService(db *sqlx.DB) core.UserManageService {

@ -12,38 +12,83 @@ import (
) )
const ( const (
_UserInfo_AuthorizationManage = `SELECT * FROM @user WHERE username=?` _UserInfo_AuthorizationManage = `SELECT * FROM @user WHERE username=?`
_UserInfo_CommentManage = `SELECT * FROM @user WHERE username=?` _UserInfo_CommentManage = `SELECT * FROM @user WHERE username=?`
_UserInfo_Comment = `SELECT * FROM @user WHERE username=?` _UserInfo_Comment = `SELECT * FROM @user WHERE username=?`
_UserInfo_ContactManager = `SELECT * FROM @user WHERE username=?` _AddFriend_ContactManager = `SELECT * FROM @user WHERE username=?`
_UserInfo_FollowIndexA = `SELECT * FROM @user WHERE username=?` _DelFriend_ContactManager = `SELECT * FROM @user WHERE username=?`
_UserInfo_FollowIndex = `SELECT * FROM @user WHERE username=?` _GetContacts_ContactManager = `SELECT * FROM @user WHERE username=?`
_UserInfo_FriendIndexA = `SELECT * FROM @user WHERE username=?` _IsFriend_ContactManager = `SELECT * FROM @user WHERE username=?`
_UserInfo_FriendIndex = `SELECT * FROM @user WHERE username=?` _RejectFriend_ContactManager = `SELECT * FROM @user WHERE username=?`
_UserInfo_LightIndexA = `SELECT * FROM @user WHERE username=?` _RequestingFriend_ContactManager = `SELECT * FROM @user WHERE username=?`
_UserInfo_LightIndex = `SELECT * FROM @user WHERE username=?` _UserInfo_FollowIndexA = `SELECT * FROM @user WHERE username=?`
_UserInfo_Message = `SELECT * FROM @user WHERE username=?` _UserInfo_FollowIndex = `SELECT * FROM @user WHERE username=?`
_UserInfo_Security = `SELECT * FROM @user WHERE username=?` _UserInfo_FriendIndexA = `SELECT * FROM @user WHERE username=?`
_UserInfo_SimpleIndexA = `SELECT * FROM @user WHERE username=?` _UserInfo_FriendIndex = `SELECT * FROM @user WHERE username=?`
_UserInfo_SimpleIndex = `SELECT * FROM @user WHERE username=?` _UserInfo_LightIndexA = `SELECT * FROM @user WHERE username=?`
_DecrTagsById_TopicA = `UPDATE @tag SET quote_num=quote_num-1, modified_on=? WHERE id IN (?)` _UserInfo_LightIndex = `SELECT * FROM @user WHERE username=?`
_HotTags_TopicA = `SELECT t.id id, t.user_id user_id, t.tag tag, t.quote_num quote_num, u.id, u.nickname, u.username, u.status, u.avatar, u.is_admin FROM @tag t JOIN @user u ON t.user_id = u.id WHERE t.is_del = 0 AND t.quote_num > 0 ORDER BY t.quote_num DESC LIMIT ? OFFSET ?` _UserInfo_Message = `SELECT * FROM @user WHERE username=?`
_IncrTagsById_TopicA = `UPDATE @tag SET quote_num=quote_num+1, is_del=0, modified_on=? WHERE id IN (?)` _UserInfo_Security = `SELECT * FROM @user WHERE username=?`
_InsertTag_TopicA = `INSERT INTO @tag (user_id, tag, created_on, modified_on, quote_num) VALUES (?, ?, ?, ?, 1)` _UserInfo_SimpleIndexA = `SELECT * FROM @user WHERE username=?`
_NewestTags_TopicA = `SELECT t.id id, t.user_id user_id, t.tag tag, t.quote_num quote_num, u.id, u.nickname, u.username, u.status, u.avatar, u.is_admin FROM @tag t JOIN @user u ON t.user_id = u.id WHERE t.is_del = 0 AND t.quote_num > 0 ORDER BY t.id DESC LIMIT ? OFFSET ?` _UserInfo_SimpleIndex = `SELECT * FROM @user WHERE username=?`
_TagsByIdA_TopicA = `SELECT id FROM @tag WHERE id IN (?) AND is_del = 0 AND quote_num > 0` _DecrTagsById_TopicA = `UPDATE @tag SET quote_num=quote_num-1, modified_on=? WHERE id IN (?)`
_TagsByIdB_TopicA = `SELECT id, user_id, tag, quote_num FROM @tag WHERE id IN (?)` _HotTags_TopicA = `SELECT t.id id, t.user_id user_id, t.tag tag, t.quote_num quote_num, u.id, u.nickname, u.username, u.status, u.avatar, u.is_admin FROM @tag t JOIN @user u ON t.user_id = u.id WHERE t.is_del = 0 AND t.quote_num > 0 ORDER BY t.quote_num DESC LIMIT ? OFFSET ?`
_TagsByKeywordA_TopicA = `SELECT id, user_id, tag, quote_num FROM @tag WHERE is_del = 0 ORDER BY quote_num DESC LIMIT 6` _IncrTagsById_TopicA = `UPDATE @tag SET quote_num=quote_num+1, is_del=0, modified_on=? WHERE id IN (?)`
_TagsByKeywordB_TopicA = `SELECT id, user_id, tag, quote_num FROM @tag WHERE is_del = 0 AND tag LIKE ? ORDER BY quote_num DESC LIMIT 6` _InsertTag_TopicA = `INSERT INTO @tag (user_id, tag, created_on, modified_on, quote_num) VALUES (?, ?, ?, ?, 1)`
_TagsForIncr_TopicA = `SELECT id, user_id, tag, quote_num FROM @tag WHERE tag IN (?)` _NewestTags_TopicA = `SELECT t.id id, t.user_id user_id, t.tag tag, t.quote_num quote_num, u.id, u.nickname, u.username, u.status, u.avatar, u.is_admin FROM @tag t JOIN @user u ON t.user_id = u.id WHERE t.is_del = 0 AND t.quote_num > 0 ORDER BY t.id DESC LIMIT ? OFFSET ?`
_UserInfo_TweetA = `SELECT * FROM @user WHERE username=?` _TagsByIdA_TopicA = `SELECT id FROM @tag WHERE id IN (?) AND is_del = 0 AND quote_num > 0`
_UserInfo_TweetHelpA = `SELECT * FROM @user WHERE username=?` _TagsByIdB_TopicA = `SELECT id, user_id, tag, quote_num FROM @tag WHERE id IN (?)`
_UserInfo_TweetHelp = `SELECT * FROM @user WHERE username=?` _TagsByKeywordA_TopicA = `SELECT id, user_id, tag, quote_num FROM @tag WHERE is_del = 0 ORDER BY quote_num DESC LIMIT 6`
_UserInfo_TweetManageA = `SELECT * FROM @user WHERE username=?` _TagsByKeywordB_TopicA = `SELECT id, user_id, tag, quote_num FROM @tag WHERE is_del = 0 AND tag LIKE ? ORDER BY quote_num DESC LIMIT 6`
_UserInfo_TweetManage = `SELECT * FROM @user WHERE username=?` _TagsForIncr_TopicA = `SELECT id, user_id, tag, quote_num FROM @tag WHERE tag IN (?)`
_UserInfo_Tweet = `SELECT * FROM @user WHERE username=?` _AttachmentByTweetId_TweetA = `SELECT * FROM @user WHERE username=?`
_UserInfo_UserManage = `SELECT * FROM @user WHERE username=?` _FavoriteByTweetId_TweetA = `SELECT * FROM @user WHERE username=?`
_UserInfo_Wallet = `SELECT * FROM @user WHERE username=?` _ReactionByTweetId_TweetA = `SELECT * FROM @user WHERE username=?`
_TweetInfoById_TweetA = `SELECT * FROM @user WHERE username=?`
_TweetItemById_TweetA = `SELECT * FROM @user WHERE username=?`
_UserFavorites_TweetA = `SELECT * FROM @user WHERE username=?`
_UserInfo_TweetA = `SELECT * FROM @user WHERE username=?`
_UserReactions_TweetA = `SELECT * FROM @user WHERE username=?`
_UserTweetsByAdmin_TweetA = `SELECT * FROM @user WHERE username=?`
_UserTweetsByFriend_TweetA = `SELECT * FROM @user WHERE username=?`
_UserTweetsByGuest_TweetA = `SELECT * FROM @user WHERE username=?`
_UserTweetsBySelf_TweetA = `SELECT * FROM @user WHERE username=?`
_GetPostAttachmentBill_Tweet = `SELECT * FROM @user WHERE username=?`
_GetPostById_Tweet = `SELECT * FROM @user WHERE username=?`
_GetPostContentById_Tweet = `SELECT * FROM @user WHERE username=?`
_GetPostContetnsByIds_Tweet = `SELECT id, user_id, tag, quote_num FROM @tag WHERE tag IN (?)`
_GetPostCount_Tweet = `SELECT * FROM @user WHERE username=?`
_GetPosts_Tweet = `SELECT * FROM @user WHERE username=?`
_GetUserPostCollection_Tweet = `SELECT * FROM @user WHERE username=?`
_GetUserPostCollectionCount_Tweet = `SELECT * FROM @user WHERE username=?`
_GetUserPostCollections_Tweet = `SELECT * FROM @user WHERE username=?`
_GetUserPostStar_Tweet = `SELECT * FROM @user WHERE username=?`
_GetUserPostStarCount_Tweet = `SELECT * FROM @user WHERE username=?`
_GetUserPostStars_Tweet = `SELECT * FROM @user WHERE username=?`
_UserInfo_TweetHelpA = `SELECT * FROM @user WHERE username=?`
_GetPostContentByIds_TweetHelp = `SELECT * FROM @user WHERE username=?`
_GetUsersByIds_TweetHelp = `SELECT * FROM @user WHERE username=?`
_UserInfo_TweetManageA = `SELECT * FROM @user WHERE username=?`
_AddAttachment_TweetManage = `SELECT * FROM @user WHERE username=?`
_AddPost_TweetManage = `SELECT * FROM @user WHERE username=?`
_AddPostCollection_TweetManage = `SELECT * FROM @user WHERE username=?`
_AddPostContent_TweetManage = `SELECT * FROM @user WHERE username=?`
_AddPostStar_TweetManage = `SELECT * FROM @user WHERE username=?`
_DelPost_TweetManage = `SELECT * FROM @user WHERE username=?`
_DelPostCollection_TweetManage = `SELECT * FROM @user WHERE username=?`
_DelPostStar_TweetManage = `SELECT * FROM @user WHERE username=?`
_LockPost_TweetManage = `SELECT * FROM @user WHERE username=?`
_StickPost_TweetManage = `SELECT * FROM @user WHERE username=?`
_UpdatePost_TweetManage = `SELECT * FROM @user WHERE username=?`
_VisiblePost_TweetManage = `SELECT * FROM @user WHERE username=?`
_AddUser_UserManage = `SELECT * FROM @user WHERE username=?`
_GetUserById_UserManage = `SELECT * FROM @user WHERE username=?`
_GetUserByPhone_UserManage = `SELECT * FROM @user WHERE username=?`
_GetUserByUsername_UserManage = `SELECT * FROM @user WHERE username=?`
_GetUsersByIds_UserManage = `SELECT * FROM @user WHERE username=?`
_GetUsersByKeyword_UserManage = `SELECT * FROM @user WHERE username=?`
_UpdateUser_UserManage = `SELECT * FROM @user WHERE username=?`
_UserInfo_Wallet = `SELECT * FROM @user WHERE username=?`
) )
type AuthorizationManage struct { type AuthorizationManage struct {
@ -62,8 +107,13 @@ type CommentManage struct {
} }
type ContactManager struct { type ContactManager struct {
yesql.Namespace `yesql:"contact_manager"` yesql.Namespace `yesql:"contact_manager"`
UserInfo *sqlx.Stmt `yesql:"user_info"` AddFriend *sqlx.Stmt `yesql:"add_friend"`
DelFriend *sqlx.Stmt `yesql:"del_friend"`
GetContacts *sqlx.Stmt `yesql:"get_contacts"`
IsFriend *sqlx.Stmt `yesql:"is_friend"`
RejectFriend *sqlx.Stmt `yesql:"reject_friend"`
RequestingFriend *sqlx.Stmt `yesql:"requesting_friend"`
} }
type FollowIndex struct { type FollowIndex struct {
@ -131,18 +181,41 @@ type TopicA struct {
} }
type Tweet struct { type Tweet struct {
yesql.Namespace `yesql:"tweet"` yesql.Namespace `yesql:"tweet"`
UserInfo *sqlx.Stmt `yesql:"user_info"` GetPostContetnsByIds string `yesql:"get_post_contetns_by_ids"`
GetPostAttachmentBill *sqlx.Stmt `yesql:"get_post_attachment_bill"`
GetPostById *sqlx.Stmt `yesql:"get_post_by_id"`
GetPostContentById *sqlx.Stmt `yesql:"get_post_content_by_id"`
GetPostCount *sqlx.Stmt `yesql:"get_post_count"`
GetPosts *sqlx.Stmt `yesql:"get_posts"`
GetUserPostCollection *sqlx.Stmt `yesql:"get_user_post_collection"`
GetUserPostCollectionCount *sqlx.Stmt `yesql:"get_user_post_collection_count"`
GetUserPostCollections *sqlx.Stmt `yesql:"get_user_post_collections"`
GetUserPostStar *sqlx.Stmt `yesql:"get_user_post_star"`
GetUserPostStarCount *sqlx.Stmt `yesql:"get_user_post_star_count"`
GetUserPostStars *sqlx.Stmt `yesql:"get_user_post_stars"`
} }
type TweetA struct { type TweetA struct {
yesql.Namespace `yesql:"tweet_a"` yesql.Namespace `yesql:"tweet_a"`
UserInfo *sqlx.Stmt `yesql:"user_info"` AttachmentByTweetId *sqlx.Stmt `yesql:"attachment_by_tweet_id"`
FavoriteByTweetId *sqlx.Stmt `yesql:"favorite_by_tweet_id"`
ReactionByTweetId *sqlx.Stmt `yesql:"reaction_by_tweet_id"`
TweetInfoById *sqlx.Stmt `yesql:"tweet_info_by_id"`
TweetItemById *sqlx.Stmt `yesql:"tweet_item_by_id"`
UserFavorites *sqlx.Stmt `yesql:"user_favorites"`
UserInfo *sqlx.Stmt `yesql:"user_info"`
UserReactions *sqlx.Stmt `yesql:"user_reactions"`
UserTweetsByAdmin *sqlx.Stmt `yesql:"user_tweets_by_admin"`
UserTweetsByFriend *sqlx.Stmt `yesql:"user_tweets_by_friend"`
UserTweetsByGuest *sqlx.Stmt `yesql:"user_tweets_by_guest"`
UserTweetsBySelf *sqlx.Stmt `yesql:"user_tweets_by_self"`
} }
type TweetHelp struct { type TweetHelp struct {
yesql.Namespace `yesql:"tweet_help"` yesql.Namespace `yesql:"tweet_help"`
UserInfo *sqlx.Stmt `yesql:"user_info"` GetPostContentByIds string `yesql:"get_post_content_by_ids"`
GetUsersByIds string `yesql:"get_users_by_ids"`
} }
type TweetHelpA struct { type TweetHelpA struct {
@ -151,8 +224,19 @@ type TweetHelpA struct {
} }
type TweetManage struct { type TweetManage struct {
yesql.Namespace `yesql:"tweet_manage"` yesql.Namespace `yesql:"tweet_manage"`
UserInfo *sqlx.Stmt `yesql:"user_info"` AddAttachment *sqlx.Stmt `yesql:"add_attachment"`
AddPost *sqlx.Stmt `yesql:"add_post"`
AddPostCollection *sqlx.Stmt `yesql:"add_post_collection"`
AddPostContent *sqlx.Stmt `yesql:"add_post_content"`
AddPostStar *sqlx.Stmt `yesql:"add_post_star"`
DelPost *sqlx.Stmt `yesql:"del_post"`
DelPostCollection *sqlx.Stmt `yesql:"del_post_collection"`
DelPostStar *sqlx.Stmt `yesql:"del_post_star"`
LockPost *sqlx.Stmt `yesql:"lock_post"`
StickPost *sqlx.Stmt `yesql:"stick_post"`
UpdatePost *sqlx.Stmt `yesql:"update_post"`
VisiblePost *sqlx.Stmt `yesql:"visible_post"`
} }
type TweetManageA struct { type TweetManageA struct {
@ -161,8 +245,14 @@ type TweetManageA struct {
} }
type UserManage struct { type UserManage struct {
yesql.Namespace `yesql:"user_manage"` yesql.Namespace `yesql:"user_manage"`
UserInfo *sqlx.Stmt `yesql:"user_info"` GetUsersByIds string `yesql:"get_users_by_ids"`
AddUser *sqlx.Stmt `yesql:"add_user"`
GetUserById *sqlx.Stmt `yesql:"get_user_by_id"`
GetUserByPhone *sqlx.Stmt `yesql:"get_user_by_phone"`
GetUserByUsername *sqlx.Stmt `yesql:"get_user_by_username"`
GetUsersByKeyword *sqlx.Stmt `yesql:"get_users_by_keyword"`
UpdateUser *sqlx.Stmt `yesql:"update_user"`
} }
type Wallet struct { type Wallet struct {
@ -220,7 +310,22 @@ func BuildContactManager(p yesql.PreparexBuilder, ctx ...context.Context) (obj *
c = context.Background() c = context.Background()
} }
obj = &ContactManager{} obj = &ContactManager{}
if obj.UserInfo, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserInfo_ContactManager))); err != nil { if obj.AddFriend, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_AddFriend_ContactManager))); err != nil {
return
}
if obj.DelFriend, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_DelFriend_ContactManager))); err != nil {
return
}
if obj.GetContacts, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetContacts_ContactManager))); err != nil {
return
}
if obj.IsFriend, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_IsFriend_ContactManager))); err != nil {
return
}
if obj.RejectFriend, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_RejectFriend_ContactManager))); err != nil {
return
}
if obj.RequestingFriend, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_RequestingFriend_ContactManager))); err != nil {
return return
} }
return return
@ -405,8 +510,40 @@ func BuildTweet(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Tweet, er
} else { } else {
c = context.Background() c = context.Background()
} }
obj = &Tweet{} obj = &Tweet{
if obj.UserInfo, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserInfo_Tweet))); err != nil { GetPostContetnsByIds: p.QueryHook(_GetPostContetnsByIds_Tweet),
}
if obj.GetPostAttachmentBill, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetPostAttachmentBill_Tweet))); err != nil {
return
}
if obj.GetPostById, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetPostById_Tweet))); err != nil {
return
}
if obj.GetPostContentById, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetPostContentById_Tweet))); err != nil {
return
}
if obj.GetPostCount, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetPostCount_Tweet))); err != nil {
return
}
if obj.GetPosts, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetPosts_Tweet))); err != nil {
return
}
if obj.GetUserPostCollection, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserPostCollection_Tweet))); err != nil {
return
}
if obj.GetUserPostCollectionCount, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserPostCollectionCount_Tweet))); err != nil {
return
}
if obj.GetUserPostCollections, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserPostCollections_Tweet))); err != nil {
return
}
if obj.GetUserPostStar, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserPostStar_Tweet))); err != nil {
return
}
if obj.GetUserPostStarCount, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserPostStarCount_Tweet))); err != nil {
return
}
if obj.GetUserPostStars, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserPostStars_Tweet))); err != nil {
return return
} }
return return
@ -420,9 +557,42 @@ func BuildTweetA(p yesql.PreparexBuilder, ctx ...context.Context) (obj *TweetA,
c = context.Background() c = context.Background()
} }
obj = &TweetA{} obj = &TweetA{}
if obj.AttachmentByTweetId, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_AttachmentByTweetId_TweetA))); err != nil {
return
}
if obj.FavoriteByTweetId, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_FavoriteByTweetId_TweetA))); err != nil {
return
}
if obj.ReactionByTweetId, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_ReactionByTweetId_TweetA))); err != nil {
return
}
if obj.TweetInfoById, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_TweetInfoById_TweetA))); err != nil {
return
}
if obj.TweetItemById, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_TweetItemById_TweetA))); err != nil {
return
}
if obj.UserFavorites, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserFavorites_TweetA))); err != nil {
return
}
if obj.UserInfo, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserInfo_TweetA))); err != nil { if obj.UserInfo, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserInfo_TweetA))); err != nil {
return return
} }
if obj.UserReactions, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserReactions_TweetA))); err != nil {
return
}
if obj.UserTweetsByAdmin, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserTweetsByAdmin_TweetA))); err != nil {
return
}
if obj.UserTweetsByFriend, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserTweetsByFriend_TweetA))); err != nil {
return
}
if obj.UserTweetsByGuest, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserTweetsByGuest_TweetA))); err != nil {
return
}
if obj.UserTweetsBySelf, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserTweetsBySelf_TweetA))); err != nil {
return
}
return return
} }
@ -433,9 +603,9 @@ func BuildTweetHelp(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Tweet
} else { } else {
c = context.Background() c = context.Background()
} }
obj = &TweetHelp{} obj = &TweetHelp{
if obj.UserInfo, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserInfo_TweetHelp))); err != nil { GetPostContentByIds: p.QueryHook(_GetPostContentByIds_TweetHelp),
return GetUsersByIds: p.QueryHook(_GetUsersByIds_TweetHelp),
} }
return return
} }
@ -462,7 +632,40 @@ func BuildTweetManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Twe
c = context.Background() c = context.Background()
} }
obj = &TweetManage{} obj = &TweetManage{}
if obj.UserInfo, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserInfo_TweetManage))); err != nil { if obj.AddAttachment, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_AddAttachment_TweetManage))); err != nil {
return
}
if obj.AddPost, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_AddPost_TweetManage))); err != nil {
return
}
if obj.AddPostCollection, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_AddPostCollection_TweetManage))); err != nil {
return
}
if obj.AddPostContent, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_AddPostContent_TweetManage))); err != nil {
return
}
if obj.AddPostStar, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_AddPostStar_TweetManage))); err != nil {
return
}
if obj.DelPost, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_DelPost_TweetManage))); err != nil {
return
}
if obj.DelPostCollection, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_DelPostCollection_TweetManage))); err != nil {
return
}
if obj.DelPostStar, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_DelPostStar_TweetManage))); err != nil {
return
}
if obj.LockPost, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_LockPost_TweetManage))); err != nil {
return
}
if obj.StickPost, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_StickPost_TweetManage))); err != nil {
return
}
if obj.UpdatePost, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UpdatePost_TweetManage))); err != nil {
return
}
if obj.VisiblePost, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_VisiblePost_TweetManage))); err != nil {
return return
} }
return return
@ -489,8 +692,25 @@ func BuildUserManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *User
} else { } else {
c = context.Background() c = context.Background()
} }
obj = &UserManage{} obj = &UserManage{
if obj.UserInfo, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UserInfo_UserManage))); err != nil { GetUsersByIds: p.QueryHook(_GetUsersByIds_UserManage),
}
if obj.AddUser, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_AddUser_UserManage))); err != nil {
return
}
if obj.GetUserById, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserById_UserManage))); err != nil {
return
}
if obj.GetUserByPhone, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserByPhone_UserManage))); err != nil {
return
}
if obj.GetUserByUsername, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUserByUsername_UserManage))); err != nil {
return
}
if obj.GetUsersByKeyword, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_GetUsersByKeyword_UserManage))); err != nil {
return
}
if obj.UpdateUser, err = p.PreparexContext(c, p.Rebind(p.QueryHook(_UpdateUser_UserManage))); err != nil {
return return
} }
return return

@ -26,7 +26,27 @@ SELECT * FROM @user WHERE username=?
-- contact_manager sql dml -- contact_manager sql dml
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- name: user_info@contact_manager -- name: requesting_friend@contact_manager
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: add_friend@contact_manager
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: reject_friend@contact_manager
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: del_friend@contact_manager
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_contacts@contact_manager
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: is_friend@contact_manager
-- prepare: stmt -- prepare: stmt
SELECT * FROM @user WHERE username=? SELECT * FROM @user WHERE username=?
@ -114,7 +134,52 @@ SELECT * FROM @user WHERE username=?
-- tweet sql dml -- tweet sql dml
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- name: user_info@tweet -- name: get_post_by_id@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_posts@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_post_count@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_user_post_star@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_user_post_stars@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_user_post_star_count@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_user_post_collection@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_user_post_collections@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_user_post_collection_count@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_post_attachment_bill@tweet
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_post_contetns_by_ids@tweet
-- prepare: raw
-- clause: in
SELECT id, user_id, tag, quote_num FROM @tag WHERE tag IN (?);
-- name: get_post_content_by_id@tweet
-- prepare: stmt -- prepare: stmt
SELECT * FROM @user WHERE username=? SELECT * FROM @user WHERE username=?
@ -122,7 +187,51 @@ SELECT * FROM @user WHERE username=?
-- tweet_manage sql dml -- tweet_manage sql dml
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- name: user_info@tweet_manage -- name: add_post@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: del_post@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: lock_post@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: stick_post@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: visible_post@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: update_post@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: add_post_star@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: del_post_star@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: add_post_collection@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: del_post_collection@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: add_post_content@tweet_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: add_attachment@tweet_manage
-- prepare: stmt -- prepare: stmt
SELECT * FROM @user WHERE username=? SELECT * FROM @user WHERE username=?
@ -130,8 +239,14 @@ SELECT * FROM @user WHERE username=?
-- tweet_help sql dml -- tweet_help sql dml
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- name: user_info@tweet_help -- name: get_post_content_by_ids@tweet_help
-- prepare: stmt -- prepare: raw
-- clause: in
SELECT * FROM @user WHERE username=?
-- name: get_users_by_ids@tweet_help
-- prepare: raw
-- clause: in
SELECT * FROM @user WHERE username=? SELECT * FROM @user WHERE username=?
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
@ -142,6 +257,50 @@ SELECT * FROM @user WHERE username=?
-- prepare: stmt -- prepare: stmt
SELECT * FROM @user WHERE username=? SELECT * FROM @user WHERE username=?
-- name: tweet_info_by_id@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: tweet_item_by_id@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: user_tweets_by_admin@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: user_tweets_by_self@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: user_tweets_by_friend@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: user_tweets_by_guest@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: reaction_by_tweet_id@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: user_reactions@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: favorite_by_tweet_id@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: user_favorites@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: attachment_by_tweet_id@tweet_a
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- tweet_manage_a sql dml -- tweet_manage_a sql dml
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
@ -221,7 +380,32 @@ UPDATE @tag SET quote_num=quote_num+1, is_del=0, modified_on=? WHERE id IN (?);
-- user_manage sql dml -- user_manage sql dml
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- name: user_info@user_manage -- name: get_user_by_id@user_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_user_by_username@user_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_user_by_phone@user_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: get_users_by_ids@user_manage
-- prepare: raw
-- clause: in
SELECT * FROM @user WHERE username=?
-- name: get_users_by_keyword@user_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: add_user@user_manage
-- prepare: stmt
SELECT * FROM @user WHERE username=?
-- name: update_user@user_manage
-- prepare: stmt -- prepare: stmt
SELECT * FROM @user WHERE username=? SELECT * FROM @user WHERE username=?

@ -12,7 +12,6 @@ import (
"github.com/alimy/mir/v4" "github.com/alimy/mir/v4"
"github.com/gin-gonic/gin" "github.com/gin-gonic/gin"
"github.com/rocboss/paopao-ce/internal/core" "github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/cs"
"github.com/rocboss/paopao-ce/internal/core/ms" "github.com/rocboss/paopao-ce/internal/core/ms"
"github.com/rocboss/paopao-ce/internal/servants/base" "github.com/rocboss/paopao-ce/internal/servants/base"
"github.com/rocboss/paopao-ce/pkg/convert" "github.com/rocboss/paopao-ce/pkg/convert"
@ -144,7 +143,7 @@ type UploadAttachmentResp struct {
FileSize int64 `json:"file_size"` FileSize int64 `json:"file_size"`
ImgWidth int `json:"img_width"` ImgWidth int `json:"img_width"`
ImgHeight int `json:"img_height"` ImgHeight int `json:"img_height"`
Type cs.AttachmentType `json:"type"` Type ms.AttachmentType `json:"type"`
Content string `json:"content"` Content string `json:"content"`
} }

@ -29,7 +29,13 @@ import (
var ( var (
_ api.Priv = (*privSrv)(nil) _ api.Priv = (*privSrv)(nil)
_uploadAttachmentTypeMap = map[string]cs.AttachmentType{ _uploadAttachmentTypeMap = map[string]ms.AttachmentType{
"public/image": ms.AttachmentTypeImage,
"public/avatar": ms.AttachmentTypeImage,
"public/video": ms.AttachmentTypeVideo,
"attachment": ms.AttachmentTypeOther,
}
_uploadAttachmentTypes = map[string]cs.AttachmentType{
"public/image": cs.AttachmentTypeImage, "public/image": cs.AttachmentTypeImage,
"public/avatar": cs.AttachmentTypeImage, "public/avatar": cs.AttachmentTypeImage,
"public/video": cs.AttachmentTypeVideo, "public/video": cs.AttachmentTypeVideo,
@ -120,20 +126,20 @@ func (s *privSrv) UploadAttachment(req *web.UploadAttachmentReq) (*web.UploadAtt
} }
// 构造附件Model // 构造附件Model
attachment := &cs.Attachment{ attachment := &ms.Attachment{
UserID: req.Uid, UserID: req.Uid,
FileSize: req.FileSize, FileSize: req.FileSize,
Content: objectUrl, Content: objectUrl,
Type: _uploadAttachmentTypeMap[req.UploadType], Type: _uploadAttachmentTypeMap[req.UploadType],
} }
if attachment.Type == cs.AttachmentTypeImage { if attachment.Type == ms.AttachmentTypeImage {
var src image.Image var src image.Image
src, err = imaging.Decode(req.File) src, err = imaging.Decode(req.File)
if err == nil { if err == nil {
attachment.ImgWidth, attachment.ImgHeight = getImageSize(src.Bounds()) attachment.ImgWidth, attachment.ImgHeight = getImageSize(src.Bounds())
} }
} }
attachment.ID, err = s.Dsa.CreateAttachment(attachment) attachment.ID, err = s.Ds.CreateAttachment(attachment)
if err != nil { if err != nil {
logrus.Errorf("Ds.CreateAttachment err: %s", err) logrus.Errorf("Ds.CreateAttachment err: %s", err)
return nil, web.ErrFileUploadFailed return nil, web.ErrFileUploadFailed

Loading…
Cancel
Save