Update staffing management to enhance payroll and hiring functionalities
- Increased the `MonthlyPayrollCap` from 10,000 to 40,000, allowing for greater flexibility in hiring and subject assignments. - Revised payroll calculation logic to ensure that staff members are compensated based on their actual weekly hours, with a minimum payment reflecting one full rate. - Updated documentation to clarify the new payroll structure and its implications for hiring and subject assignments. - Enhanced tests to validate the new payroll cap and ensure proper functionality in staffing scenarios, including the handling of uncovered subjects. - Improved localization strings to reflect changes in staffing and payroll terminology.
This commit is contained in:
@@ -181,16 +181,19 @@ public sealed class StaffingDef : Def
|
||||
|
||||
public float HourlyWagePerSkill { get; init; }
|
||||
|
||||
/// <summary>Hours assumed in the monthly base rate. Extra subjects add a surcharge on top.</summary>
|
||||
/// <summary>
|
||||
/// One full rate. A hired person is paid for at least this many hours even with nothing
|
||||
/// assigned; hours beyond it are paid on top.
|
||||
/// </summary>
|
||||
public float BaseWeeklyHours { get; init; }
|
||||
|
||||
public float WeeksPerMonth { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Added to the monthly base for each subject after the first. <c>0.25</c> means a second
|
||||
/// subject costs 25% of the base rate.
|
||||
/// Most hours one person can carry. A subject whose curriculum needs more than this needs a
|
||||
/// second teacher — the hours are then shared between them.
|
||||
/// </summary>
|
||||
public float ExtraSubjectSurcharge { get; init; }
|
||||
public float MaxWeeklyHours { get; init; }
|
||||
|
||||
public float WeeksPerMonth { get; init; }
|
||||
}
|
||||
|
||||
public enum BodyAttributeKind
|
||||
|
||||
Reference in New Issue
Block a user