using System;
using System.Collections.Generic;
using System.Globalization;
using System.Text;
namespace Dfs.WayneChina.SpsDbManager.ResultSet
{
///
/// Result of the calling sps_db routine "Versioninfo"
///
public class VersionInfo
{
#region Fields
private string format = "yyyyMMddHHmmss";
#endregion
#region Properties
public int VersionId { get; set; }
public byte VerNo { get; set; }
public string EffTime { get; set; }
public string LoseEffTime { get; set; }
public string Remark { get; set; }
#endregion
public DateTime GetEffectiveTime()
{
return DateTime.ParseExact(EffTime, format, CultureInfo.InvariantCulture);
}
public DateTime GetExpiredTime()
{
//DB Field 'loseefftime' filled with 14 '0', convert it to a more meanful time.
if (LoseEffTime.Equals("00000000000000"))
{
return DateTime.ParseExact("99991231235959", format, CultureInfo.InvariantCulture);
}
return DateTime.ParseExact(LoseEffTime, format, CultureInfo.InvariantCulture);
}
}
///
/// POCO used in the business logic.
///
public class DataVersion
{
public VersionType VersionType { get; set; }
public byte VersionNo { get; set; }
public DateTime Effectivetime { get; set; }
public DateTime ExpiredTime { get; set; }
public string Remark { get; set; }
}
///
/// Type of the 'version' stored in db.
///
public enum VersionType
{
///
/// [Sta_VER], Station general info version.
/// 通用信息版本
///
GeneralInfoVersion = 1,
///
/// [PRC_VER], Fuel price change version.
/// 油价变更版本
///
FuelPriceChangeVersion = 2,
///
/// [BL_VER], base blacklist version.
/// 基础黑名单版本
///
BaseBlacklistVersion = 3,
///
/// [ADD_BL_VER], Newly added blacklist version.
/// 新增黑名单版本
///
NewlyAddedBlacklistVersion = 4,
///
/// [DEL_BL_VER], Newly deleted blacklist version.
/// 新删黑名单版本
///
NewlyDeletedBlacklistVersion = 5,
///
/// [WH_VER], whitelist version.
/// 白名单版本
///
WhitelistVersion = 6
}
}