예제 #1
0
 private function passData($id = null)
 {
     $jobs = new \App\Models\Jobs();
     if (!is_null($id)) {
         $jobs = Jobs::findOrNew($id);
     }
     $companyPreference = $jobs->getCompanyPreference() ? $jobs->getCompanyPreference() : new \App\Models\CompanyPreference();
     $address = $jobs->address()->first() ? $jobs->address()->first() : new \App\Models\Addresses();
     $commOrBon = CommisionOrBonus::all()->sortBy("Commission_Or_Bonus")->toArray();
     $lns = SupportedLanguages::all()->sortBy("Language_Name")->toArray();
     if (sizeof($commOrBon) == 0) {
         $commOrBon = new \App\Models\CommisionOrBonus();
     }
     $tEndUser = TargetEndUser::all()->sortBy("Target_End_User")->toArray();
     foreach ($commOrBon as $commisionOrBonusVal) {
         $commisionOrBonus[$commisionOrBonusVal["id_Commission_Or_Bonus"]] = $commisionOrBonusVal["Commission_Or_Bonus"];
     }
     foreach ($tEndUser as $tgEndUser) {
         $targetEndUser[$tgEndUser["id_Target_End_User"]] = $tgEndUser["Target_End_User"];
     }
     foreach ($lns as $langs) {
         $languages[$langs["id_Language"]] = $langs["Language_Name"];
     }
     $companies = Companies::SelectOptionsModel();
     $jobType = $jobs->getJobType();
     $jobFamilyOptions = JobFamily::getJobsFamilyOptions();
     $jobTypesOptions = JobType::getJobsTypesByJobFamilyOptions($jobType->id_Job_Family);
     $countryModel = $address->getCountry();
     $regionsOptions = Region::getRegionsOptions();
     $countryOptions = Country::getCountriesOptionsByRegion($countryModel->id_Region);
     return compact("companies", "commisionOrBonus", "targetEndUser", "jobFamilyOptions", "regionsOptions", "countryOptions", "languages", "jobs", "companyPreference", "address", "jobTypesOptions");
 }
예제 #2
0
 private function storeRelatedData(Request $request, $productsModel)
 {
     $TargetEndUserSelection = TargetEndUser::getSelected($request);
     $AssetClassSelection = AssetClass::getSelected($request);
     $TargetMarketSelection = TargetMarket::getSelected($request);
     $AvailabilityTerritorySelection = AvailabilityTerritory::getSelected($request);
     if (count($AssetClassSelection)) {
         DB::table('Product_Asset_Class')->where('id_Product', '=', $productsModel->id_Product)->delete();
         foreach ($AssetClassSelection as $AssetClassId) {
             $productsModel->assetClass()->save(AssetClass::findOrNew($AssetClassId));
         }
     }
     if (count($TargetEndUserSelection)) {
         DB::table('Product_Target_End_User')->where('id_Product', '=', $productsModel->id_Product)->delete();
         foreach ($TargetEndUserSelection as $targetEndUserSelected) {
             $productsModel->targetEndUser()->save(TargetEndUser::findOrNew($targetEndUserSelected));
         }
     }
     if (count($TargetMarketSelection)) {
         DB::table('Product_Target_Market')->where('id_Product', '=', $productsModel->id_Product)->delete();
         foreach ($TargetMarketSelection as $TargetMarketId) {
             $productsModel->targetMarket()->save(TargetMarket::findOrNew($TargetMarketId));
         }
     }
     if (count($AvailabilityTerritorySelection)) {
         DB::table('Product_Availability_Territory')->where('id_Product', '=', $productsModel->id_Product)->delete();
         foreach ($AvailabilityTerritorySelection as $AvailabilityTerritoryId) {
             $productsModel->territory()->save(AvailabilityTerritory::findOrNew($AvailabilityTerritoryId));
         }
     }
 }