|
@@ -237,16 +237,16 @@ namespace TEAMModelOS.Controllers.Core
|
|
|
|
|
|
request.TryGetProperty("containerName", out JsonElement containerName);
|
|
|
var name =containerName.GetString();
|
|
|
- RedisValue value = default;
|
|
|
- value = _azureRedis.GetRedisClient(8).HashGet($"Blob:Record", name);
|
|
|
- if (value != default && !value.IsNullOrEmpty)
|
|
|
- {
|
|
|
- JsonElement record = value.ToString().ToObject<JsonElement>();
|
|
|
- if (record.TryGetInt64(out long blobsize))
|
|
|
- {
|
|
|
- return Ok(new { size= blobsize });
|
|
|
- }
|
|
|
- }
|
|
|
+ //RedisValue value = default;
|
|
|
+ //value = _azureRedis.GetRedisClient(8).HashGet($"Blob:Record", name);
|
|
|
+ //if (value != default && !value.IsNullOrEmpty)
|
|
|
+ //{
|
|
|
+ // JsonElement record = value.ToString().ToObject<JsonElement>();
|
|
|
+ // if (record.TryGetInt64(out long blobsize))
|
|
|
+ // {
|
|
|
+ // return Ok(new { size= blobsize });
|
|
|
+ // }
|
|
|
+ //}
|
|
|
var client = _azureStorage.GetBlobContainerClient(name);
|
|
|
var size = await client.GetBlobsSize();
|
|
|
await _azureRedis.GetRedisClient(8).HashSetAsync($"Blob:Record", name, size);
|
|
@@ -254,7 +254,7 @@ namespace TEAMModelOS.Controllers.Core
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 测试单个文本内容的上传
|
|
|
- /// {"containerName":"hbcn","updateSize":5000,"deleteurl":[]}
|
|
|
+ /// {"containerName":"hbcn","uploadSize":5000,"optUrls":[]}
|
|
|
/// </summary>
|
|
|
/// <param name="azureBlobSASDto"></param>
|
|
|
/// <returns></returns>
|
|
@@ -262,27 +262,29 @@ namespace TEAMModelOS.Controllers.Core
|
|
|
public async Task<ActionResult> updateBlobsSize(JsonElement request)
|
|
|
{
|
|
|
request.TryGetProperty("containerName", out JsonElement containerName);
|
|
|
+ request.TryGetProperty("optUrls", out JsonElement optUrls);
|
|
|
+ request.TryGetProperty("uploadSize", out JsonElement uploadSize);
|
|
|
var name = containerName.GetString();
|
|
|
+ uploadSize.TryGetInt64(out long size);
|
|
|
+ var urls = optUrls.ToObject<List<string>>();
|
|
|
var client = _azureStorage.GetBlobContainerClient(name);
|
|
|
- var size = await client.GetBlobsSize();
|
|
|
- return Ok(new { size });
|
|
|
- }
|
|
|
- /// <summary>
|
|
|
- /// 测试单个文本内容的上传
|
|
|
- /// {"containerName":"hbcn","updateSize":5000,"deleteurl":[]}
|
|
|
- /// </summary>
|
|
|
- /// <param name="azureBlobSASDto"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [HttpPost("get-blobUrlsize")]
|
|
|
- public async Task<ActionResult> getBlobUrlsize(JsonElement request)
|
|
|
- {
|
|
|
- request.TryGetProperty("containerName", out JsonElement containerName);
|
|
|
- request.TryGetProperty("deleteUrl", out JsonElement deleteUrl);
|
|
|
- var name = containerName.GetString();
|
|
|
- var urls = deleteUrl.ToObject<List<string>>();
|
|
|
- var client = _azureStorage.GetBlobContainerClient(name);
|
|
|
- var size = await client.GetBlobsSize(urls);
|
|
|
- return Ok(new { size });
|
|
|
+ var urlsSize = await client.GetBlobsSize(urls);
|
|
|
+ long? disSize= size - urlsSize;
|
|
|
+ RedisValue value = default;
|
|
|
+ long? useSize = 0;
|
|
|
+ long blobSize = 0;
|
|
|
+ value = _azureRedis.GetRedisClient(8).HashGet($"Blob:Record", name);
|
|
|
+ if (value != default && !value.IsNullOrEmpty)
|
|
|
+ {
|
|
|
+ JsonElement record = value.ToString().ToObject<JsonElement>();
|
|
|
+ if (record.TryGetInt64(out blobSize))
|
|
|
+ {
|
|
|
+ useSize = blobSize;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ useSize = useSize + disSize;
|
|
|
+ await _azureRedis.GetRedisClient(8).HashSetAsync($"Blob:Record", name, useSize);
|
|
|
+ return Ok(new { disSize, urlsSize , useSize , blobSize });
|
|
|
}
|
|
|
|
|
|
private static (string, string) BlobUrlString(string sasUrl)
|