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" "time" ) 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.Createdat = time.Now().Unix() 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 }