You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ProfileController.php 1.5KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. namespace App\Http\Controllers\CustomerService;
  3. use Illuminate\Http\Request;
  4. use App\Http\Controllers\Controller;
  5. use Illuminate\Support\Facades\Auth;
  6. use LynX39\LaraPdfMerger\Facades\PdfMerger;
  7. use Carbon\Carbon;
  8. use Validator;
  9. use PDF;
  10. use App\Staff;
  11. use App\Model\StaffDetail;
  12. use App\Model\WorkOrder;
  13. class ProfileController extends Controller
  14. {
  15. public function viewProfile(){
  16. $id = Auth::guard('cs')->id();
  17. $user = Staff::with('StaffDetail')->find($id);
  18. $pp = count(WorkOrder::where('status','Pending Non Prelaid')->get());
  19. $sp = count(WorkOrder::where('status','Success Non Prelaid')->get());
  20. $rs = count(WorkOrder::where('status','Reschedule')->get());
  21. $ss = count(WorkOrder::where('status','Suspend')->get());
  22. $cm = count(WorkOrder::where('status','Completed')->get());
  23. return view('customer-service.view_profile',compact('user','pp','sp','rs','ss','cm'));
  24. }
  25. public function updateProfilePicture(Request $request){
  26. $this->validate($request, [
  27. 'prof_img' => 'mimes:jpeg,jpg,png|required|dimensions:width=128,height=128'
  28. ]);
  29. if($request->hasfile('prof_img')){
  30. // Move / Upload Icon into server
  31. $destinationPath = 'assets/avatar';
  32. // create folder/dir if not exist
  33. if(!File::exists(public_path().$destinationPath)){
  34. File::makeDirectory(public_path().$destinationPath,0777,true);
  35. }
  36. $icon = $request->file('prof_img');
  37. $icon->move($destinationPath,$request->id.'.'.$icon->getClientOriginalExtension());
  38. $pathIcon = $destinationPath.'/'.$request->id.'.'.$icon->getClientOriginalExtension();
  39. }
  40. }
  41. }