using Model; using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Threading.Tasks; using System.Web; using System.Web.Http; /// /// guadanStatisticsController 的摘要描述 /// public class guadanStatisticsController: ApiController { private Model.ezEntities _db = new Model.ezEntities(); [HttpGet] [Route("api/guadanStatistics/GetGuadanStatistics")] public async Task GetGuadanStatistics() { //挂单统计:房间,床位,挂单笔数,挂单人数的统计 var now = DateTime.Now; 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 { guadanStatistics = new { guadanTotalCount = guadanTotalCount, // 总挂单次数 guadanCurrentCount = guadanCurrentCount, // 当前挂单数量 guadanPeopleTotal = guadanPeopleTotal, // 总挂单人数 guadanPeopleMale = guadanPeopleMale, guadanPeopleFemale = guadanPeopleFemale, guadanPeopleCurrent = guadanPeopleCurrent, // 已預約掛單人數 guadanPeopleCurrentMale = guadanPeopleCurrentMale, guadanPeopleCurrentFemale = guadanPeopleCurrentFemale } }; return Ok(result); } }