static void Main(string[] args) { Taobao taobao = new Taobao(); taobao.username = username; taobao.password = pwd; while (true) { try { var s = taobao.GetLoginedPage("https://cart.taobao.com/cart.htm?spm=a1z09.2.a2109.d1000367.64122e8dvPxJdg&nekot=1470211439694"); var result = s.IndexOf("日本包车九州到东京"); if (result > 0) { Log.Write(DateTime.Now + " 获取成功"); } else { Log.Write(DateTime.Now + " 获取失败"); taobao.Login(); } } catch (Exception ex) { Log.Write(DateTime.Now + " 处理出错:" + ex.Message); } Thread.Sleep(1000); } }
public ProcessController(ITFlowEngine managementApi , Taobao.Workflow.Activities.Client.ITFlowEngine clientApi , string MiddleWebWhiteList) { this._managementApi = managementApi; this._clientApi = clientApi; this._MiddleWebWhiteList = MiddleWebWhiteList; }
public void RaiseWorkItemArrived(Taobao.Workflow.Activities.Hosting.WorkItemArgs args) { //this._sender.SendArgs("OnTaskArrived", new //{ // State = _state, // Actioner = args.WorkItem.Actioner.UserName, // FlowId = args.WorkItem.Process.ID.ToString(), // TaskId = args.WorkItem.ID.ToString() //}, args.WorkItem.Actioner.UserName);//传递标识作为负载依据 }
public ActionResult GetPwd(int id, string userID, string cUserID) { userID = UserID == null ? userID : UserID; string couponUserID; if (string.IsNullOrWhiteSpace(cUserID))//如果有分享的用户ID不验证 { if (string.IsNullOrWhiteSpace(userID)) { return(Json(Comm.ToJsonResult("NotLogin", "用户没有登录"), JsonRequestBehavior.AllowGet)); } var user = db.Users.FirstOrDefault(s => s.Id == userID); if (!user.IsActive) { return(Json(Comm.ToJsonResult("NotActive", "用户没有激活"), JsonRequestBehavior.AllowGet)); } couponUserID = Bll.Accounts.GetCouponUserID(userID); if (couponUserID == null) { return(Json(Comm.ToJsonResult("NotReceive", "当前用户没法领取"), JsonRequestBehavior.AllowGet)); } } else { couponUserID = cUserID; } CouponUser cu = db.CouponUsers.Include(s => s.Coupon).FirstOrDefault(s => s.CouponID == id && s.UserID == couponUserID); if (cu == null) { return(Json(Comm.ToJsonResult("Error", "优惠券不存在"), JsonRequestBehavior.AllowGet)); } string pwd = ""; switch (cu.Platform) { case Enums.CouponPlatform.TaoBao: case Enums.CouponPlatform.TMall: { pwd = new Taobao().GetWirelessShareTpwd(cu.Coupon.Image, cu.Link, cu.Coupon.Name, 0); } break; case Enums.CouponPlatform.Jd: case Enums.CouponPlatform.MoGuJie: default: { pwd = cu.Link; } break; } return(Json(Comm.ToJsonResult("Success", "成功", new { Data = pwd }), JsonRequestBehavior.AllowGet)); }
public ActionResult Auth() { string url = string.Empty; string vtype = RouteData.Values["id"]?.ToString().ToLower(); switch (vtype) { case "qq": url = QQ.AuthorizationHref(new QQ_Authorization_RequestEntity()); break; case "weibo": url = Weibo.AuthorizeHref(new Weibo_Authorize_RequestEntity()); break; case "github": url = GitHub.AuthorizeHref(new GitHub_Authorize_RequestEntity()); break; case "taobao": url = Taobao.AuthorizeHref(new Taobao_Authorize_RequestEntity()); break; case "microsoft": url = MicroSoft.AuthorizeHref(new MicroSoft_Authorize_RequestEntity()); break; } if (string.IsNullOrWhiteSpace(url)) { url = "/account/login"; } //已登录 && 从绑定页面点击 if (HttpContext.User.Identity.IsAuthenticated && Request.Headers["Referer"].ToString().ToLower().Contains("authbind")) { //写入绑定标识cookie var hc = new HttpCookie("AccountBindOAuth", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")) { Expires = DateTime.Now.AddMinutes(2) }; Response.Cookies.Add(hc); } else { //删除绑定标识 Response.Cookies.Remove("AccountBindOAuth"); } return(Redirect(url)); }
public CanMou_KeysHelper() { Login_TaoBao tb = new Login_TaoBao(); tb.Show(); if (Taobao.WaitTaoBaoLogin(tb)) { tb.Hide(); InitializeComponent(); this.StartPosition = FormStartPosition.CenterScreen; Browser.GetWebBrowser(tb.webBrowser1, webBrowser1); tb.Close(); tb.Dispose(); } }
private Converters.ProcessType Parse(Taobao.Workflow.Activities.ProcessType processType) { var activity = this._workflowParser.Parse(WorkflowBuilder.GetCacheKey(processType) , processType.Workflow.Serialized , processType.ActivitySettings); return new Converters.ProcessType() { CreateTime = processType.CreateTime, Description = processType.Description, Name = processType.Name, Version = processType.Version, IsCurrent = processType.IsCurrent, Group = processType.Group, ActivityNames = processType.ActivitySettings.Select(o => o.ActivityName).ToArray(), DataFields = activity.Variables.Select(o => o.Name).ToArray() }; }
public IActionResult Auth() { string url = string.Empty; if (Enum.TryParse(RouteData.Values["id"]?.ToString().ToLower(), out ValidateloginType vtype)) { switch (vtype) { case ValidateloginType.qq: url = QQ.AuthorizationHref(new QQ_Authorization_RequestEntity()); break; case ValidateloginType.weibo: url = Weibo.AuthorizeHref(new Weibo_Authorize_RequestEntity()); break; case ValidateloginType.github: url = GitHub.AuthorizeHref(new GitHub_Authorize_RequestEntity()); break; case ValidateloginType.taobao: url = Taobao.AuthorizeHref(new Taobao_Authorize_RequestEntity()); break; case ValidateloginType.microsoft: url = MicroSoft.AuthorizeHref(new MicroSoft_Authorize_RequestEntity()); break; } } if (string.IsNullOrWhiteSpace(url)) { url = "/account/login"; } //未登录 if (!User.Identity.IsAuthenticated) { //删除绑定标识 Response.Cookies.Delete("AccountBindOAuth"); } return(Redirect(url)); }
/// <summary> /// 生成请求链接 /// </summary> /// <returns></returns> public string Auth(LoginBase.LoginType loginType) { var url = string.Empty; switch (loginType) { case LoginBase.LoginType.QQ: url = QQ.AuthorizationHref(new QQ_Authorization_RequestEntity()); break; case LoginBase.LoginType.WeiBo: url = Weibo.AuthorizeHref(new Weibo_Authorize_RequestEntity()); break; case LoginBase.LoginType.WeChat: url = WeChat.AuthorizationHref(new WeChat_Authorization_RequestEntity()); break; case LoginBase.LoginType.GitHub: url = GitHub.AuthorizeHref(new GitHub_Authorize_RequestEntity()); break; case LoginBase.LoginType.TaoBao: url = Taobao.AuthorizeHref(new Taobao_Authorize_RequestEntity()); break; case LoginBase.LoginType.MicroSoft: url = MicroSoft.AuthorizeHref(new MicroSoft_Authorize_RequestEntity()); break; default: break; } return(url); }
public ActionResult Import(string userID, string url) { if (string.IsNullOrWhiteSpace(userID)) { return(Json(Comm.ToJsonResult("Error", "失败"))); } string path = Request.MapPath(url); Taobao.Import(userID, path); try { var fileInfo = new FileInfo(path); if (fileInfo.Exists) { fileInfo.Delete(); } } catch (Exception ex) { Comm.WriteLog("TaoBaoImort", $"删除缓存失败:{ex.Message}", Enums.DebugLogLevel.Error, Url.Action(), ex); } return(Json(Comm.ToJsonResult("Success", "成功"))); }
public ActionResult AuthCallback(string code) { var result = new AccountValidationVM(); string vtype = RouteData.Values["id"]?.ToString().ToLower(); try { //唯一标示 string openId = string.Empty; try { switch (vtype) { case "qq": { //获取 access_token var accessToken_ResultEntity = QQ.AccessToken(new QQ_AccessToken_RequestEntity() { code = code }); //获取 OpendId var openId_ResultEntity = QQ.OpenId(new QQ_OpenId_RequestEntity() { access_token = accessToken_ResultEntity.access_token }); //获取 UserInfo var openId_Get_User_Info_ResultEntity = QQ.OpenId_Get_User_Info(new QQ_OpenAPI_RequestEntity() { access_token = accessToken_ResultEntity.access_token, openid = openId_ResultEntity.openid }); //身份唯一标识 openId = openId_ResultEntity.openid; } break; case "weibo": { //获取 access_token var accessToken_ResultEntity = Weibo.AccessToken(new Weibo_AccessToken_RequestEntity() { code = code }); //获取 access_token 的授权信息 var tokenInfo_ResultEntity = Weibo.GetTokenInfo(new Weibo_GetTokenInfo_RequestEntity() { access_token = accessToken_ResultEntity.access_token }); //获取 users/show var userShow_ResultEntity = Weibo.UserShow(new Weibo_UserShow_RequestEntity() { access_token = accessToken_ResultEntity.access_token, uid = Convert.ToInt64(tokenInfo_ResultEntity.uid) }); openId = accessToken_ResultEntity.access_token; } break; case "github": { //获取 access_token var accessToken_ResultEntity = GitHub.AccessToken(new GitHub_AccessToken_RequestEntity() { code = code }); //获取 user var user_ResultEntity = GitHub.User(new GitHub_User_RequestEntity() { access_token = accessToken_ResultEntity.access_token }); openId = user_ResultEntity.id.ToString(); } break; case "taobao": { //获取 access_token var accessToken_ResultEntity = Taobao.AccessToken(new Taobao_AccessToken_RequestEntity() { code = code }); openId = accessToken_ResultEntity.open_uid; } break; case "microsoft": { //获取 access_token var accessToken_ResultEntity = MicroSoft.AccessToken(new MicroSoft_AccessToken_RequestEntity() { code = code }); //获取 user var user_ResultEntity = MicroSoft.User(new MicroSoft_User_RequestEntity() { access_token = accessToken_ResultEntity.access_token }); openId = user_ResultEntity.id.ToString(); } break; } } catch (Exception ex) { result.message = ex.Message; } if (string.IsNullOrWhiteSpace(openId)) { result.message = "身份验证失败"; } else { //判断是绑定操作 bool isbind = false; if (User.Identity.IsAuthenticated) { var aboa = Request.Cookies["AccountBindOAuth"]?.Value; if (!string.IsNullOrWhiteSpace(aboa) && (DateTime.Now - DateTime.Parse(aboa)).TotalSeconds < 120) { string uid = Func.Common.GetLoginUserInfo().UserId; using (var db = new ContextBase()) { var sysauth = db.SysAuthorize.Where(x => x.SuId == uid).FirstOrDefault(); var isadd = sysauth == null; //新增 if (isadd) { sysauth = new SysAuthorize() { SaId = Guid.NewGuid().ToString(), SuId = uid }; } switch (vtype) { case "qq": sysauth.OpenId1 = openId; break; case "weibo": sysauth.OpenId2 = openId; break; case "github": sysauth.OpenId3 = openId; break; case "taobao": sysauth.OpenId4 = openId; break; case "microsoft": sysauth.OpenId5 = openId; break; } if (isadd) { db.SysAuthorize.Add(sysauth); } else { db.SysAuthorize.Update(sysauth, db); } db.SaveChanges(); } Response.Cookies.Remove("AccountBindOAuth"); isbind = true; result.code = 301; result.message = "绑定成功"; result.url = "/"; } } //非绑定操作 if (!isbind) { using (var db = new ContextBase()) { SysUser vmo = null; switch (vtype) { case "qq": vmo = (from a in db.SysAuthorize join b in db.SysUser on a.SuId equals b.SuId where a.OpenId1 == openId select b).FirstOrDefault(); break; case "weibo": vmo = (from a in db.SysAuthorize join b in db.SysUser on a.SuId equals b.SuId where a.OpenId2 == openId select b).FirstOrDefault(); break; case "github": vmo = (from a in db.SysAuthorize join b in db.SysUser on a.SuId equals b.SuId where a.OpenId3 == openId select b).FirstOrDefault(); break; case "taobao": vmo = (from a in db.SysAuthorize join b in db.SysUser on a.SuId equals b.SuId where a.OpenId4 == openId select b).FirstOrDefault(); break; case "microsoft": vmo = (from a in db.SysAuthorize join b in db.SysUser on a.SuId equals b.SuId where a.OpenId5 == openId select b).FirstOrDefault(); break; } //没关联 if (vmo == null) { result.code = 302; result.message = "未关联账号,先账号密码登录再关联才能使用"; } else { result = LoginValidation(vmo, "_pass_", 1); } } } } } catch (Exception ex) { result.message = ex.Message; } //成功 if (result.code == 100) { return(Redirect(result.url)); } else { return(View(result)); } }
public void Set(string path) { var models = new List <CouponUserViewModel>(); try { var dtable = new ExcelHelper(path).ExcelToDataTable(null, true); foreach (System.Data.DataRow item in dtable.Rows) { var index = dtable.Rows.IndexOf(item); try { var model = new CouponUserViewModel { EndDateTime = Convert.ToDateTime(item["优惠券结束时间"]).AddDays(1).AddSeconds(-1), ProductID = item["商品id"].ToString(), TypeID = Bll.Coupons.CheckType(item["商品一级类目"].ToString()), Image = item["商品主图"].ToString(), Link = item["商品优惠券推广链接"].ToString(), Name = item["商品名称"].ToString(), OriginalPrice = Convert.ToDecimal(item["商品价格(单位:元)"]), ProductType = item["商品一级类目"].ToString(), ShopName = item["店铺名称"].ToString(), StartDateTime = Convert.ToDateTime(item["优惠券开始时间"].ToString()), Subtitle = null, Value = item["优惠券面额"].ToString(), Platform = item["平台类型"].ToString() == "淘宝" ? Enums.CouponPlatform.TaoBao : Enums.CouponPlatform.TMall, Sales = Convert.ToInt32(item["商品月销量"]), Commission = Convert.ToDecimal(item["佣金"]), CommissionRate = Convert.ToDecimal(item["收入比率(%)"]), Left = Convert.ToInt32(item["优惠券剩余量"]), Total = Convert.ToInt32(item["优惠券总量"]) }; try { model.Price = Taobao.GetAfterCouponPrice(model.OriginalPrice, model.Value); } catch (Exception) { continue; } if (model.EndDateTime < DateTime.Now || model.OriginalPrice <= model.Price) { continue; } if (model.Price < 0) { continue; } models.Add(model); } catch (Exception ex)//有异常的数据忽略 { } } //分段添加到数据库 Bll.Coupons.DbAdd(models); } catch (Exception ex) { //Comm.WriteLog("excel", $"{ex.Message}", Enums.DebugLogLevel.Error); } }
//初始化元数据 private void CacheMetadata(Taobao.Activities.Statements.Flowchart flowchart) { var methodInfo = flowchart.GetType().GetMethod("CacheMetadata", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.DeclaredOnly); methodInfo.Invoke(flowchart, null); }
/// <summary> /// 回调方法 /// </summary> /// <param name="code">请求链接得到的code</param> /// <param name="loginType">登录类型</param> public void AuthCallback(string code, LoginBase.LoginType loginType) { if (string.IsNullOrWhiteSpace(code)) { //打开链接没登录授权 } else { //唯一标示 string openId = string.Empty; switch (loginType) { case LoginBase.LoginType.QQ: { //获取 access_token var tokenEntity = QQ.AccessToken(new QQ_AccessToken_RequestEntity() { code = code }); //获取 OpendId var openidEntity = QQ.OpenId(new QQ_OpenId_RequestEntity() { access_token = tokenEntity.access_token }); //获取 UserInfo var userEntity = QQ.OpenId_Get_User_Info(new QQ_OpenAPI_RequestEntity() { access_token = tokenEntity.access_token, openid = openidEntity.openid }); //身份唯一标识 openId = openidEntity.openid; } break; case LoginBase.LoginType.WeiBo: { //获取 access_token var tokenEntity = Weibo.AccessToken(new Weibo_AccessToken_RequestEntity() { code = code }); //获取 access_token 的授权信息 var tokenInfoEntity = Weibo.GetTokenInfo(new Weibo_GetTokenInfo_RequestEntity() { access_token = tokenEntity.access_token }); //获取 users/show var userEntity = Weibo.UserShow(new Weibo_UserShow_RequestEntity() { access_token = tokenEntity.access_token, uid = Convert.ToInt64(tokenInfoEntity.uid) }); openId = tokenEntity.access_token; } break; case LoginBase.LoginType.WeChat: { //获取 access_token var tokenEntity = WeChat.AccessToken(new WeChat_AccessToken_RequestEntity() { code = code }); //获取 user var userEntity = WeChat.Get_User_Info(new WeChat_OpenAPI_RequestEntity() { access_token = tokenEntity.access_token, openid = tokenEntity.openid }); //身份唯一标识 openId = tokenEntity.openid; } break; case LoginBase.LoginType.GitHub: { //申请的应用名称,非常重要 GitHubConfig.ApplicationName = "netnrf"; //获取 access_token var tokenEntity = GitHub.AccessToken(new GitHub_AccessToken_RequestEntity() { code = code }); //获取 user var userEntity = GitHub.User(new GitHub_User_RequestEntity() { access_token = tokenEntity.access_token }); openId = userEntity.id.ToString(); } break; case LoginBase.LoginType.TaoBao: { //获取 access_token var tokenEntity = Taobao.AccessToken(new Taobao_AccessToken_RequestEntity() { code = code }); openId = tokenEntity.open_uid; } break; case LoginBase.LoginType.MicroSoft: { //获取 access_token var tokenEntity = MicroSoft.AccessToken(new MicroSoft_AccessToken_RequestEntity() { code = code }); //获取 user var userEntity = MicroSoft.User(new MicroSoft_User_RequestEntity() { access_token = tokenEntity.access_token }); openId = userEntity.id.ToString(); } break; } //拿到登录标识 if (string.IsNullOrWhiteSpace(openId)) { //TO DO } } }
public IActionResult AuthCallback(string code) { var vm = new ActionResultVM(); if (string.IsNullOrWhiteSpace(code)) { vm.msg = "未授权,登录失败"; } else { try { //唯一标示 string openId = string.Empty; //注册信息 var mo = new Domain.UserInfo() { LoginLimit = 0, UserSex = 0, UserCreateTime = DateTime.Now }; //头像 string avatar = string.Empty; //头像(高清) string avatarhd = string.Empty; if (Enum.TryParse(RouteData.Values["id"]?.ToString().ToLower(), out ValidateloginType vtype)) { try { switch (vtype) { case ValidateloginType.qq: { //获取 access_token var tokenEntity = QQ.AccessToken(new QQ_AccessToken_RequestEntity() { code = code }); //获取 OpendId var openidEntity = QQ.OpenId(new QQ_OpenId_RequestEntity() { access_token = tokenEntity.access_token }); //获取 UserInfo var userEntity = QQ.OpenId_Get_User_Info(new QQ_OpenAPI_RequestEntity() { access_token = tokenEntity.access_token, openid = openidEntity.openid }); //身份唯一标识 openId = openidEntity.openid; mo.OpenId1 = openId; mo.Nickname = userEntity.nickname; mo.UserSex = userEntity.gender == "男" ? 1 : 2; mo.UserSay = ""; mo.UserUrl = ""; avatar = userEntity.figureurl_qq_1; avatarhd = userEntity.figureurl_qq_2; } break; case ValidateloginType.weibo: { //获取 access_token var tokenEntity = Weibo.AccessToken(new Weibo_AccessToken_RequestEntity() { code = code }); //获取 access_token 的授权信息 var tokenInfoEntity = Weibo.GetTokenInfo(new Weibo_GetTokenInfo_RequestEntity() { access_token = tokenEntity.access_token }); //获取 users/show var userEntity = Weibo.UserShow(new Weibo_UserShow_RequestEntity() { access_token = tokenEntity.access_token, uid = Convert.ToInt64(tokenInfoEntity.uid) }); openId = tokenEntity.access_token; mo.OpenId2 = openId; mo.Nickname = userEntity.screen_name; mo.UserSex = userEntity.gender == "m" ? 1 : userEntity.gender == "f" ? 2 : 0; mo.UserSay = userEntity.description; mo.UserUrl = userEntity.domain; avatar = userEntity.profile_image_url; avatarhd = userEntity.avatar_large; } break; case ValidateloginType.github: { //获取 access_token var tokenEntity = GitHub.AccessToken(new GitHub_AccessToken_RequestEntity() { code = code }); //获取 user var userEntity = GitHub.User(new GitHub_User_RequestEntity() { access_token = tokenEntity.access_token }); openId = userEntity.id.ToString(); mo.OpenId3 = openId; mo.Nickname = userEntity.name; mo.UserSay = userEntity.bio; mo.UserUrl = userEntity.blog; mo.UserMail = userEntity.email; avatar = userEntity.avatar_url; avatarhd = userEntity.avatar_url; } break; case ValidateloginType.taobao: { //获取 access_token var tokenEntity = Taobao.AccessToken(new Taobao_AccessToken_RequestEntity() { code = code }); openId = tokenEntity.open_uid; mo.OpenId4 = openId; mo.Nickname = "淘宝用户"; } break; case ValidateloginType.microsoft: { //获取 access_token var tokenEntity = MicroSoft.AccessToken(new MicroSoft_AccessToken_RequestEntity() { code = code }); //获取 user var userEntity = MicroSoft.User(new MicroSoft_User_RequestEntity() { access_token = tokenEntity.access_token }); openId = userEntity.id.ToString(); mo.OpenId5 = openId; mo.Nickname = userEntity.last_name + userEntity.first_name; mo.UserMail = userEntity.emails["account"].ToStringOrEmpty(); } break; } } catch (Exception ex) { vm.msg = ex.Message; } } mo.UserCreateTime = DateTime.Now; mo.UserName = openId; mo.UserPwd = Core.CalcTo.MD5(openId); if (!string.IsNullOrWhiteSpace(avatar)) { mo.UserPhoto = Core.UniqueTo.LongId().ToString() + ".jpg"; } if (string.IsNullOrWhiteSpace(openId)) { vm.msg = "身份验证失败"; } else { //判断是绑定操作 bool isbind = false; if (User.Identity.IsAuthenticated) { try { var aboa = Request.Cookies["AccountBindOAuth"]; if (!string.IsNullOrWhiteSpace(aboa) && (DateTime.Now - DateTime.Parse(aboa)).TotalSeconds < 120) { int uid = new Func.UserAuthAid(HttpContext).Get().UserId; using (var db = new ContextBase()) { //检测是否绑定其它账号 var queryIsBind = db.UserInfo.Where(x => x.UserId != uid); switch (vtype) { case ValidateloginType.qq: queryIsBind = queryIsBind.Where(x => x.OpenId1 == openId); break; case ValidateloginType.weibo: queryIsBind = queryIsBind.Where(x => x.OpenId2 == openId); break; case ValidateloginType.github: queryIsBind = queryIsBind.Where(x => x.OpenId3 == openId); break; case ValidateloginType.taobao: queryIsBind = queryIsBind.Where(x => x.OpenId4 == openId); break; case ValidateloginType.microsoft: queryIsBind = queryIsBind.Where(x => x.OpenId5 == openId); break; } if (queryIsBind.Count() > 0) { return(Content("已绑定其它账号,不能重复绑定")); } var userInfo = db.UserInfo.Find(uid); switch (vtype) { case ValidateloginType.qq: userInfo.OpenId1 = openId; break; case ValidateloginType.weibo: userInfo.OpenId2 = openId; break; case ValidateloginType.github: userInfo.OpenId3 = openId; break; case ValidateloginType.taobao: userInfo.OpenId4 = openId; break; case ValidateloginType.microsoft: userInfo.OpenId5 = openId; break; } db.UserInfo.Update(userInfo); db.SaveChanges(); } Response.Cookies.Delete("AccountBindOAuth"); isbind = true; } } catch (Exception) { } } //是绑定操作 if (isbind) { return(Redirect("/user/setting")); } else { using (var db = new ContextBase()) { Domain.UserInfo vmo = null; switch (vtype) { case ValidateloginType.qq: vmo = db.UserInfo.FirstOrDefault(x => x.OpenId1 == openId); break; case ValidateloginType.weibo: vmo = db.UserInfo.FirstOrDefault(x => x.OpenId2 == openId); break; case ValidateloginType.github: vmo = db.UserInfo.FirstOrDefault(x => x.OpenId3 == openId); break; case ValidateloginType.taobao: vmo = db.UserInfo.FirstOrDefault(x => x.OpenId4 == openId); break; case ValidateloginType.microsoft: vmo = db.UserInfo.FirstOrDefault(x => x.OpenId5 == openId); break; } //未注册 if (vmo == null) { var ruvm = RegisterUser(mo); if (ruvm.code == 200) { vm = ValidateLogin(vtype, mo); //拉取头像 if (vm.code == 200 && (!string.IsNullOrWhiteSpace(avatar) || !string.IsNullOrWhiteSpace(avatarhd))) { try { System.Net.WebClient wc = new System.Net.WebClient(); var rootdir = GlobalTo.WebRootPath + "/" + (GlobalTo.GetValue("StaticResource:RootDir").TrimStart('/').TrimEnd('/') + "/"); var path = GlobalTo.GetValue("StaticResource:AvatarPath").TrimEnd('/').TrimStart('/') + '/'; var fullpath = rootdir + path; if (!System.IO.Directory.Exists(fullpath)) { System.IO.Directory.CreateDirectory(fullpath); } if (!string.IsNullOrWhiteSpace(avatar)) { wc.DownloadFile(avatar, fullpath + mo.UserPhoto); } if (!string.IsNullOrWhiteSpace(avatarhd)) { wc.DownloadFile(avatarhd, fullpath + mo.UserPhoto.Replace(".jpg", "_lg.jpg")); } } catch (Exception) { } } } else { vm.msg = ruvm.msg; } } else { vm = ValidateLogin(vtype, vmo); } } } } } catch (Exception ex) { vm.msg = ex.Message; } } //成功 if (vm.code == 200) { return(Redirect("/")); } else { string msg = "【登录失败】( " + vm.msg + " )".ToEncode(); return(Redirect("/home/error?msg=" + msg)); } }
public AgentHandlerLog(Taobao.Infrastructure.ILog log) : base(log) { }