plexams

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Nov 20, 2024 License: BSD-3-Clause Imports: 30 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CalculatedAllowedSlots

func CalculatedAllowedSlots(semesterConfigSlots []*model.Slot, goSlots [][]int, isGO bool, constraints *model.Constraints) []*model.Slot

func PrintGOSlots

func PrintGOSlots(semesterConfigSlots []*model.Slot, goSlots [][]int) error

Types

type BookedEntry

type BookedEntry struct {
	From     time.Time
	Until    time.Time
	Rooms    []string
	Approved bool
}

type CsvExam

type CsvExam struct {
	Ancode     int    `csv:"Ancode"`
	Module     string `csv:"Modul"`
	MainExamer string `csv:"Erstprüfer:in"`
	ExamDate   string `csv:"Termin"`
	Rooms      string `csv:"Räume"`
	Comment    string `csv:"Anmerkungen"`
}

type CsvExamEXaHM

type CsvExamEXaHM struct {
	Ancode      int    `csv:"Ancode"`
	Module      string `csv:"Modul"`
	MainExamer  string `csv:"Erstprüfer:in"`
	ExamDate    string `csv:"Termin"`
	MaxDuration int    `csv:"Maximale Länge"`
	Students    int    `csv:"Anmeldungen"`
	Rooms       string `csv:"Räume"`
	Type        string `csv:"Typ"`
}

type Email

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

type GeneratedExamMailData

type GeneratedExamMailData struct {
	Exam           *model.GeneratedExam
	Teacher        *model.Teacher
	PlanerName     string
	HasStudentRegs bool
}

type HandicapExam

type HandicapExam struct {
	AnCode           int
	Module           string
	TypeExamFull     string
	HandicapStudents []*HandicapStudent
}

type HandicapStudent

type HandicapStudent struct {
	Name         string
	Compensation string
}

type HandicapsEmail

type HandicapsEmail struct {
	MainExamer string
	Exams      []*HandicapExam
	PlanerName string
}

type KnownConflict

type KnownConflict struct {
	Mtknr, Ancode1, Ancode2 string
}

type NTAEmail

type NTAEmail struct {
	NTA        *model.Student
	Exams      []*model.PlannedExam
	PlanerName string
}

type Planer

type Planer struct {
	Name  string
	Email string
}

type Plexams

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

func NewPlexams

func NewPlexams(semester, dbUri, zpaBaseurl, zpaUsername, zpaPassword string, fk07programs []string) (*Plexams, error)

func (*Plexams) AddAdditionalExam deprecated

func (p *Plexams) AddAdditionalExam(ctx context.Context, exam model.AdditionalExamInput) (bool, error)

Deprecated: rm me

func (*Plexams) AddAncode

func (p *Plexams) AddAncode(ctx context.Context, zpaAncode int, program string, primussAncode int) error

func (*Plexams) AddExamGroupToSlot deprecated

func (p *Plexams) AddExamGroupToSlot(ctx context.Context, dayNumber int, timeNumber int, examGroupCode int) (bool, error)

Deprecated: rm me

func (*Plexams) AddExamToSlot

func (p *Plexams) AddExamToSlot(ctx context.Context, ancode int, dayNumber int, timeNumber int) (bool, error)

func (*Plexams) AddExternalExam

func (p *Plexams) AddExternalExam(ctx context.Context, primussExam *model.PrimussExam, duration int) error

func (*Plexams) AddInvigilation

func (p *Plexams) AddInvigilation(ctx context.Context, room string, day, slot, invigilatorID int) error

func (*Plexams) AddInvigilatorsToInvigilationTodos

func (p *Plexams) AddInvigilatorsToInvigilationTodos(ctx context.Context, todos *model.InvigilationTodos) error

func (*Plexams) AddNta

func (p *Plexams) AddNta(ctx context.Context, input model.NTAInput) (*model.NTA, error)

func (*Plexams) AddRoomToExam

func (p *Plexams) AddRoomToExam(ctx context.Context, input model.RoomForExamInput) (bool, error)

func (*Plexams) AddZpaExamToPlan

func (p *Plexams) AddZpaExamToPlan(ctx context.Context, ancode int) (bool, error)

