Documentation
¶
Index ¶
- Constants
- Variables
- func GetDB(dbConfig string) *gorm.DB
- func GetMailClient() (*mailjet.Client, error)
- func GetRedisClient(serviceConfig *config.Config) *redis.Client
- func NewDB(config *config.Config) *gorm.DB
- type Auditable
- type BaseDbDao
- type Etag
- type EtagDao
- func (e *EtagDao) BatchCache(etags []*Etag)
- func (e *EtagDao) DeleteByKey(key string)
- func (e *EtagDao) DeleteEtagByUserName(username string)
- func (e *EtagDao) DeleteEtagByUserNameAndEtagType(username string, eType EtagType)
- func (e *EtagDao) FindEtagByIndex(index string) *Etag
- func (e *EtagDao) FindEtagByUserName(username string, eType EtagType) *Etag
- func (e *EtagDao) SingleCache(etag *Etag)
- type EtagType
- type GoogleCalendarProject
- type Group
- type GroupDao
- type JoinGroupInvitation
- type JoinGroupInvitationDao
- type MailjetClient
- type MailjetClientError
- type Notification
- type PublicProjectItem
- type RedisClient
- type SampleTask
- type SampleTaskDao
Constants ¶
View Source
const ( EtagPrefix string = "Etag" EtagTimeToLive = 3600000 * time.Millisecond )
View Source
const ( JoinGroupInvitationPrefix string = "JoinGroupInvitation" JoinGroupInvitationTimeToLive = 3600000 * time.Millisecond )
View Source
const LAYOUT = "2006-01-02"
Variables ¶
View Source
var DB *gorm.DB
Functions ¶
func GetMailClient ¶
func GetMailClient() (*mailjet.Client, error)
func GetRedisClient ¶
Types ¶
type Auditable ¶
type Auditable struct { ID int64 `db:"id"` CreatedAt time.Time `db:"created_at"` UpdatedAt time.Time `db:"updated_at"` Activity string `db:"activity"` Originator string `db:"originator"` ProjectID int64 `db:"project_id"` ActivityTime time.Time `db:"activity_time"` Action int64 `db:"action"` ProjectItemID int64 `db:"project_item_id"` }
Auditable ...Map to table name auditables
type EtagDao ¶
func NewEtagDao ¶
func (*EtagDao) BatchCache ¶
func (*EtagDao) DeleteByKey ¶
func (*EtagDao) DeleteEtagByUserName ¶
func (*EtagDao) DeleteEtagByUserNameAndEtagType ¶
func (*EtagDao) FindEtagByIndex ¶
func (*EtagDao) FindEtagByUserName ¶
func (*EtagDao) SingleCache ¶
type EtagType ¶
type EtagType int
type GoogleCalendarProject ¶
type GoogleCalendarProject struct { ID string `db:"id"` CreatedAt time.Time `db:"created_at"` UpdatedAt time.Time `db:"updated_at"` Channel string `db:"channel"` ChannelID string `db:"channel_id"` ProjectID uint `db:"project_id"` Token sql.NullString `db:"token"` Owner string `db:"owner"` Expiration time.Time `db:"expiration"` }
GoogleCalendarProject ...Map to table name google_calendar_projects
type GroupDao ¶
func NewGroupDao ¶
type JoinGroupInvitation ¶
type JoinGroupInvitation struct { Uid string `json:"uid"` Username string `json:"username"` GroupId string `json:"groupid"` NotificationId string `json:"notificationid"` }
func NewJoinGroupInvitation ¶
func NewJoinGroupInvitation(uid, username, groupId, notificationId string) *JoinGroupInvitation
type JoinGroupInvitationDao ¶
func NewJoinGroupInvitationDao ¶
func NewJoinGroupInvitationDao(ctx context.Context, redisClient *redis.Client) *JoinGroupInvitationDao
func (*JoinGroupInvitationDao) Find ¶
func (j *JoinGroupInvitationDao) Find(uid string) *JoinGroupInvitation
func (*JoinGroupInvitationDao) SingleCache ¶
func (j *JoinGroupInvitationDao) SingleCache(joinGroupInvitation *JoinGroupInvitation)
type MailjetClient ¶
type MailjetClient struct {
// contains filtered or unexported fields
}
func (*MailjetClient) NewClient ¶
func (m *MailjetClient) NewClient()
func (*MailjetClient) SetLogger ¶
func (m *MailjetClient) SetLogger()
func (*MailjetClient) SetMailjetClient ¶
func (m *MailjetClient) SetMailjetClient(publicKey string, privateKey string)
type MailjetClientError ¶
type MailjetClientError struct{}
func (*MailjetClientError) Error ¶
func (e *MailjetClientError) Error() string
type Notification ¶
type Notification struct { ID int64 `db:"id"` CreatedAt time.Time `db:"created_at"` UpdatedAt time.Time `db:"updated_at"` Actions string `db:"actions"` Content string `db:"content"` ContentID int64 `db:"content_id"` Link string `db:"link"` Originator string `db:"originator"` TargetUser string `db:"target_user"` Title string `db:"title"` Type string `db:"type"` }
Notification ...Map to table name notifications
type PublicProjectItem ¶
type PublicProjectItem struct { ID int64 `db:"id"` CreatedAt time.Time `db:"created_at"` UpdatedAt time.Time `db:"updated_at"` ExpirationTime time.Time `db:"expiration_time"` Username string `db:"username"` NoteID int64 `db:"note_id"` TaskID int64 `db:"task_id"` }
PublicProjectItem ...Map to table name public_project_items
type RedisClient ¶
type RedisClient struct { }
type SampleTask ¶
type SampleTask struct { ID uint64 `json:"id,omitempty" gorm:"primaryKey;not_null"` CreatedAt time.Time `json:"-" gorm:"index:created_at;PRECISION:6"` UpdatedAt time.Time `json:"-" gorm:"PRECISION:6"` Metadata string `json:"metadata"` Content string `json:"content"` Name string `json:"name" gorm:"type:varchar;size:100"` Uid string `json:"uid" gorm:"type:varchar;size:500"` AvailableBefore time.Time `json:"available_before"` DueDate string `json:"due_date" gorm:"type:varchar;size:15"` DueTime string `json:"due_time" gorm:"type:varchar;size:10"` TimeZone string `json:"time_zone" gorm:"type:varchar;size:100"` Pending bool `json:"pending"` Refreshable bool `json:"refreshable"` Raw string `json:"raw"` }
func (SampleTask) TableName ¶
func (SampleTask) TableName() string
type SampleTaskDao ¶
func NewSampleTaskDao ¶
func (*SampleTaskDao) Upsert ¶
func (s *SampleTaskDao) Upsert(t *SampleTask) (uint64, bool)
*
- Return true if new record
Click to show internal directories.
Click to hide internal directories.