public override bool VerifySignature(ActionParameter para) { Merchant.OAuthApp app = Merchant.OAuthApp.GetOAuthApp(para.MerchantNo); if (app == null) { return(false); } if (!app.IsValid()) { return(false); } string secretKey = app.Secret_Key; //签名数据 string signValue = para.Data + secretKey; //签名结果 string signResult = MD5Provider.Encode(signValue); //验证签名 if (!signResult.Equals(para.Sign, StringComparison.CurrentCultureIgnoreCase)) { Log.Info("签名错误:"); Log.Info("签名数据:" + signValue); Log.Info("签名结果:" + signResult); return(false); } return(true); }
//先核对用户信息才允许改变 public bool FindPassWord(UserData data, string passw, out string msg) { msg = ""; if ("".Equals(data.Idcard)) { msg = "未输入身份证号码!"; } else if ("".Equals(data.Username)) { msg = "未输入用户名!"; } try { if (data.Idcard.Equals(iUserData.findIdCardByName(data.Username))) { User user = new User(); user.UserName = data.Username; user.Password = MD5Provider.Hash(passw); if (iUser.Update(user)) { msg = "更新成功!!"; return(true); } } else { msg = "用户名与身份证不匹配!"; } } catch (Exception exp) { msg = exp.Message; } return(false); }
private void DoLogin(string userName, string password) { // btnOk.Enabled = false; lblMsg.Text = "登录中"; _tickTimer = new System.Timers.Timer(1 * 200); _tickTimer.Elapsed += new System.Timers.ElapsedEventHandler(delegate(object source, System.Timers.ElapsedEventArgs ee) { BeginInvoke(new Action(() => { if (lblMsg.Text.IndexOf(".") == -1) { lblMsg.Text += "."; } else if (lblMsg.Text.IndexOf(".") + 5 == lblMsg.Text.Length) { lblMsg.Text = lblMsg.Text.Substring(0, lblMsg.Text.Length - 5); } else { lblMsg.Text += "."; } })); }); //到达时间的时候执行事件; _tickTimer.AutoReset = true; //设置是执行一次(false)还是一直执行(true); _tickTimer.Enabled = true; //是否执行System.Timers.Timer.Elapsed事件; HttpAdapter.postAsyncAsJSON(authEndPoint + "/AuthenticateMerchant", new AuthMerchantParam { StationCode = userName, PasswordHash = MD5Provider.Generate(password) }.ToStringObjectDictionary(), new { ApplicationId = Common.APPLICATION_ID }.ToStringObjectDictionary(), (ret, res) => { //MessageBoxAdapter.ShowDebug(_MonitorId.ToString()); //dynamic ret = new { Error = "", Success = false }; //ret = JsonConvert.DeserializeObject(result); MerchantVar.Load(userName, ret.ret); if ((bool)ret.Success) { INIAdapter.WriteValue(Common.INI_SECTION_LOCAL, Common.INI_KEY_USER_NAME_SINCE_LAST, userName, Common.INI_FILE_PATH); this.DialogResult = DialogResult.OK; this.Close(); } else { lblMsg.Text = ret.ErrorMessage; this.UIInvoke(() => { btnOk.Enabled = true; }); } _tickTimer.Enabled = false; _tickTimer = null; }); }
protected void OKButton_Click(object sender, EventArgs e) { string userName = AdminNameTextBox.Text.Trim(); string userPassword = PasswordTextBox.Text.Trim(); string rightPassword = ""; if (string.IsNullOrEmpty(userName) || string.IsNullOrEmpty(userPassword)) { return; } string strConnection = ConfigurationManager.ConnectionStrings["AccessConnectionString"].ConnectionString; OleDbConnection connection = new OleDbConnection(strConnection); using (connection) { connection.Open(); string strSQL = "SELECT YHPassword FROM YHTable WHERE YHName = @YHName"; OleDbCommand command = new OleDbCommand(strSQL, connection); command.Parameters.AddWithValue("@YHName", userName); OleDbDataAdapter adapter = new OleDbDataAdapter(command); DataTable dt = new DataTable(); adapter.Fill(dt); if (dt.Rows.Count == 1) { rightPassword = dt.Rows[0]["YHPassword"].ToString(); if (rightPassword == MD5Provider.Hash(userPassword)) { strSQL = "SELECT lastlogintime FROM YHTable WHERE YHName=@YHName"; command.Parameters.Clear(); command.CommandText = strSQL; command.Parameters.AddWithValue("@YHName", userName); //OleDbDataAdapter adapter = new OleDbDataAdapter(command); adapter.SelectCommand = command; dt.Clear(); adapter.Fill(dt); string strLastLoginTime = dt.Rows[0]["lastlogintime"].ToString(); strSQL = "UPDATE YHTable SET lastlogintime = @lastlogintime WHERE YHName=@YHName"; command.Parameters.Clear(); command.CommandText = strSQL; command.Parameters.AddWithValue("@lastlogintime", DateTime.Now.ToString()); command.Parameters.AddWithValue("@YHName", userName); command.ExecuteNonQuery(); Session["AdminName"] = userName; Session["LastLoginTime"] = strLastLoginTime; Response.Redirect("AdminPages/AdminDefault.aspx", false); return; } } } JScript.Alert("登陆出错!", this.Page); }
protected void ModifyMyPassword_Click(object sender, EventArgs e) { if (OldPsd_TextBox.Text == "" || NewPsd_TextBox.Text == "") { JScript.Alert("输入不完整,请检查后再提交。", this); return; } if (NewPsd_TextBox.Text != NewPsdRe_TextBox.Text) { JScript.Alert("两次密码输入不同,请重新输入。", this); return; } if (NewPsd_TextBox.Text.Length < 6) { JScript.Alert("密码至少应为6个字符。", this); return; } string md5Password = MD5Provider.Hash(OldPsd_TextBox.Text); string strConnection = ConfigurationManager.ConnectionStrings["AccessConnectionString"].ConnectionString; OleDbConnection objConnection = new OleDbConnection(strConnection); objConnection.Open(); using (objConnection) { string strSQL = "SELECT Top 1 * FROM YHTable WHERE YHName = @userName"; OleDbCommand command = new OleDbCommand(strSQL, objConnection); command.Parameters.Add("@userName", OleDbType.VarChar).Value = Session["userName"].ToString(); OleDbDataAdapter adapter = new OleDbDataAdapter(command); DataTable dt = new DataTable(); adapter.Fill(dt); if (dt.Rows.Count == 1) { if (dt.Rows[0]["YHPassword"].ToString() == md5Password) { strSQL = "UPDATE YHTable SET YHPassword=@psw WHERE 编号=" + dt.Rows[0]["编号"].ToString(); command = new OleDbCommand(strSQL, objConnection); command.Parameters.Add("@psw", OleDbType.VarChar).Value = MD5Provider.Hash(NewPsd_TextBox.Text); command.ExecuteNonQuery(); MyBasePage.writeLog(Session["userName"].ToString(), "修改密码成功"); JScript.Alert("密码修改成功", this); } else { MyBasePage.writeLog(Session["userName"].ToString(), "修改密码错误:旧密码输入错误"); JScript.Alert("密码修改失败:旧密码输入错误", this); } } else { MyBasePage.writeLog(Session["userName"].ToString(), "修改密码错误:无法在数据库中检索到用户原始信息"); MyBasePage.logout(this); JScript.AlertAndRedirect("系统出现错误,请重新登录后再试", "../Deafult.aspx", this); } } }
public void MD5NormalTest() { IAsymmetricCrypto md5 = new MD5Provider(); string t = "Yes"; string s = md5.ComputeHash("Yes"); Assert.IsTrue(s != t); md5.Dispose(); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { } if (Request.QueryString["wantmd5"] != null) { wantmd5.Visible = true; wantmd5.Text = "MD5:" + MD5Provider.Hash(Request.QueryString["wantmd5"].ToString()); } }
public UserEntity CheckUserInfo(string userName, string pwd) { try { if (DBConnection()) { string userSql = "select * from users where user_name=@user_name and password=@pwd and is_validation=1"; adapter = new SqlDataAdapter(userSql, conn); adapter.SelectCommand.Parameters.Add(new SqlParameter("@user_name", SqlDbType.VarChar) { Value = userName }); adapter.SelectCommand.Parameters.Add(new SqlParameter("@pwd", SqlDbType.VarChar) { Value = MD5Provider.GetMD5String(pwd + "@" + userName) }); DataTable table = new DataTable(); int count = adapter.Fill(table); if (count <= 0) { throw new Exception("用户名或密码不正确!"); } DataRow dr = table.Rows[0]; if (dr.Field <Int32>("is_can_login") == 0) { throw new Exception("当前用户没有权限使用此平台!" + ""); } UserEntity userInfo = new UserEntity(); userInfo.UserName = dr.Field <string>("user_name"); userInfo.RealName = dr.Field <string>("real_name"); userInfo.Password = dr.Field <string>("password"); userInfo.Avatar = dr.Field <string>("avatar"); userInfo.Gender = dr.Field <Int32>("gender"); return(userInfo); } } catch (Exception ex) { throw ex; } finally { this.Dispose(); } return(null); }
public static void LogonUser(string userCode, string password, LogonSuccessDelegate <User> onSuccess, LogonFailureDelegate onFailure, string connectstring_Or_Dbname) { IList <User> users = BuilderFactory.DefaultBulder(connectstring_Or_Dbname).List <User>(new User { UserCode = TypeConverter.ChangeString(userCode) }); if (users.Count > 0) { string passHash = password ?? ""; if (passHash.Length != 32) { passHash = MD5Provider.Generate(password); } var query = users.Where(item => TypeConverter.ChangeString(item.PasswordHash) == passHash); if (query.Count() > 0) { User user = query.First(); if (user.StopFlag == 1) { if (onFailure != null) { onFailure(new LogonFailureEventArgs("此帐号已停用,请联系管理员")); } } else { if (onSuccess != null) { onSuccess(new LogonSuccessEventArgs <User>(user, HttpContext.Current.Request.UserHostAddress)); } } } else { if (onFailure != null) { onFailure(new LogonFailureEventArgs("您输入的密码有误,请重新输入")); } } } else { if (onFailure != null) { onFailure(new LogonFailureEventArgs(string.Format("此帐号【{0}】不存在", userCode))); } } }
public bool Load(string FileName, string Password) { TaskBase tmpBase = SerializationProvider.LoadObjectFromFile(FileName) as TaskBase; if (tmpBase == null || MD5Provider.GetHash(Password) != tmpBase.passHash) { return(false); } this.FileName = FileName; passHash = tmpBase.passHash; MetaData = tmpBase.MetaData; Tasks = tmpBase.Tasks; return(true); }
public JsonResult CheckLogin(sys_user model) { bool Result = false; var UserInfo = userbll.GetUserInfo(model.Account, MD5Provider.getStringMd5Hash(model.PassWord)); if (UserInfo != null) { Result = true; #region 保存登陆信息 var filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "appsettings.json"); string result = string.Empty; using (var streamReader = System.IO.File.OpenText(filePath)) { result = streamReader.ReadToEnd(); } JObject jobject = (JObject)JsonConvert.DeserializeObject(result.Replace("\r\n", "")); appsettings = JsonConvert.DeserializeObject <AppSettings>(jobject["AppSettings"].ToString()); if (Convert.ToBoolean(appsettings.Redis.IsEnable)) { //redis方式 RedisHelper rh = new RedisHelper(appsettings); UserExtend ue = new UserExtend { KeyId = UserInfo.KeyId, Account = UserInfo.Account, FullName = UserInfo.FullName, HeadImg = UserInfo.HeadImg, WebLastTime = DateTime.Now }; rh.Set(UserInfo.KeyId, JsonConvert.SerializeObject(ue)); } else { //session方式 HttpContext.Session.SetString(ConstConfig.AdminSession, JsonConvert.SerializeObject(UserInfo)); } /****用cookie保存登录id,即使session丢失也不必重新登录****/ HttpContext.Response.Cookies.Append(ConstConfig.AdminCookie, UserInfo.KeyId, new CookieOptions { Expires = DateTime.Now.AddHours(5) }); //全局配置的静态类成员再赋值,保证配置文件被更改后立即登陆就不用重启才生效(折中办法) WebJsonConfig.JsonInfo = JsonConvert.SerializeObject(appsettings); #endregion } return(Json(new { Result = Result })); }
public JsonResult Create(sys_user model) { ExecuteResult Er = new ExecuteResult(); if (string.IsNullOrEmpty(model.KeyId)) { //验证是否有重复账号 int count = userbll.GetList <sys_user>(item => item.Account == model.Account && item.IsDeleted == false).Count(); if (count > 0) { Er.Result = false; Er.Message = "已存在相同账号"; } else { #region 新增 model.KeyId = Guid.NewGuid().ToString(); model.CreateDate = DateTime.Now; model.IsDeleted = false; model.PassWord = MD5Provider.getStringMd5Hash(model.PassWord); Er.Result = userbll.Insert <sys_user>(model) > 0; Er.Message = "新增成功"; #endregion } } else { //验证是否有重复账号 int count = userbll.GetList <sys_user>(item => item.Account == model.Account && item.KeyId != model.KeyId && item.IsDeleted == false).Count(); if (count > 0) { Er.Result = false; Er.Message = "已存在相同账号"; } else { #region 修改 var old = userbll.GetModelById <sys_user>(model.KeyId); model.CreateDate = old.CreateDate; model.IsDeleted = old.IsDeleted; model.PassWord = old.PassWord; Er.Result = userbll.Update <sys_user>(model) > 0; Er.Message = "更新成功"; #endregion } } return(Json(Er)); }
public async Task <KeyValuePair <IdentityResult, AspNetUsers> > CreateUserAsync(RegisterDTO model) { AspNetUsers aspNetUsers = new AspNetUsers { EmailConfirmed = false, PhoneNumberConfirmed = false, AccessFailedCount = 0, TwoFactorEnabled = false, Email = model.Email.Trim(), UserName = model.Email.Trim(), PhoneNumber = "180" + MD5Provider.Hash(model.Email.Trim()).ToString().Substring(0, 8) }; var result = await _userManager.CreateAsync(aspNetUsers, model.Password); return(new KeyValuePair <IdentityResult, AspNetUsers>(result, aspNetUsers)); }
public JsonResult UpdatePwd(string OldPwd, string NewPwd) { ExecuteResult Er = new ExecuteResult(); var model = userbll.GetModelById <sys_user>(base.SysUser.KeyId); if (model != null && model.PassWord == MD5Provider.getStringMd5Hash(OldPwd)) { model.PassWord = MD5Provider.getStringMd5Hash(NewPwd); Er.Result = userbll.Update <sys_user>(model) > 0; Er.Message = Er.Result ? "密码更新成功" : "密码更新失败"; } else { Er.Result = false; Er.Message = "您输入的旧密码与系统原密码不匹配"; } return(Json(Er)); }
public bool sendMessage(messageModel msgModel) { Dictionary <string, string> dict = new Dictionary <string, string>(); dict.Add("Title", msgModel.Title); dict.Add("Content", msgModel.msg); SendMessageModel model = new SendMessageModel(); model.TemplateNo = msgModel.TemplateNo; model.Receiver = msgModel.Receiver; model.Parameter = dict; model.SendTime = DateTime.Now; //组装JOSN 数据 List <SendMessageModel> list = new List <SendMessageModel>(); list.Add(model); //组装JOSN数据 var jsonModel = new { Title = msgModel.Title, Body = list, MerchaanNo = AppConfig.MessageMerchantNo, ClientSource = "PC", ClientSystem = "DM-web", Version = 1, TimeStamp = DateTime.Now }; string json = JsonProvider.ToJson(jsonModel); string sign = MD5Provider.Encode(json + AppConfig.MessageKey); var request = new Winner.Framework.Utils.Network.HttpRequestProvider(); request.SetUrl(AppConfig.MessageUrl)//请求接口地址 .AddParameter("Json", json) .AddParameter("Sign", sign); var jsonResult = request.POST(); if (!jsonResult.Success) { return(false); } return(true); }
public bool Login(string userName, string userPassword, out string msg) { msg = ""; if (userName == "" || userPassword == "") { msg = "用户名或密码不能为空!"; return(false); } bool ok = false; try { ok = iUser.Login(userName, MD5Provider.Hash(userPassword)); } catch (Exception exp) { msg = exp.Message; } return(ok); }
public override bool VerifySignature(ActionParameter para) { AppInfo app = AppInfo.Get(para.MerchantNo); if (app == null) { return(false); } string secret = app.Secret_Key; string encodeData = string.Concat(para.Data, secret); string hash = MD5Provider.Encode(encodeData); if (!hash.Equals(para.Sign, StringComparison.OrdinalIgnoreCase)) { Log.Debug("签名数据:{0}", encodeData); Log.Debug("本地哈希:{0}", hash); Log.Debug("远程哈希:{0}", para.Sign); return(false); } return(true); }
public bool Register(User user, UserData data, out string msg) { msg = ""; bool isok = false; if (!CheckUser(user, out msg)) { return(isok); } using (TransactionScope tsCope = new TransactionScope()) { try { user.Password = MD5Provider.Hash(user.Password); int id = iUser.AddUserAndRetId(user); msg = Convert.ToString(id); if (id != -1) { data.Uid = id; if (iUserData.addUserData(data)) { isok = true; } } } catch (Exception exp) { msg = exp.Message; return(false); } tsCope.Complete(); } return(isok); }
public bool CheckPassword(string password) { return(MD5Provider.GetHash(password) == passHash); }
protected void DoInsertButton_Click(object sender, EventArgs e) { /* * 1.检查输入是否合法(用户名必须输入,权限为1到5) * 2.检查是否有此用户名 * 3.执行添加 */ if (UserNameTextBox.Text == "") { UserNameTextBoxLabel.Text = "请输入用户名"; return; } else { UserNameTextBoxLabel.Text = ""; } if (PasswordTextBox.Text == "") { PasswordTextBoxLabel.Text = "请输入密码"; return; } else { PasswordTextBoxLabel.Text = ""; } int uAuth = 0; try { int.TryParse(AuthorityTextBox.Text, out uAuth); } catch { } if (uAuth == 0) { AuthorityTextBoxLabel.Text = "权限必须为大于等于1,小于等于5的数字"; return; } else { AuthorityTextBoxLabel.Text = ""; } string strConnection = ConfigurationManager.ConnectionStrings["AccessConnectionString"].ConnectionString; OleDbConnection objConnection = new OleDbConnection(strConnection); objConnection.Open(); using (objConnection) { string strSQL = "SELECT TOP 1 * FROM YHTable WHERE YHName=@userName"; OleDbCommand command = new OleDbCommand(strSQL, objConnection); command.Parameters.Add("@userName", OleDbType.VarChar).Value = UserNameTextBox.Text; OleDbDataAdapter adapter = new OleDbDataAdapter(command); DataTable dt = new DataTable(); adapter.Fill(dt); if (dt.Rows.Count >= 1) { UserNameTextBoxLabel.Text = "该用户已存在"; } else { strSQL = "INSERT INTO YHTable(YHName,YHPassword,YHAuthority) values (@userName,@userPassword,@userAuthority)"; command = new OleDbCommand(strSQL, objConnection); command.Parameters.Add("@userName", OleDbType.VarChar).Value = UserNameTextBox.Text; command.Parameters.Add("@userPassword", OleDbType.VarChar).Value = MD5Provider.Hash(PasswordTextBox.Text); command.Parameters.Add("@userAuthority", OleDbType.Numeric).Value = uAuth; if (command.ExecuteNonQuery() > 0) { MyBasePage.writeLog(Session["userName"].ToString(), "添加用户,账户: " + UserNameTextBox.Text + " 权限:" + uAuth.ToString()); JScript.AlertAndRedirect("用户已添加", "", this); } else { MyBasePage.writeLog(Session["userName"].ToString(), "添加用户时发生错误,返回受影响数据库条数为零。欲添加账户: " + UserNameTextBox.Text + " 权限:" + uAuth.ToString()); JScript.AlertAndRedirect("添加帐号时发生错误", "", this); } } } }
protected void DoModifyButton_Click(object sender, EventArgs e) { /* * 1.检查输入是否合法(用户名必须输入,权限为1到5) * 2.检查是否有此用户名 * 3.执行添加 */ int uAuth = 0; try { int.TryParse(mAuthorityTextBox.Text, out uAuth); } catch { } if (uAuth == 0) { mAuthorityTextBoxLabel.Text = "权限必须为大于等于1,小于等于5的数字"; return; } else { mAuthorityTextBoxLabel.Text = ""; } string strConnection = ConfigurationManager.ConnectionStrings["AccessConnectionString"].ConnectionString; OleDbConnection objConnection = new OleDbConnection(strConnection); objConnection.Open(); using (objConnection) { string strSQL = string.Empty; if (mPasswordTextBox.Text == "") { strSQL = "UPDATE YHTable SET YHAuthority=@userAuthority WHERE YHName=\"" + mUserNameLabel.Text + "\""; } else { strSQL = "UPDATE YHTable SET YHPassword=@userPassword, YHAuthority=@userAuthority WHERE YHName=\"" + mUserNameLabel.Text + "\""; } OleDbCommand command = new OleDbCommand(strSQL, objConnection); //command.Parameters.Add("@userName", OleDbType.VarChar).Value = mUserNameLabel.Text; if (mPasswordTextBox.Text != "") { command.Parameters.Add("@userPassword", OleDbType.VarChar).Value = MD5Provider.Hash(mPasswordTextBox.Text); } command.Parameters.Add("@userAuthority", OleDbType.Numeric).Value = uAuth; if (command.ExecuteNonQuery() > 0) { MyBasePage.writeLog(Session["userName"].ToString(), "修改用户,账户: " + mUserNameLabel.Text + " 权限:" + uAuth.ToString()); JScript.AlertAndRedirect("用户信息已修改", "", this); } else { MyBasePage.writeLog(Session["userName"].ToString(), "修改用户时发生错误,返回受影响数据库条数为零。账户: " + mUserNameLabel.Text + " 欲修改为:权限:" + uAuth.ToString()); JScript.AlertAndRedirect("修改用户信息时发生错误", "", this); } } }
public TaskBase(string password) { passHash = MD5Provider.GetHash(password); Tasks = new List <Task>(); }
private void DoLogin(string userCode, string password) { // btnOK.SafeButtonEnable(false); this.UIDoStepTasks(new List <Func <bool> >() { () => { #region 检查硬件环境 lblLoadItems.Text = _LoadItem = "检查硬件环境"; Application.DoEvents(); API icAPI = new API(); icAPI.InitIC(); if (icAPI.IcDev < 0) { if (MessageBoxAdapter.ShowConfirm("初始化IC读卡设备失败,请确认是否已连接IC读卡设备!是否要跳过该步骤?") == System.Windows.Forms.DialogResult.OK) { btnOK.SafeButtonEnable(true); isBreak = false; } else { isBreak = true; return(false); } } else { icAPI.ExitIC(); } isBreak = false; return(true); #endregion }, () => { #region 读取服务机构编码 lblLoadItems.Text = _LoadItem = "读取服务机构编码"; isBreak = false; Application.DoEvents(); if (string.IsNullOrEmpty(SettingsVar.BindingPACode)) { frmBindingPA frm = new frmBindingPA(); frm.ShowDialog(); if (frm.DialogResult != System.Windows.Forms.DialogResult.OK) { isBreak = true; this.DialogResult = System.Windows.Forms.DialogResult.Cancel; btnOK.SafeButtonEnable(true); return(false); } else { this.Activate(); } } return(true); #endregion }, () => { #region 用户认证 lblLoadItems.Text = _LoadItem = "用户认证"; isBreak = false; Application.DoEvents(); string authEndPoint = INIAdapter.ReadValue(Common.CFG_SECTION_WEB, Common.CFG_KEY_AUTH_END_POINT, Common.CFG_FILE_PATH); string objectId = SettingsVar.BindingPACode.Substring(2, 6); HttpAdapter.postSyncAsJSON(authEndPoint, new { RunMode = SettingsVar.RunMode, ObjectId = objectId, UserCode = userCode, PasswordHash = MD5Provider.Generate(password) }.ToStringObjectDictionary(), new { ApplicationId = Common.APPLICATION_ID }.ToStringObjectDictionary(), (ret, res) => { if ((bool)ret.Success) { Data.UserId = Guid.Parse((string)ret.ret.UserId); SettingsVar.DataExchangePoint = (string)ret.ret.AccessPoint; INIAdapter.WriteValue(Common.INI_SECTION_LOCAL, Common.INI_KEY_USER_NAME_SINCE_LAST, userCode, Common.INI_FILE_PATH); } else { MessageBoxAdapter.ShowError((string)ret.ErrorMessage); isBreak = true; btnOK.SafeButtonEnable(true); } }); if (isBreak) { return(false); } return(true); #endregion }, () => { #region 更新老人数据 lblLoadItems.Text = _LoadItem = "更新老人数据"; isBreak = false; Application.DoEvents(); HttpAdapter.getSyncTo(SettingsVar.DataExchangePoint + "/Pam/PamService/GetOldManInfoForSelfServiceMachine", null, new { ApplicationId = Common.APPLICATION_ID, PACode = SettingsVar.BindingPACode }.ToStringObjectDictionary(), (ret, res) => { if ((bool)ret.Success) { Data.OldMans = new List <OldManInfo>(); foreach (var row in ret.rows) { dynamic item = new ExpandoObject(); DynamicAdapter.Parse(item, XElement.Parse(row.ToString())); Data.OldMans.Add((item.StringObjectDictionary as IDictionary <string, object>).FromDynamic <OldManInfo>()); } //MessageBoxAdapter.ShowInfo("老人:" + Data.OldMans.Count.ToString()); } else { isBreak = true; lblError.Text = ret.ErrorCode; } }); if (isBreak) { return(false); } return(true); #endregion }, () => { #region 更新配餐数据 lblLoadItems.Text = _LoadItem = "更新配餐数据"; isBreak = false; Application.DoEvents(); HttpAdapter.getSyncTo(SettingsVar.DataExchangePoint + "/Pam/PamService/GetOldManBookMealForToday", null, new { ApplicationId = Common.APPLICATION_ID, PACode = SettingsVar.BindingPACode }.ToStringObjectDictionary(), (ret, res) => { if ((bool)ret.Success) { Data.BookMeals = new List <BookMealInfo>(); foreach (var row in ret.rows) { dynamic item = new ExpandoObject(); DynamicAdapter.Parse(item, XElement.Parse(row.ToString())); Data.BookMeals.Add((item.StringObjectDictionary as IDictionary <string, object>).FromDynamic <BookMealInfo>()); } //MessageBoxAdapter.ShowInfo("订餐:" + Data.BookMeals.Count.ToString()); } else { isBreak = true; lblError.Text = ret.ErrorCode; } }); if (isBreak) { return(false); } return(true); #endregion }, () => { allLoaded = true; this.DialogResult = System.Windows.Forms.DialogResult.OK; return(true); } }, Common.msDelay); lblLoadItems.UIDoCircleTask(() => { if (dotNum == 3) { lblLoadItems.Text = _LoadItem; dotNum = 0; } else { lblLoadItems.Text += "."; dotNum++; } }, Common.msDot, () => { return(allLoaded || isBreak); }); }
private void DoLogin(string userCode, string password) { // btnOk.Enabled = false; lblMsg.Text = "登录中"; _tickTimer = new System.Timers.Timer(1 * 200); _tickTimer.Elapsed += new System.Timers.ElapsedEventHandler(delegate(object source, System.Timers.ElapsedEventArgs ee) { BeginInvoke(new Action(() => { if (lblMsg.Text.IndexOf(".") == -1) { lblMsg.Text += "."; } else if (lblMsg.Text.IndexOf(".") + 5 == lblMsg.Text.Length) { lblMsg.Text = lblMsg.Text.Substring(0, lblMsg.Text.Length - 5); } else { lblMsg.Text += "."; } })); }); //到达时间的时候执行事件; _tickTimer.AutoReset = true; //设置是执行一次(false)还是一直执行(true); _tickTimer.Enabled = true; //是否执行System.Timers.Timer.Elapsed事件; byte runMode = byte.Parse(strRunMode); //测试1 正式0 string objectId = null; string objectName = null; TreeNode theSelectedNode = ctvObjectNodes.TreeView.SelectedNode; if (theSelectedNode != null && theSelectedNode.Name != "default") { objectId = theSelectedNode.Name; objectName = theSelectedNode.Text; } else { objectName = "自动"; } HttpAdapter.postAsyncAsJSON(authEndPoint, new { RunMode = runMode, ObjectId = objectId, UserCode = userCode, PasswordHash = MD5Provider.Generate(password) }.ToStringObjectDictionary(), new { ApplicationId = Common.APPLICATION_ID }.ToStringObjectDictionary(), (ret, res) => { if ((bool)ret.Success) { PensionAgencyVar.UserCode = userCode; PensionAgencyVar.Password = password; PensionAgencyVar.Load(ret.ret); INIAdapter.WriteValue(Common.INI_SECTION_LOCAL, Common.INI_KEY_USER_NAME_SINCE_LAST, userCode, Common.INI_FILE_PATH); INIAdapter.WriteValue(Common.INI_SECTION_LOCAL, Common.INI_KEY_OBJECT_ID_SINCE_LAST, (objectId ?? "default"), Common.INI_FILE_PATH); INIAdapter.WriteValue(Common.INI_SECTION_LOCAL, Common.INI_KEY_OBJECT_NAME_SINCE_LAST, objectName, Common.INI_FILE_PATH); this.DialogResult = DialogResult.OK; this.Close(); } else { lblMsg.Text = ret.ErrorMessage; this.UIInvoke(() => { btnOk.Enabled = true; }); } _tickTimer.Enabled = false; _tickTimer = null; }); }
/// <summary> /// 登录检查 /// </summary> /// <param name="username">用户输入的用户名</param> /// <param name="password">用户输入的密码</param> /// <param name="errorText">登录错误时输出的错误信息</param> /// <param name="page">请传递this</param> /// <returns></returns> public static bool login_check(string username, string password, out string errorText, Page page) { errorText = ""; if (username != "") { if (password != "") { string md5Password = MD5Provider.Hash(password); string strConnection = ConfigurationManager.ConnectionStrings["AccessConnectionString"].ConnectionString; OleDbConnection objConnection = new OleDbConnection(strConnection); objConnection.Open(); using (objConnection) { string strSQL = "SELECT Top 1 * FROM YHTable WHERE YHName = @userName"; OleDbCommand command = new OleDbCommand(strSQL, objConnection); command.Parameters.Add("@userName", OleDbType.VarChar).Value = username; OleDbDataAdapter adapter = new OleDbDataAdapter(command); DataTable dt = new DataTable(); adapter.Fill(dt); if (dt.Rows.Count == 1) { if (dt.Rows[0]["YHPassword"].ToString() == md5Password) { //登录成功,设置session page.Session["userName"] = dt.Rows[0]["YHName"]; page.Session["userAuthority"] = dt.Rows[0]["YHAuthority"]; page.Session["lastLoginTime"] = dt.Rows[0]["lastlogintime"]; page.Session.Timeout = 60; strSQL = "UPDATE YHTable SET lastlogintime=@lasttime WHERE 编号=" + dt.Rows[0]["编号"].ToString(); command = new OleDbCommand(strSQL, objConnection); command.Parameters.Add("@lasttime", OleDbType.Date).Value = DateTime.Now; command.ExecuteNonQuery(); writeLog(username, "登录成功"); return(true); } else { errorText = "用户名或密码错误"; writeLog(username, "登录错误:用户名或密码错误"); return(false); } } else { errorText = "用户名或密码错误"; writeLog(username, "登录错误:无此用户"); return(false); } } } else { errorText = "请输入密码"; writeLog(username, "登录错误:密码为空"); return(false); } } return(false); }