[FIX] hr_holidays: day selection fix in accrual ux #4945
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Bug reproduction steps: Timeoff->Configuration->Accrual Reports, when adding milestones you can select all days from 1 to 31 independently from the month when you selected yearly or twice a year options.
Bug cause: The days are kept with selection field and this selection field takes all the values in between 1-31.
Solution: Keeping maximum day limit for the last selected month as a field. To apply filtering (domain) to the selected day in the UI, the field must be relational field
1 - I opened a new accrual_days class and convert selection fields of days to the many2one relationship with accrual_days class.
2 - By that way, I applied a domain so that the selected day cannot be larger than max day in the selected month.
3 - Initially, there was no data in the accrual_days, I created new data file to save all 31 days to there.
4 - In the UI, use many2one day id fields instead of previous selection fields.
5 - First, I applied the logic to yearly_day to fix the day selection when the 'yearly' option is selected, then I fixed the day selection issue in 'biyearly' option with the same logic.
task - 5463057