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.

FormController.php 2.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace App\Http\Controllers\Form;
  3. use Illuminate\Http\Request;
  4. use App\Http\Controllers\Controller;
  5. use Illuminate\Support\Facades\Auth;
  6. use App\Mail\CustomerInvoice;
  7. use App\Jobs\SendCustomerInvoice;
  8. use Carbon\Carbon;
  9. use Validator;
  10. use File;
  11. use App\Model\Coverage;
  12. use App\Model\Product;
  13. use App\Model\Form;
  14. use App\Model\WorkOrder;
  15. use App\Model\Subscriber;
  16. use App\Model\PackageDetail;
  17. use App\Model\FormStatus;
  18. class FormController extends Controller
  19. {
  20. function createWorkID(){
  21. $number = WorkOrder::select('id','wo')->orderBy('created_at','DESC')->first();
  22. $numberOnly = str_replace('WO-','',$number->wo);
  23. info('before FC WO'.$numberOnly);
  24. $numberOnly++;
  25. info('after FC WO'.$numberOnly);
  26. return $numberOnly;
  27. }
  28. public function updateStatus($f_id){
  29. $fm = Form::where('_id',$f_id)->first();
  30. if(!empty($fm)){
  31. $fm->status_email = 'verified';
  32. $fm->save();
  33. $formH = new FormStatus;
  34. $formH->form_id = $fm->_id;
  35. $formH->status_id = 2;
  36. $formH->date = new \MongoDB\BSON\UTCDateTime(time()*1000);
  37. $formH->status = 'Verified';
  38. $formH->desc = 'Email already been verified by Customer Service';
  39. $fm->formstatus()->save($formH);
  40. do {
  41. $woID = 'WO-'.$this->createWorkID();
  42. } while (WorkOrder::where("wo", "=", $woID)->first() instanceof WorkOrder);
  43. $work_order = new WorkOrder;
  44. $work_order->img_url = '/assets/img/activation_icon_nRead1.png';
  45. $work_order->wo = $woID;
  46. $work_order->nature_work = '';
  47. $work_order->sub_category = '';
  48. $work_order->dateTimeStart = '';
  49. $work_order->dateTimeEnd = '';
  50. $work_order->contractor_id = '';
  51. $work_order->installer_id = '';
  52. $work_order->onu = '';
  53. $work_order->router = '';
  54. $work_order->need_phone = '';
  55. $work_order->no_phone = '';
  56. $work_order->pppoe_username = '';
  57. $work_order->pppoe_password = '';
  58. $work_order->docket_id = '';
  59. $work_order->remarks_custservice = '';
  60. $work_order->remarks_installer = '';
  61. $work_order->status = 'Pending Contractor';
  62. $work_order->created_by = '';
  63. $fm->workorder()->save($work_order);
  64. return redirect('/customer-service/new/customer/list');
  65. }
  66. }
  67. }