コード例 #1
0
        protected override void Up(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.CreateTable(
                name: "User",
                columns: table => new
            {
                ID         = table.Column <Guid>(nullable: false),
                CreateTime = table.Column <DateTime>(nullable: false),
                UpdateTime = table.Column <DateTime>(nullable: false),
                Name       = table.Column <string>(maxLength: 100, nullable: false),
                Account    = table.Column <string>(maxLength: 100, nullable: false),
                Password   = table.Column <string>(maxLength: 32, nullable: false)
            },
                constraints: table =>
            {
                table.PrimaryKey("PK_User", x => x.ID);
            });
            var    adminID  = Guid.NewGuid();
            string password = AuthorityConfig.EncodePassword(AuthorityConfig.DefaultPassword);

            migrationBuilder.Sql($@"
Insert into [User]
Values('{adminID.ToString().ToUpper()}', '0001-01-01 00:00:00', '0001-01-01 00:00:00', '管理员', 'Admin', '{password}')
");
        }
コード例 #2
0
ファイル: UserServiceImpl.cs プロジェクト: lvtao2415/Materal
        public async Task AddUserAsync(AddUserModel model)
        {
            if (await _userRepository.ExistedAsync(m => m.Account.Equals(model.Account)))
            {
                throw new AuthorityException("账号已存在");
            }
            var user = _mapper.Map <User>(model);

            user.ID       = Guid.NewGuid();
            user.Password = AuthorityConfig.EncodePassword(AuthorityConfig.DefaultPassword);
            _authoritySqliteEFUnitOfWork.RegisterAdd(user);
            await _authoritySqliteEFUnitOfWork.CommitAsync();
        }
コード例 #3
0
ファイル: UserServiceImpl.cs プロジェクト: lvtao2415/Materal
        public async Task <UserDTO> LoginAsync(LoginModel model)
        {
            User userFromDB = await _userRepository.FirstOrDefaultAsync(m => m.Account.Equals(model.Account));

            if (userFromDB == null)
            {
                throw new AuthorityException("账号错误");
            }
            if (!userFromDB.Password.Equals(AuthorityConfig.EncodePassword(model.Password)))
            {
                throw new AuthorityException("密码错误");
            }
            var result = _mapper.Map <UserDTO>(userFromDB);

            return(result);
        }
コード例 #4
0
ファイル: UserServiceImpl.cs プロジェクト: lvtao2415/Materal
        public async Task ChangePasswordAsync(ChangePasswordModel model)
        {
            User userFromDB = await _userRepository.FirstOrDefaultAsync(model.ID);

            if (userFromDB == null)
            {
                throw new AuthorityException("用户不存在");
            }
            if (!userFromDB.Password.Equals(AuthorityConfig.EncodePassword(model.OldPassword)))
            {
                throw new AuthorityException("旧密码错误");
            }
            userFromDB.Password = AuthorityConfig.EncodePassword(model.NewPassword);
            _authoritySqliteEFUnitOfWork.RegisterEdit(userFromDB);
            await _authoritySqliteEFUnitOfWork.CommitAsync();
        }
コード例 #5
0
ファイル: UserServiceImpl.cs プロジェクト: lvtao2415/Materal
        public async Task <string> ResetPasswordAsync(Guid id)
        {
            User userFromDB = await _userRepository.FirstOrDefaultAsync(id);

            if (userFromDB == null)
            {
                throw new AuthorityException("用户不存在");
            }
            string password = AuthorityConfig.DefaultPassword;

            userFromDB.Password = AuthorityConfig.EncodePassword(password);
            _authoritySqliteEFUnitOfWork.RegisterEdit(userFromDB);
            await _authoritySqliteEFUnitOfWork.CommitAsync();

            return(password);
        }