From 369d71d44699a0f1a1dd73ec131420079e1dfe3b Mon Sep 17 00:00:00 2001 From: Derek Holloway Date: Wed, 13 Aug 2025 06:28:14 -0700 Subject: [PATCH] Remove Veteran, Allow Millitary to be NULL --- database/mistox.sql | 1 - src/Client/src/app/models/Resume.ts | 3 +-- .../resumes/editor/editor.component.html | 4 +-- .../pages/resumes/editor/editor.component.ts | 27 ++++++++++++++----- src/Server/Entities/Resume.cs | 3 +-- .../ResumeParts/GetResumeParts.cs | 2 -- 6 files changed, 24 insertions(+), 16 deletions(-) diff --git a/database/mistox.sql b/database/mistox.sql index 035a927..41a6cd6 100755 --- a/database/mistox.sql +++ b/database/mistox.sql @@ -48,7 +48,6 @@ CREATE TABLE IF NOT EXISTS `Resume` ( CREATE TABLE IF NOT EXISTS `ResumeMilitary` ( `ID` int NOT NULL AUTO_INCREMENT, `ResumeID` int NOT NULL, - `Veteran` boolean DEFAULT 0, `Country` char(2) NOT NULL, `Rank` varchar(50) NOT NULL, `DateStarted` date NOT NULL, diff --git a/src/Client/src/app/models/Resume.ts b/src/Client/src/app/models/Resume.ts index 92826d8..9efabed 100644 --- a/src/Client/src/app/models/Resume.ts +++ b/src/Client/src/app/models/Resume.ts @@ -14,7 +14,7 @@ export class Resume { public city: string = ""; public isActive: boolean = false; public experience: ResumeExperience[] = []; - public military: ResumeMilitary = new ResumeMilitary; + public military: ResumeMilitary | null = new ResumeMilitary; public education: ResumeEducation[] = []; public skills: ResumeSkill[] = []; public languages: ResumeLanguage[] = []; @@ -53,7 +53,6 @@ export class ResumeMilitary { public id: number | null = null; public resumeID: number | null = null; - public veteran: boolean = false; public country: string = ""; public rank: string = ""; public dateStarted: Date = new Date(); diff --git a/src/Client/src/app/pages/resumes/editor/editor.component.html b/src/Client/src/app/pages/resumes/editor/editor.component.html index 9cc4cc0..179d15c 100644 --- a/src/Client/src/app/pages/resumes/editor/editor.component.html +++ b/src/Client/src/app/pages/resumes/editor/editor.component.html @@ -43,8 +43,8 @@
-

Is Veteran:

- @if(resume.military.veteran){ +

Is Veteran:

+ @if(resume.military !== null){ diff --git a/src/Client/src/app/pages/resumes/editor/editor.component.ts b/src/Client/src/app/pages/resumes/editor/editor.component.ts index bbbbd10..f7aa2f0 100644 --- a/src/Client/src/app/pages/resumes/editor/editor.component.ts +++ b/src/Client/src/app/pages/resumes/editor/editor.component.ts @@ -4,7 +4,7 @@ import { FormsModule } from '@angular/forms'; import { Router, ActivatedRoute, RouterModule } from '@angular/router'; import { Title } from '@angular/platform-browser'; import { CommonModule } from '@angular/common'; -import { Resume, ResumeCertification, ResumeEducation, ResumeExperience, ResumeExperienceBullet, ResumeLanguage, ResumeMilitaryBullet, ResumeProject, ResumeSkill } from 'app/models/Resume'; +import { Resume, ResumeCertification, ResumeEducation, ResumeExperience, ResumeExperienceBullet, ResumeLanguage, ResumeMilitary, ResumeMilitaryBullet, ResumeProject, ResumeSkill } from 'app/models/Resume'; import { Authentication } from 'app/services/Authentication'; import { HomeComponent } from "app/pages/home/home.component"; @@ -33,6 +33,7 @@ export class ResumesEditorComponent { this.http.get("api/resume?ResumeID=" + ResumeID).subscribe({ next: data => { this.resume = data; + this.milCache = data.military; this.isNewResume = false; }, error: err => { @@ -81,15 +82,27 @@ export class ResumesEditorComponent { } } + milCache: ResumeMilitary | null = new ResumeMilitary; + onVeteranChange(event: Event){ + const checkbox = event.target as HTMLInputElement; + const isChecked = checkbox.checked; + if (isChecked){ + this.resume.military = this.milCache; + } else { + this.resume.military = null; + } + } addMillitaryBullet(){ - this.resume.military.millitaryBullets.push( new ResumeMilitaryBullet ); + this.resume.military?.millitaryBullets.push( new ResumeMilitaryBullet ); } delMillitaryBullet(self: ResumeMilitaryBullet){ - for(let i=0; i