61 lines
1.6 KiB
Go
61 lines
1.6 KiB
Go
package migration
|
|
|
|
import (
|
|
"database/sql"
|
|
"log"
|
|
)
|
|
|
|
type PostResult struct {
|
|
WordpressId int
|
|
SlowtwitchId int
|
|
OldUrl string
|
|
OldUrlStatus int
|
|
NewUrl string
|
|
IsSuccess bool
|
|
ErrorMessage string
|
|
}
|
|
|
|
func GetAllPostResults(db *sql.DB) []PostResult {
|
|
var results []PostResult
|
|
rows, err := db.Query("select WordpressId, SlowtwitchId, OldUrl, OldUrlStatus, NewUrl, (IsSuccess = b'1'), ErrorMessage from PostResults")
|
|
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
defer rows.Close()
|
|
|
|
for rows.Next() {
|
|
result := PostResult{}
|
|
err = rows.Scan(&result.WordpressId, &result.SlowtwitchId, &result.OldUrl, &result.OldUrlStatus, &result.NewUrl, &result.IsSuccess, &result.ErrorMessage)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
results = append(results, result)
|
|
}
|
|
|
|
return results
|
|
}
|
|
|
|
func CreatePostResult(parameters PostResult, db *sql.DB) (int, error) {
|
|
result, err := db.Exec("insert into PostResults (WordpressId, SlowtwitchId, OldUrl, OldUrlStatus, NewUrl, IsSuccess, ErrorMessage) values (?, ?, ?, ?, ?, ?, ?)", parameters.WordpressId, parameters.SlowtwitchId, parameters.OldUrl, parameters.OldUrlStatus, parameters.NewUrl, parameters.IsSuccess, parameters.ErrorMessage)
|
|
if err != nil {
|
|
return 0, err
|
|
} else {
|
|
id, err := result.LastInsertId()
|
|
if err != nil {
|
|
return 0, err
|
|
}
|
|
return int(id), nil
|
|
}
|
|
}
|
|
|
|
func GetWordpressPostIdBySlowtwitchPostId(slowtwitchPostId int, db *sql.DB) (int, error) {
|
|
var wordpressId int
|
|
|
|
post := db.QueryRow("select WordpressId from PostResults where SlowtwitchId = (?)", slowtwitchPostId)
|
|
err := post.Scan(&wordpressId)
|
|
|
|
return wordpressId, err
|
|
}
|