Exemplo n.º 1
0
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Closure  $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     $origin = $this->getOrigin($request);
     config(['global.origin.current' => $origin]);
     config(['global.ip.current' => $request->ip()]);
     if ($request->company_token) {
         $data = Cache::tags(['companies', 'company' . $request->company_token])->remember('token', 60 * 24 * 7, function () use($request) {
             $_company = Companies::where('token', $request->company_token);
             if ($_company->count() > 0) {
                 $_company = $_company->first();
                 return ['id' => $_company->id, 'name' => $_company->name, 'uri' => $_company->uri, 'active' => $_company->active, 'domains' => $_company->domains()->lists('domain')->toArray(), 'managers' => $_company->managers()->get(['id', 'name', 'email', 'active', 'role'])->toArray()];
             } else {
                 return false;
             }
         });
         if (!empty($data)) {
             config(['global.companies.current' => $data]);
         } else {
             Cache::tags(['companies', 'company' . $request->company_token])->forget('origin');
         }
     }
     return $next($request);
 }
 private function passData($id = null)
 {
     $HQAddresses = new \App\Models\Addresses();
     $HQPhones = new \App\Models\Phones();
     $company = new \App\Models\Companies();
     $ultimateParentCompany = new \App\Models\Companies();
     if (!is_null($id)) {
         $company = Companies::findOrNew($id);
         $mediaContacts = $company->mediaContacts()->get();
         $attachments = $company->attachments()->get();
         $ultimateParentCompany = $company->ultimateParent()->get();
     } else {
         if (!Session::has('MediaContacts')) {
             Session::set('MediaContacts', $company->mediaContacts()->get());
         }
         if (!Session::has('CompanyAttachments')) {
             Session::set('CompanyAttachments', $company->attachments()->get());
         }
         $mediaContacts = Session::get('MediaContacts');
         $attachments = Session::get("CompanyAttachments");
     }
     $eSize = EmployeeSize::all()->toArray();
     $gProfile = GrowthProfile::where('id_Growth_Profile', '>', 1)->get()->toArray();
     $oship = Ownership::all()->toArray();
     $rStage = RevenueStage::where('id_Revenue_Stage', '>', 1)->get()->toArray();
     $cType = CompanyType::all()->toArray();
     $csType = CompanySubType::all()->toArray();
     $uParent = Companies::where("Deleted", "=", NULL)->get()->sortBy('Company_Full_Name')->toArray();
     $products = $company->products()->whereNull("Deleted");
     foreach ($products->get() as $product) {
         $productFocusTypeList[$product->id_Product] = [];
         $productTypeList = [];
         foreach ($product->focusSubType()->get() as $productSubType) {
             $productTypeList[0] = $productSubType->Product_Focus_Sub_Type;
             $productTypeListValues = ProductFocusType::where('id_Product_Focus_Type', '=', $productSubType->id_Product_Focus_Type)->get()->first();
             $productTypeList[1] = $productTypeListValues->Product_Focus_Type;
             $productFocusTypeList[$product->id_Product][] = $productTypeList;
         }
     }
     if ($company->headquaters()->get()->count()) {
         $HQAddresses = Addresses::findOrNew($company->headquaters()->get()->first()->AddressId);
     }
     if ($company->headquaters()->get()->count() && $company->headquaters()->get()->first()->PhoneId) {
         $HQPhones = Phones::findOrNew($company->headquaters()->get()->first()->PhoneId);
     }
     foreach ($eSize as $emSize) {
         $employeeSize[$emSize["id_Employee_Size"]] = $emSize["Employee_Size"];
     }
     foreach ($gProfile as $gwProfile) {
         $growthProfile[$gwProfile["id_Growth_Profile"]] = $gwProfile["Growth_Profile"];
     }
     foreach ($oship as $owship) {
         $ownership[$owship["id_Ownership"]] = $owship["Ownership"];
     }
     foreach ($rStage as $revStage) {
         $revenueStage[$revStage["id_Revenue_Stage"]] = $revStage["Revenue_Stage"];
     }
     foreach ($cType as $coType) {
         $companyType[$coType["id_Company_Type"]] = $coType["Company_Type"];
     }
     foreach ($csType as $coSuType) {
         $companySubType[$coSuType["id_Company_Sub_Type"]] = $coSuType["Company_Sub_Type_Name"];
     }
     foreach ($uParent as $ulParent) {
         $ultimateParent[$ulParent["id_Company"]] = $ulParent["Company_Full_Name"];
     }
     $country = Country::getListCountries();
     return compact("employeeSize", "growthProfile", "productFocusTypeList", "ownership", "revenueStage", "companyType", "companySubType", "company", "ultimateParent", "mediaContacts", "country", "HQAddresses", "HQPhones", "products", "attachments", "ultimateParentCompany");
 }
