/// <summary> /// 账套绑定 /// </summary> /// <param name="para"></param> /// <returns></returns> public override ActionResult <UserView> UserSigninBind(UserSigninWX para) { var rpsact = _work.Repository <AccountInfo>(); var account = rpsact.GetModel(q => q.AccountCode == para.AccountCode); if (account == null) { throw new Exception("用户名密码或账套号错误"); } if (account.State == (int)PublicEnum.AccountState.Closed || account.ValidDate <= DateTime.Now) { throw new Exception("账套已经过期或已关闭"); } var rpswxbind = _work.Repository <Core.Model.DB.Platform.Auth_WxBinds>(); var bindcheck = rpswxbind.Any(q => q.openID == para.openID); if (bindcheck) { throw new Exception("微信号已经绑定账号"); } var dbwxbind = new Auth_WxBinds { AccountCode = para.AccountCode, ID = Guid.NewGuid(), openID = para.openID }; rpswxbind.Add(dbwxbind); _work.Commit();//写入平台绑定 Core.Model.AppUserDB userdb = new AppUserDB() { DBName = account.DBName, DBPwd = account.DBPwd, DBServer = account.DBServer, DBUid = account.DBUid }; Unitwork.SetUserDB(userdb); var sresult = base.UserSigninBind(para); if (sresult.data != null && sresult.state == 200) { var user = sresult.data.UserInfo; //user.TokenValidTime = DateTime.Now.AddMinutes(account.TokenValidTimes); //_work.Repository<Core.Model.DB.Auth_User>().Update(user); //_work.Commit(); sresult.data.AccountID = account.ID; sresult.data.AccountCode = account.AccountCode; sresult.data.AccountName = account.AccountName; sresult.data.Principal = account.Principal; sresult.data.ShortName = account.ShortName; sresult.data.Tel = account.Tel; } else { Unitwork.SetUserDB(null); rpswxbind.Delete(dbwxbind); } return(sresult); }
public ActionResult <UserView> UserWxBind(UserSigninWX para) { LogContent = "用户绑定微信账号:" + Newtonsoft.Json.JsonConvert.SerializeObject(para); return(bll.UserSigninBind(para)); }