public async Task <IActionResult> Edit(int id, [Bind("AppUserStatusId,AppUserStatusName")] AppUserStatus appUserStatus)
        {
            if (id != appUserStatus.AppUserStatusId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(appUserStatus);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AppUserStatusExists(appUserStatus.AppUserStatusId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(appUserStatus));
        }
        public async Task <IActionResult> Create([Bind("AppUserStatusId,AppUserStatusName")] AppUserStatus appUserStatus)
        {
            if (ModelState.IsValid)
            {
                _context.Add(appUserStatus);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(appUserStatus));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Инициализация таблицы "Статусы пользователей"
        /// </summary>
        /// <param name="serviceProvider"></param>
        /// <param name="configuration"></param>
        /// <returns></returns>
        public static async Task CreateAppUserStatuses(IServiceProvider serviceProvider, IConfiguration configuration)
        {
            using (var serviceScope = serviceProvider.GetRequiredService <IServiceScopeFactory>().CreateScope())
            {
                AppIdentityDBContext context = serviceScope.ServiceProvider.GetService <AppIdentityDBContext>();

                #region Инициализация таблицы "Статусы пользователей"
                if (!await context.AppUserStatuses.AnyAsync())
                {
                    var AppUserStatus1 = new AppUserStatus
                    {
                        AppUserStatusId   = (int)AppUserStatusEnum.NewUser,
                        AppUserStatusName = "Новый пользователь"
                    };

                    var AppUserStatus2 = new AppUserStatus
                    {
                        AppUserStatusId   = (int)AppUserStatusEnum.ConfirmedUser,
                        AppUserStatusName = "Подтверждённый пользователь"
                    };

                    var AppUserStatus3 = new AppUserStatus
                    {
                        AppUserStatusId   = (int)AppUserStatusEnum.ToDelete,
                        AppUserStatusName = "Пользователь, помеченный к удалению"
                    };

                    await context.AppUserStatuses.AddRangeAsync(
                        AppUserStatus1,
                        AppUserStatus2,
                        AppUserStatus3
                        );

                    await context.SaveChangesAsync();
                }
                #endregion
            }
        }
Ejemplo n.º 4
0
        private void register_button_Click(object sender, RoutedEventArgs e)
        {
            int studentnum;

            if (!int.TryParse(studentid.Text, out studentnum))
            {
                ModernDialog.ShowMessage("学号输入非法", "警告", MessageBoxButton.OK);
            }
            else
            if (studentnum < 201300000 || studentnum > 205000000)
            {
                ModernDialog.ShowMessage("学号大小非法", "警告", MessageBoxButton.OK);
            }
            else
            if (wholename.Text == "" || studentid.Text == "" || accountname.Text == "" || telephonenumber.Text == "" || emailadress.Text == "" || dormitaryadress.Text == "" || passwordBox.Password == "" || comboBox.Text == "")
            {
                ModernDialog.ShowMessage("信息输入不完整,请检查后重试.", "警告", MessageBoxButton.OK);
            }
            else
            {
                IdentityHelper ih = IdentityHelper.GetInstance();
                if (passwordBox.Password.Length <= 5)
                {
                    ModernDialog.ShowMessage("密码过短,长度至少为6位", "警告", MessageBoxButton.OK);
                }
                else
                if (telephonenumber.Text.Length != 11)
                {
                    ModernDialog.ShowMessage("电话长度应为11位", "警告", MessageBoxButton.OK);
                }
                else
                if (!emailadress.Text.Contains("@"))
                {
                    ModernDialog.ShowMessage("非法的邮箱格式,请检查", "警告", MessageBoxButton.OK);
                }
                else
                if (dormitaryadress.Text.Length > 10 || dormitaryadress.Text.Length < 3)
                {
                    ModernDialog.ShowMessage("非法的宿舍格式,请检查", "警告", MessageBoxButton.OK);
                }
                else
                if (passwordBox.Password == passwordBox1.Password)
                {
                    string           passWord = passwordBox.Password;
                    OrganizationEnum org      = ih.Matching(comboBox.Text);
                    //创建第一个用户
                    AppUserStatus status = AppUserStatus.NotApproved;
                    AppRoleEnum   role   = AppRoleEnum.OrgnizationMember;
                    if (isAdministrator)
                    {
                        status = AppUserStatus.Enabled;
                        role   = AppRoleEnum.OrgnizationAdministrator;
                    }
                    if (accountname.Text == "admin" && wholename.Text == "admin")
                    {
                        status = AppUserStatus.Enabled;
                        role   = AppRoleEnum.Administrator;
                    }
                    AppUser au = new AppUser()
                    {
                        StudentNum  = int.Parse(studentid.Text),
                        AccountName = accountname.Text,
                        Name        = wholename.Text,
                        Mobile      = telephonenumber.Text,
                        Email       = emailadress.Text,
                        Room        = dormitaryadress.Text,
                        Status      = status
                    };
                    IdentityResult result = ih.CreateUser(au, passWord, role, org);
                    if (result.Succeeded == true)
                    {
                        if (isAdministrator)
                        {
                            ModernDialog.ShowMessage("注册机构账号成功!账号所属机构:[" + comboBox.Text + "],机构账号用户名:[" + accountname.Text + "],密码:[" + passWord + "],请牢记账号密码!", "", MessageBoxButton.OK);
                        }
                        else
                        {
                            ModernDialog.ShowMessage("注册成功!已发送注册审批请求,请等待管理员审批.", "", MessageBoxButton.OK);
                            System.Windows.Forms.Application.Restart();
                            Application.Current.Shutdown();
                        }
                        this.Close();
                    }
                    else
                    {
                        ModernDialog.ShowMessage("注册失败,错误信息:" + string.Join(",", result.Errors), "", MessageBoxButton.OK);
                    }
                }
                else
                {
                    ModernDialog.ShowMessage("两次密码输入不一致", "", MessageBoxButton.OK);
                }
            }
        }