Compare commits
2 Commits
b295badd45
...
03f00c9bc3
| Author | SHA1 | Date |
|---|---|---|
|
|
03f00c9bc3 | |
|
|
dc8f03f15e |
|
|
@ -109,6 +109,7 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
}
|
||||
public async Task<Response<bool>> AddDaHuaImg(string info)
|
||||
{
|
||||
Console.WriteLine(info);
|
||||
using (var db = UnitWork.CreateContext())
|
||||
{
|
||||
var data = JsonConvert.DeserializeObject<dynamic>(info);
|
||||
|
|
@ -116,10 +117,12 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
var oldinfo = await db.LasaAiAchievement.GetFirstAsync(r => r.TaskId == cdid);
|
||||
var imageList = data.imageInfoList;
|
||||
string detectRegionJson = JsonConvert.SerializeObject(data.info.detectRegion);
|
||||
var regionArray = JsonConvert.DeserializeObject<dynamic>(detectRegionJson);
|
||||
int index = 0;
|
||||
//string detectRegionJson = "[[0, 0],[8063, 647],[8017, 7774],[552, 8033]]";
|
||||
//string url = "http://123.132.248.154:6015/DroneEnforcement/2025/20250514/lQLPJyIVimQWGKnNA4PNA6Gw1D3q5gbxUvQIiumcIx4vAA_929_899.png";
|
||||
var regionArray = JsonConvert.DeserializeObject<int[][]>(detectRegionJson);
|
||||
if (oldinfo != null)
|
||||
{
|
||||
int index = 0;
|
||||
foreach (var item in imageList)
|
||||
{
|
||||
//插入详情
|
||||
|
|
@ -131,26 +134,25 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
Lng = (double?)item.longitude ?? 0.0,
|
||||
Lat = (double?)item.latitude ?? 0.0,
|
||||
};
|
||||
//// 如果是第二张图片 -> 画区域 + 上传
|
||||
//var a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
//if (index == 1)
|
||||
//{
|
||||
// //DrawingImgAsync();
|
||||
// Console.WriteLine(item.imgUrl);
|
||||
// Console.WriteLine(regionArray);
|
||||
// a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
// lasaAiAchievementDetail.Image = a;
|
||||
//}
|
||||
// 如果是第二张图片 -> 画区域 + 上传
|
||||
if (index == 1)
|
||||
{
|
||||
Console.WriteLine(item.imgUrl);
|
||||
Console.WriteLine(regionArray);
|
||||
var imgurlend = await DrawingImgAndUpload(item.imgUrl.ToString().Replace("\\", ""), regionArray, cdid);
|
||||
lasaAiAchievementDetail.Image = imgurlend;
|
||||
}
|
||||
await db.LasaAiAchievementDetail.InsertAsync(lasaAiAchievementDetail);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
int index = 0;
|
||||
LasaAiAchievement lasaAiAchievement = new LasaAiAchievement
|
||||
{
|
||||
Id = Guid.NewGuid().ToString(),
|
||||
Title = "耕地破坏区域报警",
|
||||
Title = "本地耕地破坏区域报警",
|
||||
CreateTime = DateTime.Now,
|
||||
AiModel = "DaHuaAi",
|
||||
TaskId = cdid
|
||||
|
|
@ -167,16 +169,15 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
Lng = (double?)item.longitude ?? 0.0,
|
||||
Lat = (double?)item.latitude ?? 0.0,
|
||||
};
|
||||
//// 如果是第二张图片 -> 画区域 + 上传
|
||||
//var a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
//if (index == 1)
|
||||
//{
|
||||
// //DrawingImgAsync();
|
||||
// Console.WriteLine(item.imgUrl);
|
||||
// Console.WriteLine(regionArray);
|
||||
// a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
// lasaAiAchievementDetail.Image = a;
|
||||
//}
|
||||
// 如果是第二张图片 -> 画区域 + 上传
|
||||
if (index == 1)
|
||||
{
|
||||
Console.WriteLine(item.imgUrl);
|
||||
Console.WriteLine(regionArray);
|
||||
//var imgurlend = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
var imgurlend = await DrawingImgAndUpload(item.imgUrl.ToString().Replace("\\", ""), regionArray, cdid);
|
||||
lasaAiAchievementDetail.Image = imgurlend;
|
||||
}
|
||||
lasaAiAchievement.Lat = item.latitude;
|
||||
lasaAiAchievement.Lng = item.longitude;
|
||||
lasaAiAchievement.Cover = item.imgUrl;
|
||||
|
|
@ -205,13 +206,18 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
};
|
||||
}
|
||||
}
|
||||
public async Task<string> DrawingImgAndUpload(string url, dynamic regionArray)
|
||||
//public async Task<string> DrawingImgAndUpload(string url, int[][] regionArray)
|
||||
public async Task<string> DrawingImgAndUpload(string url, int[][] regionArray, string cdid)
|
||||
{
|
||||
//var regionArray = JsonConvert.DeserializeObject<int[][]>(detectRegionJson);
|
||||
Console.WriteLine($"regionArray 是否为空: {regionArray == null}, 长度: {regionArray?.Length}");
|
||||
//string url = "http://123.132.248.154:6015/DroneEnforcement/2025/20250514/lQLPJyIVimQWGKnNA4PNA6Gw1D3q5gbxUvQIiumcIx4vAA_929_899.png";
|
||||
|
||||
if (regionArray == null || regionArray.Length == 0)
|
||||
throw new ArgumentException("detectRegion 参数无效");
|
||||
// detectRegion JSON(可以直接替换成你的接口返回数据)
|
||||
//string detectRegionJson = "[[0, 0],[8063, 647],[8017, 7774],[552, 8033]]";
|
||||
//var regionArray = JsonConvert.DeserializeObject<int[][]>(detectRegionJson);
|
||||
//Console.WriteLine($"regionArray 是否为空");
|
||||
|
||||
//if (regionArray == null || regionArray.Length == 0)
|
||||
// throw new ArgumentException("detectRegion 参数无效");
|
||||
|
||||
Point[] polygon = new Point[regionArray.Length];
|
||||
for (int i = 0; i < regionArray.Length; i++)
|
||||
|
|
@ -222,7 +228,6 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
using (HttpClient client = new HttpClient())
|
||||
{
|
||||
var bytes = await client.GetByteArrayAsync(url);
|
||||
|
||||
using (var ms = new MemoryStream(bytes))
|
||||
using (var image = Image.FromStream(ms))
|
||||
using (var bmp = new Bitmap(image))
|
||||
|
|
@ -231,20 +236,19 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
g.SmoothingMode = SmoothingMode.AntiAlias;
|
||||
|
||||
using (var pen = new Pen(Color.Red, 5))
|
||||
using (var brush = new SolidBrush(Color.FromArgb(80, Color.Blue)))
|
||||
{
|
||||
g.FillPolygon(brush, polygon);
|
||||
g.DrawPolygon(pen, polygon);
|
||||
}
|
||||
|
||||
|
||||
using (var outputStream = new MemoryStream())
|
||||
{
|
||||
bmp.Save(outputStream, ImageFormat.Png);
|
||||
outputStream.Position = 0;
|
||||
string fileName = Path.GetFileName(new Uri(url).AbsolutePath);
|
||||
// 上传到 MinIO(直接传 MemoryStream)
|
||||
string uploadedUrl = await _minioService.UploadStreamFile(outputStream, fileName, "test", Guid.NewGuid().ToString());
|
||||
Console.WriteLine(uploadedUrl);
|
||||
string uploadedUrl = await _minioService.UploadStreamFile(outputStream, fileName, "test", cdid);
|
||||
Console.WriteLine("返回imgurl:" + uploadedUrl);
|
||||
return uploadedUrl;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -225,7 +225,7 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
|
|||
/// <param name="secondId"></param>
|
||||
[HttpPost]
|
||||
[AllowAnonymous]
|
||||
public async void BehaviorAlarm(string firstId, string secondId, string cdId)
|
||||
public async Task<Response<string>> BehaviorAlarm(string firstId, string secondId, string cdId)
|
||||
{
|
||||
var mq = await RabbitMqSender.CreateAsync("123.132.248.154", 9103, "DHCloudg1", "Cloud0#4fCraQrm");
|
||||
var dataList = await _app.BehaviorAlarm(firstId, secondId, cdId);
|
||||
|
|
@ -233,19 +233,24 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
|
|||
{
|
||||
await mq.SendAsync("event.capturePic.1.sdhc04", JsonConvert.SerializeObject(data));
|
||||
}
|
||||
return new Response<string>()
|
||||
{
|
||||
Code = 200,
|
||||
Result = "执行成功"
|
||||
};
|
||||
}
|
||||
/// <summary>
|
||||
/// 测试大华
|
||||
/// </summary>
|
||||
/// <param name="info"></param>
|
||||
/// <param name="detectRegionJson"></param>
|
||||
[HttpPost]
|
||||
[AllowAnonymous]
|
||||
public async void DrawingImgAndUploadAsync(string info, int[][] detectRegionJson)
|
||||
{
|
||||
await _app.DrawingImgAndUpload(info, detectRegionJson);
|
||||
///// <summary>
|
||||
///// 测试大华
|
||||
///// </summary>
|
||||
///// <param name="info"></param>
|
||||
///// <param name="detectRegionJson"></param>
|
||||
//[HttpPost]
|
||||
//[AllowAnonymous]
|
||||
//public async void DrawingImgAndUploadAsync(string info, int[][] detectRegionJson)
|
||||
//{
|
||||
// await _app.DrawingImgAndUpload(info, detectRegionJson);
|
||||
|
||||
}
|
||||
//}
|
||||
/// <summary>
|
||||
/// 测试插入数据
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ namespace OpenAuth.WebApi.Model.RabbitMQService
|
|||
|
||||
var body = ea.Body.ToArray();
|
||||
var message = Encoding.UTF8.GetString(body);
|
||||
Console.WriteLine($"接收数据[processing_event]: {message}");
|
||||
//Console.WriteLine($"接收数据[processing_event]: {message}");
|
||||
// Exchange 来做不同处理
|
||||
switch (ea.Exchange)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue