|
@@ -1,6 +1,7 @@
|
|
|
using System;
|
|
|
using Newtonsoft.Json;
|
|
|
using System.Globalization;
|
|
|
+using WingInterfaceLibrary.Enum;
|
|
|
|
|
|
namespace WingDeviceService.Common
|
|
|
{
|
|
@@ -179,6 +180,7 @@ namespace WingDeviceService.Common
|
|
|
return unixTime;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
@@ -192,16 +194,16 @@ namespace WingDeviceService.Common
|
|
|
return fileToken;
|
|
|
}
|
|
|
var fileName = "";
|
|
|
- if (url.Contains("http://"))
|
|
|
+ if (url.Contains("http://") || url.Contains("https://"))
|
|
|
{
|
|
|
-
|
|
|
- int lastIndex = url.LastIndexOf('/');
|
|
|
- fileName = url.Substring(lastIndex + 1);
|
|
|
+ fileToken = TransferUrlToToken(url);
|
|
|
+ return fileToken;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
fileName = url;
|
|
|
}
|
|
|
+
|
|
|
if (string.IsNullOrEmpty(fileName))
|
|
|
{
|
|
|
return fileToken;
|
|
@@ -234,5 +236,163 @@ namespace WingDeviceService.Common
|
|
|
}
|
|
|
return fileToken;
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ private static string TransferUrlToToken(string url)
|
|
|
+ {
|
|
|
+
|
|
|
+ var fileName = "";
|
|
|
+ var newUrl = url.Replace("http://", "").Replace("https://", "");
|
|
|
+ var urlArray = newUrl.Split('/');
|
|
|
+ if (urlArray.Length > 2)
|
|
|
+ {
|
|
|
+ var secondDomain = urlArray[1];
|
|
|
+ var newFileName = urlArray[2];
|
|
|
+ try
|
|
|
+ {
|
|
|
+
|
|
|
+ int lastIndex = newFileName.LastIndexOf('.');
|
|
|
+ var fileExtend = newFileName.Substring(lastIndex + 1);
|
|
|
+ var fileTypeEnum = (WingInterfaceLibrary.Enum.UploadFileTypeEnum)Enum.Parse(typeof(WingInterfaceLibrary.Enum.UploadFileTypeEnum), fileExtend.ToUpper());
|
|
|
+ var fileType = Enum.GetName(typeof(WingInterfaceLibrary.Enum.UploadFileTypeEnum), fileTypeEnum.GetHashCode());
|
|
|
+ if (!string.IsNullOrEmpty(fileType))
|
|
|
+ {
|
|
|
+ fileName = newFileName.Substring(0, lastIndex) + "_" + fileTypeEnum.GetHashCode();
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ fileName = "";
|
|
|
+ }
|
|
|
+
|
|
|
+ var secondDomainArray = secondDomain.Split('.');
|
|
|
+ if (secondDomainArray.Length > 2)
|
|
|
+ {
|
|
|
+ var serverType = (StorageServerEnum)Enum.Parse(typeof(StorageServerEnum), secondDomainArray[1].ToUpper());
|
|
|
+ var serverTypeStr = Enum.GetName(typeof(StorageServerEnum), serverType.GetHashCode());
|
|
|
+ if (!string.IsNullOrEmpty(serverTypeStr))
|
|
|
+ {
|
|
|
+ fileName += "_" + serverType.GetHashCode();
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ fileName += "_0";
|
|
|
+ }
|
|
|
+ var nodeType = (StorageNodeEnum)Enum.Parse(typeof(StorageNodeEnum), secondDomainArray[2].Replace("-", "_"));
|
|
|
+ var nodeTypeStr = Enum.GetName(typeof(StorageNodeEnum), nodeType.GetHashCode());
|
|
|
+ if (!string.IsNullOrEmpty(nodeTypeStr))
|
|
|
+ {
|
|
|
+ fileName += "_" + nodeType.GetHashCode();
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ fileName += "_0";
|
|
|
+ }
|
|
|
+ int bucketValue = (int)GetStorageBucketType(secondDomainArray[0].Replace("-", "_"));
|
|
|
+ fileName += "_" + bucketValue;
|
|
|
+ }
|
|
|
+ else if (secondDomainArray.Length > 1)
|
|
|
+ {
|
|
|
+ var serverType = (StorageServerEnum)Enum.Parse(typeof(StorageServerEnum), secondDomainArray[0].ToUpper());
|
|
|
+ var serverTypeStr = Enum.GetName(typeof(StorageServerEnum), serverType.GetHashCode());
|
|
|
+ if (!string.IsNullOrEmpty(serverTypeStr))
|
|
|
+ {
|
|
|
+ fileName += "_" + serverType.GetHashCode();
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ fileName += "_0";
|
|
|
+ }
|
|
|
+ var nodeType = (StorageNodeEnum)Enum.Parse(typeof(StorageNodeEnum), secondDomainArray[1].Replace("-", "_"));
|
|
|
+ var nodeTypeStr = Enum.GetName(typeof(StorageNodeEnum), nodeType.GetHashCode());
|
|
|
+ if (!string.IsNullOrEmpty(nodeTypeStr))
|
|
|
+ {
|
|
|
+ fileName += "_" + nodeType.GetHashCode();
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ fileName += "_0";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else if (secondDomainArray.Length > 0)
|
|
|
+ {
|
|
|
+ var serverType = (StorageServerEnum)Enum.Parse(typeof(StorageServerEnum), secondDomainArray[0].ToUpper());
|
|
|
+ var serverTypeStr = Enum.GetName(typeof(StorageServerEnum), serverType.GetHashCode());
|
|
|
+ if (!string.IsNullOrEmpty(serverTypeStr))
|
|
|
+ {
|
|
|
+ fileName += "_" + serverType.GetHashCode();
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ fileName += "_0";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ fileName = "";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return fileName;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ public static object GetStorageBucketType(string storageBucket, int category = 0)
|
|
|
+ {
|
|
|
+ if (category == 0)
|
|
|
+ {
|
|
|
+ int type;
|
|
|
+ switch (storageBucket)
|
|
|
+ {
|
|
|
+ case "Flyinsono_BJ_1300984704":
|
|
|
+ type = StorageBucketEnum.Flyinsono_BJ_1300984704.GetHashCode();
|
|
|
+ break;
|
|
|
+ case "Flyinsono_HK_1300984704":
|
|
|
+ type = StorageBucketEnum.Flyinsono_HK_1300984704.GetHashCode();
|
|
|
+ break;
|
|
|
+ case "Flyinsono_FRA_1300984704":
|
|
|
+ type = StorageBucketEnum.Flyinsono_FRA_1300984704.GetHashCode();
|
|
|
+ break;
|
|
|
+ case "Flyinsono_BOM_1300984704":
|
|
|
+ type = StorageBucketEnum.Flyinsono_BOM_1300984704.GetHashCode();
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ type = StorageBucketEnum.Flyinsono_BJ_1300984704.GetHashCode();
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return type;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ string type;
|
|
|
+ switch (storageBucket)
|
|
|
+ {
|
|
|
+ case "0":
|
|
|
+ type = Enum.GetName(typeof(StorageBucketEnum), StorageBucketEnum.Flyinsono_BJ_1300984704.GetHashCode());
|
|
|
+ break;
|
|
|
+ case "1":
|
|
|
+ type = Enum.GetName(typeof(StorageBucketEnum), StorageBucketEnum.Flyinsono_HK_1300984704.GetHashCode());
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ type = Enum.GetName(typeof(StorageBucketEnum), StorageBucketEnum.Flyinsono_FRA_1300984704.GetHashCode());
|
|
|
+ break;
|
|
|
+ case "3":
|
|
|
+ type = Enum.GetName(typeof(StorageBucketEnum), StorageBucketEnum.Flyinsono_BOM_1300984704.GetHashCode());
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ type = "Flyinsono_BJ_1300984704";
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return type;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
}
|