public/Get-ProcessedFootballFixture.ps1

function Get-ProcessedFootballFixture {
    <#
        .EXAMPLE
            Get-ProcessedFootballFixture -DateYear 2025 -DateMonth 2 -Type predictions -Path C:\sportsmonk
         
    #>

    [CmdletBinding()]
    param(

        [Parameter(Mandatory=$true)]
        [ValidateNotNullOrEmpty()]
        [int]$DateMonth,

        [Parameter(Mandatory=$true)]
        [ValidateNotNullOrEmpty()]
        [int]$DateYear,

        [Parameter(Mandatory=$true)]
        [ValidateNotNullOrEmpty()]
        [string]$Path,

        [Parameter(Mandatory=$true)]
        [ValidateSet('predictions','results')]
        [string]$Type
        
    )
    process{

        $ErrorActionPreference = 'Stop'

        try {

            if ($DateMonth -lt 10) {

                $DateMonthToUse = "0$DateMonth"
    
            }
            else {
    
                $DateMonthToUse = $DateMonth
    
            } # if

            $ProcessedFixtures = Get-ChildItem -Path "$Path\fixture-artifact\processed-fixtures\$DateYear\$DateMonthToUse\predictions" -Recurse -File

            foreach ($ProcessedFixture in $ProcessedFixtures) {

                $Fixtures = Get-Content -Path $($ProcessedFixture.FullName)
                $Fixtures | ConvertFrom-Json | Select-Object -Property league_id,name,starting_at,result_info

            } # foreach

        }
        catch {

            "$($MyInvocation.MyCommand.Name): $_.Exception.Message"

        } # trycatch

    } # process

} # function