func (*Plexams) AdditionalExams deprecated

func (p *Plexams) AdditionalExams(ctx context.Context) ([]*model.AdditionalExam, error)

Deprecated: rm me

func (*Plexams) AllProgramsInPlan

func (p *Plexams) AllProgramsInPlan(ctx context.Context) ([]string, error)

func (*Plexams) AllowedSlots

func (p *Plexams) AllowedSlots(ctx context.Context, ancode int) ([]*model.Slot, error)

func (*Plexams) AncodesInPlan

func (p *Plexams) AncodesInPlan(ctx context.Context) ([]int, error)

func (*Plexams) AwkwardSlots

func (p *Plexams) AwkwardSlots(ctx context.Context, ancode int) ([]*model.Slot, error)

func (*Plexams) CacheExam

func (p *Plexams) CacheExam(ancode int) error

func (*Plexams) CacheExams

func (p *Plexams) CacheExams() error

func (*Plexams) CachedExam

func (p *Plexams) CachedExam(ctx context.Context, ancode int) (*model.Exam, error)

func (*Plexams) CachedExams

func (p *Plexams) CachedExams(ctx context.Context) ([]*model.Exam, error)

func (*Plexams) ChangeAncode

func (p *Plexams) ChangeAncode(ctx context.Context, program string, ancode, newAncode int) (*model.PrimussExam, error)

func (*Plexams) ChangeAncodeInConflicts

func (p *Plexams) ChangeAncodeInConflicts(ctx context.Context, program string, ancode, newAncode int) (*model.Conflicts, error)

func (*Plexams) ChangeAncodeInStudentRegs

func (p *Plexams) ChangeAncodeInStudentRegs(ctx context.Context, program string, ancode, newAncode int) ([]*model.StudentReg, error)

func (*Plexams) ChangeRoom

func (p *Plexams) ChangeRoom(ctx context.Context, ancode int, oldRoomName, newRoomName string) (bool, error)

func (*Plexams) ConflictingAncodes

func (p *Plexams) ConflictingAncodes(ctx context.Context, ancode int) ([]*model.Conflict, error)

func (*Plexams) ConflictingGroupCodes deprecated

func (p *Plexams) ConflictingGroupCodes(ctx context.Context, examGroupCode int) ([]*model.ExamGroupConflict, error)

Deprecated: Remove me

func (*Plexams) ConnectExam

func (p *Plexams) ConnectExam(ancode int, program string) error

TODO: check if there are Exams with same Ancode in other programs

func (*Plexams) ConstraintForAncode

func (p *Plexams) ConstraintForAncode(ctx context.Context, ancode int) (*model.Constraints, error)

func (*Plexams) Constraints

func (p *Plexams) Constraints(ctx context.Context) ([]*model.Constraints, error)

func (*Plexams) ConstraintsMap

func (p *Plexams) ConstraintsMap(ctx context.Context) (map[int]*model.Constraints, error)

func (*Plexams) ConstraintsPDF

func (p *Plexams) ConstraintsPDF(ctx context.Context, outfile string) error

func (*Plexams) CsvForEXaHM

func (p *Plexams) CsvForEXaHM(filename string) error

func (*Plexams) CsvForProgram

func (p *Plexams) CsvForProgram(program, filename string) error

func (*Plexams) DraftExahmPDF

func (p *Plexams) DraftExahmPDF(ctx context.Context, outfile string) error

func (*Plexams) DraftFS

func (p *Plexams) DraftFS(ctx context.Context, outfile string) error

func (*Plexams) DraftFk08PDF

func (p *Plexams) DraftFk08PDF(ctx context.Context, outfile string) error

func (*Plexams) DraftFk10PDF

func (p *Plexams) DraftFk10PDF(ctx context.Context, outfile string) error

func (*Plexams) DraftLbaRep

func (p *Plexams) DraftLbaRep(ctx context.Context) error

func (*Plexams) DraftMucDaiPDF

func (p *Plexams) DraftMucDaiPDF(ctx context.Context, outfile string) error

func (*Plexams) DraftSI

func (p *Plexams) DraftSI(ctx context.Context) error

