Files
ayanova7/source/bizobjects/AyaLib/GZTW.AyaNova.BLL/DBDtPfc.cs
2018-06-29 19:47:36 +00:00

121 lines
4.1 KiB
C#

///////////////////////////////////////////////////////////
// Bool.cs
// Implementation of Class DBDtPfc
// CSLA type: Read-only object
// Created on: 26-April-2016
// Object design: John
// Coded: 26-April-2016
///////////////////////////////////////////////////////////
using System;
using System.Data;
using CSLA.Data;
using GZTW.Data;
using CSLA;
using System.Threading;
using CSLA.Security;
using System.ComponentModel;
namespace GZTW.AyaNova.BLL
{
//case 2094
/// <summary>
/// Preflight check to ensure date is accurate on server
/// </summary>
[Serializable, EditorBrowsable(EditorBrowsableState.Never)]
internal class DBDtPfc : ReadOnlyBase
{
#region Attributes
bool _Ok = false;
#endregion
#region Constructor
/// <summary>
/// Private constructor to prevent direct instantiation
/// </summary>
private DBDtPfc()
{
}
#endregion
#region Static methods
internal static bool CheckIt()
{
return ((DBDtPfc)DataPortal.Fetch(new Criteria()))._Ok;
}
#endregion
#region DAL DATA ACCESS
///
/// <param Bool="Criteria"></param>
protected override void DataPortal_Fetch(object Criteria)
{
//No record in the db should have a modified date that is more than 26 hours newer than the current system date and time
//(26 hours due to international date line time zone diffs)
DateTime dtMaxDbDateAllowed = DateTime.UtcNow.AddHours(26);
DateTime dtDbItem = DateTime.MinValue;
//do not check users because simply logging in and out with the wrong date would fuck up the db
//dates which we do not want to happen accidentally
////SELECT MAX(AMODIFIED) FROM AUSER
//dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N !<!/'%6!OA*!*+A-&6#3", "false"))));
//if (dtDbItem > dtMaxDbDateAllowed) return;
//SELECT MAX(AMODIFIED) FROM AWORKORDER
dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N !<!/'%6!OA*!*+A-$*4*#!!#3", "false"))));
if (dtDbItem > dtMaxDbDateAllowed) return;
//SELECT MAX(AMODIFIED) FROM AVENDOR
dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N !<!/'%6!OA*!*+A-% (%#!", "false"))));
if (dtDbItem > dtMaxDbDateAllowed) return;
//SELECT MAX(AMODIFIED) FROM ACLIENT
dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N !<!/'%6!OA*!*+A-0)/$\"'", "false"))));
if (dtDbItem > dtMaxDbDateAllowed) return;
//SELECT MAX(AMODIFIED) FROM APART
dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N !<!/'%6!OA*!*+A-#$45", "false"))));
if (dtDbItem > dtMaxDbDateAllowed) return;
//SELECT MAX(AMODIFIED) FROM APARTSERIAL
dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N !<!/'%6!OA*!*+A-#$45?67/ ", "false"))));
if (dtDbItem > dtMaxDbDateAllowed) return;
//SELECT MAX(AMODIFIED) FROM AUNIT
dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N !<!/'%6!OA*!*+A-&+/5", "false"))));
if (dtDbItem > dtMaxDbDateAllowed) return;
//Made it here, all ok
_Ok = true;
return;
}
#endregion
#region criteria
/// <summary>
/// Criteria for identifying existing object
/// </summary>
[Serializable]
private class Criteria
{
}
#endregion
}//end class
}//end namespace GZTW.AyaNova.BLL