1
1
mirror of https://github.com/go-gitea/gitea synced 2025-07-22 18:28:37 +00:00

Move db related basic functions to models/db (#17075)

* Move db related basic functions to models/db

* Fix lint

* Fix lint

* Fix test

* Fix lint

* Fix lint

* revert unnecessary change

* Fix test

* Fix wrong replace string

* Use *Context

* Correct committer spelling and fix wrong replaced words

Co-authored-by: zeripath <art27@cantab.net>
This commit is contained in:
Lunny Xiao
2021-09-19 19:49:59 +08:00
committed by GitHub
parent 462306e263
commit a4bfef265d
335 changed files with 4191 additions and 3654 deletions

View File

@@ -5,6 +5,7 @@
package models
import (
"code.gitea.io/gitea/models/db"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/modules/timeutil"
@@ -47,6 +48,10 @@ type ProjectBoard struct {
Issues []*Issue `xorm:"-"`
}
func init() {
db.RegisterModel(new(ProjectBoard))
}
// IsProjectBoardTypeValid checks if the project board type is valid
func IsProjectBoardTypeValid(p ProjectBoardType) bool {
switch p {
@@ -95,13 +100,13 @@ func createBoardsForProjectsType(sess *xorm.Session, project *Project) error {
// NewProjectBoard adds a new project board to a given project
func NewProjectBoard(board *ProjectBoard) error {
_, err := x.Insert(board)
_, err := db.DefaultContext().Engine().Insert(board)
return err
}
// DeleteProjectBoardByID removes all issues references to the project board.
func DeleteProjectBoardByID(boardID int64) error {
sess := x.NewSession()
sess := db.DefaultContext().NewSession()
defer sess.Close()
if err := sess.Begin(); err != nil {
return err
@@ -114,7 +119,7 @@ func DeleteProjectBoardByID(boardID int64) error {
return sess.Commit()
}
func deleteProjectBoardByID(e Engine, boardID int64) error {
func deleteProjectBoardByID(e db.Engine, boardID int64) error {
board, err := getProjectBoard(e, boardID)
if err != nil {
if IsErrProjectBoardNotExist(err) {
@@ -134,17 +139,17 @@ func deleteProjectBoardByID(e Engine, boardID int64) error {
return nil
}
func deleteProjectBoardByProjectID(e Engine, projectID int64) error {
func deleteProjectBoardByProjectID(e db.Engine, projectID int64) error {
_, err := e.Where("project_id=?", projectID).Delete(&ProjectBoard{})
return err
}
// GetProjectBoard fetches the current board of a project
func GetProjectBoard(boardID int64) (*ProjectBoard, error) {
return getProjectBoard(x, boardID)
return getProjectBoard(db.DefaultContext().Engine(), boardID)
}
func getProjectBoard(e Engine, boardID int64) (*ProjectBoard, error) {
func getProjectBoard(e db.Engine, boardID int64) (*ProjectBoard, error) {
board := new(ProjectBoard)
has, err := e.ID(boardID).Get(board)
@@ -159,10 +164,10 @@ func getProjectBoard(e Engine, boardID int64) (*ProjectBoard, error) {
// UpdateProjectBoard updates a project board
func UpdateProjectBoard(board *ProjectBoard) error {
return updateProjectBoard(x, board)
return updateProjectBoard(db.DefaultContext().Engine(), board)
}
func updateProjectBoard(e Engine, board *ProjectBoard) error {
func updateProjectBoard(e db.Engine, board *ProjectBoard) error {
var fieldToUpdate []string
if board.Sorting != 0 {
@@ -181,10 +186,10 @@ func updateProjectBoard(e Engine, board *ProjectBoard) error {
// GetProjectBoards fetches all boards related to a project
// if no default board set, first board is a temporary "Uncategorized" board
func GetProjectBoards(projectID int64) (ProjectBoardList, error) {
return getProjectBoards(x, projectID)
return getProjectBoards(db.DefaultContext().Engine(), projectID)
}
func getProjectBoards(e Engine, projectID int64) ([]*ProjectBoard, error) {
func getProjectBoards(e db.Engine, projectID int64) ([]*ProjectBoard, error) {
boards := make([]*ProjectBoard, 0, 5)
if err := e.Where("project_id=? AND `default`=?", projectID, false).OrderBy("Sorting").Find(&boards); err != nil {
@@ -200,7 +205,7 @@ func getProjectBoards(e Engine, projectID int64) ([]*ProjectBoard, error) {
}
// getDefaultBoard return default board and create a dummy if none exist
func getDefaultBoard(e Engine, projectID int64) (*ProjectBoard, error) {
func getDefaultBoard(e db.Engine, projectID int64) (*ProjectBoard, error) {
var board ProjectBoard
exist, err := e.Where("project_id=? AND `default`=?", projectID, true).Get(&board)
if err != nil {
@@ -221,9 +226,7 @@ func getDefaultBoard(e Engine, projectID int64) (*ProjectBoard, error) {
// SetDefaultBoard represents a board for issues not assigned to one
// if boardID is 0 unset default
func SetDefaultBoard(projectID, boardID int64) error {
sess := x
_, err := sess.Where(builder.Eq{
_, err := db.DefaultContext().Engine().Where(builder.Eq{
"project_id": projectID,
"`default`": true,
}).Cols("`default`").Update(&ProjectBoard{Default: false})
@@ -232,7 +235,7 @@ func SetDefaultBoard(projectID, boardID int64) error {
}
if boardID > 0 {
_, err = sess.ID(boardID).Where(builder.Eq{"project_id": projectID}).
_, err = db.DefaultContext().Engine().ID(boardID).Where(builder.Eq{"project_id": projectID}).
Cols("`default`").Update(&ProjectBoard{Default: true})
}
@@ -290,7 +293,7 @@ func (bs ProjectBoardList) LoadIssues() (IssueList, error) {
// UpdateProjectBoardSorting update project board sorting
func UpdateProjectBoardSorting(bs ProjectBoardList) error {
for i := range bs {
_, err := x.ID(bs[i].ID).Cols(
_, err := db.DefaultContext().Engine().ID(bs[i].ID).Cols(
"sorting",
).Update(bs[i])
if err != nil {