func (*Plexams) Exahm

func (p *Plexams) Exahm(ctx context.Context, ancode int) (bool, error)

func (*Plexams) ExahmRoomsFromBooked

func (p *Plexams) ExahmRoomsFromBooked() ([]BookedEntry, error)

func (*Plexams) Exam

func (p *Plexams) Exam(ctx context.Context, ancode int) (*model.Exam, error)

func (*Plexams) ExamGroup deprecated

func (p *Plexams) ExamGroup(ctx context.Context, examGroupCode int) (*model.ExamGroup, error)

Deprecated: Remove me

func (*Plexams) ExamGroups

func (p *Plexams) ExamGroups(ctx context.Context) ([]*model.ExamGroup, error)

FIXME: Remove me

func (*Plexams) ExamGroupsWithoutSlot deprecated

func (p *Plexams) ExamGroupsWithoutSlot(ctx context.Context) ([]*model.ExamGroup, error)

Deprecated: rm me

func (*Plexams) ExamWithRegs deprecated

func (p *Plexams) ExamWithRegs(ctx context.Context, ancode int) (*model.ExamWithRegs, error)

Deprecated: Remove me

func (*Plexams) ExamerInPlan

func (p *Plexams) ExamerInPlan(ctx context.Context) ([]*model.ExamerInPlan, error)

func (*Plexams) ExamsInPlan

func (p *Plexams) ExamsInPlan(ctx context.Context) ([]*model.ExamInPlan, error)

func (*Plexams) ExamsInSlot deprecated

func (p *Plexams) ExamsInSlot(ctx context.Context, day int, time int) ([]*model.ExamInPlan, error)

Deprecated: rm me

func (*Plexams) ExamsInSlotWithRooms

func (p *Plexams) ExamsInSlotWithRooms(ctx context.Context, day int, time int) ([]*model.ExamWithRegsAndRooms, error)

TODO: rewrite me or delete me

func (*Plexams) ExamsWithRegs deprecated

func (p *Plexams) ExamsWithRegs(ctx context.Context) ([]*model.ExamWithRegs, error)

Deprecated: Remove me

func (*Plexams) ExamsWithoutSlot

func (p *Plexams) ExamsWithoutSlot(ctx context.Context) ([]*model.PlannedExam, error)

func (*Plexams) ExcludeDays

func (p *Plexams) ExcludeDays(ctx context.Context, ancode int, dayStrings []string) (bool, error)

func (*Plexams) ExternalExams

func (p *Plexams) ExternalExams(ctx context.Context) ([]*model.ExternalExam, error)

func (*Plexams) GenerateExamsToPlanPDF

func (p *Plexams) GenerateExamsToPlanPDF(ctx context.Context, outfile string) error

func (*Plexams) GeneratePlan deprecated

func (p *Plexams) GeneratePlan(ctx context.Context) error

Deprecated: rm me

func (*Plexams) GeneratedExam

func (p *Plexams) GeneratedExam(ctx context.Context, ancode int) (*model.GeneratedExam, error)

func (*Plexams) GeneratedExams

func (p *Plexams) GeneratedExams(ctx context.Context) ([]*model.GeneratedExam, error)

func (*Plexams) GeneratedExamsForExamer

func (p *Plexams) GeneratedExamsForExamer(ctx context.Context, examerID int) ([]*model.GeneratedExam, error)

func (*Plexams) GetAllSemesterNames

func (p *Plexams) GetAllSemesterNames(ctx context.Context) ([]*model.Semester, error)

func (*Plexams) GetConflicts

func (p *Plexams) GetConflicts(ctx context.Context, exam *model.PrimussExam) (*model.Conflicts, error)

func (*Plexams) GetConnectedExam

func (p *Plexams) GetConnectedExam(ctx context.Context, ancode int) (*model.ConnectedExam, error)

func (*Plexams) GetConnectedExams

func (p *Plexams) GetConnectedExams(ctx context.Context) ([]*model.ConnectedExam, error)

func (*Plexams) GetExamGroupForAncode

func (p *Plexams) GetExamGroupForAncode(ctx context.Context, ancode int) (*model.ExamGroup, error)

