amocrm/internal/repository/user.go

69 lines
1.6 KiB
Go
Raw Normal View History

package repository
import (
"amocrm/internal/models"
amo2 "amocrm/internal/models/amo"
"amocrm/internal/tools"
"context"
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/bson/primitive"
)
func (r *Repository) UpdateListUsers(ctx context.Context) error {
//TODO:IMPLEMENT ME
return nil
}
func (r *Repository) GettingUserFromCash(ctx context.Context) (*models.UserListResp, error) {
//TODO:IMPLEMENT ME
return &models.UserListResp{}, nil
}
func (r *Repository) SoftDeleteAccount(ctx context.Context) error {
//TODO:IMPLEMENT ME
return nil
}
func (r *Repository) GetCurrentAccount(ctx context.Context) (*models.GetCurrentAccountResp, error) {
//TODO:IMPLEMENT ME
return &models.GetCurrentAccountResp{}, nil
}
func (r *Repository) CreateAccount(ctx context.Context, accountID string) error {
userData := models.User{}
userData.ObjID = primitive.NewObjectID()
userData.Accountid = accountID
_, err := r.mdbUser.InsertOne(ctx, userData)
if err != nil {
r.logger.Error("error createAccount in mongodb")
return err
}
return nil
}
func (r *Repository) UpdateAccount(ctx context.Context, accountID string, userInfo *amo2.AmocrmUserInformation) error {
filter := bson.M{"Accountid": accountID}
// todo надо как то получить роль и почту
update := bson.M{
"$set": bson.M{
"Name": userInfo.Name,
"ID": userInfo.ID,
"Amoid": userInfo.CurrentUserID,
"Group": tools.ConvertUserGroups(userInfo),
},
}
_, err := r.mdbUser.UpdateOne(ctx, filter, update)
if err != nil {
r.logger.Error("error updateAccount in mongodb")
return err
}
return nil
}