Beispiel #1
0
 /**
  * Store a newly created resource in storage.
  *
  * @return \Illuminate\Http\Response
  */
 public function store(WmsRequest $request)
 {
     $wms_request = $request->all();
     //dd($request);
     // If Principle checkbox Yes then assign principle fields + document owner
     if ($request->get('principle_switch')) {
         $wms_request['company_id'] = Auth::user()->company->reportsToCompany()->id;
         $wms_request['principle_id'] = Auth::user()->company->reportsToCompany()->id;
         $wms_request['principle'] = Auth::user()->company->reportsToCompany()->name;
     } else {
         $wms_request['company_id'] = $wms_request['for_company_id'];
     }
     if ($request->get('master_switch')) {
         $wms_request['builder'] = 1;
         $wms_request['project'] = 'All Jobs';
     }
     if (!$request->get('master_id')) {
         $wms_request['master_id'] = null;
     }
     // Create WMSdoc
     $newDoc = WmsDoc::create($wms_request);
     // Copy Steps / Hazards / Controls from Master Template
     if ($request->get('master_id')) {
         $this->copyTemplate($request->get('master_id'), $newDoc->id);
     }
     // Handle attached file
     if ($request->hasFile('reportfile')) {
         $file = $request->file('reportfile');
         $path = "filebank/company/" . $request->get('for_company_id') . '/wms';
         $name = sanitizeFilename($newDoc->name) . '-v1.0-' . $newDoc->id . '.' . strtolower($file->getClientOriginalExtension());
         $path_name = $path . '/' . $name;
         $file->move($path, $name);
         $newDoc->reportfile = $name;
         $newDoc->save();
     }
     Toastr::success("Created new statement");
     return redirect('/safety/doc/wms/' . $newDoc->id . '/edit');
 }
