using Google.Protobuf.WellKnownTypes;
using HotelPms.Share.Util;
namespace HotelPms.Data.Master
{
public class RoomViewUse
{
public int RoomID { get; set; } = 0;
public int UseID { get; set; } = 0;
public int DetailID { get; set; } = 0;
public int UseStatus { get; set; } = 0;
public int SubStatus { get; set; } = 0;
public int ExtenStatus { get; set; } = 0;
public Timestamp CinDate { get; set; } = Timestamp.FromDateTime(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc));
public Timestamp CoutDate { get; set; } = Timestamp.FromDateTime(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc));
public int Stay { get; set; } = 0;
public int CinTime { get; set; } = 0;
public int CoutTime { get; set; } = 0;
public Timestamp ResvDate { get; set; } = Timestamp.FromDateTime(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc));
public int ResvType { get; set; } = 0;
public string SortKey { get; set; } = string.Empty;
public string BackColor { get; set; } = string.Empty;
public string ForeColor { get; set; } = string.Empty;
///
/// RoomCellに関連する利用データ
///
public Dictionary UseData = new Dictionary();
public void Read(System.Data.DataRow row)
{
RoomID = CConvert.ToInt(row["RoomID"]);
UseID = CConvert.ToInt(row["UseID"]);
DetailID = CConvert.ToInt(row["DetailID"]);
UseStatus = CConvert.ToInt(row["UseStatus"]);
SubStatus = CConvert.ToInt(row["SubStatus"]);
ExtenStatus = CConvert.ToInt(row["ExtenStatus"]);
CinDate = CConvert.ToTimestamp(row.IsNull("CinDate") ? DateTime.MinValue : (System.DateTime)row["CinDate"]);
CoutDate = CConvert.ToTimestamp(row.IsNull("CoutDate") ? DateTime.MinValue : (System.DateTime)row["CoutDate"]);
Stay = CConvert.ToInt(row["Stay"]);
CinTime = CConvert.ToInt(row["CinTime"]);
CoutTime = CConvert.ToInt(row["CoutTime"]);
ResvDate = CConvert.ToTimestamp(row.IsNull("ResvDate") ? DateTime.MinValue : (System.DateTime)row["ResvDate"]);
ResvType = CConvert.ToInt(row["ResvType"]);
SortKey = CConvert.ToString(row["SortKey"]);
BackColor = CConvert.ToString(row["BackColor"]);
ForeColor = CConvert.ToString(row["ForeColor"]);
AddUseData(row);
}
///
/// RoomCellの利用データの格納
///
///
public void AddUseData(System.Data.DataRow row)
{
foreach (System.Data.DataColumn col in row.Table.Columns)
{
if (col.ColumnName.StartsWith("F") && CConvert.IsNumber(col.ColumnName.Substring(1)))
{
UseData.Add(col.ColumnName, CConvert.ToString(row[col.ColumnName]));
}
}
}
}
}