add methods in Repository and Model for importing data
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 6s
Gitea Actions Demo / build-and-test (push) Failing after 19m24s

This commit is contained in:
Thomas Peetz
2026-10-29 17:40:54 +01:00
parent 2aeba70906
commit 0750621b96
54 changed files with 779 additions and 84 deletions
+2
View File
@@ -43,6 +43,8 @@ func ConvertArticlesToDtos(articles []Article) []ArticleDTO {
return dtos
}
type ArticleDTOList []ArticleDTO
type CreateArticleDTO struct {
Title string `json:"title" binding:"required"`
}
@@ -46,3 +46,5 @@ func ConvertArticleAuthorsToDtos(article_authors []ArticleAuthor) []ArticleAutho
}
return dtos
}
type ArticleAuthorDTOList []ArticleAuthorDTO
+15
View File
@@ -29,6 +29,19 @@ type ArtistDTO struct {
WebLink string `json:"weblink"`
}
func (dto ArtistDTO) ConvertDTOToModel() Artist {
model := Artist{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Name: dto.Name,
WebLink: dto.WebLink,
}
return model
}
func ConvertArtistsToDtos(artists []Artist) []ArtistDTO {
dtos := make([]ArtistDTO, len(artists))
for i, artist := range artists {
@@ -49,3 +62,5 @@ type CreateArtistDTO struct {
Name string `json:"name" binding:"required"`
WebLink string `json:"weblink" binding:"required"`
}
type ArtistDTOList []ArtistDTO
+15
View File
@@ -31,6 +31,19 @@ type AssignmentDTO struct {
PermissionID *string `json:"permission_id"`
}
func (dto *AssignmentDTO) ConvertDTOToModel() Assignment {
model := Assignment{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
ProfileID: dto.ProfileID,
PermissionID: dto.PermissionID,
}
return model
}
func ConvertAssignmentsToDtos(assignments []Assignment) []AssignmentDTO {
dtos := make([]AssignmentDTO, len(assignments))
for i, assignment := range assignments {
@@ -46,3 +59,5 @@ func ConvertAssignmentsToDtos(assignments []Assignment) []AssignmentDTO {
}
return dtos
}
type AssignmentDTOList []AssignmentDTO
+2
View File
@@ -46,3 +46,5 @@ func ConvertAuthorsToDtos(authors []Author) []AuthorDTO {
}
return dtos
}
type AuthorDTOList []AuthorDTO
+2
View File
@@ -46,3 +46,5 @@ func ConvertBooksToDtos(books []Book) []BookDTO {
}
return dtos
}
type BookDTOList []BookDTO
@@ -46,3 +46,5 @@ func ConvertBookAuthorsToDtos(book_authors []BookAuthor) []BookAuthorDTO {
}
return dtos
}
type BookAuthorDTOList []BookAuthorDTO
@@ -42,3 +42,5 @@ func ConvertBookshelfPublishersToDtos(publishers []BookshelfPublisher) []Bookshe
}
return dtos
}
type BookshelfPublisherDTOList []BookshelfPublisherDTO
+18
View File
@@ -38,6 +38,22 @@ type CardDTO struct {
VendorID string `json:"vendor_id" binding:"required"`
}
func (dto CardDTO) ConvertDTOToModel() Card {
model := Card{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
CardNumber: dto.CardNumber,
Year: dto.Year,
CardSetID: dto.CardSetID,
RoosterID: dto.RoosterID,
VendorID: dto.VendorID,
}
return model
}
func ConvertCardsToDtos(cards []Card) []CardDTO {
dtos := make([]CardDTO, len(cards))
for i, card := range cards {
@@ -56,3 +72,5 @@ func ConvertCardsToDtos(cards []Card) []CardDTO {
}
return dtos
}
type CardDTOList []CardDTO
+17
View File
@@ -35,6 +35,21 @@ type CardSetDTO struct {
VendorID string `json:"vendor_id" binding:"required"`
}
func (dto CardSetDTO) ConvertDTOToModel() CardSet {
model := CardSet{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Name: dto.Name,
ParallelSet: dto.ParallelSet,
InsertSet: dto.InsertSet,
VendorID: dto.VendorID,
}
return model
}
func ConvertCardSetsToDtos(cardsets []CardSet) []CardSetDTO {
dtos := make([]CardSetDTO, len(cardsets))
for i, cardset := range cardsets {
@@ -52,3 +67,5 @@ func ConvertCardSetsToDtos(cardsets []CardSet) []CardSetDTO {
}
return dtos
}
type CardSetDTOList []CardSetDTO
+18
View File
@@ -41,6 +41,22 @@ type ComicDTO struct {
WebLink string `json:"weblink"`
}
func (dto ComicDTO) ConvertDTOToModel() Comic {
model := Comic{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Title: dto.Title,
PublisherID: dto.PublisherID,
CurrentOrder: dto.CurrentOrder,
Completed: dto.Completed,
WebLink: dto.WebLink,
}
return model
}
func ConvertComicsToDtos(comics []Comic) []ComicDTO {
dtos := make([]ComicDTO, len(comics))
for i, comic := range comics {
@@ -60,6 +76,8 @@ func ConvertComicsToDtos(comics []Comic) []ComicDTO {
return dtos
}
type ComicDTOList []ComicDTO
type CreateComicDTO struct {
Title string `json:"title" binding:"required"`
}
+2
View File
@@ -50,3 +50,5 @@ func ConvertComicworksToDtos(comicworks []ComicWork) []ComicworkDTO {
}
return dtos
}
type ComicworkDTOList []ComicworkDTO
+2
View File
@@ -65,3 +65,5 @@ func ConvertIssuesToDtos(issues []Issue) []IssueDTO {
}
return dtos
}
type IssueDTOList []IssueDTO
+2
View File
@@ -50,3 +50,5 @@ func ConvertIssueworksToDtos(issueworks []IssueWork) []IssueworkDTO {
}
return dtos
}
type IssueworkDTOList []IssueworkDTO
+2
View File
@@ -53,3 +53,5 @@ func ConvertMailsToDtos(mails []Mail) []MailDTO {
}
return dtos
}
type MailDTOList []MailDTO
@@ -56,3 +56,5 @@ func ConvertMailAccountsToDtos(mailaccounts []MailAccount) []MailAccountDTO {
}
return dtos
}
type MailAccountDTOList []MailAccountDTO
@@ -55,3 +55,5 @@ func ConvertMediaActorsToDtos(actors []MediaActor) []MediaActorDTO {
}
return dtos
}
type MediaActorDTOList []MediaActorDTO
@@ -51,3 +51,5 @@ func ConvertMediaActorFilesToDtos(actor_files []MediaActorFile) []MediaActorFile
}
return dtos
}
type MediaActorFileDTOList []MediaActorFileDTO
@@ -44,3 +44,5 @@ func ConvertMediaArticlesToDtos(media_articles []MediaArticle) []MediaArticleDTO
}
return dtos
}
type MediaArticleDTOList []MediaArticleDTO
+2
View File
@@ -75,3 +75,5 @@ func ConvertMediaFilesToDtos(media_files []MediaFile) []MediaFileDTO {
}
return dtos
}
type MediaFileDTOList []MediaFileDTO
@@ -80,3 +80,5 @@ func ConvertMediaVideosToDtos(media_videos []MediaVideo) []MediaVideoDTO {
}
return dtos
}
type MediaVideoDTOList []MediaVideoDTO
+14
View File
@@ -28,6 +28,18 @@ type PermissionDTO struct {
Name string `json:"name" binding:"required"`
}
func (permission *PermissionDTO) ConvertDTOToModel() Permission {
model := Permission{
ID: permission.ID,
CreatedAt: permission.CreatedAt.Time,
UpdatedAt: permission.UpdatedAt.Time,
DeletedAt: permission.DeletedAt,
Version: permission.Version,
Name: permission.Name,
}
return model
}
func ConvertPermissionsToDtos(permissions []Permission) []PermissionDTO {
dtos := make([]PermissionDTO, len(permissions))
for i, permission := range permissions {
@@ -42,3 +54,5 @@ func ConvertPermissionsToDtos(permissions []Permission) []PermissionDTO {
}
return dtos
}
type PermissionDTOList []PermissionDTO
+13
View File
@@ -32,6 +32,19 @@ type PlayerDTO struct {
LastName string `json:"last_name" binding:"required"`
}
func (dto PlayerDTO) ConvertDTOToModel() Player {
model := Player{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
FirstName: dto.FirstName,
LastName: dto.LastName,
}
return model
}
type PlayerDTOList []PlayerDTO
func (playerList *PlayerDTOList) CompareIds(target *PlayerDTOList) (missing, obsolete []string) {
+2
View File
@@ -49,3 +49,5 @@ func ConvertPositionsToDtos(positions []Position) []PositionDTO {
}
return dtos
}
type PositionDTOList []PositionDTO
+17
View File
@@ -52,6 +52,23 @@ type ProfileDTO struct {
Enabled bool `json:"enabled" binding:"required"`
}
func (profile *ProfileDTO) ConvertDTOToModel() Profile {
model := Profile{
ID: profile.ID,
CreatedAt: profile.CreatedAt.Time,
UpdatedAt: profile.UpdatedAt.Time,
DeletedAt: profile.DeletedAt,
Version: profile.Version,
First_Name: profile.First_Name,
Last_Name: profile.Last_Name,
User_Name: profile.User_Name,
Email: profile.Email,
Password: profile.Password,
Enabled: profile.Enabled,
}
return model
}
func ConvertProfilesToDtos(profiles []Profile) []ProfileDTO {
dtos := make([]ProfileDTO, len(profiles))
for i, profile := range profiles {
+16
View File
@@ -34,6 +34,20 @@ type PublisherDTO struct {
ParentPublisherID *string `json:"parent_publisher_id"`
}
func (dto PublisherDTO) ConvertDTOToModel() Publisher {
model := Publisher{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Name: dto.Name,
WebLink: dto.WebLink,
ParentPublisherID: dto.ParentPublisherID,
}
return model
}
func ConvertPublishersToDtos(publishers []Publisher) []PublisherDTO {
dtos := make([]PublisherDTO, len(publishers))
for i, publisher := range publishers {
@@ -55,3 +69,5 @@ type CreatePublisherDTO struct {
Name string `json:"name" binding:"required"`
WebLink string `json:"weblink" binding:"required"`
}
type PublisherDTOList []PublisherDTO
+17
View File
@@ -37,6 +37,21 @@ type RoosterDTO struct {
PositionID string `json:"position_id" binding:"required"`
}
func (dto RoosterDTO) ConvertDTOToModel() Rooster {
model := Rooster{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Year: dto.Year,
TeamID: dto.TeamID,
PlayerID: dto.PlayerID,
PositionID: dto.PositionID,
}
return model
}
func ConvertRoostersToDtos(roosters []Rooster) []RoosterDTO {
dtos := make([]RoosterDTO, len(roosters))
for i, rooster := range roosters {
@@ -54,3 +69,5 @@ func ConvertRoostersToDtos(roosters []Rooster) []RoosterDTO {
}
return dtos
}
type RoosterDTOList []RoosterDTO
+12
View File
@@ -29,6 +29,18 @@ type SportDTO struct {
Name string `json:"name" binding:"required"`
}
func (dto SportDTO) ConvertDTOToModel() Sport {
model := Sport{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Name: dto.Name,
}
return model
}
type SportDTOList []SportDTO
func (sportList *SportDTOList) CompareIds(target *SportDTOList) (missing, obsolete []string) {
+2
View File
@@ -49,3 +49,5 @@ func ConvertStoryArcsToDtos(storyarcs []StoryArc) []StoryArcDTO {
}
return dtos
}
type StoryArcDTOList []StoryArcDTO
+16
View File
@@ -33,6 +33,20 @@ type TeamDTO struct {
SportID string `json:"sport_id" binding:"required"`
}
func (dto TeamDTO) ConvertDTOToModel() Team {
model := Team{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Name: dto.Name,
ShortName: dto.ShortName,
SportID: dto.SportID,
}
return model
}
func ConvertTeamsToDtos(teams []Team) []TeamDTO {
dtos := make([]TeamDTO, len(teams))
for i, team := range teams {
@@ -49,3 +63,5 @@ func ConvertTeamsToDtos(teams []Team) []TeamDTO {
}
return dtos
}
type TeamDTOList []TeamDTO
+2
View File
@@ -47,3 +47,5 @@ func ConvertTokensToDtos(tokens []Token) []TokenDTO {
}
return dtos
}
type TokenDTOList []TokenDTO
@@ -51,3 +51,5 @@ func ConvertTradePaperbacksToDtos(tradepaperbacks []TradePaperback) []TradePaper
}
return dtos
}
type TradePaperbackDTOList []TradePaperbackDTO
+14
View File
@@ -29,6 +29,18 @@ type VendorDTO struct {
Name string `json:"name" binding:"required"`
}
func (dto VendorDTO) ConvertDTOToModel() Vendor {
model := Vendor{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Name: dto.Name,
}
return model
}
func ConvertVendorsToDtos(vendors []Vendor) []VendorDTO {
dtos := make([]VendorDTO, len(vendors))
for i, vendor := range vendors {
@@ -43,3 +55,5 @@ func ConvertVendorsToDtos(vendors []Vendor) []VendorDTO {
}
return dtos
}
type VendorDTOList []VendorDTO
+15
View File
@@ -30,6 +30,19 @@ type VolumeDTO struct {
ComicID *string `json:"comic_id"`
}
func (dto VolumeDTO) ConvertDTOToModel() Volume {
model := Volume{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Name: dto.Name,
ComicID: dto.ComicID,
}
return model
}
func ConvertVolumesToDtos(volumes []Volume) []VolumeDTO {
dtos := make([]VolumeDTO, len(volumes))
for i, volume := range volumes {
@@ -45,3 +58,5 @@ func ConvertVolumesToDtos(volumes []Volume) []VolumeDTO {
}
return dtos
}
type VolumeDTOList []VolumeDTO
+14
View File
@@ -27,6 +27,18 @@ type WorkTypeDTO struct {
Name string `json:"name"`
}
func (dto WorkTypeDTO) ConvertDTOToModel() WorkType {
model := WorkType{
ID: dto.ID,
CreatedAt: dto.CreatedAt.Time,
UpdatedAt: dto.UpdatedAt.Time,
DeletedAt: dto.DeletedAt,
Version: dto.Version,
Name: dto.Name,
}
return model
}
func ConvertWorkTypesToDtos(worktypes []WorkType) []WorkTypeDTO {
dtos := make([]WorkTypeDTO, len(worktypes))
for i, worktype := range worktypes {
@@ -41,3 +53,5 @@ func ConvertWorkTypesToDtos(worktypes []WorkType) []WorkTypeDTO {
}
return dtos
}
type WorkTypeDTOList []WorkTypeDTO