2-Tiered Inheritance Model:
Company Settings Defaults: Added global defaults (subscriptionCutoffDays: 2, midMonthSignupBehavior: 'roll_over', defaultScheduleTypeMode, defaultFixedDates, defaultFixedWeekdays) to company-model.js.
Plan Variant Override: Added overrideCompanyScheduling, scheduleTypeMode, fixedDates, and fixedWeekdays to subscription-model.js. Allows specific plans (like Thalley Creek Estates) to specify their own weekday/date schedules.
Master Date Snapping & Rolling Engine (resolveVisitScheduleDates):
Updated subscripiton.service.js and invoicePaid.js to evaluate Company Defaults vs Plan Overrides.
Computes Master Dates for each month using Mode A (Fixed Dates) or Mode B (Fixed Weekdays).
Approach 1 Mid-Month Roll Over: Valid future dates $\ge \text{signup date}$ are scheduled in the current month; missed past dates roll over into the next month and snap onto the next month's master dates.
Automatically handles business day / weekend / holiday roll forward adjustments.
Intimation Notifications & Customer Emails:
Dispatches intimation notifications (notifyUsers) to Customer and Admin(s) upon job scheduling, passing mandatory parameters (recipientName, dbName, module, sentBy).
Customer payment receipt emails render Plan Visit Schedule & Scheduled Jobs Schedule by month name and visit count.
Frontend Integration:
Subscriber Details: Displays Plan Visit Schedule and Updated Visit Schedule (Scheduled Jobs) highlighted in green when scheduled visits differ.
Subscriber Jobs Tab: Displays Schedule Status column with badges ("As Per Plan" vs "Shifted ([Month])") and column sorting out of the box.