Skip to content

Commit

Permalink
Merge pull request #106 from alirizaadiyahsi/dev
Browse files Browse the repository at this point in the history
v0.3.0 merge
  • Loading branch information
alirizaadiyahsi authored Dec 1, 2018
2 parents 28721f2 + ae49d17 commit 3b71e9e
Show file tree
Hide file tree
Showing 19 changed files with 90 additions and 67 deletions.
15 changes: 15 additions & 0 deletions src/Nucleus.Application/ApplicationServiceAutoMapperProfile.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
using AutoMapper;
using Nucleus.Application.Users.Dto;
using Nucleus.Core.Users;

namespace Nucleus.Application
{
public class ApplicationServiceAutoMapperProfile : Profile
{
public ApplicationServiceAutoMapperProfile()
{
CreateMap<User, UserDto>()
.ForMember(u => u.Password, opt => opt.Ignore());
}
}
}
11 changes: 0 additions & 11 deletions src/Nucleus.Application/ApplicationServiceCollectionExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
using Nucleus.Application.Permissions;
using Nucleus.Application.Roles;
using Nucleus.Application.Users;
using Nucleus.Application.Users.Dto;
using Nucleus.Core.Users;

namespace Nucleus.Application
{
Expand All @@ -23,13 +21,4 @@ public static IServiceCollection ConfigureNucleusApplication(this IServiceCollec
return services;
}
}

public class ApplicationServiceAutoMapperProfile : Profile
{
public ApplicationServiceAutoMapperProfile()
{
CreateMap<User, UserDto>()
.ForMember(u => u.Password, opt => opt.Ignore());
}
}
}
2 changes: 1 addition & 1 deletion src/Nucleus.Application/Nucleus.Application.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<ItemGroup>
<PackageReference Include="AutoMapper" Version="8.0.0" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="5.0.1" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="6.0.0" />
<PackageReference Include="System.Linq.Dynamic.Core" Version="1.0.9" />
</ItemGroup>

Expand Down
2 changes: 1 addition & 1 deletion src/Nucleus.Application/Roles/RoleAppService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ public async Task<IdentityResult> EditRoleAsync(CreateOrUpdateRoleInput input)
return IdentityResult.Failed(new IdentityError
{
Code = "RoleNameAlreadyExist",
Description = "Role name '" + input.Role.Name + "' is already taken!"
Description = "This role name is already exists!"
});
}
role.Name = input.Role.Name;
Expand Down
2 changes: 1 addition & 1 deletion src/Nucleus.Application/Users/UserAppService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ public async Task<IdentityResult> EditUserAsync(CreateOrUpdateUserInput input)
return IdentityResult.Failed(new IdentityError
{
Code = "UserNameAlreadyExist",
Description = "User name '" + input.User.UserName + "' is already taken!"
Description = "This user name is already exist!"
});
}

Expand Down
2 changes: 1 addition & 1 deletion src/Nucleus.Utilities/Nucleus.Utilities.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ public async Task<ActionResult<LoginOutput>> Login([FromBody]LoginInput input)
{
return BadRequest(new List<NameValueDto>
{
new NameValueDto("UserNameOrPasswordIncorrect", "The user name or password is incorrect.")
new NameValueDto("UserNameOrPasswordIncorrect", "The user name or password is incorrect!")
});
}

