Browse Source

提交代码

tags/v1.22.6.1^2
ychao_1983 3 years ago
parent
commit
7315dd24e2
6 changed files with 40 additions and 6 deletions
  1. +12
    -3
      models/attachment.go
  2. +4
    -0
      models/cloudbrain.go
  3. +14
    -3
      models/dataset.go
  4. +2
    -0
      models/repo_list.go
  5. +4
    -0
      routers/admin/dataset.go
  6. +4
    -0
      routers/home.go

+ 12
- 3
models/attachment.go View File

@@ -41,9 +41,9 @@ type Attachment struct {
UploaderID int64 `xorm:"INDEX DEFAULT 0"` // Notice: will be zero before this column added
CommentID int64
Name string
Description string `xorm:"TEXT"`
DownloadCount int64 `xorm:"DEFAULT 0"`
UseCount int64
Description string `xorm:"TEXT"`
DownloadCount int64 `xorm:"DEFAULT 0"`
UseCount int64 `xorm:"DEFAULT 0"`
Size int64 `xorm:"DEFAULT 0"`
IsPrivate bool `xorm:"DEFAULT false"`
DecompressState int32 `xorm:"DEFAULT 0"`
@@ -108,6 +108,15 @@ func (a *Attachment) IncreaseDownloadCount() error {
return nil
}

func IncreaseAttachmentUseCount(uuid string) error {
// Update use count.
if _, err := x.Exec("UPDATE `attachment` SET use_count=use_count+1 WHERE uuid=?", uuid); err != nil {
return fmt.Errorf("increase attachment use count: %v", err)
}

return nil
}

func (a *Attachment) UpdateDatasetUpdateUnix() error {
// Update download count.
if _, err := x.Exec("UPDATE `dataset` SET updated_unix="+fmt.Sprint(time.Now().Unix())+" WHERE id=?", a.DatasetID); err != nil {


+ 4
- 0
models/cloudbrain.go View File

@@ -1395,6 +1395,8 @@ func CreateCloudbrain(cloudbrain *Cloudbrain) (err error) {
if _, err = x.NoAutoTime().Insert(cloudbrain); err != nil {
return err
}

go IncreaseDatasetUseCount(cloudbrain.Uuid)
return nil
}

@@ -1629,6 +1631,8 @@ func RestartCloudbrain(old *Cloudbrain, new *Cloudbrain) (err error) {
return err
}

go IncreaseDatasetUseCount(new.Uuid)

return nil
}
func CloudbrainAll(opts *CloudbrainsOptions) ([]*CloudbrainInfo, int64, error) {


+ 14
- 3
models/dataset.go View File

@@ -25,9 +25,9 @@ type Dataset struct {
Category string
Description string `xorm:"TEXT"`
DownloadTimes int64
UseCount int64
NumStars int `xorm:"INDEX NOT NULL DEFAULT 0"`
Recommend bool `xorm:"INDEX NOT NULL DEFAULT false"`
UseCount int64 `xorm:"DEFAULT 0"`
NumStars int `xorm:"INDEX NOT NULL DEFAULT 0"`
Recommend bool `xorm:"INDEX NOT NULL DEFAULT false"`
License string
Task string
ReleaseID int64 `xorm:"INDEX"`
@@ -351,6 +351,17 @@ func UpdateDataset(ctx DBContext, rel *Dataset) error {
return err
}

func IncreaseDatasetUseCount(uuid string) {

IncreaseAttachmentUseCount(uuid)

attachment, _ := GetAttachmentByUUID(uuid)
if attachment != nil {
x.Exec("UPDATE `dataset` SET use_count=use_count+1 WHERE id=?", attachment.DatasetID)
}

}

// GetDatasetByID returns Dataset with given ID.
func GetDatasetByID(id int64) (*Dataset, error) {
rel := new(Dataset)


+ 2
- 0
models/repo_list.go View File

@@ -218,6 +218,8 @@ const (
SearchOrderByForks SearchOrderBy = "num_forks ASC"
SearchOrderByForksReverse SearchOrderBy = "num_forks DESC"
SearchOrderByDownloadTimes SearchOrderBy = "download_times DESC"
SearchOrderByUseCount SearchOrderBy = "use_count ASC"
SearchOrderByUseCountReverse SearchOrderBy = "use_count DESC"
SearchOrderByHot SearchOrderBy = "(num_watches + num_stars + num_forks + clone_cnt) DESC"
SearchOrderByActive SearchOrderBy = "(num_issues + num_pulls + num_commit) DESC"
SearchOrderByWatches SearchOrderBy = "num_watches DESC"


+ 4
- 0
routers/admin/dataset.go View File

@@ -61,6 +61,10 @@ func Datasets(ctx *context.Context) {
orderBy = models.SearchOrderByForksReverse
case "fewestforks":
orderBy = models.SearchOrderByForks
case "mostusecount":
orderBy = models.SearchOrderByUseCountReverse
case "fewestusecount":
orderBy = models.SearchOrderByUseCount
default:
ctx.Data["SortType"] = "recentupdate"
orderBy = models.SearchOrderByRecentUpdated


+ 4
- 0
routers/home.go View File

@@ -322,6 +322,10 @@ func ExploreDatasets(ctx *context.Context) {
orderBy = models.SearchOrderByStarsReverse
case "feweststars":
orderBy = models.SearchOrderByStars
case "mostusecount":
orderBy = models.SearchOrderByUseCountReverse
case "fewestusecount":
orderBy = models.SearchOrderByUseCount
case "default":
orderBy = models.SearchOrderByDefault
default:


Loading…
Cancel
Save