job

package
v0.0.0-...-345574f Latest Latest
Warning

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

Go to latest
Published: Jan 19, 2021 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Controller

type Controller interface {
	GetJobByID(ginCtx *gin.Context)
	GetJobs(ginCtx *gin.Context)
	SearchJobs(ginCtx *gin.Context)
	GetFavouriteJobs(ginCtx *gin.Context)
	PostJob(ginCtx *gin.Context)
	PutJobByID(ginCtx *gin.Context)
	DeleteJobByID(ginCtx *gin.Context)
}

func NewController

func NewController(exec boil.ContextExecutor) Controller

type HuntingMode

type HuntingMode int
const (
	Inactive HuntingMode = 0
	Active   HuntingMode = 1
	Open     HuntingMode = 2
)

func (HuntingMode) String

func (h HuntingMode) String() string

type JobParams

type JobParams struct {
	Title       string `json:"title"`
	Description string `json:"description"`
	City        string `json:"city"`
	JobLink     string `json:"job_link"`
}

JobParams struct

type JobPost

type JobPost struct {
	ID          string    `json:"id"`
	Title       string    `json:"title"`
	Description string    `json:"description"`
	City        string    `json:"city"`
	JobLink     string    `json:"job_link"`
	Website     string    `json:"website"`
	CreatedAt   time.Time `json:"created_at"`
	CreatedBy   User      `json:"created_by"`
}

JobPost struct

type JobSearch

type JobSearch struct {
	Text string `json:"text"`
}

JobSearch Params struct

type Repository

type Repository interface {
	GetJobByID(ctx context.Context, jobID string) (*models.Job, error)
	GetJobs(ctx context.Context, pageNumber int, itemsPerPage int) (models.JobSlice, error)
	SearchJobs(ctx context.Context, searchText string) (models.JobSlice, error)
	GetFavouriteJobs(ctx context.Context, iamID string) (models.JobSlice, error)
	CreateJob(ctx context.Context, iamID string, params JobParams) (*models.Job, error)
	UpdateJobByID(ctx context.Context, iamID string, jobID string, params JobParams) (*models.Job, error)
	DeleteJobByID(ctx context.Context, iamID string, jobID string) error
}

type Service

type Service interface {
	GetJobByID(ctx context.Context, jobID string) (JobPost, error)
	GetJobs(ctx context.Context, pageNumber int, itemsPerPage int) ([]JobPost, error)
	SearchJobs(ctx context.Context, searchText string) ([]JobPost, error)
	GetFavouriteJobs(ctx context.Context, iamID string) ([]JobPost, error)
	CreateJob(ctx context.Context, iamID string, params JobParams) (JobPost, error)
	UpdateJobByID(ctx context.Context, iamID string, jobID string, params JobParams) (JobPost, error)
	DeleteJobByID(ctx context.Context, iamID string, jobID string) error
}

Service is used to facilitate all otp related activities for any request

type User

type User struct {
	ID          string      `json:"id"`
	FirstName   string      `json:"first_name"`
	LastName    string      `json:"last_name"`
	AvatarUrl   string      `json:"avatar_url"`
	JobTitle    string      `json:"job_title,omitempty"`
	Company     string      `json:"company,omitempty"`
	CreatedAt   time.Time   `json:"-"`
	Headline    string      `json:"headline,omitempty"`
	Profile     UserProfile `json:"profiles,omitempty"`
	HuntingMode string      `json:"hunting_mode"`
}

User struct

type UserProfile

type UserProfile struct {
	LinkedIn string `json:"linkedin"`
}

Jump to

Keyboard shortcuts

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