Beispiel #2
0
 /**
  * Migrate WMS
  */
 public function wms()
 {
     echo "<h1>Migrating WMS Templates</h1>";
     //DB::table('wms_docs')->truncate();
     DB::table('wms_steps')->truncate();
     DB::table('wms_hazards')->truncate();
     DB::table('wms_controls')->truncate();
     DB::table('z_lookup_template')->truncate();
     set_time_limit(60);
     $reports = zWmsTemplates::all();
     $reports->each(function ($report) {
         echo "<b>Report</b> - {$report->name}<br>";
         $status = '0';
         if ($report->active == "y") {
             $status = '1';
         }
         $user = User::where('username', $report->updated_by)->first();
         $newDoc = WmsDoc::create(array('name' => reformatOldStr($report->name), 'version' => '1.0', 'status' => $status, 'builder' => '1', 'master' => '1', 'company_id' => '3', 'created_by' => $user->id, 'updated_by' => $user->id, 'created_at' => $report->updated, 'updated_at' => $report->updated));
         zLookupTemplate::create(array('type' => 'doc', 'old' => $report->id, 'new' => $newDoc->id));
         // Create each Step for the Doc
         $steps = zWmsTemplatesSteps::where('wms_id', $report->id)->get();
         foreach ($steps as $step) {
             echo "<b>Step</b> - {$step->name}<br>";
             if ($report->updated_by == 'Guest') {
                 $user = User::find(1);
             } else {
                 $user = User::where('username', $report->updated_by)->first();
             }
             $newStep = WmsStep::create(array('doc_id' => $newDoc->id, 'name' => reformatOldStr($step->name), 'order' => $step->item_order, 'master' => '1', 'created_by' => $user->id, 'updated_by' => $user->id, 'created_at' => $step->updated, 'updated_at' => $step->updated));
             zLookupTemplate::create(array('type' => 'step', 'old' => $step->id, 'new' => $newStep->id));
             // Create each Hazard for the Step
             $hazards = zWmsTemplatesHazards::where('step_id', $step->id)->get();
             $order = 1;
             foreach ($hazards as $hazard) {
                 echo "<b>Hazard</b> - {$hazard->name}<br>";
                 $user = User::where('username', $hazard->updated_by)->first();
                 $newHazard = WmsHazard::create(array('step_id' => $newStep->id, 'name' => reformatOldStr($hazard->name), 'order' => $order++, 'master' => '1', 'created_by' => $user->id, 'updated_by' => $user->id, 'created_at' => $hazard->updated, 'updated_at' => $hazard->updated));
                 zLookupTemplate::create(array('type' => 'haz', 'old' => $hazard->id, 'new' => $newHazard->id));
             }
             // Create each Control for the Step
             $controls = zWmsTemplatesControls::where('step_id', $step->id)->get();
             $order = 1;
             foreach ($controls as $control) {
                 echo "<b>Control</b> - {$control->name}<br>";
                 if ($control->updated_by == 'Guest') {
                     $user = User::find(1);
                 } else {
                     $user = User::where('username', $control->updated_by)->first();
                 }
                 $res_p = 0;
                 $res_c = 0;
                 if ($control->responsible == 'x') {
                     $res_c = 1;
                 }
                 if ($control->responsible == '12') {
                     $res_p = 1;
                 }
                 if ($control->responsible == 'cs') {
                     $res_c = 1;
                     $res_p = 1;
                 }
                 $newControl = WmsControl::create(array('step_id' => $newStep->id, 'name' => reformatOldStr($control->name), 'res_principle' => $res_p, 'res_company' => $res_c, 'order' => $order++, 'master' => '1', 'created_by' => $user->id, 'updated_by' => $user->id, 'created_at' => $control->updated, 'updated_at' => $control->updated));
                 zLookupTemplate::create(array('type' => 'con', 'old' => $control->id, 'new' => $newControl->id));
             }
         }
     });
     echo "<h1>Completed</h1>";
     echo "<h1>Migrating WMS Docs</h1>";
     $reports = zWmsReports::all();
     $reports->each(function ($report) {
         echo "<b>Report</b> - {$report->name}<br>";
         $status = '0';
         if ($report->active == "y") {
             $status = '1';
         }
         if ($report->active == "p") {
             $status = '2';
         }
         $updated_by = User::where('username', $report->updated_by)->first();
         $cod_signed = User::where('username', $report->cod_signed)->first();
         $sub_signed = User::where('username', $report->sub_signed)->first();
         $cod_signed ? $cod_id = $cod_signed->id : ($cod_id = null);
         $sub_signed ? $sub_id = $sub_signed->id : ($sub_id = null);
         $lookup = DB::table('z_lookup_company')->where('old', $report->company_id)->get();
         if ($lookup) {
             $company = Company::find($lookup[0]->new);
             // Move CC Supers into Cape Cod
             if (substr($company->name, 0, 3) == "CC-") {
                 $lookup[0]->new = '3';
             }
         } else {
             $lookup = ['0' => (object) array('new' => '1')];
         }
         $cid = $lookup[0]->new;
         $master_id = null;
         if ($report->template_id) {
             $lookup = DB::table('z_lookup_template')->where('type', 'doc')->where('old', $report->template_id)->get();
             $master_id = $lookup[0]->new;
         }
         $newDoc = WmsDoc::create(array('name' => reformatOldStr($report->name), 'project' => $report->project, 'version' => '1.0', 'status' => $status, 'builder' => '1', 'master' => '0', 'master_id' => $master_id, 'principle' => 'Cape Cod', 'principle_id' => '3', 'principle_signed_id' => $cod_id, 'principle_signed_date' => $report->cod_date, 'user_signed_id' => $sub_id, 'user_signed_date' => $report->sub_date, 'for_company_id' => $cid, 'company_id' => '3', 'created_by' => $updated_by->id, 'updated_by' => $updated_by->id, 'created_at' => $report->updated, 'updated_at' => $report->updated));
         // Create each Step for the Doc
         $steps = zWmsSteps::where('wms_id', $report->id)->get();
         foreach ($steps as $step) {
             echo "<b>Step</b> - {$step->name}<br>";
             $user = User::where('username', $step->updated_by)->first();
             $master_id = null;
             if ($report->template_id) {
                 $lookup = DB::table('z_lookup_template')->where('type', 'step')->where('old', $step->template_id)->get();
                 $master_id = $lookup[0]->new;
             }
             $newStep = WmsStep::create(array('doc_id' => $newDoc->id, 'name' => reformatOldStr($step->name), 'order' => $step->item_order, 'master' => '0', 'master_id' => $master_id, 'created_by' => $user->id, 'updated_by' => $user->id, 'created_at' => $step->updated, 'updated_at' => $step->updated));
             // Create each Hazard for the Step
             $hazards = zWmsHazards::where('step_id', $step->id)->get();
             $order = 1;
             foreach ($hazards as $hazard) {
                 echo "<b>Hazard</b> - {$hazard->name}<br>";
                 $user = User::where('username', $hazard->updated_by)->first();
                 $master_id = null;
                 if ($report->template_id) {
                     $lookup = DB::table('z_lookup_template')->where('type', 'haz')->where('old', $hazard->template_id)->get();
                     $master_id = $lookup[0]->new;
                 }
                 $newHazard = WmsHazard::create(array('step_id' => $newStep->id, 'name' => reformatOldStr($hazard->name), 'order' => $order++, 'master' => '0', 'master_id' => $master_id, 'created_by' => $user->id, 'updated_by' => $user->id, 'created_at' => $hazard->updated, 'updated_at' => $hazard->updated));
             }
             // Create each Control for the Step
             $controls = zWmsControls::where('step_id', $step->id)->get();
             $order = 1;
             foreach ($controls as $control) {
                 echo "<b>Control</b> - {$control->name}<br>";
                 $user = User::where('username', $control->updated_by)->first();
                 $master_id = null;
                 if ($report->template_id) {
                     $lookup = DB::table('z_lookup_template')->where('type', 'con')->where('old', $control->template_id)->get();
                     $master_id = $lookup[0]->new;
                 }
                 $res_p = 0;
                 $res_c = 0;
                 if (substr($control->responsible, 0, 1) == 'c') {
                     $res_p = 1;
                     $res_c = 1;
                 } else {
                     if ($control->responsible == '12') {
                         $res_p = 1;
                     } else {
                         $res_c = 1;
                     }
                 }
                 $newControl = WmsControl::create(array('step_id' => $newStep->id, 'name' => reformatOldStr($control->name), 'res_principle' => $res_p, 'res_company' => $res_c, 'order' => $order++, 'master' => '0', 'master_id' => $master_id, 'created_by' => $user->id, 'updated_by' => $user->id, 'created_at' => $control->updated, 'updated_at' => $control->updated));
             }
         }
     });
     echo "<h1>Completed</h1>";
 }