All pastes #285911 Raw Edit

Public Class P5Contr

public text v1 · immutable
#285911 ·published 2006-12-20 03:55 UTC
rendered paste body
Public Class P5Controller


    Public Shared Function addNewGame(ByVal home_team_id As Integer, ByVal away_team_id As Integer, ByVal game_datetime As DateTime)

        Dim errReturn As String = "Everything is Okey Dokey Insert is complete"

        If game_datetime > System.DateTime.Now Then

            Dim teams As Integer = validate(home_team_id, away_team_id, game_datetime)
            If teams = 0 Then
                P5DataManager.Insert(home_team_id, away_team_id, game_datetime)
            Else
                errReturn = "Team (" & teams & ") is Already playing that day"
            End If
        Else
            errReturn = "Game Date must be the future game"
        End If
        Return errReturn
    End Function

    Public Shared Function getTeams() As DataSet
        Return P5DataManager.getTeamsRecord
    End Function

    Public Shared Function getGamesScore() As DataSet

        Return P5DataManager.getGameScoreInfo
    End Function

    Public Shared Function getGames() As DataSet
        Return P5DataManager.getGamesShcedule
    End Function

    Public Shared Function getPastGame() As DataSet
        Return P5DataManager.getPastGame
    End Function


    Public Shared Sub UpdateGames(ByVal id As Integer, ByVal game_datetime As DateTime, ByVal home_team_id As Integer, ByVal away_team_id As Integer, ByVal home_team As String, ByVal away_team As String)
        Dim upTeam As DataSet
        Try

            If game_datetime.ToString = "" Then
                Dim er As New Exception("Please enter game_datetime")
                Throw er
            End If
            If Not IsDate(game_datetime) Then
                Dim er As New Exception("Please enter right format datetime")
                Throw er
            End If
            If home_team_id.ToString = "" Then
                Dim er As New Exception("update complete")
                Throw er
            End If
            upTeam = P5DataManager.getCheckGame(home_team_id)
            If upTeam IsNot Nothing Then
                If upTeam.Tables(0).Rows.Count = 0 Then
                    Dim er As New Exception("The home_team_id doesn't exist")
                    Throw er
                End If
                If away_team_id.ToString = "" Then
                    Dim er As New Exception("Please enter away team")
                    Throw er

                End If
                upTeam = P5DataManager.getCheckGame(away_team_id)
                If upTeam IsNot Nothing Then
                    If upTeam.Tables(0).Rows.Count = 0 Then
                        Dim er As New Exception("away_team_id field doesn't exist")
                        Throw er
                    End If
                    upTeam = Nothing
                End If
                If CDate(game_datetime) <= Now Then
                    Dim er As New Exception("game must be the future")
                    Throw er
                End If
                If home_team_id.ToString = away_team_id.ToString Then
                    Dim er As New Exception("It can't be the same team")
                    Throw er
                End If

                Dim upGame As DataSet = P5DataManager.getGameDate(game_datetime, home_team_id, id)
                If upGame.Tables(0).Rows.Count > 0 Then
                    Dim er As New Exception("Team is already playing")
                    Throw er
                End If
                P5DataManager.UpdateGamesInfo(id, game_datetime, home_team_id, away_team_id)
            End If
        Catch ex As Exception
            Throw ex
        End Try


    End Sub

    Public Shared Sub DeleteGameInfo(ByVal id As String)
        P5DataManager.DeleteGameInfo(id)
    End Sub

    Public Shared Sub UpdateScores(ByVal game_id As String, ByVal home_team_score As String, ByVal away_team_score As String)
        P5DataManager.UpdateScores(game_id, home_team_score, away_team_score)
    End Sub

    Public Shared Function validate(ByVal home_team_id As Integer, ByVal away_team_id As Integer, ByVal game_datetime As DateTime)

        Dim teams As Integer
        teams = home_team_id

        If checkTeam(teams, game_datetime) Then
            teams = away_team_id
            If checkTeam(teams, game_datetime) Then
                teams = 0
            End If

        End If

        Return teams
    End Function
    Public Shared Function checkTeam(ByVal team As Integer, ByVal game_datetime As DateTime) As Boolean
        Dim ds As DataSet
        Dim result As Boolean = True

        ds = P5DataManager.getGamesShceduleInfo(team)
        If ds.Tables.Count > 0 Then
            For Each gamRows As DataRow In ds.Tables(0).Rows
                Dim tempDate As DateTime = gamRows.Item("game_datetime")
                If tempDate.DayOfYear = game_datetime.DayOfYear Then
                    result = False
                End If
            Next
        End If

        Return result
    End Function

End Class