diff --git a/src/Client/src/app/models/Account.ts b/src/Client/src/app/models/Account.ts index 3ae7944..99c9acf 100644 --- a/src/Client/src/app/models/Account.ts +++ b/src/Client/src/app/models/Account.ts @@ -1,15 +1,13 @@ -import { WebSiteData } from "./WebsiteData"; - export class Account { - public id: number = -1; + public id: number = 0; public userName: string = ""; public email: string = ""; public emailVerified: boolean = false; public passwordHash: string = ""; - public siteData: WebSiteData = new WebSiteData(); - public error: string = ""; - - constructor(init?: Partial) { - Object.assign(this, init); - } + public failedPasswordLock: boolean = false; + public passwordAttempts: number = 5; + public currentPasswordAttempts: number = 0; + public role: string = "Generic"; + public emailToken: string = ""; + public dataServer: string = ""; } \ No newline at end of file diff --git a/src/Client/src/app/models/Company.ts b/src/Client/src/app/models/Company.ts new file mode 100644 index 0000000..684ae1e --- /dev/null +++ b/src/Client/src/app/models/Company.ts @@ -0,0 +1,20 @@ +export class Company { + public id: number = 0; + public name: string = ""; + public email: string = ""; + public emailVerified: boolean = false; + public websiteURL: string = ""; + public logoURL: string = ""; + public phone: string = ""; + public postalCode: string = ""; + public country: string = ""; // 2 Letter Country Code + public stateOrRegion: string = ""; + public city: string = ""; + public description: string = ""; +} + +export class Employee { + public id: number = 0; + public accountID: number = 0; + public companyID: number = 0; +} \ No newline at end of file diff --git a/src/Client/src/app/models/JobListing.ts b/src/Client/src/app/models/JobListing.ts new file mode 100644 index 0000000..060dadf --- /dev/null +++ b/src/Client/src/app/models/JobListing.ts @@ -0,0 +1,17 @@ +export class WebSiteData { + public id: number = 0; + public companyID: number = 0; + public title: string = ""; + public postalCode: string = ""; + public country: string = ""; + public stateOrRegion: string = ""; + public city: string = ""; + public salaryMin: number = 0; + public salaryMax: number = 0; + public jobType: string = ""; + public remote: boolean = false; + public description: string = ""; + public createdTime: Date = new Date(); + public modifiedTime: Date = new Date(); + public isDeleted: boolean = false; +} \ No newline at end of file diff --git a/src/Client/src/app/models/Product.ts b/src/Client/src/app/models/Product.ts deleted file mode 100644 index 1904aab..0000000 --- a/src/Client/src/app/models/Product.ts +++ /dev/null @@ -1,15 +0,0 @@ -export class Product { - public id: number = -1; - public name: string = ""; - public description: string = ""; - public curShowingIMG: number = 0; - public images: ProductImage[] = []; - public cost: number = 0; - public url: string = ""; -} - -export class ProductImage { - imageID: number = 0; - productID: number = 0; - imageSrc: string = ""; -} \ No newline at end of file diff --git a/src/Client/src/app/models/Resume.ts b/src/Client/src/app/models/Resume.ts new file mode 100644 index 0000000..d054b9a --- /dev/null +++ b/src/Client/src/app/models/Resume.ts @@ -0,0 +1,106 @@ +export class Resume { + public id: number = 0; + public accountID: number = 0; + public name: string = ""; + public field: string = ""; + public email: string = ""; + public phoneNumber: string = ""; + public postalCode: string = ""; + public country: string = ""; + public stateOrRegion: string = ""; + public city: string = ""; + public isActive: boolean = false; + public experience: ResumeExperience[] = []; + public military: ResumeMilitary = []; + public education: ResumeEducation[] = []; + public skills: ResumeSkill[] = []; + public languages: ResumeLanguage[] = []; + public certification: ResumeCertification[] = []; + public projects: ResumeProject[] = []; +} + +export class ResumeExperience { + id: number = 0; + resumeID: number = 0; + jobTitle: string = ""; + company: string = ""; + postalCode: string = ""; + country: string = ""; + stateOrRegion: string = ""; + city: string = ""; + dateStarted: Date = new Date(); + stillEmployed: boolean = false; + dateEnded: Date = new Date(); + experienceBullets: ResumeExperienceBullet[] = []; +} + +export class ResumeExperienceBullet { + id: number = 0; + resumeID: number = 0; + resumeExperienceID: number = 0; + jobFunction: string = ""; +} + +export class ResumeMilitary { + id: number = 0; + resumeID: number = 0; + country: string = ""; + rank: string = ""; + dateStarted: Date = new Date(); + stillServing: boolean = false; + dateEnded: Date = new Date(); + millitaryBullets: ResumeMilitaryBullet[] = []; +} + +export class ResumeMilitaryBullet { + id: number = 0; + resumeID: number = 0; + resumeMilitaryID: number = 0; + achievement: string = ""; + description: string = ""; +} + +export class ResumeEducation { + id: number = 0; + resumeID: number = 0; + degreeType: string = ""; + degreeField: string = ""; + school: string = ""; + postalCode: string = ""; + country: string = ""; + stateOrRegion: string = ""; + city: string = ""; + dateStarted: Date = new Date(); + stillStudying: boolean = false; + dateEnded: Date = new Date(); +} + +export class ResumeSkill { + id: number = 0; // PK + resumeID: number = 0; // FK + name: string = ""; + description: string = ""; +} + +export class ResumeLanguage { + id: number = 0; + resumeID: number = 0; + language: string = ""; + proficiency: string = ""; +} + +export class ResumeCertification { + id: number = 0; + resumeID: number = 0; + name: string = ""; + verificationURL: string = ""; + description: string = ""; +} + +export class ResumeProject { + id: number = 0; + resumeID: number = 0; + name: string = ""; + url: string = ""; + description: string = ""; +} \ No newline at end of file diff --git a/src/Client/src/app/models/WebsiteData.ts b/src/Client/src/app/models/WebsiteData.ts deleted file mode 100644 index bf00e26..0000000 --- a/src/Client/src/app/models/WebsiteData.ts +++ /dev/null @@ -1,12 +0,0 @@ -export class WebSiteData { - public accountID: number = -1; - public failedPasswordLock: boolean = false; - public passwordAttempts: number = 5; - public currentPasswordAttempts: number = 0; - public role: string = "Generic"; - public emailToken: string = ""; - - constructor(init?: Partial) { - Object.assign(this, init); - } -} \ No newline at end of file diff --git a/src/Client/src/app/pages/store/admin/edititem/edit.component.ts b/src/Client/src/app/pages/store/admin/edititem/edit.component.ts index 272fefc..17e7508 100644 --- a/src/Client/src/app/pages/store/admin/edititem/edit.component.ts +++ b/src/Client/src/app/pages/store/admin/edititem/edit.component.ts @@ -5,7 +5,7 @@ import { Router, ActivatedRoute } from '@angular/router'; import { Title } from '@angular/platform-browser'; import { CommonModule } from '@angular/common'; import { Authentication } from '../../../../services/Authentication'; -import { Product } from 'app/models/Product'; +import { Product } from 'app/models/Company'; @Component({ selector: 'item-edit', diff --git a/src/Client/src/app/pages/store/admin/newitem/new.component.ts b/src/Client/src/app/pages/store/admin/newitem/new.component.ts index 2171eb7..f1502dc 100644 --- a/src/Client/src/app/pages/store/admin/newitem/new.component.ts +++ b/src/Client/src/app/pages/store/admin/newitem/new.component.ts @@ -5,7 +5,7 @@ import { Router, ActivatedRoute } from '@angular/router'; import { Title } from '@angular/platform-browser'; import { CommonModule } from '@angular/common'; import { Authentication } from '../../../../services/Authentication'; -import { Product } from 'app/models/Product'; +import { Product } from 'app/models/Company'; @Component({ selector: 'item-new', diff --git a/src/Client/src/app/pages/store/catalog/catalog.component.ts b/src/Client/src/app/pages/store/catalog/catalog.component.ts index 4ee173c..5b4af5c 100644 --- a/src/Client/src/app/pages/store/catalog/catalog.component.ts +++ b/src/Client/src/app/pages/store/catalog/catalog.component.ts @@ -5,7 +5,7 @@ import { Router, ActivatedRoute, RouterModule } from '@angular/router'; import { Title } from '@angular/platform-browser'; import { CommonModule } from '@angular/common'; import { Authentication } from '../../../services/Authentication'; -import { Product } from 'app/models/Product'; +import { Product } from 'app/models/Company'; @Component({ selector: 'store-catalog',