FupingQiu / okrsw

0 stars 0 forks source link

Illuminate\Database\Query\Builder::newInstance does not exist #10

Closed FupingQiu closed 5 years ago

FupingQiu commented 5 years ago

[2018-10-13 22:20:46] local.ERROR: App\Jobs\AutoCleanUpUsersActivities::CleanUpUsersActivities, Fail, 出现异常,请联系客服!e = BadMethodCallException: Method Illuminate\Database\Query\Builder::newInstance does not exist. in E:\laragon32\www\OKRsWalking\vendor\laravel\framework\src\Illuminate\Database\Query\Builder.php:2526 Stack trace:

2 E:\laragon32\www\OKRsWalking\app\Jobs\AutoCleanUpUsersActivities.php(85): Prettus\Repository\Eloquent\BaseRepository->update(Array, 266)

FupingQiu commented 5 years ago

这段代码有误: if ($activity['progress'] == 2){ $activityUpdate['interrupted_end_time'] = $freshtime; $activityUpdate['interrupted_amount'] = $activity['interrupted_amount'] + 1; $activityUpdate['interrupted_minutes'] = $activity['interrupted_minutes'] + (strtotime($freshtime) - strtotime($activity['interrupted_begin_time']))/60.0;
$activityUpdate['actual_activity_time'] = (strtotime($freshtime) - strtotime($activity['begin_time']))/60.0 - $activityUpdate['interrupted_minutes']; }else{ $activityUpdate['interrupted_end_time'] = $activity['interrupted_end_time']; $activityUpdate['interrupted_amount'] = $activity['interrupted_end_time']; $activityUpdate['interrupted_minutes'] = $activity['interrupted_end_time']; $activityUpdate['actual_activity_time'] = (strtotime($freshtime) - strtotime($activity['begin_time']))/60.0 - $activity['interrupted_minutes']; } $dailyActivity = $this->dailyActivityRepository->update($activityUpdate, $id);


这段则可以出来 foreach($activities as $activity) { $data = []; if ($activity['progress'] == 2){ //清理已经暂停的活动,记录打断的结束时间、打断次数+1、打断时间分数、实际用时 $data['interrupted_end_time'] = $freshtime; $data['interrupted_amount'] = $activity['interrupted_amount'] + 1; $data['interrupted_minutes'] = $activity['interrupted_minutes'] + (strtotime($freshtime) - strtotime($activity['interrupted_begin_time']))/60.0; $data['actual_activity_minutes'] = (strtotime($freshtime) - strtotime($activity['begin_time']))/60.0 - $data['interrupted_minutes']; $data['end_time'] = $freshtime; //结束时间 }else{ //清理正在进行中的任务,记录实际用时为计划用时 $data['actual_activity_minutes'] = $activity['plan_duration']30.0; $data['end_time'] = Date('Y-m-d H:i:s',strtotime($activity['begin_time']) + $activity['plan_duration']30.0*60); //结束时间 } $data['progress'] = 0; //进度状态:已完成 Log::info(CLASS . '::' . FUNCTION . ', update data = ' . implode('|', $data) . ', id = ' . $activity['id'] ); //array to string conversion $dailyActivity = $this->dailyActivityRepository->update($data, $activity['id']); Log::info(CLASS . '::' .FUNCTION . ' : activity id , ' . $dailyActivity['id'] . ', old progress = ' . $activity['progress'] . 'new progress = ' . $dailyActivity['progress']);