func (*Plexams) GetExamsForStudent deprecated

func (p *Plexams) GetExamsForStudent(name string) error

Deprecated: rm me

func (*Plexams) GetExamsInSlot

func (p *Plexams) GetExamsInSlot(ctx context.Context, day int, time int) ([]*model.PlannedExam, error)

func (*Plexams) GetFk07programs

func (p *Plexams) GetFk07programs(ctx context.Context) ([]*model.FK07Program, error)

func (*Plexams) GetGoSlots

func (p *Plexams) GetGoSlots() [][]int

func (*Plexams) GetInvigilationTodos

func (p *Plexams) GetInvigilationTodos(ctx context.Context) (*model.InvigilationTodos, error)

func (*Plexams) GetInvigilator

func (p *Plexams) GetInvigilator(ctx context.Context, invigilatorID int) (*model.Invigilator, error)

func (*Plexams) GetInvigilatorInSlot

func (p *Plexams) GetInvigilatorInSlot(ctx context.Context, roomname string, day, time int) (*model.Teacher, error)

func (*Plexams) GetInvigilators

func (p *Plexams) GetInvigilators(ctx context.Context) ([]*model.ZPAInvigilator, error)

func (*Plexams) GetPrimussExam

func (p *Plexams) GetPrimussExam(ctx context.Context, program string, ancode int) (*model.PrimussExam, error)

func (*Plexams) GetPrimussExamsForAncode

func (p *Plexams) GetPrimussExamsForAncode(ctx context.Context, ancode int) ([]*model.PrimussExam, error)

func (*Plexams) GetReservations

func (p *Plexams) GetReservations() (map[string][]TimeRange, error)

func (*Plexams) GetRoomInfo

func (p *Plexams) GetRoomInfo(roomName string) *model.Room

func (*Plexams) GetRoomsForNTA

func (p *Plexams) GetRoomsForNTA(name string) error

FIXME: rewrite me

func (*Plexams) GetRoomsForNTAOld

func (p *Plexams) GetRoomsForNTAOld(name string) error

FIXME: rewrite me

func (*Plexams) GetSemester

func (p *Plexams) GetSemester(ctx context.Context) *model.Semester

func (*Plexams) GetSemesterConfig

func (p *Plexams) GetSemesterConfig() *model.SemesterConfig

func (*Plexams) GetStarttime

func (p *Plexams) GetStarttime(dayNumber, slotNumber int) (*time.Time, error)

func (*Plexams) GetStudentRegs

func (p *Plexams) GetStudentRegs(ctx context.Context, exam *model.PrimussExam) ([]*model.StudentReg, error)

func (*Plexams) GetStudentRegsForAncode

func (p *Plexams) GetStudentRegsForAncode(ancode int) (*model.StudentRegsForAncode, error)

func (*Plexams) GetStudentRegsPerAncodePlanned

func (p *Plexams) GetStudentRegsPerAncodePlanned(ctx context.Context) ([]*model.StudentRegsPerAncode, error)

func (*Plexams) GetStudents

func (p *Plexams) GetStudents(ctx context.Context, mtknr string) ([]*model.ZPAStudent, error)

func (*Plexams) GetSupervisorRequirements

func (p *Plexams) GetSupervisorRequirements(ctx context.Context) ([]*zpa.SupervisorRequirements, error)

func (*Plexams) GetTeacher

func (p *Plexams) GetTeacher(ctx context.Context, id int) (*model.Teacher, error)

func (*Plexams) GetTeachers

func (p *Plexams) GetTeachers(ctx context.Context, fromZpa *bool) ([]*model.Teacher, error)

func (*Plexams) GetWorkflow

func (p *Plexams) GetWorkflow(ctx context.Context) ([]*model.Step, error)

func (*Plexams) GetZPAExam

func (p *Plexams) GetZPAExam(ctx context.Context, ancode int) (*model.ZPAExam, error)

func (*Plexams) GetZPAExams

func (p *Plexams) GetZPAExams(ctx context.Context, fromZpa *bool) ([]*model.ZPAExam, error)

func (*Plexams) GetZPAExamsGroupedByType

