diff --git a/user-app/src/app/app-routing.module.ts b/user-app/src/app/app-routing.module.ts index 0abcce6..04756f3 100644 --- a/user-app/src/app/app-routing.module.ts +++ b/user-app/src/app/app-routing.module.ts @@ -7,7 +7,24 @@ import { UserDetailComponent } from './pages/user-detail/user-detail.component'; import { CreateUserComponent } from './pages/create-user/create-user.component'; import { AuthGuard } from './guards/auth.guard'; -const routes: Routes = []; +const routes: Routes = [ + { + path:"", + component : UserListComponent, + }, + { + path:"about-us", + component : AboutUsComponent, + }, + { + path:"contact", + component : ContactComponent, + }, + { + path:"create-user", + component : CreateUserComponent, + }, +]; @NgModule({ imports: [RouterModule.forRoot(routes)], diff --git a/user-app/src/app/pages/app/app.component.html b/user-app/src/app/pages/app/app.component.html index c6e9877..fabd40b 100644 --- a/user-app/src/app/pages/app/app.component.html +++ b/user-app/src/app/pages/app/app.component.html @@ -1,6 +1,3 @@ -

- Congratulations! Angular set up is complete. -
-
- You are ready to begin the workshop3. -

+ + + diff --git a/user-app/src/app/pages/app/app.component.scss b/user-app/src/app/pages/app/app.component.scss index 8b13789..02e304e 100644 --- a/user-app/src/app/pages/app/app.component.scss +++ b/user-app/src/app/pages/app/app.component.scss @@ -1 +1,12 @@ +.normal{ + font-size:15px; + color:blue; + +} + +.error{ + font-size:18px; + color:red; + +} diff --git a/user-app/src/app/pages/app/app.component.ts b/user-app/src/app/pages/app/app.component.ts index ba8e2e0..9b1b36d 100644 --- a/user-app/src/app/pages/app/app.component.ts +++ b/user-app/src/app/pages/app/app.component.ts @@ -5,4 +5,34 @@ import { Component } from '@angular/core'; templateUrl: './app.component.html', styleUrls: ['./app.component.scss'], }) -export class AppComponent {} +export class AppComponent { + name: string="ayush"; + + show: boolean=false; + + names = ['Arun', 'Mark', 'Smith', 'Jack']; + + isError: boolean=true; + + userName: string=""; + + constructor() { + console.log('Constructor called'); + } + + changename(){ + // this.name="steve"; + console.log(this.name=this.userName); + } + + + ngOnChanges() { + console.log('on changes called'); + } + ngOnInit() { + console.log('on init called'); + } + ngOnDestroy() { + console.log('on destroy called'); + } +} diff --git a/user-app/src/app/pages/create-user/create-user.component.html b/user-app/src/app/pages/create-user/create-user.component.html index b772924..c8587d2 100644 --- a/user-app/src/app/pages/create-user/create-user.component.html +++ b/user-app/src/app/pages/create-user/create-user.component.html @@ -9,3 +9,45 @@

Enter Details

+
+
+
+

Enter Details

+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ Please enter all the details +
+
+ +
+
+
+
+ diff --git a/user-app/src/app/pages/create-user/create-user.component.ts b/user-app/src/app/pages/create-user/create-user.component.ts index 92e4498..97b58df 100644 --- a/user-app/src/app/pages/create-user/create-user.component.ts +++ b/user-app/src/app/pages/create-user/create-user.component.ts @@ -7,4 +7,38 @@ import { FormBuilder, FormGroup, Validators } from '@angular/forms'; templateUrl: './create-user.component.html', styleUrls: ['./create-user.component.scss'], }) -export class CreateUserComponent {} +export class CreateUserComponent { + hasError: boolean = false; + userFormBuilder: FormGroup; + + constructor(private readonly formBuilder: FormBuilder,private userService: UserService) { + this.userFormBuilder = this.formBuilder.group({ + emailId: formBuilder.control("", [Validators.required, Validators.email]), + name: formBuilder.control("", [Validators.required]), + phoneNumber: formBuilder.control("", [Validators.required]), + companyName: formBuilder.control("", [Validators.required]), + city: formBuilder.control("", [Validators.required]), + street: formBuilder.control("", [Validators.required]), + zipCode: formBuilder.control("", [Validators.required]), + }); + } + + addUser() { + this.hasError = false; + if (this.userFormBuilder.valid) { + this.userService.addUser({ + id: Math.floor(Math.random() * 10), + name: this.userFormBuilder.controls['name'].value, + emailId: this.userFormBuilder.controls['emailId'].value, + phoneNumber: this.userFormBuilder.controls['phoneNumber'].value, + companyName: this.userFormBuilder.controls['companyName'].value, + street: this.userFormBuilder.controls['street'].value, + city: this.userFormBuilder.controls['city'].value, + zipCode: this.userFormBuilder.controls['zipCode'].value, + }); + } else { + this.hasError = true; + } + } + +} diff --git a/user-app/src/app/pages/header/header.component.html b/user-app/src/app/pages/header/header.component.html index ad4f732..2f91013 100644 --- a/user-app/src/app/pages/header/header.component.html +++ b/user-app/src/app/pages/header/header.component.html @@ -1 +1,41 @@ -

