using System.Collections.Generic;
|
|
namespace HotelPms.Data.UseInfo;
|
|
/// <summary>
|
/// 画面中制御時データの加工
|
/// </summary>
|
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);
|
}
|
|
/// <summary>
|
/// 利用日を指定し、データを返す
|
/// </summary>
|
/// <param name="useDate"></param>
|
/// <returns></returns>
|
public List<UseRoom> GetUseRoomList(string useDate)
|
{
|
List<UseRoom> list = new();
|
foreach (UseDetail detail in DetailList)
|
{
|
list.AddRange(detail.GetUseRoomList(useDate));
|
}
|
return list;
|
}
|
|
/// <summary>
|
/// 利用部屋存在しない明細を取得する
|
/// </summary>
|
/// <param name="useDate"></param>
|
/// <returns></returns>
|
public UseDetail? GetDetailWithoutUseRoom(string useDate)
|
{
|
try
|
{
|
foreach(var detail in DetailList)
|
{
|
if (!detail.ExistsUseRoom(useDate))
|
{
|
return detail;
|
}
|
}
|
return null;
|
}
|
catch
|
{
|
return null;
|
}
|
}
|
}
|