' Author : Vishwa
' Date : 10/15/2006
' Class : Customer Business Object
' Design Pattern: Domain Model and Identity Field
' Purpose: This class will act as Business Object and Business Logic Layer
Imports Vishwa.Example.Data
Namespace Vishwa.Example.Business
Public Class Customer
Private _custID As Integer = 0
Private _custName As String = String.Empty
Private _custDOB As DateTime = DateTime.MinValue
Private _custAddress As String = String.Empty
Private _dateCreated As DateTime = DateTime.Now
Private _dateModified As DateTime = DateTime.Now
#Region "Constructor"
Public Sub New()
End Sub
#End Region
#Region "Properties"
Public Property CustID() As Integer
Get
Return _custID
End Get
Set(ByVal value As Int32)
_custID = value
End Set
End Property
Public Property CustName() As String
Get
Return _custName
End Get
Set(ByVal value As String)
_custName = value
End Set
End Property
Public Property CustDOB() As DateTime
Get
Return _custDOB
End Get
Set(ByVal value As DateTime)
_custDOB = value
End Set
End Property
Public Property CustAddress() As String
Get
Return _custAddress
End Get
Set(ByVal value As String)
_custAddress = value
End Set
End Property
Public Property DateCreated() As DateTime
Get
Return _dateCreated
End Get
Set(ByVal value As DateTime)
_dateCreated = value
End Set
End Property
Public Property DateModified() As DateTime
Get
Return _dateModified
End Get
Set(ByVal value As DateTime)
_dateModified = value
End Set
End Property
#End Region
#Region "--Customer Object Functions--- "
Public Shared Function GetCustomer(ByVal custID As Integer) As Customer
Return DataAccess.GetCustomers(custID)
End Function
Public Shared Function GetAllCustomer() As Generic.List(Of Customer)
Return DataAccess.GetAllCustomers()
End Function
Public Shared Function AddCustomer() As Integer
Dim custInfo As New Customer
custInfo.CustID = 0
custInfo.CustName = "unknown"
custInfo.CustDOB = #1/1/1900#
custInfo.CustAddress = "unknown"
Return DataAccess.InsertCustomer(custInfo)
End Function
Public Shared Function AddCustomer(ByVal custInfo As Customer) As Integer
Return DataAccess.InsertCustomer(custInfo)
End Function
Public Shared Function UpdateCustomer(ByVal custInfo As Customer) As Integer
Return DataAccess.UpdateCustomer(custInfo)
End Function
Public Shared Function DeleteCustomer(ByVal custInfo As Customer) As Integer
Return DataAccess.DeleteCustomer(custInfo)
End Function
#End Region
End Class
End Namespace