Dakosy, Chat, Feiertage, Formulare (AMBAR)

This commit is contained in:
2022-11-08 08:51:59 +01:00
parent 24b9746817
commit 1496d88118
17 changed files with 1233 additions and 1015 deletions

View File

@@ -1,5 +1,6 @@
Imports System.Data.SqlClient
Imports System.Reflection
Imports System.Windows.Forms
Public Class cMessenger
@@ -44,6 +45,37 @@ Public Class cMessenger
If maId < 0 Then maId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
Return SQL.getValueTxtBySql("SELECT isnull(COUNT(*),0) FROM tblMessenger_ChatMessages INNER JOIN tblMessenger_ChatMessageStatus ON chatMgSt_chatMsgId=chatMg_id WHERE chatMgSt_MaId=" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & " AND chatMgSt_gelesen=0", "ADMIN",,, 0)
End Function
Public Shared Function GET_NewMSG_COUNT_CHATID(maId, chat_Id) As Integer
If maId < 0 Then maId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
Return SQL.getValueTxtBySql("SELECT isnull(COUNT(*),0) FROM tblMessenger_ChatMessages INNER JOIN tblMessenger_ChatMessageStatus ON chatMgSt_chatMsgId=chatMg_id WHERE chatMgSt_MaId=" & maId & " AND chatMgSt_gelesen=0 AND chatMg_chatId='" & chat_Id & "'", "ADMIN",,, 0)
End Function
Public Shared Function SET_LKWCHAT_INAKTIV(AvisoId) As Integer
Return SQL.doSQL("UPDATE tblMessenger_Chat SET chat_aktiv=0 WHERE chat_AvisoId='" & AvisoId & "' AND chat_art='LKW_CHAT' ", "ADMIN")
End Function
Public Shared Function GET_NewMSG_COUNT_ART(maId, chat_art) As Integer
If maId < 0 Then maId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
Return SQL.getValueTxtBySql("SELECT isnull(COUNT(*),0) FROM tblMessenger_ChatMessages INNER JOIN tblMessenger_Chat on chat_id=chatMg_chatId INNER JOIN tblMessenger_ChatMessageStatus ON chatMgSt_chatMsgId=chatMg_id WHERE chatMgSt_MaId=" & maId & " AND chatMgSt_gelesen=0 AND chat_art='" & chat_art & "'", "ADMIN",,, 0)
End Function
Public Shared Function GET_NewMSG_COUNT_AVISOID(AvisoId As Integer) As Integer
Dim chat_id = SQL.DLookup("chat_id", "tblMessenger_ChatMembers inner join tblMessenger_Chat on chat_id=chatMb_chatId", "chat_AvisoId='" & AvisoId & "' and [chatMb_maId]='" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & "'", "ADMIN", -1)
If chat_id > 0 Then 'Ich bin Member vom Chat.
Return GET_NewMSG_COUNT_CHATID(VERAG_PROG_ALLGEMEIN.cAllgemein.USRID, chat_id)
Else
' MsgBox(SQL.DLookup("isnull(count(*),0)", "tblMessenger_ChatMessages inner join tblMessenger_Chat on chat_id=chatMg_chatId", "chat_AvisoId='" & AvisoId & "'", "ADMIN", 0))
Return SQL.DLookup("isnull(count(*),0)", "tblMessenger_ChatMessages inner join tblMessenger_Chat on chat_id=chatMg_chatId", "chat_AvisoId='" & AvisoId & "'", "ADMIN", 0)
End If
End Function
Public Shared Function GET_NewMSG_COUNT_SendungsID(SendungsID As Integer) As Integer
Dim chat_id = SQL.DLookup("chat_id", "tblMessenger_ChatMembers inner join tblMessenger_Chat on chat_id=chatMb_chatId", "chat_SendungsId='" & SendungsID & "' and [chatMb_maId]='" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & "'", "ADMIN", -1)
If chat_id > 0 Then 'Ich bin Member vom Chat.
Return GET_NewMSG_COUNT_CHATID(VERAG_PROG_ALLGEMEIN.cAllgemein.USRID, chat_id)
Else
Return SQL.DLookup("isnull(count(*),0)", "tblMessenger_ChatMessages inner join tblMessenger_Chat on chat_id=chatMg_chatId", "chat_SendungsId='" & SendungsID & "'", "ADMIN", 0)
End If
End Function
Public Shared Function GET_CHAT_LIST() As List(Of cMessenger_Chat)
Dim LIST As New List(Of cMessenger_Chat)
@@ -86,17 +118,116 @@ Public Class cMessenger
Me.chat_erstelltAm = Now
LOAD(topMax, dateTmp)
End Sub
Sub New(chat_AvisoId As Integer, chat_SendungsId As Integer, Optional topMax As String = "", Optional dateTmp As Object = Nothing)
Sub New(chat_AvisoId As Integer, chat_SendungsId As Integer, chat_art As String, Optional topMax As String = "", Optional dateTmp As Object = Nothing)
Me.chat_id = chat_id
Me.chat_erstelltMaId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
Me.chat_erstelltAm = Now
Me.chat_art = "LKW_CHAT"
LOAD_ByLKW(chat_AvisoId, chat_SendungsId, topMax, dateTmp)
LOAD_ByLKW(chat_AvisoId, chat_SendungsId, chat_art, topMax, dateTmp)
End Sub
Shared Function openLKW_Chat(Aviso As cAviso) As Boolean
Dim CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(Aviso.AvisoID, -1, "LKW_CHAT")
If CHAT.chat_id <= 0 Then
'Neuer Chat
Dim chatName = Aviso.LKW_Nr & " (LKW-Id: " & Aviso.AvisoID & ")"
'"LKW CHAT: " &
Dim MB_LIST As New List(Of Integer)
MB_LIST.Add(VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
VERAG_PROG_ALLGEMEIN.cMessenger.GEN_NEW_CHAT(chatName, MB_LIST, CHAT, "LKW_CHAT", Aviso.AvisoID, -1)
End If
If CHAT IsNot Nothing Then
If Not CHAT.CHAT_MEMBERS.Exists(Function(x) x.chatMb_maId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID) Then
If vbYes <> MsgBox("Möchten Sie dem LKW Chat beitreten?", vbYesNoCancel) Then
Return False
Else 'weiter...
Dim MB As New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_ChatMembers(CHAT.chat_id, VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
MB.chatMb_maId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
CHAT.CHAT_MEMBERS.Add(MB)
If Not CHAT.SAVE_MEMBERS Then
MsgBox("Fehler beim Hinzufügen!")
Return False 'Fehler
End If
End If
End If
' Me.Cursor = Cursors.WaitCursor
'For Each openForm In Application.OpenForms()
' If TypeOf (openForm) Is VERAG_PROG_ALLGEMEIN.frmMessenger Then
' CType(openForm, VERAG_PROG_ALLGEMEIN.frmMessenger).WindowState = FormWindowState.Normal
' CType(openForm, VERAG_PROG_ALLGEMEIN.frmMessenger).BringToFront()
' Me.Cursor = Cursors.Default : Exit Sub
' End If
'Next
Dim f As New VERAG_PROG_ALLGEMEIN.frmMessenger()
f.Location = Cursor.Position
f.AvisoId = Aviso.AvisoID
f.Show()
Return True
End If
Return False
End Function
Shared Function openSND_Chat(Aviso As cAviso, Sendung As cSendungen) As Boolean
Dim CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(Aviso.AvisoID, Sendung.tblSnd_SendungID, "SND_CHAT")
If CHAT.chat_id <= 0 Then
'Neuer Chat
Dim chatName = Sendung.AbfertigungsNr & "/" & Sendung.FilialenNr & " (" & Aviso.LKW_Nr & ")"
'"SND CHAT: " &
Dim MB_LIST As New List(Of Integer)
MB_LIST.Add(VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
VERAG_PROG_ALLGEMEIN.cMessenger.GEN_NEW_CHAT(chatName, MB_LIST, CHAT, "SND_CHAT", Aviso.AvisoID, Sendung.tblSnd_SendungID)
End If
If CHAT IsNot Nothing Then
If Not CHAT.CHAT_MEMBERS.Exists(Function(x) x.chatMb_maId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID) Then
If vbYes <> MsgBox("Möchten Sie dem SENDUNGS-Chat beitreten?", vbYesNoCancel) Then
Return False
Else 'weiter...
Dim MB As New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_ChatMembers(CHAT.chat_id, VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
MB.chatMb_maId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
CHAT.CHAT_MEMBERS.Add(MB)
If Not CHAT.SAVE_MEMBERS Then
MsgBox("Fehler beim Hinzufügen!")
Return False 'Fehler
End If
End If
End If
' Me.Cursor = Cursors.WaitCursor
'For Each openForm In Application.OpenForms()
' If TypeOf (openForm) Is VERAG_PROG_ALLGEMEIN.frmMessenger Then
' CType(openForm, VERAG_PROG_ALLGEMEIN.frmMessenger).WindowState = FormWindowState.Normal
' CType(openForm, VERAG_PROG_ALLGEMEIN.frmMessenger).BringToFront()
' Me.Cursor = Cursors.Default : Exit Sub
' End If
'Next
Dim f As New VERAG_PROG_ALLGEMEIN.frmMessenger()
f.Location = Cursor.Position
f.AvisoId = Aviso.AvisoID
f.SendungID = Sendung.tblSnd_SendungID
f.Show()
Return True
End If
Return False
End Function
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("chat_id", chat_id,, True))
@@ -166,12 +297,13 @@ Public Class cMessenger
End Sub
Public Sub LOAD_ByLKW(chat_AvisoId As Integer, chat_SendungsId As Integer, Optional topMax As String = "", Optional dateTmp As Object = Nothing)
Public Sub LOAD_ByLKW(chat_AvisoId As Integer, chat_SendungsId As Integer, chat_art As String, Optional topMax As String = "", Optional dateTmp As Object = Nothing)
Try
Using conn As SqlConnection = SQL.GetNewOpenConnectionADMIN()
Using cmd As New SqlCommand("Select * FROM tblMessenger_Chat WHERE chat_AvisoId=@chat_AvisoId " & If(chat_SendungsId > 0, " AND chat_SendungsId=chat_SendungsId ", "") & " AND chat_art='LKW_CHAT'", conn)
Using cmd As New SqlCommand("Select * FROM tblMessenger_Chat WHERE chat_AvisoId=@chat_AvisoId " & If(chat_SendungsId > 0, " AND chat_SendungsId=chat_SendungsId ", "") & " AND chat_art='" & chat_art & "'", conn)
cmd.Parameters.AddWithValue("@chat_AvisoId", chat_AvisoId)
cmd.Parameters.AddWithValue("@chat_SendungsId", chat_SendungsId)
cmd.Parameters.AddWithValue("@chat_art", chat_art)
Dim dr = cmd.ExecuteReader()
If dr.Read Then
@@ -342,7 +474,6 @@ Public Class cMessenger
Dim SQL As New SQL
Sub New(chatMb_chatId, chatMb_maId)
Me.chatMb_chatId = chatMb_chatId
Me.chatMb_maId = chatMb_maId