ShopDay.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. namespace app\common\validate;
  3. use think\Db;
  4. use think\Validate;
  5. class ShopDay extends Validate
  6. {
  7. /**
  8. * 定义验证规则
  9. * 格式:'字段名' => ['规则1','规则2'...]
  10. *
  11. * @var array
  12. */
  13. protected $rule = [
  14. 'day|排餐日期' => 'require',
  15. 'cate|排餐类型' => 'require|checkCate',
  16. 'goods|商品' => 'require',
  17. 'start|时间段' => 'require',
  18. 'end|时间段' => 'require',
  19. ];
  20. /**
  21. * 定义错误信息
  22. * 格式:'字段名.规则名' => '错误信息'
  23. *
  24. * @var array
  25. */
  26. protected $message = [
  27. 'start.require'=>'未选择时间',
  28. 'end.require'=>'未选择时间',
  29. ];
  30. protected function checkCate($value, $rule, $data=[]){
  31. if(isset($data['id']) && $data['id'] > 0){
  32. $ret = Db::name('shop_day')
  33. ->where('day',$data['day'])
  34. ->where('cate',$data['cate'])
  35. ->where('org_id',$data['org_id'])
  36. ->where('id','<>',$data['id'])
  37. ->find();
  38. }else{
  39. $ret = Db::name('shop_day')
  40. ->where('day',$data['day'])
  41. ->where('cate',$data['cate'])
  42. ->where('org_id',$data['org_id'])
  43. ->find();
  44. }
  45. return $ret?'同一日期同一类型不能重复':true;
  46. }
  47. }