Esempio n. 1
0
        public JsonResult Register(string UserName, string Password, string NickName, string Code)
        {
            SystemDbContext db = new SystemDbContext();

            //首先核对用户的短信验证码是否合法
            using (var vCode = new SystemDbContext())
            {
                var      CurrentUserCode = vCode.VerifyCodes.Find(UserName);
                DateTime CurTime         = System.DateTime.Now;
                if (CurTime > CurrentUserCode.OverTime)         //用户短信验证码超时
                {
                    ModelState.AddModelError("", "抱歉,您的验证码已经过期!");
                }
                else if (!CurrentUserCode.Code.Equals(Code))
                {
                    ModelState.AddModelError("", "抱歉,您的验证码输入错误!");
                    this.PackageJson(0, "验证码错误!", null);
                }
            }

            ApplicationUser user = new ApplicationUser
            {
                CompanyFullName = "GeneralStaff",    //model.CompanyFullName,
                PhoneNumber     = UserName,
                UserName        = UserName,
                NickName        = NickName,
                Name            = "普通员工", //用户注册的时候写入该名称
                IsProved        = false,  //是否审核的标志
                IsAvailable     = false,  //是否是可用的管理员
                IsRoot          = false   //注册企业号的人默认就是企业的超级管理员
            };

            //填写CompanyId,由于新注册的用户没有绑定企业,所以填写一个默认值
            user.CompanyId        = "app-id";
            user.ConnectionString = "app-ConnectionString";

            var result = UserManager.Create(user, Password);

            if (result.Succeeded)
            {
                //在环信中注册
                EaseMobDemo myEaseMobDemo = new EaseMobDemo(appClientID, appClientSecret, appName, orgName);
                string      MobResult     = myEaseMobDemo.AccountCreate(UserName, Password, NickName);
                return(PackageJson(1, "注册成功!", MobResult));
            }
            // 如果我们进行到这一步时某个地方出错,则重新显示表单
            return(PackageJson(0, "Web系统中注册用户失败!", null));
        }
Esempio n. 2
0
        public ActionResult Edit(int id)
        {
            string temp;
            int    i = 0;

            do
            {
                temp = GetRandomCode(8);
                var count = (from s in sdb.BindCodes where s.BindingCode == temp select s).ToList();
                i = count.Count;
            } while (i != 0);
            BindCode code = sdb.BindCodes.Find(id);

            code.BindTag     = false;
            code.BindingCode = temp;
            sdb.SaveChanges();
            var        friends = (from u in sdb.Users where u.CompanyId == this.CompanyId && u.StaffNumber != code.StaffNumber select u).ToList();
            UserModels user    = (from u in sdb.Users where u.StaffNumber == code.StaffNumber select u).FirstOrDefault();
            //在环信中注册
            EaseMobDemo myEaseMobDemo = new EaseMobDemo(appClientID, appClientSecret, appName, orgName);

            foreach (var temp1 in friends)                                     //取出每个字段
            {
                myEaseMobDemo.AccountDelFriend(user.UserName, temp1.UserName); //删除原来账户的环信好友。
            }
            user.CompanyFullName = "GeneralStaff";                             //model.CompanyFullName,

            user.Name             = "";                                        //用户注册的时候写入该名称
            user.IsProved         = false;                                     //是否审核的标志
            user.IsAvailable      = false;                                     //是否是可用的管理员
            user.IsRoot           = false;                                     //注册企业号的人默认就是企业的超级管理员
            user.CompanyId        = "app-id";
            user.ConnectionString = "app-ConnectionString";
            user.HuanTag          = true;
            user.BindTag          = false;//找回密码后就没有绑定公司
            user.StaffNumber      = null;
            user.BindingCode      = null;
            sdb.SaveChanges();
            return(RedirectToAction("Index"));
        }