媒体图片查询修改

feature-flyModify
陈伟 2025-08-04 11:10:50 +08:00
parent 3db8084de7
commit 0386d45ac4
2 changed files with 87 additions and 38 deletions

View File

@ -25,12 +25,16 @@ namespace OpenAuth.App.ServiceApp
private readonly IConfiguration _configuration; private readonly IConfiguration _configuration;
private readonly ISqlSugarClient _client; private readonly ISqlSugarClient _client;
private readonly MinioService _minioService; private readonly MinioService _minioService;
public AirportMaintenanceApp(MinioService minioService, ISqlSugarClient client, ISugarUnitOfWork<SugarDbContext> unitWork, IConfiguration configuration, ISimpleClient<LasaDronePort> repository, IAuth auth) : base(unitWork, repository, auth)
public AirportMaintenanceApp(MinioService minioService, ISqlSugarClient client,
ISugarUnitOfWork<SugarDbContext> unitWork, IConfiguration configuration,
ISimpleClient<LasaDronePort> repository, IAuth auth) : base(unitWork, repository, auth)
{ {
_configuration = configuration; _configuration = configuration;
_client = client; _client = client;
_minioService = minioService; _minioService = minioService;
} }
//获取设备绑定码 //获取设备绑定码
public async Task<Response<LasaDeviceBindingCode>> GetDeviceBindingCode() public async Task<Response<LasaDeviceBindingCode>> GetDeviceBindingCode()
{ {
@ -75,13 +79,12 @@ namespace OpenAuth.App.ServiceApp
{ {
Code = 500, Code = 500,
Message = "获取设备绑定码失败", Message = "获取设备绑定码失败",
}; };
} }
} }
} }
} }
/// <summary> /// <summary>
/// 修改注册码状态 /// 修改注册码状态
/// </summary> /// </summary>
@ -100,7 +103,6 @@ namespace OpenAuth.App.ServiceApp
else else
return false; return false;
} }
} }
//使用网关 //使用网关
@ -157,9 +159,9 @@ namespace OpenAuth.App.ServiceApp
}; };
} }
} }
} }
} }
public async Task<bool> UpdateGateway(string gateway, string did) public async Task<bool> UpdateGateway(string gateway, string did)
{ {
using (var db = UnitWork.CreateContext()) using (var db = UnitWork.CreateContext())
@ -175,8 +177,8 @@ namespace OpenAuth.App.ServiceApp
else else
return false; return false;
} }
} }
//获取网关 //获取网关
public async Task<List<string>> GetGatewaysnList() public async Task<List<string>> GetGatewaysnList()
{ {
@ -193,12 +195,15 @@ namespace OpenAuth.App.ServiceApp
} }
} }
} }
public async Task<List<string>> GetUavSn() public async Task<List<string>> GetUavSn()
{ {
using (var db = UnitWork.CreateContext()) using (var db = UnitWork.CreateContext())
{ {
var uavinfo = await db.LasaUav.AsQueryable().Where(r => r.IsDelete == false).Select(r => r.Sn).ToListAsync(); var uavinfo = await db.LasaUav.AsQueryable().Where(r => r.IsDelete == false).Select(r => r.Sn)
var dockinfo = await db.LasaDronePort.AsQueryable().Where(r => r.IsDelete == false).Select(r => r.Sn).ToListAsync(); .ToListAsync();
var dockinfo = await db.LasaDronePort.AsQueryable().Where(r => r.IsDelete == false).Select(r => r.Sn)
.ToListAsync();
if (dockinfo != null) if (dockinfo != null)
{ {
@ -212,6 +217,7 @@ namespace OpenAuth.App.ServiceApp
} }
#region 固件版本管理 #region 固件版本管理
public async Task<Response<bool>> AddFirmware(LasaFirmware info) public async Task<Response<bool>> AddFirmware(LasaFirmware info)
{ {
using (var db = UnitWork.CreateContext()) using (var db = UnitWork.CreateContext())
@ -232,6 +238,7 @@ namespace OpenAuth.App.ServiceApp
}; };
} }
} }
//修改无人机或机场版本 //修改无人机或机场版本
public async Task<Response<bool>> UpdateFirmware(string id, string version, int type) public async Task<Response<bool>> UpdateFirmware(string id, string version, int type)
{ {
@ -259,17 +266,18 @@ namespace OpenAuth.App.ServiceApp
else else
return new Response<bool> { Result = false, Message = "编辑失败" }; return new Response<bool> { Result = false, Message = "编辑失败" };
} }
} }
} }
public Task<string> UploadFile(IFormFile xmlFile) public Task<string> UploadFile(IFormFile xmlFile)
{ {
return _minioService.UploadFile(xmlFile, "firmware"); return _minioService.UploadFile(xmlFile, "firmware");
} }
#endregion #endregion
#region 健康报警 #region 健康报警
/// <summary> /// <summary>
/// 添加健康报警 /// 添加健康报警
/// </summary> /// </summary>
@ -282,7 +290,7 @@ namespace OpenAuth.App.ServiceApp
var now = DateTime.Now; var now = DateTime.Now;
//获取当前所有未处理的告警信息 //获取当前所有未处理的告警信息
var existing = db.LasaManageDeviceHms.AsQueryable() var existing = db.LasaManageDeviceHms.AsQueryable()
.Where(x => x.IsResolved == 0).ToList(); .Where(x => x.IsResolved == 0).ToList();
var currentKeys = newAlarms.Select(x => x.Code).ToHashSet(); var currentKeys = newAlarms.Select(x => x.Code).ToHashSet();
var existingKeys = existing.Select(x => x.Code).ToHashSet(); var existingKeys = existing.Select(x => x.Code).ToHashSet();
// 需要解除的(老有,新没有) 起的隆冬强 // 需要解除的(老有,新没有) 起的隆冬强
@ -293,6 +301,7 @@ namespace OpenAuth.App.ServiceApp
resolved.IsResolved = 1; resolved.IsResolved = 1;
resolved.UpdateTime = now; resolved.UpdateTime = now;
} }
db.LasaManageDeviceHms.UpdateRange(toResolve); db.LasaManageDeviceHms.UpdateRange(toResolve);
// 需要新增的(新有,老没有) // 需要新增的(新有,老没有)
var toInsert = newAlarms var toInsert = newAlarms
@ -307,8 +316,10 @@ namespace OpenAuth.App.ServiceApp
return false; return false;
} }
} }
//根据时间获取告警信息列表 //根据时间获取告警信息列表
public async Task<Response<PageInfo<List<LasaManageDeviceHms>>>> GetManageDeviceHmsList(int level, int model, DateTime startTime, DateTime endTime, int page, int limit, string message, string getway) public async Task<Response<PageInfo<List<LasaManageDeviceHms>>>> GetManageDeviceHmsList(int level, int model,
DateTime startTime, DateTime endTime, int page, int limit, string message, string getway)
{ {
RefAsync<int> totalCount = 0; RefAsync<int> totalCount = 0;
using (var db = UnitWork.CreateContext()) using (var db = UnitWork.CreateContext())
@ -327,9 +338,11 @@ namespace OpenAuth.App.ServiceApp
}; };
} }
} }
#endregion #endregion
#region 日志 #region 日志
/// <summary> /// <summary>
/// 添加日志 /// 添加日志
/// </summary> /// </summary>
@ -346,6 +359,7 @@ namespace OpenAuth.App.ServiceApp
return false; return false;
} }
} }
/// <summary> /// <summary>
/// 获取日志 /// 获取日志
/// </summary> /// </summary>
@ -355,7 +369,8 @@ namespace OpenAuth.App.ServiceApp
/// <param name="page"></param> /// <param name="page"></param>
/// <param name="limit"></param> /// <param name="limit"></param>
/// <returns></returns> /// <returns></returns>
public async Task<Response<PageInfo<List<LasaLog>>>> GetLogList(string sn, DateTime startTime, DateTime endTime, int page, int limit) public async Task<Response<PageInfo<List<LasaLog>>>> GetLogList(string sn, DateTime startTime, DateTime endTime,
int page, int limit)
{ {
RefAsync<int> totalCount = 0; RefAsync<int> totalCount = 0;
using (var db = UnitWork.CreateContext()) using (var db = UnitWork.CreateContext())
@ -372,22 +387,52 @@ namespace OpenAuth.App.ServiceApp
}; };
} }
} }
#endregion #endregion
public async Task<Response<PageInfo<List<LasaMediaFile>>>> GetMediaFile(string taskId,string device, string picname, DateTime? startTime, DateTime? endTime, int page, int limit, string parentKey)
public async Task<Response<PageInfo<List<LasaMediaFile>>>> GetMediaFile(string taskId, string device,
string picname, DateTime? startTime, DateTime? endTime, int page, int limit, string parentKey)
{ {
RefAsync<int> totalCount = 0; RefAsync<int> totalCount = 0;
using (var db = UnitWork.CreateContext()) using (var db = UnitWork.CreateContext())
{ {
Console.WriteLine(startTime.ToString()); Console.WriteLine(startTime.ToString());
var list = await db.LasaMediaFile.AsQueryable() var list = await db.LasaMediaFile.AsQueryable()
.LeftJoin<LasaTask>((x, b) => x.FlightId == b.FlightId)
.WhereIF(!string.IsNullOrEmpty(device), x => x.DroneModelKey == device) .WhereIF(!string.IsNullOrEmpty(device), x => x.DroneModelKey == device)
.WhereIF(!string.IsNullOrEmpty(picname), x => x.Name.Contains(picname)) .WhereIF(!string.IsNullOrEmpty(picname), x => x.Name.Contains(picname))
.WhereIF(!"0001/1/1 0:00:00".Equal(startTime.ToString()), x => x.CreateTime >= startTime) .WhereIF(!"0001/1/1 0:00:00".Equal(startTime.ToString()), x => x.CreateTime >= startTime)
.WhereIF(!"0001/1/1 0:00:00".Equal(endTime.ToString()), x => x.CreateTime <= endTime) .WhereIF(!"0001/1/1 0:00:00".Equal(endTime.ToString()), x => x.CreateTime <= endTime)
.WhereIF(!string.IsNullOrEmpty(parentKey), x => x.ParentKey == parentKey) .WhereIF(!string.IsNullOrEmpty(parentKey), x => x.ParentKey == parentKey)
.WhereIF(!string.IsNullOrEmpty(taskId), x => x.TaskId == taskId) .WhereIF(!string.IsNullOrEmpty(taskId), x => x.TaskId == taskId)
.OrderBy(x => x.CreateTime, OrderByType.Desc) .OrderBy(x => x.CreateTime, OrderByType.Desc)
.Select((x,b) => new LasaMediaFile
{
Id = x.Id,
Name = x.Name,
ObjectKey = x.ObjectKey,
Path = x.Path,
CreateTime = x.CreateTime,
TaskId = x.TaskId,
Level = x.Level,
ParentKey = x.ParentKey,
WorkspaceId = x.WorkspaceId,
display = x.display,
ShowOnMap = x.ShowOnMap,
GraffitiJson = x.GraffitiJson,
FileTags = x.FileTags,
Size = x.Size,
Width = x.Width,
Height = x.Height,
Tid = x.Tid,
Bid = x.Bid,
FlightType = x.FlightType,
PicLink = x.PicLink,
minipic = x.minipic,
CreateUserName = b.CreateUserName,
TaskName = b.TaskName,
AirLineName = b.TaskAirLineName,
})
.ToPageListAsync(page, limit, totalCount); .ToPageListAsync(page, limit, totalCount);
return new Response<PageInfo<List<LasaMediaFile>>> return new Response<PageInfo<List<LasaMediaFile>>>
{ {
@ -397,9 +442,12 @@ namespace OpenAuth.App.ServiceApp
} }
public async Task<Response<string>> UpdatePicStatus(string id, int showOnMap, int display, string fileTags, string graffitiJson) public async Task<Response<string>> UpdatePicStatus(string id, int showOnMap, int display, string fileTags,
string graffitiJson)
{ {
string sql = "update lasa_mediafile set \"ShowOnMap\"=" + showOnMap + ",display=" + display + ",\"FileTags\"='" + fileTags + "',\"GraffitiJson\"='" + graffitiJson + "' where \"Id\"='" + id + "'"; string sql = "update lasa_mediafile set \"ShowOnMap\"=" + showOnMap + ",display=" + display +
",\"FileTags\"='" + fileTags + "',\"GraffitiJson\"='" + graffitiJson + "' where \"Id\"='" +
id + "'";
await _client.Ado.ExecuteCommandAsync(sql); await _client.Ado.ExecuteCommandAsync(sql);
return new Response<string> { Result = "修改成功!" }; return new Response<string> { Result = "修改成功!" };
} }
@ -415,9 +463,8 @@ namespace OpenAuth.App.ServiceApp
string sql = "delete from lasa_mediafile where \"Id\"='" + idarray[i] + "'"; string sql = "delete from lasa_mediafile where \"Id\"='" + idarray[i] + "'";
await _client.Ado.ExecuteCommandAsync(sql); await _client.Ado.ExecuteCommandAsync(sql);
await _minioService.DeleteFile(objectkey); await _minioService.DeleteFile(objectkey);
} }
return new Response<string> { Result = "删除成功!" }; return new Response<string> { Result = "删除成功!" };
} }
@ -436,6 +483,4 @@ namespace OpenAuth.App.ServiceApp
return new Response<string> { Result = "修改成功!" }; return new Response<string> { Result = "修改成功!" };
} }
} }
}
}

