This commit is contained in:
2026-04-17 14:55:32 -04:00
commit bc3ac1d4c9
18017 changed files with 4371742 additions and 0 deletions

View File

@@ -0,0 +1,89 @@
using System.Data;
using System.Data.SqlClient;
namespace DASFactoryDb.ARM
{
public static class ARM
{
public static void SetArmStatus(int iDASRecordId,
bool isArmed,
bool isTriggered,
bool isTriggerShorted,
bool isStartShorted,
bool isRecording,
bool isFaulted,
bool isInRealtime,
bool isInFlashWrite,
bool isUndefined,
bool isInPostTestDiagnostics,
double timeRemainingSeconds,
double percentComplete,
ulong totalSamples,
ulong currentSample,
uint sampleRate,
double? inputMilliVolts,
double? batteryMilliVolts,
int? eventNumber,
int recordingMode,
string faultMessage,
bool isRearming,
bool hasBeenRecording,
double? timeLeftInArm
)
{
if (!DbWrapper.Connected) { return; }
using (var cmd = DbWrapper.GetDASFactoryCommand())
{
try
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "sp_ArmStatusSet";
cmd.Parameters.Add(new SqlParameter("@IDASCommunicationRecordId", SqlDbType.Int) { Value = iDASRecordId });
cmd.Parameters.Add(new SqlParameter("@IsArmed", SqlDbType.Bit) { Value = isArmed });
cmd.Parameters.Add(new SqlParameter("@IsTriggered", SqlDbType.Bit) { Value = isTriggered });
cmd.Parameters.Add(new SqlParameter("@IsTriggerShorted", SqlDbType.Bit) { Value = isTriggerShorted });
cmd.Parameters.Add(new SqlParameter("@IsStartShorted", SqlDbType.Bit) { Value = isStartShorted });
cmd.Parameters.Add(new SqlParameter("@IsRecording", SqlDbType.Bit) { Value = isRecording });
cmd.Parameters.Add(new SqlParameter("@IsFaulted", SqlDbType.Bit) { Value = isFaulted });
cmd.Parameters.Add(new SqlParameter("@IsInRealtime", SqlDbType.Bit) { Value = isInRealtime });
cmd.Parameters.Add(new SqlParameter("@IsInFlashWrite", SqlDbType.Bit) { Value = isInFlashWrite });
cmd.Parameters.Add(new SqlParameter("@IsUndefined", SqlDbType.Bit) { Value = isUndefined });
cmd.Parameters.Add(new SqlParameter("@IsInPostTestDiagnostics", SqlDbType.Bit) { Value = isInPostTestDiagnostics });
cmd.Parameters.Add(new SqlParameter("@TimeRemainingSeconds", SqlDbType.Decimal) { Value = timeRemainingSeconds });
cmd.Parameters.Add(new SqlParameter("@PercentComplete", SqlDbType.Decimal) { Value = percentComplete });
cmd.Parameters.Add(new SqlParameter("@TotalSamples", SqlDbType.Int) { Value = totalSamples });
cmd.Parameters.Add(new SqlParameter("@CurrentSample", SqlDbType.Int) { Value = currentSample });
cmd.Parameters.Add(new SqlParameter("@SampleRate", SqlDbType.Int) { Value = sampleRate });
cmd.Parameters.Add(new SqlParameter("@InputMillivolts", SqlDbType.Decimal) { Value = inputMilliVolts ?? 0 });
cmd.Parameters.Add(new SqlParameter("@BatteryMilliVolts", SqlDbType.Decimal) { Value = batteryMilliVolts ?? 0 });
cmd.Parameters.Add(new SqlParameter("@EventNumber", SqlDbType.Int) { Value = eventNumber.HasValue ? eventNumber.Value : 0 });
cmd.Parameters.Add(new SqlParameter("@RecordingMode", SqlDbType.Int) { Value = recordingMode });
cmd.Parameters.Add(new SqlParameter("@FaultMessage", SqlDbType.NVarChar) { Value = faultMessage ?? "" });
cmd.Parameters.Add(new SqlParameter("@IsRearming", SqlDbType.Bit) { Value = isRearming });
cmd.Parameters.Add(new SqlParameter("@HasBeenRecording", SqlDbType.Bit) { Value = hasBeenRecording });
cmd.Parameters.Add(new SqlParameter("@TimeLeftInArm", SqlDbType.Decimal) { Value = timeLeftInArm ?? 0 });
var errorNumber = new SqlParameter("@errorNumber", SqlDbType.Int)
{ Direction = ParameterDirection.Output };
cmd.Parameters.Add(errorNumber);
var errorMessage = new SqlParameter("@errorMessage", SqlDbType.NVarChar, 255)
{ Direction = ParameterDirection.Output };
cmd.Parameters.Add(errorMessage);
var newId = new SqlParameter("@new_id", SqlDbType.Int)
{ Direction = ParameterDirection.Output };
cmd.Parameters.Add(newId);
cmd.ExecuteNonQuery();
DbWrapper.ProcessReturn(errorNumber, errorMessage);
}
finally
{
cmd.Connection.Dispose();
}
}
}
}
}