diff --git a/database/mistox.sql b/database/mistox.sql index a571c29..0f1a37c 100755 --- a/database/mistox.sql +++ b/database/mistox.sql @@ -57,9 +57,11 @@ CREATE TABLE IF NOT EXISTS `Resume` ( CREATE TABLE IF NOT EXISTS `ResumeExperienceBullet` ( `ID` int NOT NULL AUTO_INCREMENT, + `ResumeID` int NOT NULL, `ResumeExperienceID` int NOT NULL, `JobFunction` text NOT NULL, PRIMARY KEY (`ID`), + FOREIGN KEY (`ResumeID`) REFERENCES `Resume`(`ID`) ON DELETE CASCADE, FOREIGN KEY (`ResumeExperienceID`) REFERENCES `ResumeExperience`(`ID`) ON DELETE CASCADE ) AUTO_INCREMENT=1; @@ -77,10 +79,12 @@ CREATE TABLE IF NOT EXISTS `Resume` ( CREATE TABLE IF NOT EXISTS `ResumeMillitaryBullet` ( `ID` int NOT NULL AUTO_INCREMENT, + `ResumeID` int NOT NULL, `ResumeMillitaryID` int NOT NULL, `Achevement` varchar(100) NOT NULL, `Description` text DEFAULT NULL, PRIMARY KEY (`ID`), + FOREIGN KEY (`ResumeID`) REFERENCES `Resume`(`ID`) ON DELETE CASCADE, FOREIGN KEY (`ResumeMillitaryID`) REFERENCES `ResumeMillitary`(`ID`) ON DELETE CASCADE ) AUTO_INCREMENT=1; diff --git a/src/Server/Services/DatabaseService/Resume.cs b/src/Server/Services/DatabaseService/Resume.cs index d322c48..b8c6723 100644 --- a/src/Server/Services/DatabaseService/Resume.cs +++ b/src/Server/Services/DatabaseService/Resume.cs @@ -63,7 +63,9 @@ namespace BoredCareers.Services.DatabaseService { connection.Open(); MySqlCommand resumeCommand = new MySqlCommand("SELECT * FROM Resume WHERE ID = @ResumeID;", connection); MySqlCommand ResumeExperienceCommand = new MySqlCommand("SELECT * FROM ResumeExperience WHERE ResumeID = @ResumeID;", connection); + MySqlCommand ResumeExperienceBulletCommand = new MySqlCommand("SELECT * FROM ResumeExperienceBullet WHERE ResumeID = @ResumeID;"); MySqlCommand ResumeMillitaryCommand = new MySqlCommand("SELECT * FROM ResumeMillitary WHERE ResumeID = @ResumeID;", connection); + MySqlCommand ResumeMillitaryBulletCommand = new MySqlCommand("SELECT * FROM ResumeMillitaryBullet WHERE ResumeID = @ResumeID", connection); MySqlCommand ResumeEducationCommand = new MySqlCommand("SELECT * FROM ResumeEducation WHERE ResumeID = @ResumeID;", connection); MySqlCommand ResumeSkillCommand = new MySqlCommand("SELECT * FROM ResumeSkill WHERE ResumeID = @ResumeID;", connection); MySqlCommand ResumeLanguageCommand = new MySqlCommand("SELECT * FROM ResumeLanguage WHERE ResumeID = @ResumeID;", connection); @@ -72,7 +74,9 @@ namespace BoredCareers.Services.DatabaseService { resumeCommand.Parameters.AddWithValue("@ResumeID", ResumeID); ResumeExperienceCommand.Parameters.AddWithValue("@ResumeID", ResumeID); + ResumeExperienceBulletCommand.Parameters.AddWithValue("@ResumeID", ResumeID); ResumeMillitaryCommand.Parameters.AddWithValue("@ResumeID", ResumeID); + ResumeMillitaryBulletCommand.Parameters.AddWithValue("@ResumeID", ResumeID); ResumeEducationCommand.Parameters.AddWithValue("@ResumeID", ResumeID); ResumeSkillCommand.Parameters.AddWithValue("@ResumeID", ResumeID); ResumeLanguageCommand.Parameters.AddWithValue("@ResumeID", ResumeID); @@ -81,14 +85,16 @@ namespace BoredCareers.Services.DatabaseService { Task resumeReader = resumeCommand.ExecuteReaderAsync(); Task ResumeExperienceReader = ResumeExperienceCommand.ExecuteReaderAsync(); + Task ResumeExperienceBulletReader = ResumeExperienceBulletCommand.ExecuteReaderAsync(); Task ResumeMillitaryReader = ResumeMillitaryCommand.ExecuteReaderAsync(); + Task ResumeMillitaryBulletReader = ResumeMillitaryBulletCommand.ExecuteReaderAsync(); Task ResumeEducationReader = ResumeEducationCommand.ExecuteReaderAsync(); Task ResumeSkillReader = ResumeSkillCommand.ExecuteReaderAsync(); Task ResumeLanguageReader = ResumeLanguageCommand.ExecuteReaderAsync(); Task ResumeCertificationReader = ResumeCertificationCommand.ExecuteReaderAsync(); Task ResumeProjectnReader = ResumeProjectCommand.ExecuteReaderAsync(); - await Task.WhenAll(resumeReader, ResumeExperienceReader, ResumeMillitaryReader, ResumeEducationReader, ResumeSkillReader, ResumeLanguageReader, ResumeCertificationReader, ResumeProjectnReader); + await Task.WhenAll(resumeReader, ResumeExperienceReader, ResumeExperienceBulletReader, ResumeMillitaryReader, ResumeMillitaryBulletReader, ResumeEducationReader, ResumeSkillReader, ResumeLanguageReader, ResumeCertificationReader, ResumeProjectnReader); using (DbDataReader reader = await resumeReader) { while (await reader.ReadAsync()) { @@ -125,15 +131,21 @@ namespace BoredCareers.Services.DatabaseService { } using (DbDataReader reader = await ResumeExperienceReader) { - // Need to run ResumeExperienceBullet after + + } + + using (DbDataReader reader = await ResumeExperienceBulletReader) { } using (DbDataReader reader = await ResumeMillitaryReader) { - // Need to run ResumeMillitaryBullet after } + using (DbDataReader reader = await ResumeMillitaryBulletReader) { + + } + using (DbDataReader reader = await ResumeEducationReader) { }