Header Works

+
+ + + +
+ + + diff --git a/user-app/src/app/pages/header/header.component.ts b/user-app/src/app/pages/header/header.component.ts index 7082d31..d37b4f5 100644 --- a/user-app/src/app/pages/header/header.component.ts +++ b/user-app/src/app/pages/header/header.component.ts @@ -1,8 +1,15 @@ -import { Component } from '@angular/core'; +import { Component,Input,Output,EventEmitter} from '@angular/core'; @Component({ selector: 'app-header', templateUrl: './header.component.html', styleUrls: ['./header.component.scss'], }) -export class HeaderComponent {} +export class HeaderComponent { + @Input() title:string; + @Output() changeValue=new EventEmitter + + OnClick(){ + this.changeValue.emit(); + } +} diff --git a/user-app/src/app/pages/user-card/user-card.component.html b/user-app/src/app/pages/user-card/user-card.component.html index c05cd52..98fa92c 100644 --- a/user-app/src/app/pages/user-card/user-card.component.html +++ b/user-app/src/app/pages/user-card/user-card.component.html @@ -1,3 +1,12 @@
-

User Card works

+

+ {{ emailId }}

+ + + + +
+ diff --git a/user-app/src/app/pages/user-card/user-card.component.ts b/user-app/src/app/pages/user-card/user-card.component.ts index 8a5b52a..06c839a 100644 --- a/user-app/src/app/pages/user-card/user-card.component.ts +++ b/user-app/src/app/pages/user-card/user-card.component.ts @@ -6,4 +6,21 @@ import { UserService } from 'src/app/services/user.service'; templateUrl: './user-card.component.html', styleUrls: ['./user-card.component.scss'], }) -export class UserCardComponent {} +export class UserCardComponent { + @Input() id: number; +@Input() name: string; +@Input() emailId: string; +@Input() phone: string; + +@Output() deleteUser = new EventEmitter(); + +constructor(private userService: UserService) {} + +setUserId(id: number) { + this.userService.userId = id; +} + +deleteUserById(id) { + this.deleteUser.emit(id); +} +} diff --git a/user-app/src/app/pages/user-list/user-list.component.html b/user-app/src/app/pages/user-list/user-list.component.html index 9326de9..dfc612c 100644 --- a/user-app/src/app/pages/user-list/user-list.component.html +++ b/user-app/src/app/pages/user-list/user-list.component.html @@ -1,3 +1,18 @@
-

User List Works

+
+

User List

+ +
+ +
+ +
+ diff --git a/user-app/src/app/pages/user-list/user-list.component.ts b/user-app/src/app/pages/user-list/user-list.component.ts index 60cb003..85d900a 100644 --- a/user-app/src/app/pages/user-list/user-list.component.ts +++ b/user-app/src/app/pages/user-list/user-list.component.ts @@ -7,4 +7,17 @@ import { UserService } from 'src/app/services/user.service'; templateUrl: './user-list.component.html', styleUrls: ['./user-list.component.scss'], }) -export class UserListComponent {} +export class UserListComponent { + constructor(public userService:UserService){} + users:User[]=[]; + ngOnInit(){ + //console.log("here") + this.userService.getUsers(); + // this.users = this.userService.users; + } + + + + +} + diff --git a/user-app/src/app/services/user.service.ts b/user-app/src/app/services/user.service.ts index 0160cc5..ba033da 100644 --- a/user-app/src/app/services/user.service.ts +++ b/user-app/src/app/services/user.service.ts @@ -1,5 +1,6 @@ import { Injectable } from '@angular/core'; import { User, UserDetail } from '../model/common.dto'; +import { HttpClient } from '@angular/common/http'; @Injectable({ providedIn: 'root', @@ -9,17 +10,33 @@ export class UserService { userId: number; users: User[] = []; - constructor() {} + constructor(private http: HttpClient) { } userAleadyAdded(): boolean { return true; } - getUsers(): void {} + getUsers(): void { + this.http.get(this.baseUrl).subscribe( + (user: User[]) => { + this.users = user; + console.log('Users:', this.users); // You can handle the retrieved users here or pass them to another method + }, + ); + } + + + + - getUserDetail(id: number) {} + getUserDetail(id: number) { + // const url = `${this.baseUrl}/${id}`; + + } addUser(user: UserDetail): void {} deleteUser(id: number): void {} + } +