392 lines
11 KiB
VB.net
392 lines
11 KiB
VB.net
Imports System.IO
|
|
Imports MySql.Data.MySqlClient
|
|
|
|
Public Class platformevent
|
|
|
|
' TAKEONE Event
|
|
Private _id As Integer
|
|
Private _title As String
|
|
Private _organizer As String
|
|
Private _type As String
|
|
Private _rules As String
|
|
|
|
' Location
|
|
Private _address As String
|
|
Private _location As String
|
|
Private _country As country
|
|
|
|
' Event Parameters
|
|
Private _court As Integer
|
|
Private _enroll_start As Date
|
|
Private _enroll_end As Date
|
|
Private _weigh_in As Date
|
|
Private _event_start As Date
|
|
Private _event_end As Date
|
|
Private _fee As Double
|
|
Private _currency As String
|
|
Private _logo As MemoryStream
|
|
|
|
' Making New Instance Without Any Action
|
|
Public Sub New()
|
|
|
|
End Sub
|
|
|
|
' Make New Instance Of Event By Reading Data From Its ID
|
|
Public Sub New(id As Integer)
|
|
|
|
GetEventData(id)
|
|
|
|
End Sub
|
|
|
|
' Make New Instance Directly By Creating A New Event Record
|
|
Public Sub New(EventTitle As String, Type As String, Rounds As Integer, Organizer As String, Country As Integer, Address As String, Location As String, Courts As Integer, Rules As String, Currency As String, Fee As Integer, EnrollStart As String, EnrollEnd As String, WeighIn As String, EventStart As String, EventEnd As String, Logo As PictureBox)
|
|
|
|
CreateNewEvent(EventTitle, Type, Rounds, Organizer, Country, Address, Location, Courts, Rules, Currency, Fee, EnrollStart, EnrollEnd, WeighIn, EventStart, EventEnd, Logo)
|
|
GetEventData(_id)
|
|
|
|
End Sub
|
|
|
|
|
|
' Set Of Properties
|
|
|
|
ReadOnly Property ID As Integer
|
|
Get
|
|
Return _id
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Title As String
|
|
Get
|
|
Return _title
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Organizer As String
|
|
Get
|
|
Return _organizer
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Type As String
|
|
Get
|
|
Return _type
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Country As country
|
|
Get
|
|
Return _country
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Address As String
|
|
Get
|
|
Return _address
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Location As String
|
|
Get
|
|
Return _location
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Courts As Integer
|
|
Get
|
|
Return _court
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property EnrollStartDate As Date
|
|
Get
|
|
Return _enroll_start
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property EnrollEndDate As Date
|
|
Get
|
|
Return _enroll_end
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property WeighInDate As Date
|
|
Get
|
|
Return _weigh_in
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property EventStartDate As Date
|
|
Get
|
|
Return _event_start
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property EventEndDate As Date
|
|
Get
|
|
Return _event_end
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Rules As String
|
|
Get
|
|
Return _rules
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Currency As String
|
|
Get
|
|
Return _currency
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Fee As Integer
|
|
Get
|
|
Return _fee
|
|
End Get
|
|
End Property
|
|
|
|
ReadOnly Property Logo As MemoryStream
|
|
Get
|
|
Return _logo
|
|
End Get
|
|
End Property
|
|
|
|
' Set Of Functions
|
|
|
|
Public Function EventList()
|
|
|
|
Dim QRY As String = "select * from event order by event_start asc"
|
|
Dim CON As New MySqlConnection(CON_STRING)
|
|
Dim COM As New MySqlCommand(QRY, CON)
|
|
Dim RDR As MySqlDataReader
|
|
Dim LST As New List(Of platformevent)
|
|
|
|
Try
|
|
CON.Open()
|
|
RDR = COM.ExecuteReader
|
|
If RDR.HasRows = True Then
|
|
While RDR.Read
|
|
LST.Add(New platformevent(RDR("id")))
|
|
End While
|
|
End If
|
|
CON.Close()
|
|
Catch ex As MySqlException
|
|
MessageBox.Show(ex.Message)
|
|
Finally
|
|
CON.Dispose()
|
|
End Try
|
|
|
|
Return LST
|
|
|
|
End Function
|
|
|
|
Private Sub GetEventData(id As Integer)
|
|
|
|
Dim QRY As String = ("select event.* from event where event.id = " & id & " LIMIT 1")
|
|
Dim CON As New MySqlConnection(CON_STRING)
|
|
Dim COM As New MySqlCommand(QRY, CON)
|
|
Dim RDR As MySqlDataReader
|
|
|
|
Try
|
|
CON.Open()
|
|
RDR = COM.ExecuteReader
|
|
If RDR.HasRows = True Then
|
|
While RDR.Read
|
|
|
|
Try
|
|
_id = Int(RDR("id"))
|
|
Catch ex As Exception
|
|
_id = 0
|
|
End Try
|
|
|
|
Try
|
|
_title = RDR("title")
|
|
Catch ex As Exception
|
|
_title = Nothing
|
|
End Try
|
|
|
|
Try
|
|
_organizer = RDR("organizor")
|
|
Catch ex As Exception
|
|
_organizer = Nothing
|
|
End Try
|
|
|
|
Try
|
|
_type = RDR("type")
|
|
Catch ex As Exception
|
|
_type = Nothing
|
|
End Try
|
|
|
|
Try
|
|
_country = New country(Int(RDR("country")))
|
|
Catch ex As Exception
|
|
_country = Nothing
|
|
End Try
|
|
|
|
Try
|
|
_address = RDR("address")
|
|
Catch ex As Exception
|
|
_address = Nothing
|
|
End Try
|
|
|
|
Try
|
|
_location = RDR("location")
|
|
Catch ex As Exception
|
|
_location = Nothing
|
|
End Try
|
|
|
|
Try
|
|
_court = RDR("courts")
|
|
Catch ex As Exception
|
|
_court = 0
|
|
End Try
|
|
|
|
Try
|
|
_enroll_start = CDate(RDR("enroll_start"))
|
|
Catch ex As Exception
|
|
_enroll_start = Now
|
|
End Try
|
|
|
|
Try
|
|
_enroll_end = CDate(RDR("enroll_end"))
|
|
Catch ex As Exception
|
|
_enroll_end = Now
|
|
End Try
|
|
|
|
Try
|
|
_weigh_in = CDate(RDR("weigh_in"))
|
|
Catch ex As Exception
|
|
'_weigh_in = Now
|
|
End Try
|
|
|
|
Try
|
|
_event_start = CDate(RDR("event_start"))
|
|
Catch ex As Exception
|
|
'_event_start = Now
|
|
End Try
|
|
|
|
Try
|
|
_event_end = CDate(RDR("event_end"))
|
|
Catch ex As Exception
|
|
'_event_end = Now
|
|
End Try
|
|
|
|
Try
|
|
_rules = RDR("rules")
|
|
Catch ex As Exception
|
|
_rules = Nothing
|
|
End Try
|
|
|
|
Try
|
|
_currency = RDR("currency ")
|
|
Catch ex As Exception
|
|
_currency = Nothing
|
|
End Try
|
|
|
|
Try
|
|
_fee = RDR("participation_fee")
|
|
Catch ex As Exception
|
|
_fee = 0
|
|
End Try
|
|
|
|
Try ' Event Logo -----------------------------------------
|
|
Dim data As Byte() = DirectCast(RDR("logo"), Byte())
|
|
_logo = New MemoryStream(data)
|
|
Catch ex As Exception
|
|
_logo = Nothing
|
|
End Try
|
|
|
|
End While
|
|
End If
|
|
CON.Close()
|
|
Catch ex As MySqlException
|
|
MessageBox.Show(ex.Message)
|
|
Finally
|
|
CON.Dispose()
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
' Set Of Routines
|
|
|
|
Public Sub CreateNewEvent(EventTitle As String, Type As String, Rounds As Integer, Organizer As String, Country As Integer, Address As String, Location As String, Courts As Integer, Rules As String, Currency As String, Fee As Integer, EnrollStart As String, EnrollEnd As String, WeighIn As String, EventStart As String, EventEnd As String, Logo As PictureBox)
|
|
|
|
' Query To Update
|
|
Dim QRY As String = ("
|
|
|
|
/* This Is To Insert The Information Of The New Event */
|
|
insert into
|
|
event (title, type, rounds, organizor, country, address, location, courts, rules, currency, fee, enroll_start, enroll_end, weigh_in, event_start, event_end, logo)
|
|
values ('" & EventTitle & "', '" & Type & "', '" & Rounds & "', '" & Organizer & "', " & Country & ", '" & Address & "', '" & Location & "', " & Courts & ", '" & Rules & "', '" & Currency & "', " & Fee & ", '" & EnrollStart & "', '" & EnrollEnd & "', '" & WeighIn & "', '" & EventStart & "', '" & EventEnd & "', @logo);
|
|
|
|
/* This Is To Return The Newly Created Event Record */
|
|
select last_insert_id() as 'eid';
|
|
|
|
")
|
|
|
|
' Connection
|
|
Dim CON As New MySqlConnection(CON_STRING)
|
|
Dim COM As New MySqlCommand(QRY, CON)
|
|
|
|
Dim Picture As New MemoryStream
|
|
Logo.Image.Save(Picture, System.Drawing.Imaging.ImageFormat.Png)
|
|
Dim arrImage() As Byte = Picture.GetBuffer
|
|
Picture.Close()
|
|
|
|
|
|
Dim RDR As MySqlDataReader
|
|
|
|
Try
|
|
CON.Open()
|
|
COM.Parameters.AddWithValue("@logo", arrImage)
|
|
RDR = COM.ExecuteReader
|
|
If RDR.HasRows = True Then
|
|
|
|
While RDR.Read
|
|
|
|
Try ' ID
|
|
_id = RDR("eid")
|
|
Catch ex As Exception
|
|
_id = 0
|
|
End Try
|
|
|
|
End While
|
|
|
|
End If
|
|
CON.Close()
|
|
Catch ex As MySqlException
|
|
MessageBox.Show(ex.Message)
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
Public Sub UpdateLogo(Logo As PictureBox)
|
|
|
|
' Query To Update
|
|
Dim QRY As String = "update event set logo = @logo where id=" & _id
|
|
|
|
' Connection
|
|
Dim CON As New MySqlConnection(CON_STRING)
|
|
Dim COM As New MySqlCommand(QRY, CON)
|
|
|
|
' Preparing The Image
|
|
Dim Picture As New MemoryStream
|
|
Logo.Image.Save(Picture, System.Drawing.Imaging.ImageFormat.Png)
|
|
Dim arrImage() As Byte = Picture.GetBuffer
|
|
Picture.Close()
|
|
|
|
Try
|
|
CON.Open()
|
|
COM.Parameters.AddWithValue("@logo", arrImage)
|
|
COM.ExecuteNonQuery()
|
|
CON.Close()
|
|
Catch ex As MySqlException
|
|
MessageBox.Show(ex.Message)
|
|
Finally
|
|
CON.Dispose()
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
End Class
|