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; } } }