This commit is contained in:
wangchuxiao 2022-03-28 16:20:20 +08:00
parent a6d8f7ea24
commit c1a97b7356

View File

@ -450,7 +450,7 @@ func (d *DataBases) GetUserTags(userID string) ([]Tag, error) {
if err != nil { if err != nil {
return tags, err return tags, err
} }
if err = cursor.Decode(&tags); err != nil { if err = cursor.All(ctx, &tags); err != nil {
return tags, err return tags, err
} }
return tags, nil return tags, nil
@ -481,13 +481,11 @@ func (d *DataBases) SetTag(userID, tagID, newName string, increaseUserIDList []s
ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second) ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second)
c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cTag) c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cTag)
var tag Tag var tag Tag
err := c.FindOne(ctx, bson.M{"tagID": tagID, "userID": userID}).Decode(&tag) if err := c.FindOne(ctx, bson.M{"tagID": tagID, "userID": userID}).Decode(&tag); err != nil {
return err
}
if newName != "" { if newName != "" {
_, err = c.UpdateOne(ctx, bson.D{{"userID", userID}, {"tagID", tagID}}, bson.D{ _, err := c.UpdateOne(ctx, bson.M{"userID": userID, "tagID": tagID}, bson.M{"$set": bson.M{"tagName": newName}})
{"$set", bson.D{
{"tagName", newName},
}},
})
if err != nil { if err != nil {
return err return err
} }
@ -497,15 +495,17 @@ func (d *DataBases) SetTag(userID, tagID, newName string, increaseUserIDList []s
for _, v := range reduceUserIDList { for _, v := range reduceUserIDList {
for i2, v2 := range tag.UserList { for i2, v2 := range tag.UserList {
if v == v2 { if v == v2 {
tag.UserList = append(tag.UserList[:i2], tag.UserList[i2+1:]...) tag.UserList[i2] = ""
} }
} }
} }
_, err = c.UpdateOne(ctx, bson.D{{"userID", userID}, {"tagID", tagID}}, bson.D{ var newUserList []string
{"$set", bson.D{ for _, v := range tag.UserList {
{"userList", tag.UserList}, if v != "" {
}}, newUserList = append(newUserList, v)
}) }
}
_, err := c.UpdateOne(ctx, bson.M{"userID": userID, "tagID": tagID}, bson.M{"$set": bson.M{"userIDList": newUserList}})
if err != nil { if err != nil {
return err return err
} }
@ -551,16 +551,16 @@ func (d *DataBases) SaveTagSendLog(sendReq *officePb.SendMsg2TagReq) error {
return err return err
} }
func (d *DataBases) GetTagSendLogs(userID string, showNumber, pageNumber int32) ([]*TagSendLog, error) { func (d *DataBases) GetTagSendLogs(userID string, showNumber, pageNumber int32) ([]TagSendLog, error) {
var tagSendLogs []*TagSendLog var tagSendLogs []TagSendLog
ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second) ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second)
c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cSendLog) c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cSendLog)
findOpts := options.Find().SetSort(-1).SetLimit(int64(showNumber)).SetSkip(int64(showNumber) * (int64(pageNumber) - 1)) findOpts := options.Find().SetSort(-1).SetLimit(int64(showNumber)).SetSkip(int64(showNumber) * (int64(pageNumber) - 1))
cursor, err := c.Find(ctx, bson.D{{"sendID", userID}}, findOpts) cursor, err := c.Find(ctx, bson.M{"sendID": userID}, findOpts)
if err != nil { if err != nil {
return tagSendLogs, err return tagSendLogs, err
} }
err = cursor.Decode(&tagSendLogs) err = cursor.All(ctx, tagSendLogs)
if err != nil { if err != nil {
return tagSendLogs, err return tagSendLogs, err
} }