From e16bd91350db851947c95c55c68746ea8a7a1549 Mon Sep 17 00:00:00 2001 From: leo890808 <158404739+leo890808@users.noreply.github.com> Date: Tue, 30 Apr 2024 14:53:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=20=E9=9B=B2=E7=A7=91?= =?UTF-8?q?=E5=87=BA=E5=8E=BB=E8=BB=8A=E8=BC=9Bpost=E7=9A=84api=20?= =?UTF-8?q?=E5=8F=8A=20=E5=88=AA=E9=99=A4=E6=8C=87=E5=AE=9A=E8=BB=8A?= =?UTF-8?q?=E8=BC=9B=E7=9A=84api?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Yuntech_in_car_tableController.cs | 72 ++++++++++++++++++- .../Models/Yuntech_in_car_table.cs | 1 + 2 files changed, 72 insertions(+), 1 deletion(-) diff --git a/WebApi_data_value/Controllers/Yuntech_in_car_tableController.cs b/WebApi_data_value/Controllers/Yuntech_in_car_tableController.cs index b8633ed..bcf4514 100644 --- a/WebApi_data_value/Controllers/Yuntech_in_car_tableController.cs +++ b/WebApi_data_value/Controllers/Yuntech_in_car_tableController.cs @@ -257,11 +257,12 @@ namespace Parking_space_WebAPI.Controllers { return Problem("Entity set 'SqlContext.yuntech_in_car_table' is null."); } - _context.yuntech_in_car_table.Add(yuntech_in_car_table); + try { yuntech_in_car_table.in_time = DateTime.Now; yuntech_in_car_table.out_time = null; + _context.yuntech_in_car_table.Add(yuntech_in_car_table); await _context.SaveChangesAsync(); } catch (DbUpdateException) @@ -281,6 +282,75 @@ namespace Parking_space_WebAPI.Controllers #endregion + #region 新增出去資料 + /// + /// 新增出去雲科的車輛資料 + /// + /// + /// + // POST: api/Yuntech_in_car_table + // To protect from overposting attacks, see https://go.microsoft.com/fwlink/?linkid=2123754 + [HttpPost("out_car")] + public async Task> PostYuntech_out_car_table(Yuntech_in_car_table yuntech_out_car_table) + { + if (_context.yuntech_in_car_table == null) + { + return Problem("Entity set 'SqlContext.yuntech_in_car_table' is null."); + } + var license_plate_number = yuntech_out_car_table.license_plate_number; + var out_car_img = yuntech_out_car_table.out_car_img; + var in_car_data = await(from c in _context.yuntech_in_car_table + where c.license_plate_number == license_plate_number + where c.out_time ==null + orderby c.in_time descending + select c).FirstOrDefaultAsync(); + if (in_car_data != null) + { + // 处理找到记录的情况 + _context.yuntech_in_car_table.Remove(in_car_data); + await _context.SaveChangesAsync(); + in_car_data.out_time = DateTime.Now; + in_car_data.out_car_img = out_car_img; + _context.yuntech_in_car_table.Add(in_car_data); + await _context.SaveChangesAsync(); + } + else + { + // 处理未找到记录的情况 + await _context.SaveChangesAsync(); + } + + + + + return Ok(); + } + #endregion + + #region 刪除資料 + /// + /// 刪除指定資料 + /// + /// 車牌號碼 + /// 資料新增時間 + /// + [HttpDelete("license_plate_number-{license_plate_number}-time-{time}")] + public async Task Deletein_car_table(string license_plate_number, DateTime time) + { + var in_car_table = await (from c in _context.yuntech_in_car_table + where c.license_plate_number == license_plate_number + where c.in_time == time + + select c).FirstAsync(); + + + _context.yuntech_in_car_table.Remove(in_car_table); + await _context.SaveChangesAsync(); + + return NoContent(); + } + #endregion + private bool Yuntech_in_car_tableExists(DateTime? id) { return (_context.yuntech_in_car_table?.Any(e => e.in_time == id)).GetValueOrDefault(); diff --git a/WebApi_data_value/Models/Yuntech_in_car_table.cs b/WebApi_data_value/Models/Yuntech_in_car_table.cs index 5f5aa6a..ef87a74 100644 --- a/WebApi_data_value/Models/Yuntech_in_car_table.cs +++ b/WebApi_data_value/Models/Yuntech_in_car_table.cs @@ -4,6 +4,7 @@ { public string? license_plate_number { get; set; } public string? car_img { get; set; } + public string? out_car_img { get; set; } public string? location { get; set; } public DateTime? in_time { get; set; } public DateTime? out_time { get; set; }