上传修改

feature-flyModify
lgd 4 months ago
parent feb3cd141d
commit 8e9f66a4ff

@ -17,6 +17,8 @@ using DocumentFormat.OpenXml.Math;
using static Microsoft.Extensions.Logging.EventSource.LoggingEventSource;
using DocumentFormat.OpenXml.Drawing.Charts;
using Org.BouncyCastle.Ocsp;
using System.Net.Http.Headers;
using DocumentFormat.OpenXml.Office2016.Drawing.ChartDrawing;
namespace OpenAuth.App.ServiceApp.DroneDocking
@ -828,13 +830,62 @@ namespace OpenAuth.App.ServiceApp.DroneDocking
return Response;
}
/// <summary>
/// 无人机状态获取
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
public async Task<ResData> getResult(string taskid)
public Response<string> UploadFile(AirPortUploadDbReq req)
{
Response<string> Response = new Response<string>();
var filePath = req.filePath;
var uploadUrl = req.fileUrl;
var fileName = Path.GetFileName(filePath);
byte[] fileBuffer = null;
HttpClient client = null;
MultipartFormDataContent formData = null;
try
{
//文件过大,建议使用 大文件上传接口,分段读取,进行上传
fileBuffer = File.ReadAllBytes(filePath);
client = new HttpClient();
client.Timeout = new TimeSpan(0, 0, 0, 5);
formData = new MultipartFormDataContent();
var fileContent = new ByteArrayContent(fileBuffer);
fileContent.Headers.ContentDisposition = new
ContentDispositionHeaderValue("attachment");
fileContent.Headers.ContentDisposition.FileName = fileName;
//注意:务必 根据 文件扩展名,这里指定 ContentType
fileContent.Headers.ContentType = new
MediaTypeHeaderValue(fileName);
formData.Add(fileContent);
var request = new HttpRequestMessage
{
//注意:这里是 PUT
Method = HttpMethod.Put,
RequestUri = new Uri(uploadUrl),
Content = formData
};
var result = client.SendAsync(request).Result.Content.ReadAsStringAsync().Result;
if (string.IsNullOrWhiteSpace(result))
{
Response.Result = result;
}
}
catch (Exception ex)
{
Response.Result = "上传失败";
}
finally
{
fileBuffer = null;
formData?.Dispose();
client?.Dispose();
}
return Response;
}
/// <summary>
/// 无人机状态获取
/// </summary>
/// <param name="req"></param>
/// <returns></returns>
public async Task<ResData> getResult(string taskid)
{
ResData Response = new ResData();
using (var uow = base.UnitWork.CreateContext())

@ -6,15 +6,28 @@ using System.Threading.Tasks;
namespace OpenAuth.App.ServiceApp.DroneDocking.Request
{
public class AirPortUploadReq
public class AirPortStatusApply
{
public string code { get; set; }
public string deviceid { get; set; }
public string regioncode { get; set; }
public string onlinestate { get; set; }
public List<string> filenames { get; set; }
public double longitude { get; set; }
public double latitude { get; set; }
public double height { get; set; }
public double elevation { get; set; }
public double gimbal_pitch { get; set; }
public double gimbal_ya { get; set; }
public int battery_capacity_percent { get; set; }
public int gps_state { get; set; }
}
}

@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OpenAuth.App.ServiceApp.DroneDocking.Request
{
public class AirPortUploadDbReq
{
public string filePath { get; set; }
public string fileUrl { get; set; }
}
}

@ -6,28 +6,15 @@ using System.Threading.Tasks;
namespace OpenAuth.App.ServiceApp.DroneDocking.Request
{
public class AirPortStatusApply
public class AirPortUploadReq
{
public string deviceid { get; set; }
public string code { get; set; }
public string onlinestate { get; set; }
public string regioncode { get; set; }
public double longitude { get; set; }
public double latitude { get; set; }
public double height { get; set; }
public double elevation { get; set; }
public double gimbal_pitch { get; set; }
public double gimbal_ya { get; set; }
public int battery_capacity_percent { get; set; }
public int gps_state { get; set; }
public List<string> filenames { get; set; }
}
}

@ -8,6 +8,7 @@ using OpenAuth.App.ServiceApp.DroneDocking.Request;
using OpenAuth.App.ServiceApp.DroneDocking.Response;
using OpenAuth.App.ServiceApp.Response;
using OpenAuth.Repository.Domain;
using Org.BouncyCastle.Ocsp;
using System.Text;
namespace OpenAuth.WebApi.Controllers.ServiceControllers
@ -472,7 +473,6 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
/// 获取临时上传地址
/// </summary>
/// <returns></returns>
[Route("/zhcfzx/DataExchange/getUploadFilePath")]
[HttpPost]
[AllowAnonymous]
public async Task<Response<string>> getUploadFilePath([FromBody] AirPortUploadReq req)
@ -490,6 +490,22 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
return result;
}
[HttpPost]
[AllowAnonymous]
public Response<string> UploadFile(AirPortUploadDbReq req) {
var result = new Response<string>();
try
{
result = _app.UploadFile(req);
}
catch (Exception ex)
{
result.Code = 500;
result.Message = ex.Message;
}
return result;
}
[HttpGet]
[AllowAnonymous]
[Route("/zhcfzx/droneAirport/getResult")]

Loading…
Cancel
Save