func (p *Plexams) GetZPAExamsGroupedByType(ctx context.Context) ([]*model.ZPAExamsForType, error)

func (*Plexams) GetZpaAnCodes

func (p *Plexams) GetZpaAnCodes(ctx context.Context) ([]*model.AnCode, error)

func (*Plexams) GetZpaAnCodesToPlan

func (p *Plexams) GetZpaAnCodesToPlan(ctx context.Context) ([]*model.AnCode, error)

func (*Plexams) GetZpaExamByAncode

func (p *Plexams) GetZpaExamByAncode(ctx context.Context, ancode int) (*model.ZPAExam, error)

func (*Plexams) GetZpaExamsNotToPlan

func (p *Plexams) GetZpaExamsNotToPlan(ctx context.Context) ([]*model.ZPAExam, error)

func (*Plexams) GetZpaExamsToPlan

func (p *Plexams) GetZpaExamsToPlan(ctx context.Context) ([]*model.ZPAExam, error)

func (*Plexams) InvigilationTodos deprecated

func (p *Plexams) InvigilationTodos(ctx context.Context) (*model.InvigilationTodos, error)

Deprecated: split to other functions

func (*Plexams) InvigilatorsForDay

func (p *Plexams) InvigilatorsForDay(ctx context.Context, day int) (*model.InvigilatorsForDay, error)

func (*Plexams) InvigilatorsWithReq

func (p *Plexams) InvigilatorsWithReq(ctx context.Context) ([]*model.Invigilator, error)

func (*Plexams) Lab

func (p *Plexams) Lab(ctx context.Context, ancode int) (bool, error)

func (*Plexams) LockExam

func (p *Plexams) LockExam(ctx context.Context, ancode int) (*model.PlanEntry, *model.GeneratedExam, error)

func (*Plexams) LockPlan

func (p *Plexams) LockPlan(ctx context.Context) error

func (*Plexams) Log

func (p *Plexams) Log(ctx context.Context, subj, msg string) error

func (*Plexams) MakeSelfInvigilations

func (p *Plexams) MakeSelfInvigilations(ctx context.Context) ([]*model.Invigilation, error)

func (*Plexams) MucdaiExams

func (p *Plexams) MucdaiExams(ctx context.Context) ([]*model.MucDaiExam, error)

func (*Plexams) NextDeadline

func (p *Plexams) NextDeadline(ctx context.Context) (*model.Step, error)

func (*Plexams) NotPlannedByMe

func (p *Plexams) NotPlannedByMe(ctx context.Context, ancode int) (bool, error)

func (*Plexams) Nta deprecated

func (p *Plexams) Nta(ctx context.Context, mtknr string) (*model.NTAWithRegs, error)

Deprecated: rm me

func (*Plexams) NtaByMtknr

func (p *Plexams) NtaByMtknr(ctx context.Context, mtknr string) (*model.NTA, error)

func (*Plexams) Ntas

func (p *Plexams) Ntas(ctx context.Context) ([]*model.NTA, error)

func (*Plexams) NtasWithRegs

func (p *Plexams) NtasWithRegs(ctx context.Context) ([]*model.Student, error)

func (*Plexams) NtasWithRegsByTeacher deprecated

func (p *Plexams) NtasWithRegsByTeacher(ctx context.Context) ([]*model.NTAWithRegsByExamAndTeacher, error)

Deprecated: rm me

func (*Plexams) Online

func (p *Plexams) Online(ctx context.Context, ancode int) (bool, error)

func (*Plexams) PartitionGroups

func (p *Plexams) PartitionGroups() error

func (*Plexams) PlacesWithSockets

func (p *Plexams) PlacesWithSockets(ctx context.Context, ancode int) (bool, error)

func (*Plexams) PlanEntries

func (p *Plexams) PlanEntries(ctx context.Context) ([]*model.PlanEntry, error)

func (*Plexams) PlannedExam

func (p *Plexams) PlannedExam(ctx context.Context, ancode int) (*model.PlannedExam, error)

func (*Plexams) PlannedExams

func (p *Plexams) PlannedExams(ctx context.Context) ([]*model.PlannedExam, error)

func (*Plexams) PlannedExamsByExamer

