first commit
This commit is contained in:
415
C4IT_DataHistoryProvider_Test/ctrlF4SDAnalytics.cs
Normal file
415
C4IT_DataHistoryProvider_Test/ctrlF4SDAnalytics.cs
Normal file
@@ -0,0 +1,415 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Data.Common;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using C4IT.DataHistoryProvider;
|
||||
using C4IT.FASD.Base;
|
||||
using C4IT.FASD.Licensing;
|
||||
using C4IT.Logging;
|
||||
using static C4IT.Logging.cLogManager;
|
||||
|
||||
namespace C4IT_DataHistoryProvider_Test
|
||||
{
|
||||
public partial class ctrlF4SDAnalytics : UserControl
|
||||
{
|
||||
Guid SessionId;
|
||||
Guid Userid = new Guid("7003cfbf-2841-454e-a4c7-2cff2eb45b23");
|
||||
Guid CaseId;
|
||||
|
||||
private System.Timers.Timer SessionCheck;
|
||||
private System.Timers.Timer CaseCheck;
|
||||
|
||||
public ctrlF4SDAnalytics()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private async void buttonCreateSession_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
MethodBase CM = null; if (cLogManager.DefaultLogger.IsDebug) { CM = MethodBase.GetCurrentMethod(); LogMethodBegin(CM); }
|
||||
try
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
|
||||
ctrlProtocolBox1.ClearMessages();
|
||||
btnCreateSession.Enabled = false;
|
||||
if (Program.Collector == null)
|
||||
return;
|
||||
|
||||
if (Program.Collector.F4SDAnalyticsValid)
|
||||
{
|
||||
SessionId = Guid.NewGuid();
|
||||
var userSessions = new cF4SDUserSessionParameters();
|
||||
userSessions.SessionId = SessionId;
|
||||
userSessions.UserId = Userid;
|
||||
userSessions.SessionDate = DateTime.UtcNow;
|
||||
Program.Collector.CleanupUiMessageHandler();
|
||||
Program.Collector.ProcessUiMessage += ctrlProtocolBox1.ProcessMessage;
|
||||
var _requestInfo = new cF4sdWebRequestInfo("buttonCreateSession_Click", null);
|
||||
bool IsCreatet = await Program.Collector.CreateUserSessionAsync(userSessions, _requestInfo, 1, CancellationToken.None);
|
||||
|
||||
btnStartCase.Enabled = true;
|
||||
btnCloseSession.Enabled = true;
|
||||
grpBoxCase.Visible = true;
|
||||
btnCloseCase.Enabled = false;
|
||||
btnHoldCase.Enabled = false;
|
||||
btnCancelCase.Enabled = false;
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (CM != null) LogMethodEnd(CM);
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
private async void buttonCloseSession_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
MethodBase CM = null; if (cLogManager.DefaultLogger.IsDebug) { CM = MethodBase.GetCurrentMethod(); LogMethodBegin(CM); }
|
||||
try
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
|
||||
//btnInsertSession.Enabled = false;
|
||||
if (Program.Collector == null)
|
||||
return;
|
||||
|
||||
var _requestInfo = new cF4sdWebRequestInfo("buttonCloseSession_Click", null);
|
||||
|
||||
if (Program.Collector.F4SDAnalyticsValid && SessionId != null)
|
||||
{
|
||||
var userSessions = new cF4SDUserSessionParameters();
|
||||
userSessions.SessionId = SessionId;
|
||||
userSessions.SessionDate = DateTime.UtcNow;
|
||||
bool IsLoaded = await Program.Collector.CloseUserSessionAsync(userSessions, _requestInfo, 1, CancellationToken.None);
|
||||
btnCloseSession.Enabled = false;
|
||||
btnCreateSession.Enabled = true;
|
||||
grpBoxCase.Visible = false;
|
||||
grpBoxQA.Visible = false;
|
||||
|
||||
btnStartCase.Enabled = true;
|
||||
btnCloseCase.Enabled = false;
|
||||
btnHoldCase.Enabled = false;
|
||||
btnCancelCase.Enabled = false;
|
||||
comboBoxUserSelect.SelectedItem = null;
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (CM != null) LogMethodEnd(CM);
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
private async void btnStartCase_Click(object sender, EventArgs e)
|
||||
{
|
||||
MethodBase CM = null; if (cLogManager.DefaultLogger.IsDebug) { CM = MethodBase.GetCurrentMethod(); LogMethodBegin(CM); }
|
||||
try
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
|
||||
if (Program.Collector == null)
|
||||
return;
|
||||
|
||||
var _requestInfo = new cF4sdWebRequestInfo("btnStartCase_Click", null);
|
||||
|
||||
if (Program.Collector.F4SDAnalyticsValid && SessionId != null)
|
||||
{
|
||||
|
||||
CaseId = Guid.NewGuid();
|
||||
var caseData = new cF4SDCaseParameters();
|
||||
caseData.SessionId = SessionId;
|
||||
caseData.CaseId = CaseId;
|
||||
caseData.UserId = Userid;
|
||||
if (comboBoxUserSelect.SelectedItem != null)
|
||||
{
|
||||
var RetVal = new List<cDataHistoryInfoClassListEntry>();
|
||||
var user = comboBoxUserSelect.SelectedItem;
|
||||
RetVal.Add((cDataHistoryInfoClassListEntry)user);
|
||||
caseData.UserId = RetVal[0].id;
|
||||
}
|
||||
|
||||
|
||||
bool IsLoaded = await Program.Collector.CreateCaseAsync(caseData, _requestInfo, 1, CancellationToken.None);
|
||||
btnStartCase.Enabled = false;
|
||||
grpBoxQA.Visible = true;
|
||||
btnCloseCase.Enabled = true;
|
||||
btnCancelCase.Enabled = true;
|
||||
btnHoldCase.Enabled = true;
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (CM != null) LogMethodEnd(CM);
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
}
|
||||
|
||||
private async void btnCloseCase_Click(object sender, EventArgs e)
|
||||
{
|
||||
MethodBase CM = null; if (cLogManager.DefaultLogger.IsDebug) { CM = MethodBase.GetCurrentMethod(); LogMethodBegin(CM); }
|
||||
try
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
|
||||
//btnInsertSession.Enabled = false;
|
||||
if (Program.Collector == null)
|
||||
return;
|
||||
|
||||
var _requestInfo = new cF4sdWebRequestInfo("btnCloseCase_Click", null);
|
||||
|
||||
if (Program.Collector.F4SDAnalyticsValid && SessionId != null && CaseId != null)
|
||||
{
|
||||
var caseStatus = new cF4SDCaseTimeParameters();
|
||||
|
||||
caseStatus.CaseId = CaseId;
|
||||
caseStatus.StatusId = CaseStatus.Canceled;
|
||||
|
||||
bool IsLoaded = await Program.Collector.UpdateCaseStateAsync(caseStatus, _requestInfo, 1, CancellationToken.None);
|
||||
btnStartCase.Enabled = true;
|
||||
grpBoxQA.Visible = false;
|
||||
btnCloseCase.Enabled = false;
|
||||
btnCancelCase.Enabled = false;
|
||||
btnHoldCase.Enabled = false;
|
||||
comboBoxUserSelect.SelectedItem = null;
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (CM != null) LogMethodEnd(CM);
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
}
|
||||
|
||||
private async void btnCancelCase_Click(object sender, EventArgs e)
|
||||
{
|
||||
MethodBase CM = null; if (cLogManager.DefaultLogger.IsDebug) { CM = MethodBase.GetCurrentMethod(); LogMethodBegin(CM); }
|
||||
try
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
|
||||
//btnInsertSession.Enabled = false;
|
||||
if (Program.Collector == null)
|
||||
return;
|
||||
|
||||
var _requestInfo = new cF4sdWebRequestInfo("btnCancelCase_Click", null);
|
||||
|
||||
if (Program.Collector.F4SDAnalyticsValid && SessionId != null && CaseId != null)
|
||||
{
|
||||
var caseStatus = new cF4SDCaseTimeParameters();
|
||||
|
||||
caseStatus.CaseId = CaseId;
|
||||
caseStatus.StatusId = CaseStatus.InProgress;
|
||||
|
||||
bool IsLoaded = await Program.Collector.UpdateCaseStateAsync(caseStatus, _requestInfo, 1, CancellationToken.None);
|
||||
btnStartCase.Enabled = true;
|
||||
grpBoxQA.Visible = false;
|
||||
btnCloseCase.Enabled = false;
|
||||
btnCancelCase.Enabled = false;
|
||||
btnHoldCase.Enabled = false;
|
||||
|
||||
comboBoxUserSelect.SelectedItem = null;
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (CM != null) LogMethodEnd(CM);
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
}
|
||||
|
||||
private async void btnHoldCase_Click(object sender, EventArgs e)
|
||||
{
|
||||
MethodBase CM = null; if (cLogManager.DefaultLogger.IsDebug) { CM = MethodBase.GetCurrentMethod(); LogMethodBegin(CM); }
|
||||
try
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
|
||||
//btnInsertSession.Enabled = false;
|
||||
if (Program.Collector == null)
|
||||
return;
|
||||
|
||||
var _requestInfo = new cF4sdWebRequestInfo("btnHoldCase_Click", null);
|
||||
|
||||
if (Program.Collector.F4SDAnalyticsValid && SessionId != null && CaseId != null)
|
||||
{
|
||||
|
||||
var caseStatus = new cF4SDCaseTimeParameters();
|
||||
caseStatus.CaseId = CaseId;
|
||||
|
||||
if (btnHoldCase.Text == "Hold")
|
||||
{
|
||||
btnHoldCase.Text = "Continue";
|
||||
caseStatus.StatusId = CaseStatus.Finished;
|
||||
grpBoxQA.Visible = false;
|
||||
btnCancelCase.Enabled = false;
|
||||
btnCloseCase.Enabled = false;
|
||||
}
|
||||
else if (btnHoldCase.Text == "Continue")
|
||||
{
|
||||
btnHoldCase.Text = "Hold";
|
||||
caseStatus.StatusId = CaseStatus.OnHold;
|
||||
grpBoxQA.Visible = true;
|
||||
btnCancelCase.Enabled = true;
|
||||
btnCloseCase.Enabled = true;
|
||||
}
|
||||
|
||||
|
||||
bool IsLoaded = await Program.Collector.UpdateCaseStateAsync(caseStatus, _requestInfo, 1, CancellationToken.None);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (CM != null) LogMethodEnd(CM);
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
}
|
||||
|
||||
private async void btnUpdateCaseState_Click(object sender, EventArgs e)
|
||||
{
|
||||
MethodBase CM = null; if (cLogManager.DefaultLogger.IsDebug) { CM = MethodBase.GetCurrentMethod(); LogMethodBegin(CM); }
|
||||
try
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
|
||||
//btnInsertSession.Enabled = false;
|
||||
if (Program.Collector == null)
|
||||
return;
|
||||
|
||||
var _requestInfo = new cF4sdWebRequestInfo("btnUpdateCaseState_Click", null);
|
||||
|
||||
if (Program.Collector.F4SDAnalyticsValid && SessionId != null && CaseId != null)
|
||||
{
|
||||
var caseStatus = new cF4SDCaseTimeParameters();
|
||||
|
||||
caseStatus.CaseId = CaseId;
|
||||
caseStatus.StatusId = CaseStatus.Canceled;
|
||||
|
||||
bool IsLoaded = await Program.Collector.UpdateCaseStateAsync(caseStatus, _requestInfo, 1, CancellationToken.None);
|
||||
btnStartCase.Enabled = true;
|
||||
btnCreateSession.Enabled = false;
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (CM != null) LogMethodEnd(CM);
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private async void btnQAExecutions_Click(object sender, EventArgs e)
|
||||
{
|
||||
MethodBase CM = null; if (cLogManager.DefaultLogger.IsDebug) { CM = MethodBase.GetCurrentMethod(); LogMethodBegin(CM); }
|
||||
try
|
||||
{
|
||||
Cursor = Cursors.WaitCursor;
|
||||
|
||||
//btnInsertSession.Enabled = false;
|
||||
if (Program.Collector == null)
|
||||
return;
|
||||
|
||||
var _requestInfo = new cF4sdWebRequestInfo("btnQAExecutions_Click", null);
|
||||
|
||||
if (Program.Collector.F4SDAnalyticsValid && SessionId != null && CaseId != null)
|
||||
{
|
||||
var quickAction = new cF4SDQuickActionParameters();
|
||||
|
||||
quickAction.CaseId = CaseId;
|
||||
quickAction.QuickActionId = Guid.NewGuid();
|
||||
quickAction.Paramaters = null;
|
||||
quickAction.Result = null;
|
||||
quickAction.ErrorCode = 0;
|
||||
quickAction.ErrorDescription = null;
|
||||
quickAction.Start = DateTime.Now;
|
||||
quickAction.Finish = DateTime.Now;
|
||||
|
||||
await Program.Collector.ReportQuickActionExecutionAsync(quickAction, Program.Collector.F4SDAnalyticsDb.Connection, _requestInfo, 1, CancellationToken.None);
|
||||
await Program.Collector.ReportQuickActionExecutionAsync(quickAction, Program.Collector.InfrastructureConfig.HistoryDB.Connection, _requestInfo, 1, CancellationToken.None);
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (CM != null) LogMethodEnd(CM);
|
||||
Cursor = Cursors.Default;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private async void ctrlMainFunction_Load(object sender, EventArgs e)
|
||||
{
|
||||
btnCloseSession.Enabled = false;
|
||||
grpBoxCase.Visible = false;
|
||||
grpBoxQA.Visible = false;
|
||||
|
||||
if (Program.mainForm == null)
|
||||
return;
|
||||
|
||||
var _requestInfo = new cF4sdWebRequestInfo("ctrlMainFunction_Load", null);
|
||||
|
||||
if (Program.UserList == null)
|
||||
Program.UserList = await Program.Collector.GetInfoClassListTest(C4IT.FASD.Base.enumFasdInformationClass.User, true, _requestInfo, 1, CancellationToken.None);
|
||||
|
||||
comboBoxUserSelect.Items.AddRange(Program.UserList.ToArray());
|
||||
SessionCheck = new System.Timers.Timer(60.0 * 1000 * Program.Collector.InfrastructureConfig.F4SDAnalyticsDB.SessionCheckInterval);
|
||||
SessionCheck.Elapsed += Program.Collector.CheckSessionsAsync;
|
||||
SessionCheck.Start();
|
||||
|
||||
CaseCheck = new System.Timers.Timer(60.0 * 1000 * Program.Collector.InfrastructureConfig.F4SDAnalyticsDB.CaseCheckInterval);
|
||||
CaseCheck.Elapsed += Program.Collector.CheckCasesAsync;
|
||||
CaseCheck.Start();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user