From 4a36ce9c1c99dd083cc2ba09896649b2a49558b9 Mon Sep 17 00:00:00 2001 From: HUANGBANGLIN Date: Fri, 3 Oct 2025 16:41:34 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=8C=82=E5=8D=95=E8=B5=84=E6=96=99?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=8C=82=E5=8D=95=E5=8D=95=E5=8F=B7=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=EF=BC=8C=E5=A2=9E=E5=8A=A0=E6=98=BE=E7=A4=BA=E6=8C=82?= =?UTF-8?q?=E5=8D=95=E5=8D=95=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/App_Code/api/guadanOrderController.cs | 5 +++++ web/admin/guadan/index.aspx | 19 +++++++++++++++---- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/web/App_Code/api/guadanOrderController.cs b/web/App_Code/api/guadanOrderController.cs index 497ce3d..cad6711 100644 --- a/web/App_Code/api/guadanOrderController.cs +++ b/web/App_Code/api/guadanOrderController.cs @@ -24,6 +24,10 @@ public class guadanOrderController : ApiController var query = _db.GuaDanOrder .Where(a => a.IsCancel == false) .Where(a => a.IsDeleted == false); + if(!string.IsNullOrEmpty(search.guaDanOrderNo)) + { + query = query.Where(order => order.GuaDanOrderNo == search.guaDanOrderNo); + } if (search.guadanUser != null) { query = query.Where(order => order.BookerName == search.guadanUser); @@ -280,6 +284,7 @@ public class guadanOrderController : ApiController public string guadanUser { get; set; } public int page { get; set; } = 1; public int pageSize { get; set; } = 10; + public string guaDanOrderNo { get; set; } = null; } } \ No newline at end of file diff --git a/web/admin/guadan/index.aspx b/web/admin/guadan/index.aspx index eed7e59..de33440 100644 --- a/web/admin/guadan/index.aspx +++ b/web/admin/guadan/index.aspx @@ -7,6 +7,8 @@ 新建掛單
+ + @@ -77,7 +79,7 @@ @input="options.page = parseInt($event, 10)" > - + - - + \ No newline at end of file From 6fc82510ccd588b5a87a44811b0eae60398127f0 Mon Sep 17 00:00:00 2001 From: HUANGBANGLIN Date: Thu, 9 Oct 2025 16:49:32 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=9C=A8=E6=8E=9B=E5=96=AE=E8=B3=87?= =?UTF-8?q?=E6=96=99=E9=A0=81=E9=9D=A2=EF=BC=8C=E5=A2=9E=E5=8A=A0=E5=88=A4?= =?UTF-8?q?=E6=96=B7=E6=8E=9B=E5=96=AE=E6=98=AF=E5=90=A6=E8=B6=85=E6=99=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/App_Code/api/guadanOrderController.cs | 20 +++++++++++++++++--- web/admin/guadan/index.aspx | 12 +++++++++++- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/web/App_Code/api/guadanOrderController.cs b/web/App_Code/api/guadanOrderController.cs index cad6711..51cb399 100644 --- a/web/App_Code/api/guadanOrderController.cs +++ b/web/App_Code/api/guadanOrderController.cs @@ -20,7 +20,12 @@ public class guadanOrderController : ApiController [Route("api/guadan/list")] public async Task getGuadanList([FromBody] guadan_order_search_dto search) { - + var lastCheckoutTime = _db.GuadanTimeSetting.FirstOrDefault(); + string lastCheckoutTimeStr = null; + if (lastCheckoutTime != null) + { + lastCheckoutTimeStr = lastCheckoutTime.LatestCheckOut; + } var query = _db.GuaDanOrder .Where(a => a.IsCancel == false) .Where(a => a.IsDeleted == false); @@ -49,7 +54,8 @@ public class guadanOrderController : ApiController } } var total = query.Count(); - var data = await query + var data1 = query.ToList(); + var data = data1 .OrderByDescending(b => b.CreatedAt) .Select(a => new { @@ -60,6 +66,14 @@ public class guadanOrderController : ApiController created_at = a.CreatedAt, updated_at = a.UpdatedAt, notes = a.Notes, + is_timeout = !string.IsNullOrEmpty(lastCheckoutTimeStr) && + _db.GuaDanOrderGuest + .Where(g => g.GuaDanOrderNo == a.GuaDanOrderNo && !g.IsDeleted && g.StatusCode == GuaDanOrderGuest.STATUS_CHECKED_IN) + .ToList() + .Any(g => + g.CheckOutAt.HasValue && + DateTime.Parse(g.CheckOutAt.Value.ToString("yyyy-MM-dd") + " " + lastCheckoutTimeStr) < DateTime.Now + ), activity = _db.activities .Where(act => act.num == a.ActivityNum) .Select(act => new @@ -88,7 +102,7 @@ public class guadanOrderController : ApiController }) .Skip((search.page - 1) * search.pageSize) .Take(search.pageSize) - .ToListAsync(); + .ToList(); return Ok(new { total, diff --git a/web/admin/guadan/index.aspx b/web/admin/guadan/index.aspx index de33440..2163ddb 100644 --- a/web/admin/guadan/index.aspx +++ b/web/admin/guadan/index.aspx @@ -30,6 +30,7 @@