func (p *Plexams) PlannedExamsByExamer(ctx context.Context, examerID int) ([]*model.PlannedExam, error)

func (*Plexams) PlannedExamsForProgram

func (p *Plexams) PlannedExamsForProgram(ctx context.Context, program string, onlyPlannedByMe bool) ([]*model.PlannedExam, error)

func (*Plexams) PlannedRoomNames

func (p *Plexams) PlannedRoomNames(ctx context.Context) ([]string, error)

func (*Plexams) PlannedRoomNamesInSlot

func (p *Plexams) PlannedRoomNamesInSlot(ctx context.Context, day int, time int) ([]string, error)

func (*Plexams) PlannedRooms

func (p *Plexams) PlannedRooms(ctx context.Context) ([]*model.PlannedRoom, error)

func (*Plexams) PlannedRoomsInSlot

func (p *Plexams) PlannedRoomsInSlot(ctx context.Context, day int, time int) ([]*model.PlannedRoom, error)

func (*Plexams) PossibleDays

func (p *Plexams) PossibleDays(ctx context.Context, ancode int, dayStrings []string) (bool, error)

func (*Plexams) PostStudentRegsToZPA

func (p *Plexams) PostStudentRegsToZPA(ctx context.Context) ([]*model.ZPAStudentReg, []*model.RegWithError, error)

func (*Plexams) PrepareConnectedExam

func (p *Plexams) PrepareConnectedExam(ancode int) error

func (*Plexams) PrepareConnectedExams

func (p *Plexams) PrepareConnectedExams() error

func (*Plexams) PrepareExamGroup

func (p *Plexams) PrepareExamGroup(ancodesToGroup []int) error

func (*Plexams) PrepareExamGroups deprecated

func (p *Plexams) PrepareExamGroups() error

Deprecated: no more exam groups

func (*Plexams) PrepareExamsWithRegs deprecated

func (p *Plexams) PrepareExamsWithRegs() error

Deprecated: part of generated exams

func (*Plexams) PrepareGeneratedExams

func (p *Plexams) PrepareGeneratedExams() error

func (*Plexams) PrepareInvigilationTodos

func (p *Plexams) PrepareInvigilationTodos(ctx context.Context) (*model.InvigilationTodos, error)

func (*Plexams) PrepareNta deprecated

func (p *Plexams) PrepareNta() error

Deprecated: rm me

func (*Plexams) PreparePlannedExams

func (p *Plexams) PreparePlannedExams() error

func (*Plexams) PrepareRoomForExams

func (p *Plexams) PrepareRoomForExams() error

func (*Plexams) PrepareRoomForExamsOld

func (p *Plexams) PrepareRoomForExamsOld() error

TODO: rewrite me.

func (*Plexams) PrepareRoomsForSemester

func (p *Plexams) PrepareRoomsForSemester(approvedOnly bool) error

func (*Plexams) PrepareSelfInvigilation

func (p *Plexams) PrepareSelfInvigilation() error

func (*Plexams) PrepareStudentRegs

func (p *Plexams) PrepareStudentRegs() error

func (*Plexams) PrimussExamExists

func (p *Plexams) PrimussExamExists(ctx context.Context, program string, ancode int) (bool, error)

func (*Plexams) PrimussExams

func (p *Plexams) PrimussExams(ctx context.Context) ([]*model.PrimussExamByProgram, error)

func (*Plexams) PrintInfo

func (p *Plexams) PrintInfo()

func (*Plexams) PrintSameName

func (p *Plexams) PrintSameName()

func (*Plexams) PrintStatistics

func (p *Plexams) PrintStatistics() error

func (*Plexams) PrintWorkflow

func (p *Plexams) PrintWorkflow()

func (*Plexams) RemovePrimussExam

func (p *Plexams) RemovePrimussExam(ctx context.Context, input *model.PrimussExamInput) (bool, error)

func (*Plexams) RemoveStudentReg

func (p *Plexams) RemoveStudentReg(ctx context.Context, program string, ancode int, mtknr string) (int, error)

func (*Plexams) RemoveUnlockedExamGroupsFromPlan

func (p *Plexams) RemoveUnlockedExamGroupsFromPlan(ctx context.Context) (int, error)

