You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

user_bucket.go 1.1 kB

123456789101112131415161718192021222324252627282930313233343536
  1. package db2
  2. import (
  3. cdssdk "gitlink.org.cn/cloudream/common/sdks/storage"
  4. "gitlink.org.cn/cloudream/storage2/common/pkgs/db2/model"
  5. )
  6. type UserBucketDB struct {
  7. *DB
  8. }
  9. func (db *DB) UserBucket() *UserBucketDB {
  10. return &UserBucketDB{DB: db}
  11. }
  12. func (*UserBucketDB) GetByUserID(ctx SQLContext, userID cdssdk.UserID) ([]model.UserBucket, error) {
  13. var userBuckets []model.UserBucket
  14. err := ctx.Table("UserBucket").Where("UserID = ?", userID).Find(&userBuckets).Error
  15. return userBuckets, err
  16. }
  17. func (*UserBucketDB) Create(ctx SQLContext, userID cdssdk.UserID, bucketID cdssdk.BucketID) error {
  18. userBucket := model.UserBucket{
  19. UserID: userID,
  20. BucketID: bucketID,
  21. }
  22. return ctx.Table("UserBucket").Create(&userBucket).Error
  23. }
  24. func (*UserBucketDB) DeleteByBucketID(ctx SQLContext, bucketID cdssdk.BucketID) error {
  25. return ctx.Table("UserBucket").Where("BucketID = ?", bucketID).Delete(&model.UserBucket{}).Error
  26. }
  27. func (*UserBucketDB) DeleteByUserID(ctx SQLContext, userID cdssdk.UserID) error {
  28. return ctx.Table("UserBucket").Where("UserID = ?", userID).Delete(&model.UserBucket{}).Error
  29. }

本项目旨在将云际存储公共基础设施化,使个人及企业可低门槛使用高效的云际存储服务(安装开箱即用云际存储客户端即可,无需关注其他组件的部署),同时支持用户灵活便捷定制云际存储的功能细节。