示例#1
0
        public async Task <ActionResult> Register(OwnerRegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser
                {
                    UserName = model.Email,
                    Email    = model.Email
                };
                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    await UserManager.AddToRoleAsync(user.Id, "User");

                    await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false);

                    //create owner
                    Owner owner = new Owner();
                    UpdateModel(owner);
                    owner.UserId = user.Id;
                    ownerRepository.Insert(owner);
                    ownerRepository.Save();
                    return(RedirectToAction("CreateAppointment", "Owner"));
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
示例#2
0
        public ActionResult Apply(OwnerRegisterViewModel ownerInfo)
        {
            OperationResult <string> result = new OperationResult <string>(true);

            try
            {
                var user = Models.User.CurrentUser;
                //create stall
                var opt = Models.Stall.CraeteStall(user.Id, ownerInfo.StallName, ownerInfo.VendPrefix, _db);
                if (!opt.Succeeded)
                {
                    result.Message   = opt.Message;
                    result.Succeeded = false;
                }
                else
                {
                    var stall = opt.Data;
                    stall.ContactName = ownerInfo.ContactName;
                    stall.Email       = ownerInfo.Email;
                    stall.Mobile      = ownerInfo.Mobile;
                    stall.Status      = Models.Stall.StallStatus.Applied;
                    stall.Save();
                    //result.Data = StallApplication.GetAuthorisationCodeUri(ownerInfo.VendPrefix, user.Id);
                }
            }
            catch (Exception ex)
            {
                result.Message   = "申请店铺失败";
                result.Exception = ex;
                result.Succeeded = false;
            }

            return(Json(result, JsonRequestBehavior.AllowGet));
        }