DKube v1.0
This commit is contained in:
		
							
								
								
									
										70
									
								
								dao/workflow.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								dao/workflow.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,70 @@
 | 
			
		||||
package dao
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"dkube/db"
 | 
			
		||||
	"dkube/model"
 | 
			
		||||
	"errors"
 | 
			
		||||
	"github.com/wonderivan/logger"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var Workflow workflow
 | 
			
		||||
 | 
			
		||||
type workflow struct{}
 | 
			
		||||
 | 
			
		||||
type WorkflowResp struct {
 | 
			
		||||
	Items []*model.Workflow `json:"items"`
 | 
			
		||||
	Total int               `json:"total"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *workflow) GetWorkflows(filterName, namespace string, limit, page int) (data *WorkflowResp, err error) {
 | 
			
		||||
	startSet := (page - 1) * limit
 | 
			
		||||
	var (
 | 
			
		||||
		workflowList []*model.Workflow
 | 
			
		||||
		total        int
 | 
			
		||||
	)
 | 
			
		||||
 | 
			
		||||
	tx := db.GORM.
 | 
			
		||||
		Model(&model.Workflow{}).
 | 
			
		||||
		Where("name like ?", "%"+filterName+"%").
 | 
			
		||||
		Count(&total).
 | 
			
		||||
		Limit(limit).
 | 
			
		||||
		Offset(startSet).
 | 
			
		||||
		Order("id desc").
 | 
			
		||||
		Find(&workflowList)
 | 
			
		||||
	if tx.Error != nil && tx.Error.Error() != "record not found" {
 | 
			
		||||
		logger.Error("获取Workflow列表失败, " + tx.Error.Error())
 | 
			
		||||
		return nil, errors.New("获取Workflow列表失败, " + tx.Error.Error())
 | 
			
		||||
	}
 | 
			
		||||
	return &WorkflowResp{
 | 
			
		||||
		Items: workflowList,
 | 
			
		||||
		Total: total,
 | 
			
		||||
	}, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *workflow) GetById(id int) (workflow *model.Workflow, err error) {
 | 
			
		||||
	workflow = &model.Workflow{}
 | 
			
		||||
	tx := db.GORM.Where("id = ?", id).First(&workflow)
 | 
			
		||||
	if tx.Error != nil && tx.Error.Error() != "record not found" {
 | 
			
		||||
		logger.Error("获取Workflow详情失败, " + tx.Error.Error())
 | 
			
		||||
		return nil, errors.New("获取Workflow详情失败, " + tx.Error.Error())
 | 
			
		||||
	}
 | 
			
		||||
	return workflow, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *workflow) Add(workflow *model.Workflow) (err error) {
 | 
			
		||||
	tx := db.GORM.Create(&workflow)
 | 
			
		||||
	if tx.Error != nil && tx.Error.Error() != "record not found" {
 | 
			
		||||
		logger.Error("创建Workflow失败, " + tx.Error.Error())
 | 
			
		||||
		return errors.New("创建Workflow失败, " + tx.Error.Error())
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (w *workflow) DelById(id int) (err error) {
 | 
			
		||||
	tx := db.GORM.Where("id = ?", id).Delete(&model.Workflow{})
 | 
			
		||||
	if tx.Error != nil && tx.Error.Error() != "record not found" {
 | 
			
		||||
		logger.Error("获取Workflow详情失败, " + tx.Error.Error())
 | 
			
		||||
		return errors.New("获取Workflow详情失败, " + tx.Error.Error())
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user