调整挂单统计,修改删除区域报错
This commit is contained in:
@@ -21,39 +21,49 @@ public class guadanStatisticsController: ApiController
|
||||
//挂单统计:房间,床位,挂单笔数,挂单人数的统计
|
||||
|
||||
var now = DateTime.Now;
|
||||
var roomCount = await _db.Room.Where(a => a.IsDeleted == false).CountAsync();
|
||||
var rooms = await _db.Room.Include(r => r.RegionRoomBed).ToListAsync();
|
||||
|
||||
var emptyRoomCount = rooms
|
||||
.Where(r => r.RegionRoomBed.All(b => b.IsAvailableDuring(now, now, _db))) // 這裡就能用方法
|
||||
.Count();
|
||||
var bedCount = await _db.RegionRoomBed.Where(a => a.IsDeleted == false).CountAsync();
|
||||
var maleBedCount = await _db.RegionRoomBed.Where(a => a.IsDeleted == false && a.Gender == true).CountAsync();
|
||||
var femaleBedCount = await _db.RegionRoomBed.Where(a => a.IsDeleted == false && a.Gender == false).CountAsync();
|
||||
|
||||
var guadanTotalCount = await _db.GuaDanOrder.Where(a => a.IsDeleted == false).CountAsync();
|
||||
var guadanPeopleTotal = await _db.GuaDanOrderGuest.Where(a => a.IsDeleted == false).CountAsync();
|
||||
var guadanPeopleMale = await _db.GuaDanOrderGuest.Where(a => a.IsDeleted == false && a.followers.sex == "男眾").CountAsync();
|
||||
var guadanPeopleFemale = await _db.GuaDanOrderGuest.Where(a => a.IsDeleted == false && a.followers.sex == "女眾").CountAsync();
|
||||
dynamic bedCounts = await RegionAndRoomAndBedSchedule.GetAvailableBedCountsAsync(_db, DateTime.Now, DateTime.Now);
|
||||
var guadanCurrentCount = await _db.GuaDanOrder.Where(a => now < a.EndDate).CountAsync();
|
||||
var guadanPeopleCurrent = await _db.GuaDanOrderGuest.Where( a => a.CheckOutAt > now).CountAsync();
|
||||
var guadanPeopleCurrentMale = await _db.GuaDanOrderGuest.Where(a => a.CheckOutAt > now && a.followers.sex == "男眾").CountAsync();
|
||||
var guadanPeopleCurrentFemale = await _db.GuaDanOrderGuest.Where(a => a.CheckOutAt > now && a.followers.sex == "女眾").CountAsync();
|
||||
var guadanTotalCount = await _db.GuaDanOrder
|
||||
.Where(a => a.IsDeleted == false)
|
||||
.Where(a => a.IsCancel == false)
|
||||
.CountAsync();
|
||||
var guadanCurrentCount = await _db.GuaDanOrderGuest
|
||||
.Where(guest => guest.StatusCode != "403")
|
||||
.Where(guest => guest.StatusCode != "404")
|
||||
.Select(guest => guest.GuaDanOrderNo)
|
||||
.Distinct()
|
||||
.CountAsync();
|
||||
var guadanPeopleTotal = await _db.GuaDanOrderGuest
|
||||
.Where(a => a.IsDeleted == false)
|
||||
.Where(guest => guest.StatusCode != "404")
|
||||
.CountAsync();
|
||||
var guadanPeopleMale = await _db.GuaDanOrderGuest
|
||||
.Where(guest => guest.StatusCode != "404")
|
||||
.Where(a => a.IsDeleted == false && a.followers.sex == "男眾")
|
||||
.CountAsync();
|
||||
var guadanPeopleFemale = await _db.GuaDanOrderGuest
|
||||
.Where(guest => guest.StatusCode != "404")
|
||||
.Where(a => a.IsDeleted == false && a.followers.sex == "女眾")
|
||||
.CountAsync();
|
||||
var guadanPeopleCurrent = await _db.GuaDanOrderGuest
|
||||
.Where(a => a.IsDeleted == false)
|
||||
.Where(guest => guest.StatusCode != "404")
|
||||
.Where(guest => guest.StatusCode != "403")
|
||||
.Where( a => a.CheckOutAt >= now.Date)
|
||||
.CountAsync();
|
||||
var guadanPeopleCurrentMale = await _db.GuaDanOrderGuest
|
||||
.Where(a => a.IsDeleted == false)
|
||||
.Where(guest => guest.StatusCode != "404")
|
||||
.Where(guest => guest.StatusCode != "403")
|
||||
.Where(a => a.CheckOutAt >= now.Date && a.followers.sex == "男眾")
|
||||
.CountAsync();
|
||||
var guadanPeopleCurrentFemale = await _db.GuaDanOrderGuest
|
||||
.Where(a => a.IsDeleted == false)
|
||||
.Where(guest => guest.StatusCode != "404")
|
||||
.Where(guest => guest.StatusCode != "403")
|
||||
.Where(a => a.CheckOutAt >= now.Date && a.followers.sex == "女眾")
|
||||
.CountAsync();
|
||||
|
||||
var result = new
|
||||
{
|
||||
roomStatistics = new
|
||||
{
|
||||
roomCount = roomCount,
|
||||
emptyRoomCount = emptyRoomCount,
|
||||
bedCount = bedCount,
|
||||
maleBedCount = maleBedCount,
|
||||
femaleBedCount = femaleBedCount,
|
||||
emptyBedCount = bedCounts.male + bedCounts.female,
|
||||
emptyMaleBedCount = bedCounts.male,
|
||||
emptyFemaleBedCount = bedCounts.female
|
||||
},
|
||||
guadanStatistics = new
|
||||
{
|
||||
guadanTotalCount = guadanTotalCount, // 总挂单次数
|
||||
@@ -61,7 +71,7 @@ public class guadanStatisticsController: ApiController
|
||||
guadanPeopleTotal = guadanPeopleTotal, // 总挂单人数
|
||||
guadanPeopleMale = guadanPeopleMale,
|
||||
guadanPeopleFemale = guadanPeopleFemale,
|
||||
guadanPeopleCurrent = guadanPeopleCurrent, // 当前挂单人数
|
||||
guadanPeopleCurrent = guadanPeopleCurrent, // 已預約掛單人數
|
||||
guadanPeopleCurrentMale = guadanPeopleCurrentMale,
|
||||
guadanPeopleCurrentFemale = guadanPeopleCurrentFemale
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user