You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

90 lines
3.1 KiB

using System;
namespace NFine.Code
{
public class OperatorProvider
{
public static OperatorProvider Provider
{
get { return new OperatorProvider(); }
}
private string LoginUserKey = "nfine_loginuserkey_2016";
private string LoginProvider = Configs.GetValue("LoginProvider");
public OperatorModel GetCurrent()
{
OperatorModel operatorModel;
if (LoginProvider == "Cookie")
{
operatorModel = DESEncrypt.Decrypt(WebHelper.GetCookie(LoginUserKey).ToString()).ToObject<OperatorModel>();
}
else
{
if (WebHelper.GetCookie(LoginUserKey) == null)
{
operatorModel = new OperatorModel();
}
else
{
operatorModel = DESEncrypt.Decrypt(WebHelper.GetSession(LoginUserKey).ToString()).ToObject<OperatorModel>();
}
}
return operatorModel ?? new OperatorModel();
}
public void AddCurrent(OperatorModel operatorModel)
{
if (LoginProvider == "Cookie")
{
WebHelper.WriteCookie(LoginUserKey, DESEncrypt.Encrypt(operatorModel.ToJson()), 500000);
}
else
{
WebHelper.WriteSession(LoginUserKey, DESEncrypt.Encrypt(operatorModel.ToJson()));
}
WebHelper.WriteCookie("nfine_mac", Md5.md5(Net.GetMacByNetworkInterface().ToJson(), 32));
WebHelper.WriteCookie("nfine_licence", Licence.GetLicence());
}
public void RemoveCurrent()
{
if (LoginProvider == "Cookie")
{
WebHelper.RemoveCookie(LoginUserKey.Trim());
}
else
{
WebHelper.RemoveSession(LoginUserKey.Trim());
}
}
public int IsTwoCurrent(OperatorModel operatorModel)
{
int isLogin = 0;
OperatorModel operatorModels = new OperatorModel();
operatorModels = DESEncrypt.Decrypt(WebHelper.GetCookie(LoginUserKey).ToString()).ToObject<OperatorModel>();
if (LoginProvider == "Cookie")
{
if (operatorModels == null)
{
isLogin = 0;
return isLogin;
}
else if (operatorModels.UserId == operatorModel.UserId)
{
isLogin = 0;
return isLogin;
}
else
{
isLogin = 1;
return isLogin;
}
}
return isLogin;
//else
//{
// WebHelper.WriteSession(LoginUserKey, DESEncrypt.Encrypt(operatorModel.ToJson()));
//}
//WebHelper.WriteCookie("nfine_mac", Md5.md5(Net.GetMacByNetworkInterface().ToJson(), 32));
//WebHelper.WriteCookie("nfine_licence", Licence.GetLicence());
}
}
}