diff --git a/WebApi_data_value/Controllers/Yuntech_in_car_tableController.cs b/WebApi_data_value/Controllers/Yuntech_in_car_tableController.cs
index 5838489..2705dec 100644
--- a/WebApi_data_value/Controllers/Yuntech_in_car_tableController.cs
+++ b/WebApi_data_value/Controllers/Yuntech_in_car_tableController.cs
@@ -752,7 +752,63 @@ namespace Parking_space_WebAPI.Controllers
}
#endregion
+ #region 自動生成時間段Excel文件
+ ///
+ /// 自動生成包含時間範圍內車輛資料的 Excel 文件
+ ///
+ /// 位置名稱
+ /// 起始時間
+ /// 結束時間
+ ///
+ [HttpGet("auto_export_excel")]
+ public async Task ExportYuntech_in_car_table_date_to_excel_auto()
+ {
+ var start_time = DateTime.Now.AddHours(-12);
+ var end_time = DateTime.Now;
+ var in_car_table = await (from c in _context.yuntech_in_car_table
+ where c.in_time >= start_time
+ where c.in_time <= end_time
+ orderby c.in_time descending // 按進入時間降序排列
+ select new Yuntech_in_car_table
+ {
+ license_plate_number = c.license_plate_number,
+ in_time = c.in_time,
+ out_time = c.out_time,
+ location = c.location,
+ }).ToListAsync();
+
+ // 創建ExcelPackage對象
+ using (ExcelPackage package = new ExcelPackage())
+ {
+ ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("YuntechInCarTable");
+
+ // 添加標題行
+ worksheet.Cells["A1"].Value = "進入位置";
+ worksheet.Cells["B1"].Value = "車牌號碼";
+ worksheet.Cells["C1"].Value = "進入時間";
+ worksheet.Cells["D1"].Value = "出去時間";
+
+ // 添加資料
+ int row = 2;
+ foreach (var item in in_car_table)
+ {
+ worksheet.Cells["A" + row].Value = item.location;
+ worksheet.Cells["B" + row].Value = item.license_plate_number;
+ worksheet.Cells["C" + row].Value = item.in_time.ToString(); // 可以自行調整日期時間的格式
+ worksheet.Cells["D" + row].Value = item.out_time.ToString();
+ row++;
+ }
+
+ // 將ExcelPackage保存到內存流中
+ MemoryStream stream = new MemoryStream(package.GetAsByteArray());
+
+ // 設置HttpResponseMessage的內容
+ Response.Headers.Add("Content-Disposition", "attachment; filename=test.xlsx");
+ return File(stream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
+ }
+ }
+ #endregion
#region 生成全部進入車輛EXCEL
diff --git a/WebApi_data_value/Controllers/Yuntech_parking_user_listController.cs b/WebApi_data_value/Controllers/Yuntech_parking_user_listController.cs
index 930e638..16ee78b 100644
--- a/WebApi_data_value/Controllers/Yuntech_parking_user_listController.cs
+++ b/WebApi_data_value/Controllers/Yuntech_parking_user_listController.cs
@@ -10,6 +10,7 @@ using WebApi_data_value.Models;
using Parking_space_WebAPI.Authorization;
using OfficeOpenXml;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Math;
+using Parking_space_WebAPI.Models;
namespace WebApi_data_value.Controllers
{
@@ -189,7 +190,8 @@ namespace WebApi_data_value.Controllers
// 確認EXCEL格式符合規格
string user_name_check = worksheet.Cells[1, 3].Text;
string user_license_plate_number_check = worksheet.Cells[1, 5].Text;
- if (user_name_check != "車主姓名" && user_license_plate_number_check != "車牌號碼")
+ string user_phone_number_check = worksheet.Cells[1, 4].Text;
+ if (user_name_check != "車主姓名" && user_license_plate_number_check != "車牌號碼" && user_phone_number_check !="聯絡電話")
{
return BadRequest("無效的Excel文件。");
}
@@ -233,6 +235,7 @@ namespace WebApi_data_value.Controllers
{
string user_name = worksheet.Cells[row, 3].Text;
string user_license_plate_number = worksheet.Cells[row, 5].Text;
+ string user_phone_number = worksheet.Cells[row, 4].Text;
string user_state_check = "True";
try
{
@@ -241,6 +244,7 @@ namespace WebApi_data_value.Controllers
var now_data = new Yuntech_parking_user_list();
now_data.user_name = user_name;
now_data.user_license_plate_number = user_license_plate_number;
+ now_data.user_phone_number = user_phone_number;
now_data.user_state_check = "True";
_context.yuntech_parking_user_list.Add(now_data);
}
@@ -273,7 +277,30 @@ namespace WebApi_data_value.Controllers
}
#endregion
+ #region 透過車牌號碼搜尋是否為月租名單成員
+ ///
+ /// 透過車牌號碼搜尋是否為月租名單成員
+ ///
+ /// 車牌號碼 ex:ABC4321
+ ///
+ [HttpGet("license_plate_number-{id}")]
+ public async Task> Getlicense_plate_number(string id)
+ {
+ var parking_user_list = await (from c in _context.yuntech_parking_user_list
+ where c.user_license_plate_number == id
+ select new Yuntech_parking_user_list
+ {
+ user_name = c.user_name,
+ user_license_plate_number = c.user_license_plate_number,
+ user_state_check = c.user_state_check,
+ user_phone_number = c.user_phone_number,
+ }).ToListAsync();
+
+
+ return parking_user_list;
+ }
+ #endregion
diff --git a/WebApi_data_value/Models/Yuntech_parking_user_list.cs b/WebApi_data_value/Models/Yuntech_parking_user_list.cs
index 9b90fcf..210a235 100644
--- a/WebApi_data_value/Models/Yuntech_parking_user_list.cs
+++ b/WebApi_data_value/Models/Yuntech_parking_user_list.cs
@@ -6,5 +6,7 @@
public string? user_license_plate_number { get; set; }=null;
public string? user_state_check { get; set; } = null;
+ public string? user_phone_number { get; set; } = null;
+
}
}