Expand Down
34 changes: 10 additions & 24 deletions src/Nucleus.Web.Vue/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion src/Nucleus.Web.Vue/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"vue-class-component": "^6.3.2",
"vue-property-decorator": "^7.2.0",
"vue-router": "^3.0.1",
"vuetify": "^1.3.9",
"vuetify": "^1.3.11",
"material-design-icons-iconfont": "4.0.2",
"sweetalert2": "^7.29.1",
"vue-i18n": "^8.3.2"
Expand Down
2 changes: 1 addition & 1 deletion src/Nucleus.Web.Vue/src/account/views/login/login.vue
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<v-card-text>
<div v-for="error in errors" :key="error.name">
<v-alert :value="true" type="error">
{{error.value}}
{{$t(error.name)}}
</v-alert>
</div>
<v-form ref="form" @keyup.native.enter="onSubmit">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<v-card-text>
<div v-for="error in errors" :key="error.name">
<v-alert :value="true" type="error">
{{error.value}}
{{$t(error.name)}}
</v-alert>
</div>
<v-form ref="form" @keyup.native.enter="onSubmit">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<v-card-text>
<div v-for="error in errors" :key="error.name">
<v-alert :value="true" type="error">
{{error.value}}
{{$t(error.name)}}
</v-alert>
</div>
<v-form ref="form">
Expand Down
9 changes: 9 additions & 0 deletions src/Nucleus.Web.Vue/src/admin/views/roles/role-list.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ export default class RoleListComponent extends NucleusComponentBase {
public formTitle = '';
public pagination = {};
public search = '';
public selectAll = false;

get headers() {
return [
Expand Down Expand Up @@ -112,4 +113,12 @@ export default class RoleListComponent extends NucleusComponentBase {
this.loading = false;
});
}

public selectAllPermissions() {
this.createOrUpdateRoleInput.grantedPermissionIds = [];
if (this.selectAll) {
this.createOrUpdateRoleInput.grantedPermissionIds =
((this.allPermissions.map((permissions) => permissions.id)) as string[]);
}
}
}
6 changes: 3 additions & 3 deletions src/Nucleus.Web.Vue/src/admin/views/roles/role-list.vue
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,15 @@
<v-card-text>
<div v-for="error in errors" :key="error.name">
<v-alert :value="true" type="error">
{{error.value}}
{{$t(error.name)}}
</v-alert>
</div>
<v-form ref="form" @submit.prevent="save">
<v-text-field v-model="createOrUpdateRoleInput.role.name"
:label="$t('RoleName')"
:rules="[requiredError]"></v-text-field>
<v-list dense subheader>
<v-subheader>{{$t('SelectPermissions')}}</v-subheader>
<v-list dense>
<v-checkbox v-model="selectAll" :label="$t('SelectPermissions')" @click="selectAllPermissions"></v-checkbox>
<v-list-tile v-for="item in allPermissions" :key="item.id">
<v-list-tile-content>
<v-checkbox v-model="createOrUpdateRoleInput.grantedPermissionIds" :label="item.displayName" :value="item.id"></v-checkbox>
Expand Down
8 changes: 6 additions & 2 deletions src/Nucleus.Web.Vue/src/admin/views/users/user-list.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ export default class UserListComponent extends NucleusComponentBase {
public errors: INameValueDto[] = [];
public allRoles: IRoleDto[] = [];
public isEdit = false;
public selectAll = false;

get headers() {
return [
Expand Down Expand Up @@ -117,7 +118,10 @@ export default class UserListComponent extends NucleusComponentBase {
});
}

public isAdminUser(userName: string) {
return userName.includes('admin');
public selectAllRoles() {
this.createOrUpdateUserInput.grantedRoleIds = [];
if (this.selectAll) {
this.createOrUpdateUserInput.grantedRoleIds = ((this.allRoles.map((roles) => roles.id)) as string[]);
}
}
}
30 changes: 15 additions & 15 deletions src/Nucleus.Web.Vue/src/admin/views/users/user-list.vue
Original file line number Diff line number Diff line change
Expand Up @@ -24,30 +24,30 @@
<v-card-text>
<div v-for="error in errors" :key="error.name">
<v-alert :value="true" type="error">
{{error.value}}
{{$t(error.name)}}
</v-alert>
</div>
<v-form ref="form" @keyup.native.enter="save">
<v-text-field name="userName" :label="$t('UserName')" type="text"
v-model="createOrUpdateUserInput.user.userName"
<v-text-field name="userName" :label="$t('UserName')" type="text"
v-model="createOrUpdateUserInput.user.userName"
:rules="[requiredError]"></v-text-field>
<v-text-field name="email" :label="$t('EmailAddress')" type="text"
v-model="createOrUpdateUserInput.user.email"
<v-text-field name="email" :label="$t('EmailAddress')" type="text"
v-model="createOrUpdateUserInput.user.email"
:rules="[requiredError,emailError]"></v-text-field>
<v-text-field v-if="!isEdit" name="password" :label="$t('Password')" type="password"
v-model="createOrUpdateUserInput.user.password"
<v-text-field v-if="!isEdit" name="password" :label="$t('Password')" type="password"
v-model="createOrUpdateUserInput.user.password"
:rules="[requiredError]"></v-text-field>
<v-text-field v-if="isEdit" name="password" :label="$t('Password')" type="password"
<v-text-field v-if="isEdit" name="password" :label="$t('Password')" type="password"
v-model="createOrUpdateUserInput.user.password"></v-text-field>
<v-text-field v-if="!isEdit" name="passwordRepeat" :label="$t('PasswordRepeat')" type="password"
v-model="createOrUpdateUserInput.user.passwordRepeat"
:error-messages='passwordMatchError(createOrUpdateUserInput.user.password,createOrUpdateUserInput.user.passwordRepeat)'
v-model="createOrUpdateUserInput.user.passwordRepeat"
:error-messages='passwordMatchError(createOrUpdateUserInput.user.password,createOrUpdateUserInput.user.passwordRepeat)'
:rules="[requiredError]"></v-text-field>
<v-text-field v-if="isEdit" name="passwordRepeat" :label="$t('PasswordRepeat')" type="password"
v-model="createOrUpdateUserInput.user.passwordRepeat"
v-model="createOrUpdateUserInput.user.passwordRepeat"
:error-messages='passwordMatchError(createOrUpdateUserInput.user.password,createOrUpdateUserInput.user.passwordRepeat)'></v-text-field>
<v-list dense subheader>
<v-subheader>{{$t('SelectRoles')}}</v-subheader>
<v-list dense>
<v-checkbox v-model="selectAll" :label="$t('SelectRoles')" @click="selectAllRoles"></v-checkbox>
<v-list-tile v-for="item in allRoles" :key="item.id">
<v-list-tile-content>
<v-checkbox v-model="createOrUpdateUserInput.grantedRoleIds" :label="item.name" :value="item.id"></v-checkbox>
Expand Down Expand Up @@ -76,12 +76,12 @@
<td>{{ props.item.userName }}</td>
<td>{{ props.item.email }}</td>
<td class="justify-center layout px-0">
<v-icon v-if="!isAdminUser(props.item.userName) && nucleus.auth.isGranted('Permissions_User_Update')" small
<v-icon v-if="nucleus.auth.isGranted('Permissions_User_Update')" small
class="mr-2"
@click="editUser(props.item.id)">
edit
</v-icon>
<v-icon v-if="!isAdminUser(props.item.userName) && nucleus.auth.isGranted('Permissions_User_Delete')" small
<v-icon v-if="nucleus.auth.isGranted('Permissions_User_Delete')" small
@click="deleteUser(props.item.id)">
delete
</v-icon>
Expand Down
Loading

0 comments on commit 3b71e9e

Please sign in to comment.