Merge branch 'main' of http://blv-rd.tech:3001/Boonlive_RD_Web/Web_AuthorityManagement_Mvc_Prod
This commit is contained in:
@@ -573,6 +573,16 @@ namespace UI.Controllers
|
||||
public string DevName { get; set; } // 设备名称
|
||||
}
|
||||
|
||||
private class RoomVisitLogFormRow
|
||||
{
|
||||
public string HotelID { get; set; }
|
||||
public string RoomNumber { get; set; }
|
||||
public string EquipmentStatus { get; set; }
|
||||
public string FaultDescription { get; set; }
|
||||
public string UpdateDate { get; set; }
|
||||
public string DevName { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 写入房间设备访问日志
|
||||
/// </summary>
|
||||
@@ -596,25 +606,24 @@ namespace UI.Controllers
|
||||
}
|
||||
|
||||
// 创建日志列表
|
||||
var logList = new List<object>();
|
||||
string updateDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
|
||||
foreach (var equipment in EquipmentList)
|
||||
var logList = EquipmentList.Select(equipment => new RoomVisitLogFormRow
|
||||
{
|
||||
logList.Add(new {
|
||||
HotelID = HotelID,
|
||||
RoomNumber = RoomNumber,
|
||||
EquipmentStatus = equipment.EquipmentStatus,
|
||||
FaultDescription = equipment.FaultDescription,
|
||||
UpdateDate = updateDate,
|
||||
DevName = equipment.DevName
|
||||
});
|
||||
}
|
||||
HotelID = HotelID,
|
||||
RoomNumber = RoomNumber,
|
||||
EquipmentStatus = equipment.EquipmentStatus,
|
||||
FaultDescription = equipment.FaultDescription,
|
||||
UpdateDate = updateDate,
|
||||
DevName = equipment.DevName
|
||||
}).ToList();
|
||||
|
||||
// 批量写入数据库
|
||||
SqlSugarBase.RcuDb.Ado.ExecuteCommand("INSERT INTO tbl_roomvisitlogform (HotelID, RoomNumber, EquipmentStatus, FaultDescription, UpdateDate, DevName) VALUES (@HotelID, @RoomNumber, @EquipmentStatus, @FaultDescription, @UpdateDate, @DevName)", logList);
|
||||
var insertCount = SqlSugarBase.RcuDb.Insertable(logList)
|
||||
.AS("tbl_roomvisitlogform")
|
||||
.ExecuteCommand();
|
||||
|
||||
return Json(new { Status = 1, Message = "写入成功", Count = logList.Count }, JsonRequestBehavior.AllowGet);
|
||||
return Json(new { Status = 1, Message = "写入成功", Count = insertCount }, JsonRequestBehavior.AllowGet);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -643,13 +652,43 @@ namespace UI.Controllers
|
||||
|
||||
// 构建查询条件
|
||||
string whereClause = "WHERE HotelID = @HotelID AND RoomNumber = @RoomNumber";
|
||||
var parameters = new { HotelID, RoomNumber };
|
||||
var parameters = new Dictionary<string, object>
|
||||
{
|
||||
{ "HotelID", HotelID },
|
||||
{ "RoomNumber", RoomNumber }
|
||||
};
|
||||
|
||||
DateTime startDateTime = default(DateTime);
|
||||
DateTime endDateTime = default(DateTime);
|
||||
bool hasStart = !string.IsNullOrWhiteSpace(StartTime);
|
||||
bool hasEnd = !string.IsNullOrWhiteSpace(EndTime);
|
||||
|
||||
if (hasStart && !DateTime.TryParse(StartTime, out startDateTime))
|
||||
{
|
||||
return Json(new { Status = 0, Message = "StartTime 格式错误,应为 yyyy-MM-dd HH:mm:ss" }, JsonRequestBehavior.AllowGet);
|
||||
}
|
||||
|
||||
if (hasEnd && !DateTime.TryParse(EndTime, out endDateTime))
|
||||
{
|
||||
return Json(new { Status = 0, Message = "EndTime 格式错误,应为 yyyy-MM-dd HH:mm:ss" }, JsonRequestBehavior.AllowGet);
|
||||
}
|
||||
|
||||
// 如果提供了开始时间和结束时间,则添加时间范围条件
|
||||
if (!string.IsNullOrWhiteSpace(StartTime) && !string.IsNullOrWhiteSpace(EndTime))
|
||||
if (hasStart && hasEnd)
|
||||
{
|
||||
whereClause += " AND UpdateDate BETWEEN @StartTime AND @EndTime";
|
||||
parameters = new { HotelID, RoomNumber, StartTime, EndTime };
|
||||
parameters["StartTime"] = startDateTime.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
parameters["EndTime"] = endDateTime.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
}
|
||||
else if (hasStart)
|
||||
{
|
||||
whereClause += " AND UpdateDate >= @StartTime";
|
||||
parameters["StartTime"] = startDateTime.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
}
|
||||
else if (hasEnd)
|
||||
{
|
||||
whereClause += " AND UpdateDate <= @EndTime";
|
||||
parameters["EndTime"] = endDateTime.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
}
|
||||
|
||||
// 构建完整的SQL查询语句
|
||||
|
||||
Reference in New Issue
Block a user