其余文件
This commit is contained in:
42
app/admin/validate/seckill/SeckillTimeValidate.php
Normal file
42
app/admin/validate/seckill/SeckillTimeValidate.php
Normal file
@ -0,0 +1,42 @@
|
||||
<?php
|
||||
namespace app\admin\validate\seckill;
|
||||
|
||||
use think\Validate;
|
||||
use app\common\model\seckill\SeckillTime;
|
||||
|
||||
class SeckillTimeValidate extends Validate
|
||||
{
|
||||
protected $rule = [
|
||||
'start_time' => 'require',
|
||||
'end_time' => 'require|checkTime',
|
||||
];
|
||||
protected $message = [
|
||||
'start_time.require' => '请选择开始时间',
|
||||
'end_time.require' => '请选择结束时间',
|
||||
];
|
||||
|
||||
public function checkTime($value,$rule,$data){
|
||||
$start_time = strtotime(date('Y-m-d'.$data['start_time']));
|
||||
$end_time = strtotime(date('Y-m-d'.$value));
|
||||
if($start_time >= $end_time){
|
||||
return '开始时间不能大于结束时间';
|
||||
}
|
||||
$where[] = ['del','=',0];
|
||||
if(isset($data['id'])){
|
||||
$where[] = ['id','<>',$data['id']];
|
||||
}
|
||||
$time_list = SeckillTime::where($where)->select()->toArray();
|
||||
foreach ($time_list as $item){
|
||||
$item_start_time = strtotime(date('Y-m-d'.$item['start_time']));
|
||||
$item_end_time = strtotime(date('Y-m-d'.$item['end_time']));
|
||||
if($start_time >= $item_start_time && $start_time < $item_end_time ){
|
||||
return '秒杀时间段冲突';
|
||||
}
|
||||
if($end_time >= $item_start_time && $end_time < $item_end_time ){
|
||||
return '秒杀时间段冲突';
|
||||
}
|
||||
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user