StoreRequest.php 2.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace App\Http\Requests\Api\SeminarSignUp;
  3. use Illuminate\Foundation\Http\FormRequest;
  4. class StoreRequest extends FormRequest
  5. {
  6. public function rules(): array
  7. {
  8. return [
  9. 'trackNo' => 'required',
  10. 'firstName' => 'required',
  11. 'lastName' => 'required',
  12. 'companyName' => 'required',
  13. 'companyEmail' => 'required|email',
  14. 'backupEmail' => 'nullable|email',
  15. 'phoneNumber' => 'required',
  16. 'country' => 'required',
  17. // 'registeredSession' => 'required', // 如果選擇台灣track則必填
  18. // 'lunchOptions' => 'required', // 如果選擇台灣track則必填
  19. 'typeOfIndustry' => 'required',
  20. 'typeOfJob' => 'required',
  21. 'jobTitle' => 'required',
  22. 'trackOfInterest' => 'required',
  23. 'areaOfInterest' => 'required',
  24. 'howToKnowAboutTheEvent' => 'required',
  25. 'consentAcceptEmail' => 'required',
  26. 'consentPrivacyPolicy' => 'required',
  27. ];
  28. }
  29. public function messages(): array
  30. {
  31. return [
  32. 'trackNo.required' => 'column [trackNo] is required.',
  33. 'firstName.required' => 'column [firstName] is required.',
  34. 'lastName.required' => 'column [lastName] is required.',
  35. 'companyName.required' => 'column [companyName] is required.',
  36. 'companyEmail.required' => 'column [companyEmail] is required.',
  37. 'companyEmail.email' => 'column [companyEmail] format error',
  38. 'backupEmail.email' => 'column [backupEmail] format error',
  39. 'phoneNumber.required' => 'column [phoneNumber] is required.',
  40. 'country.required' => 'column [country] is required.',
  41. // 'registeredSession.required' => 'column [registeredSession] is required.', // 如果選擇台灣track則必填
  42. // 'lunchOptions.required' => 'column [lunchOptions] is required.', // 如果選擇台灣track則必填
  43. 'typeOfIndustry.required' => 'column [typeOfIndustry] is required.',
  44. 'typeOfJob.required' => 'column [typeOfJob] is required.',
  45. 'jobTitle.required' => 'column [jobTitle] is required.',
  46. 'trackOfInterest.required' => 'column [trackOfInterest] is required.',
  47. 'areaOfInterest.required' => 'column [areaOfInterest] is required.',
  48. 'howToKnowAboutTheEvent.required' => 'column [howToKnowAboutTheEvent] is required.',
  49. 'consentAcceptEmail.required' => 'column [consentAcceptEmail] is required.',
  50. 'consentPrivacyPolicy.required' => 'column [consentPrivacyPolicy] is required.',
  51. ];
  52. }
  53. }