View File

@ -85,17 +85,19 @@ public class LasaMediaFile
/// 文件创建时间 /// 文件创建时间
/// </summary> /// </summary>
public DateTime? CreateTime { get; set; } public DateTime? CreateTime { get; set; }
public string TaskId { get; set; } public string TaskId { get; set; }
/// <summary> /// <summary>
/// 文件夹所属层级 /// 文件夹所属层级
/// </summary> /// </summary>
public int Level { get; set; } public int Level { get; set; }
/// <summary> /// <summary>
/// 父文件key /// 父文件key
/// </summary> /// </summary>
public string ParentKey { get; set; } public string ParentKey { get; set; }
public string WorkspaceId { get; set; } public string WorkspaceId { get; set; }
public int? ShowOnMap { get; set; } public int? ShowOnMap { get; set; }
@ -111,14 +113,16 @@ public class LasaMediaFile
public int Height { get; set; } public int Height { get; set; }
public string Tid { get; set; } public string Tid { get; set; }
public string Bid { get; set; } public string Bid { get; set; }
public int? FlightType { get; set; } public int? FlightType { get; set; }
[SugarColumn(IsIgnore = true)] [SugarColumn(IsIgnore = true)] public string PicLink { get; set; }
public string PicLink { get; set; }
public string minipic { get; set; } public string minipic { get; set; }
[SugarColumn(IsIgnore = true)] [SugarColumn(IsIgnore = true)] public List<LasaMediaFile> Children { get; set; }
public List<LasaMediaFile> Children { get; set; }
[SugarColumn(IsIgnore = true)] public string CreateUserName { get; set; }
[SugarColumn(IsIgnore = true)] public string TaskName { get; set; }
[SugarColumn(IsIgnore = true)] public string AirLineName { get; set; }
} }