summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--portal-FE-common/src/app/shared/services/users/users.service.ts3
-rw-r--r--portal-FE-os/src/app/.gitignore1
-rw-r--r--portal-FE-os/src/app/layout/components/search-users/search-users.component.html (renamed from portal-FE-common/src/app/layout/components/search-users/search-users.component.html)3
-rw-r--r--portal-FE-os/src/app/layout/components/search-users/search-users.component.scss (renamed from portal-FE-common/src/app/layout/components/search-users/search-users.component.scss)0
-rw-r--r--portal-FE-os/src/app/layout/components/search-users/search-users.component.spec.ts (renamed from portal-FE-common/src/app/layout/components/search-users/search-users.component.spec.ts)0
-rw-r--r--portal-FE-os/src/app/layout/components/search-users/search-users.component.ts (renamed from portal-FE-common/src/app/layout/components/search-users/search-users.component.ts)14
-rw-r--r--portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.html2
-rw-r--r--portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.ts22
8 files changed, 34 insertions, 11 deletions
diff --git a/portal-FE-common/src/app/shared/services/users/users.service.ts b/portal-FE-common/src/app/shared/services/users/users.service.ts
index 38ebedd8..d977f724 100644
--- a/portal-FE-common/src/app/shared/services/users/users.service.ts
+++ b/portal-FE-common/src/app/shared/services/users/users.service.ts
@@ -78,8 +78,7 @@ export class UsersService {
addNewUser(newUserData){
console.log("User service : ", newUserData);
- return this.http.post(this.api.saveNewUser, newUserData).subscribe((response)=>{
- });
+ return this.http.post(this.api.saveNewUser, newUserData);
}
}
diff --git a/portal-FE-os/src/app/.gitignore b/portal-FE-os/src/app/.gitignore
index 75b6ddab..fe6b8ee1 100644
--- a/portal-FE-os/src/app/.gitignore
+++ b/portal-FE-os/src/app/.gitignore
@@ -1,5 +1,6 @@
/ng-material-module.ts
/layout/
+!layout/components/search-users
/modals/
/shared/
!shared/interceptors/
diff --git a/portal-FE-common/src/app/layout/components/search-users/search-users.component.html b/portal-FE-os/src/app/layout/components/search-users/search-users.component.html
index 03624491..4c318f9f 100644
--- a/portal-FE-common/src/app/layout/components/search-users/search-users.component.html
+++ b/portal-FE-os/src/app/layout/components/search-users/search-users.component.html
@@ -67,4 +67,7 @@
<tr mat-row (click)="setSelectedUser(row)" id="table-row-{{i}}" [ngClass]="{ 'selected': row === selectedUser }"
*matRowDef="let row; columns: displayedColumns; let i = index;"></tr>
</table>
+</div>
+<div class="search-user-container" *ngIf="noUserFlag">
+ <p>{{message}} Or <a href="javascript:void(0);" (click)="addNewUser()"><b>Click Here</b></a> to add <b>New User!</b></p>
</div> \ No newline at end of file
diff --git a/portal-FE-common/src/app/layout/components/search-users/search-users.component.scss b/portal-FE-os/src/app/layout/components/search-users/search-users.component.scss
index 95a2a5ec..95a2a5ec 100644
--- a/portal-FE-common/src/app/layout/components/search-users/search-users.component.scss
+++ b/portal-FE-os/src/app/layout/components/search-users/search-users.component.scss
diff --git a/portal-FE-common/src/app/layout/components/search-users/search-users.component.spec.ts b/portal-FE-os/src/app/layout/components/search-users/search-users.component.spec.ts
index 9db3e395..9db3e395 100644
--- a/portal-FE-common/src/app/layout/components/search-users/search-users.component.spec.ts
+++ b/portal-FE-os/src/app/layout/components/search-users/search-users.component.spec.ts
diff --git a/portal-FE-common/src/app/layout/components/search-users/search-users.component.ts b/portal-FE-os/src/app/layout/components/search-users/search-users.component.ts
index b93ffd61..10e4e041 100644
--- a/portal-FE-common/src/app/layout/components/search-users/search-users.component.ts
+++ b/portal-FE-os/src/app/layout/components/search-users/search-users.component.ts
@@ -56,6 +56,7 @@ export class SearchUsersComponent implements OnInit {
@ViewChild(MatSort) sort: MatSort;
@ViewChild(MatPaginator) paginator: MatPaginator;
@Output() passBackSelectedUser: EventEmitter<any> = new EventEmitter();
+ @Output() userNotFoundFlag = new EventEmitter<boolean>();
searchString: string;
txtResults = 'result';
searchUsersResults: any;
@@ -65,6 +66,8 @@ export class SearchUsersComponent implements OnInit {
selectedUser: any;
displayedColumns: string[] = ['firstName'];
dataSourceMap = new MatTableDataSource(this.searchUsersResults);
+ submitted = false;
+ message = " No users found with your query. Please change your search and try again.";
ngOnInit() {
this.searchString = '';
@@ -77,6 +80,7 @@ export class SearchUsersComponent implements OnInit {
this.passBackSelectedUser.emit(systemUser);
}
+ noUserFlag: boolean = false;
searchUsers() {
if (!this.isSystemUser) {
this.isLoading = true;
@@ -85,11 +89,10 @@ export class SearchUsersComponent implements OnInit {
this.userService.searchUsers(this.searchString).subscribe((_data: PortalAdmin) => {
this.searchUsersResults = _data;
if (this.searchUsersResults == null || this.searchUsersResults.length == 0) {
- const modelRef = this.ngModal.open(ConfirmationModalComponent)
- modelRef.componentInstance.title = "Confirmation";
- modelRef.componentInstance.message = " No users found with your query. Please change your search and try again."
+ this.noUserFlag = true;
this.isLoading = false;
} else {
+ this.noUserFlag = false;
this.showUserTable = true;
this.isLoading = false;
this.dataSourceMap = new MatTableDataSource(this.searchUsersResults);
@@ -104,4 +107,9 @@ export class SearchUsersComponent implements OnInit {
this.passBackSelectedUser.emit(this.selectedUser);
}
+ addNewUser() {
+ console.log("Emit the value to parent");
+ this.userNotFoundFlag.emit(true);
+ }
+
}
diff --git a/portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.html b/portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.html
index 7fc35e44..bd9d69b6 100644
--- a/portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.html
+++ b/portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.html
@@ -113,6 +113,6 @@
</form>
</div>
<div class="modal-footer">
- <button type="submit" class="btn btn-primary" (click)="addUser()" [disabled]="addNewUserForm.invalid">Next</button> &nbsp;
+ <button type="submit" class="btn btn-primary" (click)="addUser()">Next</button> &nbsp;
<button type="button" class="btn btn-primary" aria-label="Close" (click)="activeModal.dismiss('Cross')">Close</button>
</div>
diff --git a/portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.ts b/portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.ts
index bea0fcdb..33d2b331 100644
--- a/portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.ts
+++ b/portal-FE-os/src/app/pages/users/user-details-form/user-details-form.component.ts
@@ -2,7 +2,8 @@ import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { MustMatch } from 'src/app/shared/helpers/must-match-validator';
import { UsersService } from 'src/app/shared/services';
-import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
+import { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';
+import { ConfirmationModalComponent } from 'src/app/modals/confirmation-modal/confirmation-modal.component';
@Component({
selector: 'app-user-details-form',
@@ -13,9 +14,10 @@ export class UserDetailsFormComponent implements OnInit {
addNewUserForm: FormGroup;
submitted = false;
- constructor(private formBuilder: FormBuilder,
+ constructor(private formBuilder: FormBuilder,
private usersService: UsersService,
- public activeModal: NgbActiveModal) { }
+ public activeModal: NgbActiveModal,
+ public ngbModal: NgbModal) { }
ngOnInit() {
this.addNewUserForm = this.formBuilder.group({
@@ -24,7 +26,7 @@ export class UserDetailsFormComponent implements OnInit {
lastName: ['', Validators.required],
email: ['', [Validators.required, Validators.email]],
loginId: ['', Validators.required],
- loginPwd: ['', [Validators.required, Validators.minLength(6)]],
+ loginPwd: ['', Validators.required],
confirmPassword: ['', Validators.required]
}, {
validator: MustMatch('loginPwd', 'confirmPassword')
@@ -44,7 +46,17 @@ export class UserDetailsFormComponent implements OnInit {
console.log("New user Json : " + JSON.stringify(this.addNewUserForm.value));
console.log("Get Raw value : " + this.addNewUserForm.getRawValue());
let newUserFormData = JSON.stringify(this.addNewUserForm.getRawValue());
- this.usersService.addNewUser(newUserFormData);
+ this.usersService.addNewUser(newUserFormData).subscribe(result => {
+ console.log("Result : ", result);
+ const modalSuccess = this.ngbModal.open(ConfirmationModalComponent);
+ modalSuccess.componentInstance.title = "Success";
+ modalSuccess.componentInstance.message = 'User added Successfully!';
+ }, error => {
+ console.log("Error : ", error);
+ const modalErrorRef = this.ngbModal.open(ConfirmationModalComponent);
+ modalErrorRef.componentInstance.title = "Error";
+ modalErrorRef.componentInstance.message = 'Something went wrong. Error Message: ' + error.message;
+ })
this.activeModal.close();
}