/////////////////////////////////////////////////////////// // 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 /// /// Preflight check to ensure date is accurate on server /// [Serializable, EditorBrowsable(EditorBrowsableState.Never)] internal class DBDtPfc : ReadOnlyBase { #region Attributes bool _Ok = false; #endregion #region Constructor /// /// Private constructor to prevent direct instantiation /// private DBDtPfc() { } #endregion #region Static methods internal static bool CheckIt() { return ((DBDtPfc)DataPortal.Fetch(new Criteria()))._Ok; } #endregion #region DAL DATA ACCESS /// /// 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 ! dtMaxDbDateAllowed) return; //SELECT MAX(AMODIFIED) FROM AWORKORDER dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N ! dtMaxDbDateAllowed) return; //SELECT MAX(AMODIFIED) FROM AVENDOR dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N ! dtMaxDbDateAllowed) return; //SELECT MAX(AMODIFIED) FROM ACLIENT dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N ! dtMaxDbDateAllowed) return; //SELECT MAX(AMODIFIED) FROM APART dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N ! dtMaxDbDateAllowed) return; //SELECT MAX(AMODIFIED) FROM APARTSERIAL dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N ! dtMaxDbDateAllowed) return; //SELECT MAX(AMODIFIED) FROM AUNIT dtDbItem = DBUtil.ScalarToDate(DBUtil.DB.ExecuteScalar(DBUtil.GetCommandFromSQL(AyaBizUtils.Ec("5$ 6&2A!2=N ! dtMaxDbDateAllowed) return; //Made it here, all ok _Ok = true; return; } #endregion #region criteria /// /// Criteria for identifying existing object /// [Serializable] private class Criteria { } #endregion }//end class }//end namespace GZTW.AyaNova.BLL