Esempio n. 1
0
 protected string getFirstInvestAmount(li_invitations inv)
 {
     if (inv.li_project_transactions != null)
     {
         return(inv.li_project_transactions.principal.ToString("c"));
     }
     return("");
 }
Esempio n. 2
0
 protected string getMyReward(li_invitations inv)
 {
     if (myReward.ContainsKey(inv.user_id))
     {
         var atr = myReward[inv.user_id];
         return(atr.value.ToString("c") + (atr.status == (int)Agp2pEnums.ActivityTransactionStatusEnum.Confirm ? "(已发放)" : "(待发放)"));
     }
     return("");
 }
Esempio n. 3
0
        public IHttpActionResult Register([FromFormData] string mobile, [FromFormData] string password, [FromFormData] string verifyCode, [FromFormData] string inviter)
        {
            if (!MobileRegex.IsMatch(mobile))
            {
                return(BadRequest("手机号码的格式不正确"));
            }
            if (!PasswordRegex.IsMatch(password))
            {
                return(BadRequest("请输入6-16数字或字母的密码"));
            }

            var context = new Lip2pDataContext();

            if (context.dt_users.Any(u => u.mobile == mobile))
            {
                return(ResponseMessage(Request.CreateResponse(HttpStatusCode.Conflict, "此手机已被注册")));
            }

            var strcode = (string)MemoryCache.Default["Reg-verify:" + mobile];

            if (strcode != verifyCode)
            {
                Debug.WriteLine("Verify: {0}, infact: {1}", strcode, verifyCode);
                return(BadRequest("短信验证码错误"));
            }

            var defaultGroup = context.dt_user_groups.FirstOrDefault(g => g.is_default == 1);

            if (defaultGroup == null)
            {
                return(InternalServerError(new Exception("用户尚未分组,请联系网站管理员")));
            }

            var salt    = Utils.GetCheckCode(6);
            var newUser = new dt_users
            {
                group_id  = defaultGroup.id,
                user_name = mobile,
                salt      = salt, //获得6位的salt加密字符串
                password  = DESEncrypt.Encrypt(password, salt),
                mobile    = mobile,
                reg_ip    = Request.GetClientIp(),
                reg_time  = DateTime.Now,
                status    = 0,
            };

            context.dt_users.InsertOnSubmit(newUser);

            // 查出邀请人
            if (!string.IsNullOrWhiteSpace(inviter))
            {
                var inviteUser = context.dt_users.SingleOrDefault(u => u.mobile == inviter || u.user_name == inviter);
                if (inviteUser == null)
                {
                    var code = context.dt_user_code.SingleOrDefault(c => c.str_code == inviter && c.type == DTEnums.CodeEnum.Register.ToString());
                    if (code != null)
                    {
                        inviteUser = code.dt_users;
                    }
                }
                if (inviteUser != null)
                {
                    var liInvitations = new li_invitations
                    {
                        dt_users  = newUser,
                        dt_users1 = inviteUser
                    };
                    context.li_invitations.InsertOnSubmit(liInvitations);
                    // 会员部功能,被推荐人自动归组
                    if (inviteUser.li_user_group_servers != null)
                    {
                        newUser.group_id = inviteUser.li_user_group_servers.group_id;
                    }
                }
            }

            try
            {
                context.SubmitChanges();
                // 广播新用户注册消息
                MessageBus.Main.PublishAsync(new NewUserCreatedMsg(newUser.id, newUser.reg_time.Value));
                return(Ok("注册成功"));
            }
            catch (Exception ex)
            {
                return(InternalServerError(new Exception("注册失败:" + ex.Message)));
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 获取用户名
        /// </summary>
        /// <param name="inv"></param>
        /// <returns></returns>
        protected string get_be_inviter_name(li_invitations inv)
        {
            var user = inv.dt_users;

            return(string.IsNullOrEmpty(user.real_name) ? user.user_name : string.Format("{0}({1})", user.user_name, user.real_name));
        }