コード例 #1
0
 public function updateCareerHistory(Request $request)
 {
     $validator = Validator::make($request->all(), []);
     DB::transaction(function () use($request) {
         $managerProfile = ManagerProfile::where('user_id', '=', session(SiteSessions::USER_ID))->first();
         $managerProfile->institution_type = $request->institution_type;
         $managerProfile->institution_name = $request->institution_name;
         $managerProfile->save();
         $careerHistories = $request->careerHistory;
         foreach ($careerHistories as $careerHistory) {
             $managerCareerHistory = null;
             //Checking if career history already exists
             if ($managerCareerHistory = ManagerCareerHistory::CareerHistoryExists($managerProfile->profile_id, $careerHistory["year"])) {
             } else {
                 $managerCareerHistory = ManagerCareerHistory::create(['profile_id' => $managerProfile->profile_id, 'career_year' => $careerHistory["year"]]);
             }
             $achievements = $careerHistory["achievement"];
             foreach ($achievements as $achievement) {
                 //Checking if Achievement already exists for Career History
                 if (ManagerCareerHistoryAchievement::AchievementExists($managerCareerHistory->id, $achievement["info"])) {
                 } else {
                     $managerCareerHistory->Achievements()->save(new ManagerCareerHistoryAchievement(['achievement' => $achievement["info"]]));
                 }
             }
             //Removing Obselete Achievements
             ManagerCareerHistoryAchievement::RemoveObseleteAchievement($managerCareerHistory, $achievements);
         }
         ManagerCareerHistory::RemoveObseleteCareerHistory($managerProfile, $careerHistories);
     });
     $this->sendResponse();
 }
コード例 #2
0
 /**
  * Checking if a career history already exists in database or not
  * @param $profile_id
  * @param $year
  * @return ManagerCareerHistory/bool
  */
 public static function CareerHistoryExists($profile_id, $year)
 {
     $careerHistory = ManagerCareerHistory::where('profile_id', '=', $profile_id)->where('career_year', '=', $year)->first();
     if (count($careerHistory) > 0) {
         return $careerHistory;
     }
     return false;
 }
コード例 #3
0
 public function getCareerHistory(Request $request)
 {
     $managerProfile = null;
     try {
         $managerProfile = ManagerProfile::getManagerProfile(Session::get(SiteSessions::USER_ID));
     } catch (ModelNotFoundException $e) {
         $this->updateRequestStatus(RequestStatusEnum::MODEL_NOT_FOUND);
         return $this->sendResponse();
     }
     $managerCareerHistory = ManagerCareerHistory::getCareerHistoryAndAchievements($managerProfile->profile_id);
     return $this->sendResponse(["careerHistory" => $managerCareerHistory]);
 }