in internal/dal/workflow.go [108:128]
func (w *workflowDALImpl) SelectInstances(ctx context.Context, param *model.QueryParam) ([]model.WorkflowInstance,
int, error) {
var r []model.WorkflowInstance
db := workflowDB.WithContext(ctx).Where("workflow_status != ?", constants.InvalidStatus).
Where("workflow_id = ?", param.WorkflowID)
if param.Size > maxSize {
param.Size = maxSize
}
if param.Page == 0 {
param.Page = 1
}
var count int64
db = db.Limit(param.Size).Offset(param.Size * (param.Page - 1)).Order("update_time DESC")
if err := db.Find(&r).Limit(-1).Offset(-1).Count(&count).Error; err != nil {
if err == gorm.ErrRecordNotFound {
return nil, 0, nil
}
return nil, 0, err
}
return r, int(count), nil
}