调整挂单统计,修改删除区域报错
This commit is contained in:
106
web/App_Code/api/guadanGuestQueryController.cs
Normal file
106
web/App_Code/api/guadanGuestQueryController.cs
Normal file
@@ -0,0 +1,106 @@
|
||||
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;
|
||||
|
||||
/// <summary>
|
||||
/// guadanGuestQueryController 的摘要描述
|
||||
/// </summary>
|
||||
public class guadanGuestQueryController: ApiController
|
||||
{
|
||||
private Model.ezEntities _db = new Model.ezEntities();
|
||||
public guadanGuestQueryController()
|
||||
{
|
||||
//
|
||||
// TODO: 在這裡新增建構函式邏輯
|
||||
//
|
||||
}
|
||||
[HttpPost]
|
||||
[Route("api/guadan/guest/query/list")]
|
||||
public async Task<IHttpActionResult> GetList([FromBody] SearchGuestModel search)
|
||||
{
|
||||
var query = _db.GuaDanOrderGuest
|
||||
.Where(guest => guest.StatusCode != "404");
|
||||
if(search.SearchName != null)
|
||||
{
|
||||
query = query.Where(guest => guest.followers.u_name.Contains(search.SearchName));
|
||||
}
|
||||
if(search.searchCheckInDate != null)
|
||||
{
|
||||
query = query.Where(guest => guest.CheckInAt == search.searchCheckInDate);
|
||||
}
|
||||
if(search.searchCheckOutDate != null)
|
||||
{
|
||||
query = query.Where(guest => guest.CheckOutAt == search.searchCheckOutDate);
|
||||
}
|
||||
if(search.searchCheckInDateStart != null)
|
||||
{
|
||||
query = query.Where(guest => guest.CheckInAt >= search.searchCheckInDateStart);
|
||||
}
|
||||
if (search.searchCheckInDateEnd != null)
|
||||
{
|
||||
query = query.Where(guest => guest.CheckInAt <= search.searchCheckInDateEnd);
|
||||
}
|
||||
if (search.searchCheckOutDateStart != null)
|
||||
{
|
||||
query = query.Where(guest => guest.CheckOutAt >= search.searchCheckOutDateStart);
|
||||
}
|
||||
if (search.searchCheckOutDateEnd != null)
|
||||
{
|
||||
query = query.Where(guest => guest.CheckOutAt <= search.searchCheckOutDateEnd);
|
||||
}
|
||||
var totalCount = await query.CountAsync();
|
||||
var pagedData = await query
|
||||
.OrderByDescending(a => a.CheckInAt) // 可根据需要排序
|
||||
.Skip((search.Page - 1) * search.PageSize)
|
||||
.Take(search.PageSize)
|
||||
.ToListAsync();
|
||||
var data1 = pagedData.Select(a => new
|
||||
{
|
||||
name = a.followers != null ? a.followers.u_name : null,
|
||||
checkindate = a.CheckInAt,
|
||||
checkoutdate = a.CheckOutAt,
|
||||
guadanorderno = a.GuaDanOrderNo,
|
||||
roomName = GetRoomAndBedString(a.RegionRoomBed),
|
||||
}).ToList();
|
||||
return Ok(new
|
||||
{
|
||||
items = data1,
|
||||
total = totalCount,
|
||||
});
|
||||
}
|
||||
public string GetRoomAndBedString(RegionRoomBed bed)
|
||||
{
|
||||
if (bed == null || bed.Room == null) return "";
|
||||
var room = bed.Room;
|
||||
var region = room.Region;
|
||||
var name = room.Name + "/" + bed.Name;
|
||||
if(region != null)
|
||||
{
|
||||
name = region.Name + "/" + name;
|
||||
}
|
||||
var parentRegion = region.Region2;
|
||||
while (parentRegion != null)
|
||||
{
|
||||
name = parentRegion.Name + "/" + name;
|
||||
parentRegion = parentRegion.Region2;
|
||||
}
|
||||
return name;
|
||||
}
|
||||
public class SearchGuestModel
|
||||
{
|
||||
public string SearchName = null;
|
||||
public int Page = 1;
|
||||
public int PageSize = 10;
|
||||
public DateTime? searchCheckInDateStart = null;//入住日期的开始
|
||||
public DateTime? searchCheckInDateEnd = null;//入住日期的结束
|
||||
public DateTime? searchCheckOutDateStart = null;//退房日期的开始
|
||||
public DateTime? searchCheckOutDateEnd = null;//退房日期的结束
|
||||
public DateTime? searchCheckInDate = null;
|
||||
public DateTime? searchCheckOutDate = null;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user