Esempio n. 1
0
 public void SendFindPwdCode(SendFindPwdCodeParameter param)
 {
     using (var context = base.CreateUserContext())
     {
         bool isMobile = StringHelper.IsMobile(param.EmailOrMobile);
         var  q        = from t in context.Accounts
                         where t.AppID == param.AppID &&
                         (isMobile ? t.Mobile == param.EmailOrMobile : t.Email == param.EmailOrMobile)
                         select t;
         var user = q.SingleOrDefault();
         if (user == null)
         {
             throw new InvalidInvokeException("Email或手机未注册");
         }
         if (isMobile)
         {
             var flags = (UserFlags)user.Flags;
             if ((flags & UserFlags.AuthenticMobile) != UserFlags.AuthenticMobile)
             {
                 throw new InvalidInvokeException("手机未验证");
             }
             this.SendAuthMobile(new SendAuthMobileParameter()
             {
                 AppID    = user.AppID,
                 UserName = user.UserName,
                 Mobile   = param.EmailOrMobile,
                 Kind     = AuthMobileKind.FindPassword
             });
         }
         else
         {
             this.SendAuthEmail(new SendAuthEmailParameter()
             {
                 AppID  = user.AppID,
                 UserID = user.RowID,
                 Email  = param.EmailOrMobile,
                 Kind   = AuthEmailKind.FindPassword
             });
         }
     }
 }
Esempio n. 2
0
 public void SendFindPwdCode(SendFindPwdCodeParameter param)
 {
     mgr.SendFindPwdCode(param);
 }