func (*Plexams) RequestRooms

func (p *Plexams) RequestRooms() error

func (*Plexams) RmCacheExams

func (p *Plexams) RmCacheExams() error

func (*Plexams) RmExamGroupFromSlot

func (p *Plexams) RmExamGroupFromSlot(ctx context.Context, examGroupCode int) (bool, error)

func (*Plexams) RmZpaExamFromPlan

func (p *Plexams) RmZpaExamFromPlan(ctx context.Context, ancode int) (bool, error)

func (*Plexams) Room

func (p *Plexams) Room(ctx context.Context, roomForExam *model.RoomForExam) (*model.Room, error)

func (*Plexams) RoomFromName

func (p *Plexams) RoomFromName(ctx context.Context, roomName string) (*model.Room, error)

func (*Plexams) Rooms

func (p *Plexams) Rooms(ctx context.Context) ([]*model.Room, error)

func (*Plexams) RoomsForNTAsWithRoomAlone

func (p *Plexams) RoomsForNTAsWithRoomAlone() error

func (*Plexams) RoomsForNTAsWithRoomAloneOld

func (p *Plexams) RoomsForNTAsWithRoomAloneOld() error

func (*Plexams) RoomsForSlot

func (p *Plexams) RoomsForSlot(ctx context.Context, day int, time int) (*model.SlotWithRooms, error)

func (*Plexams) RoomsWithInvigilationsForSlot

func (p *Plexams) RoomsWithInvigilationsForSlot(ctx context.Context, day int, time int) (*model.InvigilationSlot, error)

TODO: rewrite me

func (*Plexams) SafeExamBrowser

func (p *Plexams) SafeExamBrowser(ctx context.Context, ancode int) (bool, error)

func (*Plexams) SameModulNames

func (p *Plexams) SameModulNames(ctx context.Context, outfile string) error

func (*Plexams) SameSlot

func (p *Plexams) SameSlot(ctx context.Context, ancodeInput int, ancodesInput []int) (bool, error)

func (*Plexams) SendGeneratedExamMailToTeacher

func (p *Plexams) SendGeneratedExamMailToTeacher(ctx context.Context, to string, generatedExamMailData *GeneratedExamMailData) error

func (*Plexams) SendGeneratedExamMails

func (p *Plexams) SendGeneratedExamMails(ctx context.Context, run bool) error

func (*Plexams) SendHandicapsMailToMainExamer deprecated

func (p *Plexams) SendHandicapsMailToMainExamer(ctx context.Context, to []string, handicapsEmail *HandicapsEmail) error

Deprecated: rm me

func (*Plexams) SendHandicapsMailToStudent

func (p *Plexams) SendHandicapsMailToStudent(ctx context.Context, to []string, handicapsEmail *NTAEmail) error

func (*Plexams) SendHandicapsMails deprecated

func (p *Plexams) SendHandicapsMails(ctx context.Context, run bool) error

Deprecated: rm me

func (*Plexams) SendHandicapsMailsNTARoomAlone

func (p *Plexams) SendHandicapsMailsNTARoomAlone(ctx context.Context, run bool) error

func (*Plexams) SendTestMail

func (p *Plexams) SendTestMail() error

func (*Plexams) SetSemester

func (p *Plexams) SetSemester(ctx context.Context, s string) (*model.Semester, error)

func (*Plexams) SetZPA

func (p *Plexams) SetZPA() error

func (*Plexams) SlotForAncode

func (p *Plexams) SlotForAncode(ctx context.Context, ancode int) (*model.Slot, error)

func (*Plexams) SlotForExamGroup deprecated

func (p *Plexams) SlotForExamGroup(ctx context.Context, examGroupCode int) (*model.Slot, error)

Deprecated: rm me

func (*Plexams) SlotsWithRoomsFromBookedEntries

func (p *Plexams) SlotsWithRoomsFromBookedEntries(bookedEntries []BookedEntry) (map[SlotNumber][]*model.Room, error)

func (*Plexams) StudentByMtknr

func (p *Plexams) StudentByMtknr(ctx context.Context, mtknr string, ntas map[string]*model.NTA) (*model.Student, error)

