Initial
This commit is contained in:
184
BusinessFacade/Meldungstext.vb
Normal file
184
BusinessFacade/Meldungstext.vb
Normal file
@@ -0,0 +1,184 @@
|
||||
Imports System.Data
|
||||
Imports System.Data.SqlClient
|
||||
|
||||
'''<summary>Diese klasse beinhaltet die Logik für die Meldungstext</summary>
|
||||
Public Class Meldungstext
|
||||
|
||||
#Region "Members"
|
||||
Private Shared _meldungstexte As New Hashtable()
|
||||
|
||||
Private _meldungsTextNr As Integer
|
||||
Private _spracheNr As Integer
|
||||
Private _inhalt As String
|
||||
Private _beschreibungs As String
|
||||
Private _isAktiv As Boolean
|
||||
Private _erstelltAm As DateTime
|
||||
Private _mutiertAm As DateTime
|
||||
Private _mutiertMitarbeiterNr As Integer
|
||||
Private _mandantNr As Integer
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "Constructor"
|
||||
|
||||
'''<summary>Erstellt eine neue Instanz für einen bestehenen Meldungstext</summary>
|
||||
'''<param name="meldungsTextNr"></param>
|
||||
|
||||
Public Sub New(ByVal meldungsTextNr As Integer)
|
||||
Try
|
||||
|
||||
Select Case LoadDataFromCache(meldungsTextNr)
|
||||
Case 0
|
||||
'found in cache
|
||||
Case 1
|
||||
'caching is disabled
|
||||
LoadData(meldungsTextNr) 'from db
|
||||
Case 2
|
||||
'not found in cache
|
||||
LoadData(meldungsTextNr) 'from db
|
||||
_meldungstexte.Add(meldungsTextNr, Me) 'hinzufügen da nicht vorhanden
|
||||
End Select
|
||||
Catch ex As Exception
|
||||
Throw ex
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "Private methods"
|
||||
Private Sub LoadData(ByVal meldungsTextNr As Integer)
|
||||
Try
|
||||
Dim ds As New DataSet()
|
||||
DataAccess.Meldungstext.GetById(meldungsTextNr, ds)
|
||||
If Common.Tools.ValidateDS(ds) Then
|
||||
_meldungsTextNr = Convert.ToInt32(ds.Tables(0).Rows(0)("meldungstextnr"))
|
||||
_spracheNr = Convert.ToInt32(ds.Tables(0).Rows(0)("Sprache"))
|
||||
_inhalt = ds.Tables(0).Rows(0)("inhalt")
|
||||
_beschreibungs = ds.Tables(0).Rows(0)("beschreibung")
|
||||
_isAktiv = Convert.ToBoolean(ds.Tables(0).Rows(0)("aktiv"))
|
||||
_erstelltAm = Convert.ToDateTime(ds.Tables(0).Rows(0)("erstellt_am"))
|
||||
_mutiertAm = Convert.ToDateTime(ds.Tables(0).Rows(0)("mutiert_am"))
|
||||
_mutiertMitarbeiterNr = Convert.ToInt32(ds.Tables(0).Rows(0)("mutierer"))
|
||||
_mandantNr = Convert.ToInt32(ds.Tables(0).Rows(0)("mandantnr"))
|
||||
End If
|
||||
|
||||
If _meldungsTextNr = 0 Then 'meldung nicht gefunden in db
|
||||
TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.BF.Meldungstext.New", "Achtung Meldungstext wurde nicht gefunden! MeldungstextNr: " & CStr(meldungsTextNr), TraceLevel.Warning)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.Meldungstext.LoadData", ex.Message + " " + ex.StackTrace, TraceLevel.Error)
|
||||
Throw ex
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Function LoadDataFromCache(ByVal meldungsTextNr As Integer) As Integer
|
||||
Try
|
||||
Dim source As Meldungstext
|
||||
|
||||
If Config.GetParameterValue("CacheMeldungstexte") = 1 Then 'cache is enabled
|
||||
source = _meldungstexte.Item(meldungsTextNr)
|
||||
If Not source Is Nothing Then
|
||||
_meldungsTextNr = source.MeldungsTextNr
|
||||
_spracheNr = source.SpracheNr
|
||||
_inhalt = source.Inhalt
|
||||
_beschreibungs = source.Beschreibung
|
||||
_isAktiv = source.IsAktiv
|
||||
_erstelltAm = source.ErstelltAm
|
||||
_mutiertAm = source.MutiertAm
|
||||
_mutiertMitarbeiterNr = source.MutiertMitarbeiterNr
|
||||
_mandantNr = source.MandantNr
|
||||
Return 0
|
||||
Else
|
||||
Return 2 'not found
|
||||
End If
|
||||
End If
|
||||
Return 1 'caching is disabled
|
||||
Catch ex As Exception
|
||||
TKBLib.Errorhandling.TraceHelper.Msg("EDOKALib.Meldungstext.LoadDataFromCache", ex.Message + " " + ex.StackTrace, TraceLevel.Error)
|
||||
Throw ex
|
||||
End Try
|
||||
End Function
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "Public methods"
|
||||
|
||||
'''<summary>Gibt den Inhalt einer Melungs zurück</summary>
|
||||
'''<param name="meldungsTextNr"></param>
|
||||
|
||||
Public Overloads Shared Function GetInhaltById(ByVal meldungsTextNr As Integer) As String
|
||||
Try
|
||||
|
||||
Dim meldung As New Meldungstext(meldungsTextNr)
|
||||
|
||||
If meldung.MeldungsTextNr = 0 Then
|
||||
Return "Der MeldungsText mit der Id " + meldungsTextNr.ToString() + " wurde nicht gefunden."
|
||||
Else
|
||||
Return meldung.Inhalt
|
||||
End If
|
||||
Catch ex As Exception
|
||||
Throw ex
|
||||
End Try
|
||||
End Function
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "Properties"
|
||||
|
||||
Public ReadOnly Property MeldungsTextNr() As Integer
|
||||
Get
|
||||
Return _meldungsTextNr
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property SpracheNr() As String
|
||||
Get
|
||||
Return _spracheNr
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Inhalt() As String
|
||||
Get
|
||||
Return _inhalt
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Beschreibung() As String
|
||||
Get
|
||||
Return _beschreibungs
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property IsAktiv() As Boolean
|
||||
Get
|
||||
Return _isAktiv
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ErstelltAm() As DateTime
|
||||
Get
|
||||
Return _erstelltAm
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MutiertAm() As DateTime
|
||||
Get
|
||||
Return _mutiertAm
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MutiertMitarbeiterNr() As Integer
|
||||
Get
|
||||
Return _mutiertMitarbeiterNr
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MandantNr() As Integer
|
||||
Get
|
||||
Return _mandantNr
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user