DomainModel structure

Business logic layer of APP is split by DomainModel.DataContext, DomainModel, and DomainModel.Shared

 

DomainModel.Shared - project that share functionality between APP and APM

DomainModel.DataContext - provides access to Db

DomainModel is project that contains all business logic for APP modules.

 

DomainModel contains:
Access
Account & MFA
ModulesAccess
Roles
UserGroups
Activities
APM General Codes
AdonisUploadService (ASA)
Timecard Audit
CabinAllocation
ChainOfApproval
CrewChange
CrewStationBill
D2D Module
Datagroups
DocumentsModel (APP Documents Workflow)
DXFormBuilder
Esign
Evaluation
FlightDetails
GangwayActions
GeneralCodes
Gratuity
Logo
MasterCash
Notifications (Email)
OnboardDrills
OrganizationUnits
PrivacyPolicy
PTS
Questionnaires
Reports
Roster
Scripts (used for LeaveDaysCalculator)
Settings (Modules)
My Team
WatchKeepers
Team
Subteam
Relievers
TimeAndAttendance
Timezones
TravelExpenseSettings
TravelExpenseWDAModel
UserSettings
License
Utility

 

Improvement for DomainModel split by assembles:

//Core assembles

Documents (contains functionality mentioned bellow)
DocumentsModel (APP Documents Workflow)
ChainOfApproval
Esign

Access (contains functionality mentioned bellow)
Account & MFA
ModulesAccess
Roles
UserGroups
UserSettings
PrivacyPolicy

APM (contains functionality mentioned bellow)
Activities
APM General Codes
Datagroups
GeneralCodes
OrganizationUnits
Scripts (used for LeaveDaysCalculator)

Settings (Modules settings)
License
Utilities (contains functionality mentioned bellow)
Notifications (Email)

Utilities

 

//Modules assembles

CabinAllocation
CrewChange
CrewStationBill
D2D Module
TimeAndAttendance/Timecard Audit/My Team/Timezones
FlightDetails
Gratuity
MasterCash
OnboardDrills
PTS
Questionnaires
Roster
TravelExpenseWDAModel/TravelExpenseSettings
DXFormBuilder
Evaluation
Logo
AdonisUploadService (ASA)
Reports
GangwayActions