module
import "github.com/prescriptoo/prescriptoo-api/services/doctor/module"Package module wires doctor authentication, profiles and documentation-first portal operations.
Index
- type Module
- func NewModule(databases ...*pgxpool.Pool) *Module
- func (m *Module) Catalogs() doctorpublic.CatalogManager
- func (m *Module) ConfigureAuthentication(identity types.IIdentityService, accounts identitypublic.AccountReader, authentication identitypublic.AuthenticationService)
- func (m *Module) ConfigureClinicalSuggestions(service ports.DoctorClinicalService)
- func (m *Module) ConfigureDoctorOrganizations(service sharedports.DoctorOrganizationService)
- func (m *Module) ConfigureFinalPrescriptions(service ports.FinalPrescriptionService)
- func (m *Module) ConfigurePatientService(service sharedports.PatientService)
- func (m *Module) ConfigurePatients(d PatientDependencies)
- func (m *Module) ConfigureRegistration(identity identitypublic.TransactionalRegistration, invitations organizationpublic.DoctorInvitationRedeemer)
- func (m *Module) Directory() doctorpublic.Directory
- func (m *Module) FinalPrescriptionDoctors() ports.FinalPrescriptionDoctorVerifier
- func (m *Module) FinalPrescriptionPatients() ports.FinalPrescriptionPatientReader
- func (m *Module) PatientService() sharedports.PatientService
- func (m *Module) RegisterHuma(api huma.API)
- type PatientDependencies
type Module
Module owns doctor registration, profile lookup and authentication wiring.
type Module struct {
// contains filtered or unexported fields
}func NewModule
func NewModule(databases ...*pgxpool.Pool) *ModuleNewModule wires persistent profiles when a database is supplied. Without providers, authentication fails closed with 503.
func (*Module) Catalogs
func (m *Module) Catalogs() doctorpublic.CatalogManagerCatalogs exposes Doctor-owned reference data to the Admin application.
func (*Module) ConfigureAuthentication
func (m *Module) ConfigureAuthentication(identity types.IIdentityService, accounts identitypublic.AccountReader, authentication identitypublic.AuthenticationService)ConfigureAuthentication supplies the Identity capabilities needed by doctor auth and profiles.
func (*Module) ConfigureClinicalSuggestions
func (m *Module) ConfigureClinicalSuggestions(service ports.DoctorClinicalService)ConfigureClinicalSuggestions supplies the shared query-only Doctor clinical service.
func (*Module) ConfigureDoctorOrganizations
func (m *Module) ConfigureDoctorOrganizations(service sharedports.DoctorOrganizationService)ConfigureDoctorOrganizations supplies the shared organization service for doctors.
func (*Module) ConfigureFinalPrescriptions
func (m *Module) ConfigureFinalPrescriptions(service ports.FinalPrescriptionService)ConfigureFinalPrescriptions injects the real immutable clinical-document capability.
func (*Module) ConfigurePatientService
func (m *Module) ConfigurePatientService(service sharedports.PatientService)ConfigurePatientService injects the shared patient port before registering routes.
func (*Module) ConfigurePatients
func (m *Module) ConfigurePatients(d PatientDependencies)ConfigurePatients supplies Doctor's persistence and business eligibility dependencies.
func (*Module) ConfigureRegistration
func (m *Module) ConfigureRegistration(identity identitypublic.TransactionalRegistration, invitations organizationpublic.DoctorInvitationRedeemer)ConfigureRegistration supplies account creation and organization invitation redemption.
func (*Module) Directory
func (m *Module) Directory() doctorpublic.DirectoryDirectory returns the curated professional directory used by Admin.
func (*Module) FinalPrescriptionDoctors
func (m *Module) FinalPrescriptionDoctors() ports.FinalPrescriptionDoctorVerifierFinalPrescriptionDoctors supplies transaction-bound snapshot verification without exposing Doctor internals.
func (*Module) FinalPrescriptionPatients
func (m *Module) FinalPrescriptionPatients() ports.FinalPrescriptionPatientReaderFinalPrescriptionPatients supplies a transaction-bound patient lookup without exposing repositories.
func (*Module) PatientService
func (m *Module) PatientService() sharedports.PatientServicePatientService exposes Doctor's implementation of the shared patient port.
func (*Module) RegisterHuma
func (m *Module) RegisterHuma(api huma.API)RegisterHuma registers registration, authentication, profiles and remaining portal contracts.
type PatientDependencies
PatientDependencies configures Doctor's patient business service without permission providers.
type PatientDependencies = services.PatientDependenciesGenerated by gomarkdoc