191 lines
8.2 KiB
Go
191 lines
8.2 KiB
Go
package contact
|
|
|
|
import "time"
|
|
|
|
type ListFilter struct {
|
|
Role string
|
|
PilotCategory string
|
|
ChiefDoctor *bool
|
|
ChiefTechnician *bool
|
|
ResponsibleComplaint *bool
|
|
ChiefPilot *bool
|
|
IFRQualified *bool
|
|
Search string
|
|
Sort string
|
|
Limit int
|
|
Offset int
|
|
}
|
|
|
|
type UserPatch struct {
|
|
Email *string
|
|
SSOEmail *string
|
|
IsAdmin *bool
|
|
Username *string
|
|
FirstName *string
|
|
LastName *string
|
|
MobilePhone *string
|
|
Timezone *string
|
|
SortKey *int
|
|
SortKeySet bool
|
|
IsActive *bool
|
|
ProfileAttachmentID *[]byte
|
|
}
|
|
|
|
type ProfilePatch struct {
|
|
PilotCategory *string
|
|
ShortName *string
|
|
LicenseNo *string
|
|
LicenseIssuedAt *time.Time
|
|
LicenseExpiredAt *time.Time
|
|
TechnicianLicenseNo *string
|
|
HasIFRQualification *bool
|
|
IsChiefPilot *bool
|
|
IsDUL *bool
|
|
DULBaseIDs [][]byte
|
|
DULBaseIDsSet bool
|
|
ResponsibleFlightRescuer *bool
|
|
TotalFlightMinutes *int
|
|
ResponsiblePilotMinutes *int
|
|
SecondPilotMinutes *int
|
|
DoubleCommandMinutes *int
|
|
FlightInstructorMinutes *int
|
|
NightFlightMinutes *int
|
|
IFRFlightMinutes *int
|
|
Specialization *string
|
|
SubSpecialization *string
|
|
IsChiefPhysician *bool
|
|
IsChiefTechnician *bool
|
|
IsResponsibleComplaints *bool
|
|
RoleLabel *string
|
|
Note *string
|
|
Location *string
|
|
Postcode *string
|
|
StreetLine *string
|
|
WeightKG *float64
|
|
PhotoFileID *string
|
|
}
|
|
|
|
type CreateInput struct {
|
|
RoleID []byte
|
|
RoleIDs [][]byte
|
|
User UserPatch
|
|
Profile ProfilePatch
|
|
Profiles []CreateRoleProfile
|
|
}
|
|
|
|
type CreateRoleProfile struct {
|
|
RoleCode string
|
|
Patch ProfilePatch
|
|
}
|
|
|
|
type UpdateInput struct {
|
|
UserID []byte
|
|
User UserPatch
|
|
RoleID []byte
|
|
RoleIDs [][]byte
|
|
UpdateRoles bool
|
|
Profile ProfilePatch
|
|
Profiles []CreateRoleProfile
|
|
TargetProfileRole string
|
|
}
|
|
|
|
type ContactListItem struct {
|
|
UserID []byte `gorm:"column:user_id"`
|
|
CreatedBy []byte `gorm:"column:created_by"`
|
|
UpdatedBy []byte `gorm:"column:updated_by"`
|
|
RoleCode string `gorm:"column:role_code"`
|
|
RoleName string `gorm:"column:role_name"`
|
|
PilotCategory string `gorm:"column:pilot_category"`
|
|
Username string `gorm:"column:username"`
|
|
Email string `gorm:"column:email"`
|
|
SSOEmail *string `gorm:"column:sso_email"`
|
|
IsAdmin bool `gorm:"column:is_admin"`
|
|
FirstName string `gorm:"column:first_name"`
|
|
LastName string `gorm:"column:last_name"`
|
|
ShortName string `gorm:"column:short_name"`
|
|
LicenseNo string `gorm:"column:license_no"`
|
|
Location string `gorm:"column:location"`
|
|
MobilePhone string `gorm:"column:mobile_phone"`
|
|
ProfileAttachmentID []byte `gorm:"column:profile_attachment_id"`
|
|
HasPassword bool `gorm:"column:has_password"`
|
|
SortKey *int `gorm:"column:sortkey"`
|
|
Note string `gorm:"column:note"`
|
|
IsActive bool `gorm:"column:is_active"`
|
|
CreatedAt time.Time `gorm:"column:created_at"`
|
|
UpdatedAt time.Time `gorm:"column:updated_at"`
|
|
LastLoginAt *time.Time `gorm:"column:last_login_at"`
|
|
BaseRolesRaw *string `gorm:"column:base_roles_raw"`
|
|
RolesRaw *string `gorm:"column:roles_raw"`
|
|
|
|
PilotShortName *string `gorm:"column:pilot_short_name"`
|
|
PilotLicenseNo *string `gorm:"column:pilot_license_no"`
|
|
PilotLicenseIssuedAt *time.Time `gorm:"column:pilot_license_issued_at"`
|
|
PilotLicenseExpiredAt *time.Time `gorm:"column:pilot_license_expired_at"`
|
|
PilotTechnicianLicenseNo *string `gorm:"column:pilot_technician_license_no"`
|
|
PilotHasIFRQualification *bool `gorm:"column:pilot_has_ifr_qualification"`
|
|
PilotIsChiefPilot *bool `gorm:"column:pilot_is_chief_pilot"`
|
|
PilotIsDUL *bool `gorm:"column:pilot_is_dul"`
|
|
PilotTotalFlightMinutes *int `gorm:"column:pilot_total_flight_minutes"`
|
|
PilotResponsiblePilotMinutes *int `gorm:"column:pilot_responsible_pilot_minutes"`
|
|
PilotSecondPilotMinutes *int `gorm:"column:pilot_second_pilot_minutes"`
|
|
PilotDoubleCommandMinutes *int `gorm:"column:pilot_double_command_minutes"`
|
|
PilotFlightInstructorMinutes *int `gorm:"column:pilot_flight_instructor_minutes"`
|
|
PilotNightFlightMinutes *int `gorm:"column:pilot_night_flight_minutes"`
|
|
PilotIFRFlightMinutes *int `gorm:"column:pilot_ifr_flight_minutes"`
|
|
PilotLocation *string `gorm:"column:pilot_location"`
|
|
PilotPostcode *string `gorm:"column:pilot_postcode"`
|
|
PilotStreetLine *string `gorm:"column:pilot_street_line"`
|
|
PilotNote *string `gorm:"column:pilot_note"`
|
|
PilotWeightKG *float64 `gorm:"column:pilot_weight_kg"`
|
|
PilotPhotoFileID *string `gorm:"column:pilot_photo_file_id"`
|
|
|
|
DoctorShortName *string `gorm:"column:doctor_short_name"`
|
|
DoctorSpecialization *string `gorm:"column:doctor_specialization"`
|
|
DoctorSubSpecialization *string `gorm:"column:doctor_sub_specialization"`
|
|
DoctorIsChiefPhysician *bool `gorm:"column:doctor_is_chief_physician"`
|
|
DoctorLocation *string `gorm:"column:doctor_location"`
|
|
DoctorPostcode *string `gorm:"column:doctor_postcode"`
|
|
DoctorStreetLine *string `gorm:"column:doctor_street_line"`
|
|
DoctorNote *string `gorm:"column:doctor_note"`
|
|
DoctorPhotoFileID *string `gorm:"column:doctor_photo_file_id"`
|
|
|
|
AirRescuerShortName *string `gorm:"column:air_rescuer_short_name"`
|
|
AirRescuerResponsibleFlightRescuer *bool `gorm:"column:air_rescuer_responsible_flight_rescuer"`
|
|
AirRescuerLocation *string `gorm:"column:air_rescuer_location"`
|
|
AirRescuerPostcode *string `gorm:"column:air_rescuer_postcode"`
|
|
AirRescuerStreetLine *string `gorm:"column:air_rescuer_street_line"`
|
|
AirRescuerNote *string `gorm:"column:air_rescuer_note"`
|
|
AirRescuerPhotoFileID *string `gorm:"column:air_rescuer_photo_file_id"`
|
|
|
|
TechnicianShortName *string `gorm:"column:technician_short_name"`
|
|
TechnicianLicenseNo *string `gorm:"column:technician_license_no"`
|
|
TechnicianIsChiefTechnician *bool `gorm:"column:technician_is_chief_technician"`
|
|
TechnicianIsResponsibleComplaints *bool `gorm:"column:technician_is_responsible_complaints"`
|
|
TechnicianLocation *string `gorm:"column:technician_location"`
|
|
TechnicianPostcode *string `gorm:"column:technician_postcode"`
|
|
TechnicianStreetLine *string `gorm:"column:technician_street_line"`
|
|
TechnicianNote *string `gorm:"column:technician_note"`
|
|
TechnicianPhotoFileID *string `gorm:"column:technician_photo_file_id"`
|
|
|
|
FlightAssistantShortName *string `gorm:"column:flight_assistant_short_name"`
|
|
FlightAssistantLocation *string `gorm:"column:flight_assistant_location"`
|
|
FlightAssistantPostcode *string `gorm:"column:flight_assistant_postcode"`
|
|
FlightAssistantStreetLine *string `gorm:"column:flight_assistant_street_line"`
|
|
FlightAssistantNote *string `gorm:"column:flight_assistant_note"`
|
|
FlightAssistantPhotoFileID *string `gorm:"column:flight_assistant_photo_file_id"`
|
|
|
|
StaffShortName *string `gorm:"column:staff_short_name"`
|
|
StaffRoleLabel *string `gorm:"column:staff_role_label"`
|
|
StaffLocation *string `gorm:"column:staff_location"`
|
|
StaffPostcode *string `gorm:"column:staff_postcode"`
|
|
StaffStreetLine *string `gorm:"column:staff_street_line"`
|
|
StaffNote *string `gorm:"column:staff_note"`
|
|
StaffPhotoFileID *string `gorm:"column:staff_photo_file_id"`
|
|
}
|
|
|
|
type ContactBaseRole struct {
|
|
BaseID []byte
|
|
BaseName string
|
|
RoleCode string
|
|
}
|