BodyMeasurements.php 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace app\api\validate;
  3. use think\Validate;
  4. /**
  5. * 身体测量验证器
  6. */
  7. class BodyMeasurements extends Validate
  8. {
  9. // 验证规则
  10. protected $rule = [
  11. 'profile_id' => 'require|integer|gt:0',
  12. 'chest' => 'float|egt:0|elt:200',
  13. 'waist' => 'float|egt:0|elt:200',
  14. 'hip' => 'float|egt:0|elt:200',
  15. 'thigh' => 'float|egt:0|elt:100',
  16. 'calf' => 'float|egt:0|elt:80',
  17. 'upper_arm' => 'float|egt:0|elt:80',
  18. 'forearm' => 'float|egt:0|elt:60',
  19. 'neck' => 'float|egt:0|elt:80',
  20. 'shoulder_width' => 'float|egt:0|elt:100',
  21. 'bust' => 'float|egt:0|elt:200',
  22. 'underbust' => 'float|egt:0|elt:150',
  23. 'inseam' => 'float|egt:0|elt:150',
  24. 'outseam' => 'float|egt:0|elt:150',
  25. 'shoe_size' => 'length:0,10',
  26. 'measurement_date' => 'date',
  27. ];
  28. // 验证消息
  29. protected $message = [
  30. 'profile_id.require' => '档案ID不能为空',
  31. 'profile_id.integer' => '档案ID必须是整数',
  32. 'profile_id.gt' => '档案ID必须大于0',
  33. 'chest.float' => '胸围必须是数字',
  34. 'chest.egt' => '胸围不能小于0',
  35. 'chest.elt' => '胸围不能大于200厘米',
  36. 'waist.float' => '腰围必须是数字',
  37. 'waist.egt' => '腰围不能小于0',
  38. 'waist.elt' => '腰围不能大于200厘米',
  39. 'hip.float' => '臀围必须是数字',
  40. 'hip.egt' => '臀围不能小于0',
  41. 'hip.elt' => '臀围不能大于200厘米',
  42. 'thigh.float' => '大腿围必须是数字',
  43. 'thigh.egt' => '大腿围不能小于0',
  44. 'thigh.elt' => '大腿围不能大于100厘米',
  45. 'calf.float' => '小腿围必须是数字',
  46. 'calf.egt' => '小腿围不能小于0',
  47. 'calf.elt' => '小腿围不能大于80厘米',
  48. 'upper_arm.float' => '上臂围必须是数字',
  49. 'upper_arm.egt' => '上臂围不能小于0',
  50. 'upper_arm.elt' => '上臂围不能大于80厘米',
  51. 'forearm.float' => '前臂围必须是数字',
  52. 'forearm.egt' => '前臂围不能小于0',
  53. 'forearm.elt' => '前臂围不能大于60厘米',
  54. 'neck.float' => '颈围必须是数字',
  55. 'neck.egt' => '颈围不能小于0',
  56. 'neck.elt' => '颈围不能大于80厘米',
  57. 'shoulder_width.float' => '肩宽必须是数字',
  58. 'shoulder_width.egt' => '肩宽不能小于0',
  59. 'shoulder_width.elt' => '肩宽不能大于100厘米',
  60. 'bust.float' => '乳围必须是数字',
  61. 'bust.egt' => '乳围不能小于0',
  62. 'bust.elt' => '乳围不能大于200厘米',
  63. 'underbust.float' => '下胸围必须是数字',
  64. 'underbust.egt' => '下胸围不能小于0',
  65. 'underbust.elt' => '下胸围不能大于150厘米',
  66. 'inseam.float' => '内缝长必须是数字',
  67. 'inseam.egt' => '内缝长不能小于0',
  68. 'inseam.elt' => '内缝长不能大于150厘米',
  69. 'outseam.float' => '外缝长必须是数字',
  70. 'outseam.egt' => '外缝长不能小于0',
  71. 'outseam.elt' => '外缝长不能大于150厘米',
  72. 'shoe_size.length' => '鞋码长度不能超过10个字符',
  73. 'measurement_date.date' => '测量日期格式错误',
  74. ];
  75. // 验证场景
  76. protected $scene = [
  77. 'add' => ['profile_id', 'chest', 'waist', 'hip', 'thigh', 'calf', 'upper_arm', 'forearm', 'neck', 'shoulder_width', 'bust', 'underbust', 'inseam', 'outseam', 'shoe_size', 'measurement_date'],
  78. ];
  79. }