StoreRequest.php 2.9KB

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