docxTemplater/dal/model/amo.go
Danil Solovyov 9ecf809b73 Tasks: MAIN - права доступа
Changes:
- добавил ключи и сертификат для домена tempgen.pena.digital
- внес исправления dal.Amo - при создании не указывал _id и createdAt
- внес исправления dal.GDisk, dal.YaDisk - не указывал createdAt
- какие-то еще мелкие правки
2022-08-22 09:23:47 +05:00

46 lines
1.3 KiB
Go

package model
import (
"golang.org/x/oauth2"
"time"
)
type Amo struct {
ID string `bson:"_id,omitempty"`
UserID string `bson:"user_id"`
AccountID string `bson:"account_id"` // Account ID in AMO CRM
Subdomain string `bson:"subdomain"` // Subdomain in AMO CRM. Example: [subdomain].amocrm.ru/
Referer string `bson:"referer"` // Referer in AMO CRM. Example: subdomain.amocrm.ru
FromWidget string `bson:"from_widget"`
AccessToken string `bson:"access_token"`
RefreshToken string `bson:"refresh_token"`
Code string `bson:"code"`
ExpiresIn time.Time `bson:"expires_in"`
TokenType string `bson:"token_type"`
AccessRules AmoAccessRules `bson:"access_rules"`
IsDeleted bool `bson:"is_deleted"`
CreatedAt time.Time `bson:"created_at"`
UpdatedAt time.Time `bson:"updated_at"`
}
type AmoAccessRules struct {
Visibility []int64 `bson:"visibility"`
Creation []int64 `bson:"creation"`
Delete []int64 `bson:"delete"`
}
func (m *Amo) Token() *oauth2.Token {
token := &oauth2.Token{
AccessToken: m.AccessToken,
TokenType: m.TokenType,
RefreshToken: m.RefreshToken,
Expiry: m.ExpiresIn,
}
if !token.Valid() {
return nil
}
return token
}