From f1447367d8f786c909f863b6d89d04ca7d1dfb0a Mon Sep 17 00:00:00 2001 From: Elu Date: Fri, 26 May 2023 16:43:19 +0530 Subject: [PATCH] angular --- user-app/src/app/app-routing.module.ts | 33 ++++++++++++- user-app/src/app/pages/app/app.component.html | 28 ++++++++++- user-app/src/app/pages/app/app.component.scss | 5 +- user-app/src/app/pages/app/app.component.ts | 39 ++++++++++++++- .../create-user/create-user.component.html | 48 +++++++++++++++---- .../create-user/create-user.component.ts | 35 +++++++++++++- .../app/pages/header/header.component.html | 21 +++++++- .../src/app/pages/header/header.component.ts | 12 ++++- .../pages/user-card/user-card.component.html | 9 +++- .../pages/user-card/user-card.component.ts | 19 +++++++- .../pages/user-list/user-list.component.html | 27 ++++++++++- .../pages/user-list/user-list.component.ts | 27 ++++++++++- user-app/src/app/services/user.service.ts | 15 ++++-- user-app/src/index.html | 1 + 14 files changed, 294 insertions(+), 25 deletions(-) diff --git a/user-app/src/app/app-routing.module.ts b/user-app/src/app/app-routing.module.ts index 0abcce6..61ea7e6 100644 --- a/user-app/src/app/app-routing.module.ts +++ b/user-app/src/app/app-routing.module.ts @@ -7,10 +7,39 @@ 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: 'user-list', + component: UserListComponent, + }, + { + path: 'about-us', + component: AboutUsComponent, + }, + { + path:'contact', + component: ContactComponent, + }, + { + path:'create-user', + component: + CreateUserComponent, + }, + { + path:'user-deatil', + component: + UserDetailComponent + } +] + @NgModule({ imports: [RouterModule.forRoot(routes)], exports: [RouterModule], }) -export class AppRoutingModule {} + + +export class AppRoutingModule { + +} diff --git a/user-app/src/app/pages/app/app.component.html b/user-app/src/app/pages/app/app.component.html index c6e9877..941a54f 100644 --- a/user-app/src/app/pages/app/app.component.html +++ b/user-app/src/app/pages/app/app.component.html @@ -1,6 +1,30 @@ -

+ + + + + + + diff --git a/user-app/src/app/pages/app/app.component.scss b/user-app/src/app/pages/app/app.component.scss index 8b13789..f1237f0 100644 --- a/user-app/src/app/pages/app/app.component.scss +++ b/user-app/src/app/pages/app/app.component.scss @@ -1 +1,4 @@ - +.normal{ + font-size: 50px; + color: blue; + } diff --git a/user-app/src/app/pages/app/app.component.ts b/user-app/src/app/pages/app/app.component.ts index ba8e2e0..27a6ad0 100644 --- a/user-app/src/app/pages/app/app.component.ts +++ b/user-app/src/app/pages/app/app.component.ts @@ -1,8 +1,45 @@ import { Component } from '@angular/core'; + @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.scss'], }) -export class AppComponent {} + +export class AppComponent { + name:string='Elham'; + + show:boolean=false;//to show screen give true else false + + isError: boolean=false; + + username:string=""; + + + + + + constructor() { + console.log('Constructor called'); + } + + changeName(){ + this.name=this.username; + } + + ngOnChanges() { + console.log('on changes called'); + } + ngOnInit() { + console.log('on init called'); + + } + ngOnDestroy() { + console.log('on destroy called'); + } + + names = ['Arun', 'Mark', 'Smith', 'Jack']; + + +} 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..7b259cf 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 @@ -1,11 +1,43 @@
-
-
-

Enter Details

-
- - -
+ +
+

Enter Details

+
+ +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ Please enter all the details +
+
+ +
+
-
+
+ + \ No newline at end of file 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..512668b 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,37 @@ 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..ffdee14 100644 --- a/user-app/src/app/pages/header/header.component.html +++ b/user-app/src/app/pages/header/header.component.html @@ -1 +1,20 @@ -

Header Works

+ + + + +
+ logo + +
\ No newline at end of file diff --git a/user-app/src/app/pages/header/header.component.ts b/user-app/src/app/pages/header/header.component.ts index 7082d31..9657523 100644 --- a/user-app/src/app/pages/header/header.component.ts +++ b/user-app/src/app/pages/header/header.component.ts @@ -1,8 +1,16 @@ -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..81bfb2c 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,10 @@
-

User Card works

+

+ {{ emailId }}

+ {{ city }}
+ +
+ 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..cd9f30e 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() city: 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..0ace4e0 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,28 @@ -
+ + + +
+
+

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..3b2c42e 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,29 @@ import { UserService } from 'src/app/services/user.service'; templateUrl: './user-list.component.html', styleUrls: ['./user-list.component.scss'], }) -export class UserListComponent {} +export class UserListComponent { + users:User[]=[ + { + name:'elham', + city:'asdc', + emailId:'elhamasas@gmail.com', + id:1 + } + ] + constructor(public userService: UserService) {} + +ngOnInit() { + this.userService.getUsers(); + // if(!this.userService.userAleadyAdded()) + // { + + // this.userService.getUsers(); + // } +} + +deleteUser(event) { + this.userService.deleteUser(event) +} + + +} diff --git a/user-app/src/app/services/user.service.ts b/user-app/src/app/services/user.service.ts index 0160cc5..eb46965 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,15 +10,23 @@ export class UserService { userId: number; users: User[] = []; - constructor() {} + constructor(private http:HttpClient) {} userAleadyAdded(): boolean { return true; } - getUsers(): void {} + getUsers() { + this.http.get(this.baseUrl).subscribe((user:User[])=>{ + console.log(user); + this.users=user; + }) + } - getUserDetail(id: number) {} + getUserDetail(id: number) { + console.log(id); + return this.http.get(this.baseUrl + '/' + id); + } addUser(user: UserDetail): void {} diff --git a/user-app/src/index.html b/user-app/src/index.html index 01ea96e..d2db0c9 100644 --- a/user-app/src/index.html +++ b/user-app/src/index.html @@ -9,5 +9,6 @@ +