diff --git a/app/Http/Controllers/Admin/CourseSignController.php b/app/Http/Controllers/Admin/CourseSignController.php index 6b62f1c..e15899f 100755 --- a/app/Http/Controllers/Admin/CourseSignController.php +++ b/app/Http/Controllers/Admin/CourseSignController.php @@ -333,6 +333,8 @@ class CourseSignController extends BaseController // 发通过通知 $data = ['course_sign_id' => $model->id]; Notification::send(User::find($model->user_id), new AuditNotify($data)); + // 审核通过即发放预约次数 + CourseAppointmentTotal::add($model->user_id, $model->id); } // 其他条件到审核不通过 if ($original['status'] != 2 && $model->status == 2) { @@ -346,7 +348,7 @@ class CourseSignController extends BaseController CourseAppointmentTotal::reduce($model->user_id, $model->id); } // 执行预约操作 - if (($course->is_fee == 0 && $model->status == 1) || ($course->is_fee == 1 && $model->fee_status == 1)) { + if ($model->status == 1) { // 预约车 $user = User::find($model->user_id); // 发送车辆预约信息 @@ -782,7 +784,7 @@ class CourseSignController extends BaseController $course = $model->course; // 执行预约 // 执行预约操作 - if (($course->is_fee == 0 && $model->status == 1) || ($course->is_fee == 1 && $model->fee_status == 1)) { + if ($model->status == 1) { // 预约车 $user = User::find($model->user_id); // 发送车辆预约信息 diff --git a/app/Models/CourseAppointmentTotal.php b/app/Models/CourseAppointmentTotal.php index 1ce0709..34dc496 100755 --- a/app/Models/CourseAppointmentTotal.php +++ b/app/Models/CourseAppointmentTotal.php @@ -21,22 +21,16 @@ class CourseAppointmentTotal extends SoftDeletesModel */ public static function addByCourse($courseId) { - // 判断课程是否已生成预约次数 -// $has = self::where('course_id', $courseId)->first(); -// if ($has) return true; - // 没有正常则生成预约次数 $course = Course::find($courseId); + if (empty($course)) return false; $courseType = CourseType::find($course->type); + if (empty($courseType)) return false; $start_date = $course->start_date; if (empty($start_date)) return false; // 获取一年后的日期 $oneYearLaterTimestamp = strtotime($start_date) + (365 * 24 * 60 * 60); - // 获取所有合格学员 - if ($course->is_fee == 1) { - $courseSigns = CourseSign::where('fee_status', 1)->where('course_id', $courseId)->get(); - } else { - $courseSigns = CourseSign::where('status', 1)->where('course_id', $courseId)->get(); - } + // 获取所有审核通过学员。预约次数与是否缴费解耦,统一按审核通过发放。 + $courseSigns = CourseSign::where('status', 1)->where('course_id', $courseId)->get(); foreach ($courseSigns as $courseSign) { $where = [ 'user_id' => $courseSign->user_id, @@ -67,10 +61,13 @@ class CourseAppointmentTotal extends SoftDeletesModel } // 加预约次数 $courseSign = CourseSign::find($course_sign_id); + if (empty($courseSign)) return false; $course = Course::find($courseSign->course_id); + if (empty($course)) return false; $courseType = CourseType::whereHas('courses', function ($query) use ($courseSign) { $query->where('id', $courseSign->course_id); })->first(); + if (empty($courseType)) return false; $start_date = $course->start_date; if (empty($start_date)) $start_date = date('Y-m-d H:i:s'); // 获取一年后的日期 @@ -100,4 +97,3 @@ class CourseAppointmentTotal extends SoftDeletesModel } } -