Fix path x invio file su share

This commit is contained in:
Samuele Locatelli
2022-02-04 13:34:44 +01:00
parent 9f9537970c
commit 774117c3ce
7 changed files with 31 additions and 17 deletions
+21 -11
View File
@@ -9,6 +9,7 @@ using LiMan.DB.DBModels;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
namespace LiMan.APi.Controllers
@@ -22,6 +23,7 @@ namespace LiMan.APi.Controllers
{
private readonly IWebHostEnvironment env;
private readonly ILogger<FilesaveController> logger;
private static IConfiguration _configuration;
/// <summary>
/// Dataservice x accesso DB
@@ -31,10 +33,14 @@ namespace LiMan.APi.Controllers
/// <summary>
/// Init generico
/// </summary>
/// <param name="configuration"></param>
/// <param name="DataService"></param>
public FilesaveController(ApiDataService DataService, IWebHostEnvironment env, ILogger<FilesaveController> logger)
/// <param name="env"></param>
/// <param name="logger"></param>
public FilesaveController(IConfiguration configuration, ApiDataService DataService, IWebHostEnvironment env, ILogger<FilesaveController> logger)
{
dataService = DataService;
_configuration = configuration;
this.env = env;
this.logger = logger;
logger.LogInformation("Avviata classe FilesaveController");
@@ -50,10 +56,10 @@ namespace LiMan.APi.Controllers
[HttpPost("single")]
public async Task<ActionResult<UploadResult>> PostSingleFile([FromForm] int ticketId, [FromForm] IFormFile file)
{
// max 20 mb
long maxFileSize = 1024 * 1024 * 20;
// max 200 mb
long maxFileSize = 1024 * 1024 * 200;
string ticketDir = $"T{ticketId:000000000}";
var resourcePath = new Uri($"{Request.Scheme}://{Request.Host}/api/filesave/{ticketDir}");
var resourcePath = new Uri($"{Request.Scheme}://{Request.Host}/api/filesave/list/{ticketId}");
List<UploadResult> uploadResults = new();
string fileDir = env.ContentRootPath;
string relDir = env.EnvironmentName;
@@ -80,9 +86,13 @@ namespace LiMan.APi.Controllers
{
DateTime oggi = DateTime.Today;
trustedFileNameForFileStorage = Path.GetRandomFileName();
#if false
relDir = Path.Combine(env.EnvironmentName, "unsafe_uploads", ticketDir);
fileDir = Path.Combine(env.ContentRootPath, relDir);
//string fileDir = Path.Combine(env.ContentRootPath, env.EnvironmentName, "unsafe_uploads", $"{oggi:yyyy}", $"{oggi:MM}", $"{oggi:dd}");
//string fileDir = Path.Combine(env.ContentRootPath, env.EnvironmentName, "unsafe_uploads", $"{oggi:yyyy}", $"{oggi:MM}", $"{oggi:dd}");
#endif
relDir = _configuration["FileShare"];
fileDir = Path.Combine(relDir, ticketDir);
if (!Directory.Exists(fileDir))
{
Directory.CreateDirectory(fileDir);
@@ -119,13 +129,13 @@ namespace LiMan.APi.Controllers
[HttpPost()]
public async Task<ActionResult<IList<UploadResult>>> PostFiles([FromForm] int ticketId, [FromForm] IEnumerable<IFormFile> files)
{
// max 3 files
var maxAllowedFiles = 3;
// max 20 mb
long maxFileSize = 1024 * 1024 * 20;
// max 5 files
var maxAllowedFiles = 10;
// max 50 mb
long maxFileSize = 1024 * 1024 * 50;
var filesProcessed = 0;
string ticketDir = $"T{ticketId:000000000}";
var resourcePath = new Uri($"{Request.Scheme}://{Request.Host}/api/filesave/{ticketDir}");
var resourcePath = new Uri($"{Request.Scheme}://{Request.Host}/api/filesave/list/{ticketId}");
List<UploadResult> uploadResults = new();
string fileDir = env.ContentRootPath;
string relDir = env.EnvironmentName;
@@ -210,7 +220,7 @@ namespace LiMan.APi.Controllers
{
// cerco i files dato ticket
result = await dataService.FileGetFilt(id);
//await dataService.recordCall(CurrRequest.CodInst, CurrRequest.CodApp, $"POST:api/files/list:{id}");
await dataService.recordCall(CurrRequest.CodInst, CurrRequest.CodApp, $"POST:api/files/list:{id}");
}
return result;
}
+4 -1
View File
@@ -103,11 +103,14 @@
Dataservice x accesso DB
</summary>
</member>
<member name="M:LiMan.APi.Controllers.FilesaveController.#ctor(LiMan.APi.Data.ApiDataService,Microsoft.AspNetCore.Hosting.IWebHostEnvironment,Microsoft.Extensions.Logging.ILogger{LiMan.APi.Controllers.FilesaveController})">
<member name="M:LiMan.APi.Controllers.FilesaveController.#ctor(Microsoft.Extensions.Configuration.IConfiguration,LiMan.APi.Data.ApiDataService,Microsoft.AspNetCore.Hosting.IWebHostEnvironment,Microsoft.Extensions.Logging.ILogger{LiMan.APi.Controllers.FilesaveController})">
<summary>
Init generico
</summary>
<param name="configuration"></param>
<param name="DataService"></param>
<param name="env"></param>
<param name="logger"></param>
</member>
<member name="M:LiMan.APi.Controllers.FilesaveController.PostSingleFile(System.Int32,Microsoft.AspNetCore.Http.IFormFile)">
<summary>
+2 -1
View File
@@ -41,5 +41,6 @@
}
],
"Database": 14
}
},
"FileShare": "\\\\stor01\\TEAM DRIVES\\40_FileUpload\\unsafe_uploads"
}
+1 -1
View File
@@ -2,7 +2,7 @@
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<Version>1.1.2202.0409</Version>
<Version>1.1.2202.0413</Version>
<RootNamespace>LiMan.UI</RootNamespace>
<AssemblyName>LiMan.UI</AssemblyName>
</PropertyGroup>
+1 -1
View File
@@ -1,6 +1,6 @@
<body>
<i>License Manager</i>
<h4>Versione: 1.1.2202.0409</h4>
<h4>Versione: 1.1.2202.0413</h4>
<br />
Note di rilascio:
<ul>
+1 -1
View File
@@ -1 +1 @@
1.1.2202.0409
1.1.2202.0413
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<item>
<version>1.1.2202.0409</version>
<version>1.1.2202.0413</version>
<url>https://nexus.steamware.net/repository/SWS/LiMan/stable/LAST/LiMan.UI.zip</url>
<changelog>https://nexus.steamware.net/repository/SWS/LiMan/stable/LAST/ChangeLog.html</changelog>
<mandatory>false</mandatory>