Exemplo n.º 3
0
 public function convertScript()
 {
     $data = 'data';
     Excel::load('/storage/app/Medium1.xlsx', function ($reader) use($data) {
         $existsData = [];
         $reader->each(function ($sheet) use($existsData) {
             $company = $sheet->getTitle();
             $companyModel = Companies::where("Company_Full_Name", "like", "%{$company}%")->first();
             $rowData = $sheet->toArray();
             foreach ($rowData as $row) {
                 if (isset($row) && count($row)) {
                     $name = isset($row['name']) ? trim($row['name']) : "";
                     if (!strlen($name) && in_array(strtolower($name), $existsData)) {
                         continue;
                     }
                     $title = isset($row['title']) ? trim($row['title']) : "";
                     $description = isset($row['description']) ? trim($row['description']) : "";
                     //                        $employeeType = EmployeeType::all(["Type_Name"])->toArray();
                     //
                     //                        $present = [];
                     //                        foreach ($employeeType as $aType) {
                     //                            if (!in_array($aType["Type_Name"], $present)) $present[] = strtolower($aType["Type_Name"]);
                     //                        }
                     ////                        echo "<pre>";
                     ////                        print_r($present);
                     ////                        echo "</pre>";
                     //                        $Employee_types = [];
                     //
                     //                        $ptitle = explode(",", $title);
                     //
                     //                        foreach ($ptitle as $part) {
                     //                            $title_part = trim(strtolower($part));
                     //                            if (strlen($title_part) == 0) {
                     //                                continue;
                     //                            }
                     //                            $created = false;
                     //                            foreach ($present as $item) {
                     //                                $sameLatters = similar_text(strtolower($item), $title_part, $per);
                     //                                if ($per < 80 && !in_array($title_part, $present)) {
                     //                                    $created = true;
                     //                                    $present[] = $title_part;
                     //                                    $Employee_types[] = EmployeeType::create(["Type_Name" => ucwords($title_part)]);
                     //                                }
                     //                            }
                     //                            if (!$created) {
                     //                                $Employee_types[] = EmployeeType::where("Type_Name", 'like', "%" . ucwords($title_part) . "%")->get()->first();
                     //                            }
                     //
                     //                        }
                     //
                     $flname = explode(" ", $name);
                     $peopleFields = [];
                     $addressFields = [];
                     $employeeFields = [];
                     $peopleFields['First_Name'] = is_array($flname) && isset($flname[0]) && strlen($flname[0]) ? $flname[0] : "";
                     $peopleFields['Surname'] = is_array($flname) && isset($flname[1]) && strlen($flname[1]) ? $flname[1] : "";
                     if (count($flname) == 3 && $description != "") {
                         $peopleModel = People::where("Career_Description", "like", "%{$description}%")->get();
                         if ($peopleModel->count()) {
                             foreach ($peopleModel as $pModel) {
                                 $peopleFields['Surname'] = is_array($flname) && isset($flname[2]) && strlen($flname[2]) ? $flname[2] : "";
                                 $peopleFields['Middle_Name'] = is_array($flname) && isset($flname[1]) && strlen($flname[1]) ? $flname[1] : "";
                                 echo $peopleFields['First_Name'] . " : " . $peopleFields['Middle_Name'] . " : " . $peopleFields['Surname'];
                                 $pModel->fill($peopleFields)->save();
                             }
                         }
                     }
                     //
                     //                        if ($peopleFields['First_Name'] && $peopleFields['First_Name'] || ($peopleFields['First_Name'])) {
                     //                            $addressModel = Addresses::create($addressFields);
                     //                            $peopleFields['Career_Description'] = $description;
                     //                            $peopleFields['Date_Created'] = Carbon::now();
                     //                            $peopleFields['AddressId'] = $addressModel->AddressId;
                     //                            $peopleModel = People::create($peopleFields);
                     //                            if ($companyModel) {
                     //                                $peopleModel->careerHistory()->save(new \App\Models\CareerHistory([
                     //                                    "Position_Name" => $title, "Company_Name" => $companyModel->Company_Full_Name,
                     //                                    "Current_Position_Status" => 1
                     //                                ]));
                     //                            }
                     //                            $employeeModel = $peopleModel->employee()->create($employeeFields);
                     //                            foreach ($Employee_types as $EmployeeType) {
                     //                                $employeeModel->employeeType()->save($EmployeeType);
                     //                            }
                     //
                     //                        }
                     //                        $existsData[] = strtolower($name);
                 }
                 //
                 //
                 //                     Loop through all rows
                 //                $sheet->each(function($row) {
                 //                    echo $row;
                 //                });
             }
         });
     });
 }