func (*Plexams) StudentRegsForProgram

func (p *Plexams) StudentRegsForProgram(ctx context.Context, program string) ([]*model.StudentReg, error)

func (*Plexams) StudentRegsImportErrors

func (p *Plexams) StudentRegsImportErrors(ctx context.Context) ([]*model.RegWithError, error)

func (*Plexams) StudentRegsPerStudentPlanned

func (p *Plexams) StudentRegsPerStudentPlanned(ctx context.Context) ([]*model.Student, error)

func (*Plexams) Students

func (p *Plexams) Students(ctx context.Context) ([]*model.Student, error)

func (*Plexams) StudentsByName

func (p *Plexams) StudentsByName(ctx context.Context, regex string) ([]*model.Student, error)

func (*Plexams) StudentsFromStudentRegs

func (p *Plexams) StudentsFromStudentRegs(ctx context.Context, studentRegs []*model.StudentRegsPerAncodeAndProgram) (
	regularStuds, ntaStuds []*model.Student, err error)

func (*Plexams) UnlockExam

func (p *Plexams) UnlockExam(ctx context.Context, ancode int) (*model.PlanEntry, *model.GeneratedExam, error)

func (*Plexams) UploadPlan

func (p *Plexams) UploadPlan(ctx context.Context, withRooms, withInvigilators, upload bool) ([]*model.ZPAExamPlan, error)

func (*Plexams) ValidateConflicts

func (p *Plexams) ValidateConflicts(onlyPlannedByMe bool, ancode int) error

func (*Plexams) ValidateConstraints

func (p *Plexams) ValidateConstraints() error

func (*Plexams) ValidateDB

func (p *Plexams) ValidateDB() error

TODO: all planned_rooms okay? especially after moving an exam? check room -> slot -> ancode sameslot?

func (*Plexams) ValidateInvigilationDups

func (p *Plexams) ValidateInvigilationDups() error

func (*Plexams) ValidateInvigilationsTimeDistance

func (p *Plexams) ValidateInvigilationsTimeDistance() error

func (*Plexams) ValidateInvigilatorRequirements

func (p *Plexams) ValidateInvigilatorRequirements() error

func (*Plexams) ValidateInvigilatorSlots

func (p *Plexams) ValidateInvigilatorSlots() error

TODO: NTA- und Reserve-Aufsicht (wenn NTA) nicht im folgenden Slot einteilen!

func (*Plexams) ValidateRoomsNeedRequest

func (p *Plexams) ValidateRoomsNeedRequest() error

func (*Plexams) ValidateRoomsPerExam

func (p *Plexams) ValidateRoomsPerExam() error

func (*Plexams) ValidateRoomsPerSlot

func (p *Plexams) ValidateRoomsPerSlot() error

func (*Plexams) ValidateRoomsTimeDistance

func (p *Plexams) ValidateRoomsTimeDistance() error

func (*Plexams) ValidateZPADateTimes

func (p *Plexams) ValidateZPADateTimes() error

func (*Plexams) ValidateZPAInvigilators

func (p *Plexams) ValidateZPAInvigilators() error

func (*Plexams) ValidateZPARooms

func (p *Plexams) ValidateZPARooms() error

func (*Plexams) ZpaExamsPlaningStatusUnknown

func (p *Plexams) ZpaExamsPlaningStatusUnknown(ctx context.Context) ([]*model.ZPAExam, error)

func (*Plexams) ZpaExamsToPlan

func (p *Plexams) ZpaExamsToPlan(ctx context.Context, input []int) ([]*model.ZPAExam, error)

func (*Plexams) ZpaExamsToPlanWithConstraints

func (p *Plexams) ZpaExamsToPlanWithConstraints(ctx context.Context) ([]*model.ZPAExamWithConstraints, error)

type PrepareRoomsCfg

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

type PrimussAncode

type PrimussAncode struct {
	Program string
	Ancode  int
}

type Slot

type Slot []int

type SlotNumber

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

type TimeRange

type TimeRange struct {
	From       time.Time
	Until      time.Time
	DayNumber  int
	SlotNumber int
	Approved   bool
}

type ZPA

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

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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