Files
zszq-trs/Framework/YLErp.Core/Helpers/DataHelper.cs
T
2024-05-09 14:06:26 +08:00

73 lines
2.2 KiB
C#

namespace YLErp.Helpers
{
/// <summary>
///
/// </summary>
public static class DataHelper
{
/// <summary>
/// 将数字转换成字母序号
/// </summary>
public static string ConvertToLetter(this int index)
{
const byte suffix_Start = 65;
const byte suffix_Range = 90 - suffix_Start + 1;
var result = "";
var count = (index / suffix_Range) - 1;
if (count >= 0)
{ result = ConvertToLetter(count); }
result += ((char)(suffix_Start + (index % suffix_Range))).ToString();
return result;
}
/// <summary>
/// 生成验证码
/// </summary>
public static string GenerateCheckCode(int codeCount)
{
var rep = 0;
var str = string.Empty;
var num2 = DateTime.Now.Ticks + rep;
rep++;
var random = new Random(((int)(((ulong)num2) & 0xffffffffL)) | ((int)(num2 >> rep)));
for (var i = 0; i < codeCount; i++)
{
char ch;
var num = random.Next();
if ((num % 2) == 0)
{
ch = (char)(0x30 + ((ushort)(num % 10)));
}
else
{
ch = (char)(0x41 + ((ushort)(num % 0x1a)));
}
str += ch.ToString();
}
return str;
}
/// <summary>
/// 密码加密
/// </summary>
public static string EncryptPassword(string salt, string password)
{
var sha = System.Security.Cryptography.SHA1.Create();
var byteResult = sha.ComputeHash(System.Text.Encoding.UTF8.GetBytes(salt + password));
return BitConverter.ToString(byteResult);
}
public static T DeepCopyObject<T>(T orginObj)
{
if (orginObj == null)
{
return default(T);
}
var orginObjJson = JsonHelper.Serialize(orginObj);
var newObj = JsonHelper.Parse<T>(orginObjJson);
return newObj;
}
}
}