repository

package
v0.1.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

Package repository provides the form repository implementation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewStore

func NewStore(db database.DB, logger logging.Logger) form.Repository

NewStore creates a new form store

Types

type Store

type Store struct {
	// contains filtered or unexported fields
}

Store implements form.Repository interface

func (*Store) CreateForm

func (s *Store) CreateForm(ctx context.Context, formModel *model.Form) error

CreateForm creates a new form

func (*Store) CreateSubmission

func (s *Store) CreateSubmission(ctx context.Context, submission *model.FormSubmission) error

CreateSubmission creates a new form submission

func (*Store) DeleteForm

func (s *Store) DeleteForm(ctx context.Context, id string) error

DeleteForm deletes a form

func (*Store) DeleteSubmission

func (s *Store) DeleteSubmission(ctx context.Context, submissionID string) error

DeleteSubmission deletes a form submission

func (*Store) GetByFormAndUser

func (s *Store) GetByFormAndUser(
	ctx context.Context,
	formID string,
	userID string,
) (*model.FormSubmission, error)

GetByFormAndUser retrieves a submission by form ID and user ID

func (*Store) GetByFormID

func (s *Store) GetByFormID(ctx context.Context, formID string) ([]*model.FormSubmission, error)

GetByFormID retrieves all submissions for a form

func (*Store) GetByFormIDPaginated

func (s *Store) GetByFormIDPaginated(
	ctx context.Context,
	formID string,
	params common.PaginationParams,
) (*common.PaginationResult, error)

GetByFormIDPaginated retrieves paginated submissions for a form

func (*Store) GetFormByID

func (s *Store) GetFormByID(ctx context.Context, id string) (*model.Form, error)

GetFormByID retrieves a form by ID

func (*Store) GetFormsByStatus

func (s *Store) GetFormsByStatus(ctx context.Context, status string) ([]*model.Form, error)

GetFormsByStatus returns forms by their active status

func (*Store) GetSubmissionByID

func (s *Store) GetSubmissionByID(ctx context.Context, submissionID string) (*model.FormSubmission, error)

GetSubmissionByID retrieves a form submission by ID

func (*Store) GetSubmissionsByStatus

func (s *Store) GetSubmissionsByStatus(
	ctx context.Context,
	status model.SubmissionStatus,
) ([]*model.FormSubmission, error)

GetSubmissionsByStatus retrieves submissions by status

func (*Store) ListForms

func (s *Store) ListForms(ctx context.Context, userID string) ([]*model.Form, error)

ListForms retrieves all forms for a user

func (*Store) ListSubmissions

func (s *Store) ListSubmissions(ctx context.Context, formID string) ([]*model.FormSubmission, error)

ListSubmissions retrieves all submissions for a form

func (*Store) UpdateForm

func (s *Store) UpdateForm(ctx context.Context, formModel *model.Form) error

UpdateForm updates a form

func (*Store) UpdateSubmission

func (s *Store) UpdateSubmission(ctx context.Context, submission *model.FormSubmission) error

UpdateSubmission updates a form submission

Directories

Path Synopsis
Package repository provides the form submission repository implementation
Package repository provides the form submission repository implementation

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL