| xqd
@@ -143,4 +143,23 @@ class Student extends Model
|
|
|
}
|
|
|
return floor($total / 60);
|
|
|
}
|
|
|
+
|
|
|
+ public function getCheckCardTime($begin_date = null, $end_date = null)
|
|
|
+ {
|
|
|
+ $now = Carbon::now();
|
|
|
+ $begin_date_time = empty($begin_date) ? $now->subYears(10)->toDateTimeString() : Carbon::createFromTimestamp(strtotime($begin_date))->toDateTimeString();
|
|
|
+ $end_date_time = empty($end_date) ? $now->addYears(10)->toDateTimeString() : Carbon::createFromTimestamp(strtotime($end_date))->toDateTimeString();
|
|
|
+ $check_cards = CheckCard::where([
|
|
|
+ ['student_id', '=', $this['id']],
|
|
|
+ ['begin_date_time', '>=', $begin_date_time],
|
|
|
+ ['begin_date_time', '<', $end_date_time],
|
|
|
+ ])->get();
|
|
|
+ $total = 0;
|
|
|
+ foreach($check_cards as $check_card) {
|
|
|
+ if(!empty($check_card->begin_date_time) && !empty($check_card->end_date_time) && $check_card->end_date_time > $check_card->begin_date_time) {
|
|
|
+ $total += (strtotime($check_card->end_date_time) - strtotime($check_card->begin_date_time));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|