using System.Collections.Generic;
namespace HotelPms.Data.UseInfo;
///
/// 画面中制御時データの加工
///
public partial class Use
{
public int GetTotalStay()
{
var cinDate = DetailList[0].CinDate;
var coutDate = DetailList[0].CoutDate;
for (int i = 1; i < DetailList.Count; i++)
{
if (DetailList[i].CinDate.CompareTo(cinDate) < 0) { cinDate = DetailList[i].CinDate; }
if (DetailList[i].CoutDate.CompareTo(coutDate) > 0) { coutDate = DetailList[i].CoutDate; }
}
return coutDate.Subtract(cinDate);
}
///
/// 利用日を指定し、データを返す
///
///
///
public List GetUseRoomList(string useDate)
{
List list = new();
foreach (UseDetail detail in DetailList)
{
list.AddRange(detail.GetUseRoomList(useDate));
}
return list;
}
///
/// 利用部屋存在しない明細を取得する
///
///
///
public UseDetail? GetDetailWithoutUseRoom(string useDate)
{
try
{
foreach(var detail in DetailList)
{
if (!detail.ExistsUseRoom(useDate))
{
return detail;
}
}
return null;
}
catch
{
return null;
}
}
}