add total page num for tag retention

Signed-off-by: Ziming Zhang <zziming@vmware.com>
Change-Id: I58a250dbb643f6949c1e34aa3a84a01dc3e0b285
This commit is contained in:
Ziming Zhang 2019-08-02 14:43:52 +08:00
parent 7c3858f28c
commit decffdd6a4
5 changed files with 65 additions and 1 deletions

View File

@ -316,6 +316,12 @@ func (r *RetentionAPI) ListRetentionExecs() {
r.SendInternalServerError(err)
return
}
total, err := retentionController.GetTotalOfRetentionExecs(id)
if err != nil {
r.SendInternalServerError(err)
return
}
r.SetPaginationHeader(total, query.PageNumber, query.PageSize)
r.WriteJSONData(execs)
}
@ -353,6 +359,12 @@ func (r *RetentionAPI) ListRetentionExecTasks() {
r.SendInternalServerError(err)
return
}
total, err := retentionController.GetTotalOfRetentionExecTasks(eid)
if err != nil {
r.SendInternalServerError(err)
return
}
r.SetPaginationHeader(total, query.PageNumber, query.PageSize)
r.WriteJSONData(his)
}

View File

@ -54,8 +54,12 @@ type APIController interface {
ListRetentionExecs(policyID int64, query *q.Query) ([]*Execution, error)
GetTotalOfRetentionExecs(policyID int64) (int64, error)
ListRetentionExecTasks(executionID int64, query *q.Query) ([]*Task, error)
GetTotalOfRetentionExecTasks(executionID int64) (int64, error)
GetRetentionExecTaskLog(taskID int64) ([]byte, error)
}
@ -232,6 +236,11 @@ func (r *DefaultAPIController) ListRetentionExecs(policyID int64, query *q.Query
return r.manager.ListExecutions(policyID, query)
}
// GetTotalOfRetentionExecs Count Retention Executions
func (r *DefaultAPIController) GetTotalOfRetentionExecs(policyID int64) (int64, error) {
return r.manager.GetTotalOfRetentionExecs(policyID)
}
// ListRetentionExecTasks List Retention Execution Histories
func (r *DefaultAPIController) ListRetentionExecTasks(executionID int64, query *q.Query) ([]*Task, error) {
q1 := &q.TaskQuery{
@ -244,6 +253,11 @@ func (r *DefaultAPIController) ListRetentionExecTasks(executionID int64, query *
return r.manager.ListTasks(q1)
}
// GetTotalOfRetentionExecTasks Count Retention Execution Histories
func (r *DefaultAPIController) GetTotalOfRetentionExecTasks(executionID int64) (int64, error) {
return r.manager.GetTotalOfTasks(executionID)
}
// GetRetentionExecTaskLog Get Retention Execution Task Log
func (r *DefaultAPIController) GetRetentionExecTaskLog(taskID int64) ([]byte, error) {
return r.manager.GetTaskLog(taskID)

View File

@ -175,6 +175,15 @@ func ListExecutions(policyID int64, query *q.Query) ([]*models.RetentionExecutio
return execs, nil
}
// GetTotalOfRetentionExecs Count Executions
func GetTotalOfRetentionExecs(policyID int64) (int64, error) {
o := dao.GetOrmer()
qs := o.QueryTable(new(models.RetentionExecution))
qs = qs.Filter("policy_id", policyID)
return qs.Count()
}
/*
// ListExecHistories List Execution Histories
func ListExecHistories(executionID int64, query *q.Query) ([]*models.RetentionTask, error) {
@ -260,3 +269,10 @@ func ListTask(query ...*q.TaskQuery) ([]*models.RetentionTask, error) {
_, err := qs.All(&tasks)
return tasks, err
}
// GetTotalOfTasks Count tasks
func GetTotalOfTasks(executionID int64) (int64, error) {
qs := dao.GetOrmer().QueryTable(&models.RetentionTask{})
qs = qs.Filter("ExecutionID", executionID)
return qs.Count()
}

View File

@ -76,6 +76,14 @@ func (f *fakeRepositoryManager) ListChartRepositories(projectID int64) ([]*chart
type fakeRetentionManager struct{}
func (f *fakeRetentionManager) GetTotalOfRetentionExecs(policyID int64) (int64, error) {
return 0, nil
}
func (f *fakeRetentionManager) GetTotalOfTasks(executionID int64) (int64, error) {
return 0, nil
}
func (f *fakeRetentionManager) CreatePolicy(p *policy.Metadata) (int64, error) {
return 0, nil
}

View File

@ -46,10 +46,14 @@ type Manager interface {
DeleteExecution(int64) error
// Get the specified execution
GetExecution(eid int64) (*Execution, error)
// List execution histories
// List executions
ListExecutions(policyID int64, query *q.Query) ([]*Execution, error)
// GetTotalOfRetentionExecs Count Retention Executions
GetTotalOfRetentionExecs(policyID int64) (int64, error)
// List tasks histories
ListTasks(query ...*q.TaskQuery) ([]*Task, error)
// GetTotalOfTasks Count Tasks
GetTotalOfTasks(executionID int64) (int64, error)
// Create a new retention task
CreateTask(task *Task) (int64, error)
// Update the specified task
@ -157,6 +161,11 @@ func (d *DefaultManager) ListExecutions(policyID int64, query *q.Query) ([]*Exec
return execs1, nil
}
// GetTotalOfRetentionExecs Count Executions
func (d *DefaultManager) GetTotalOfRetentionExecs(policyID int64) (int64, error) {
return dao.GetTotalOfRetentionExecs(policyID)
}
// GetExecution Get Execution
func (d *DefaultManager) GetExecution(eid int64) (*Execution, error) {
e, err := dao.GetExecution(eid)
@ -213,6 +222,11 @@ func (d *DefaultManager) ListTasks(query ...*q.TaskQuery) ([]*Task, error) {
return tasks, nil
}
// GetTotalOfTasks Count tasks
func (d *DefaultManager) GetTotalOfTasks(executionID int64) (int64, error) {
return dao.GetTotalOfTasks(executionID)
}
// UpdateTask updates the task
func (d *DefaultManager) UpdateTask(task *Task, cols ...string) error {
if task == nil {