course/app/common/service/SubjectHomeworkService.php

63 lines
2.0 KiB
PHP
Raw Normal View History

<?php
namespace app\common\service;
use app\common\model\SubjectHomework;
use app\common\model\Teacher;
use app\common\model\TeacherScheduleTime;
use app\constant\ResponseCode;
use think\Exception;
class SubjectHomeworkService
{
/**
* @desc 发布课程作业
* @param $request
* @return array|void
*/
public function publish($request)
{
try {
if (empty($request->teacher)) {
throw new Exception('请教师登陆后再设置');
}
$teacher = Teacher::where(['id' => $request->teacher->id])->findOrEmpty();
if ($teacher->isEmpty()) {
throw new Exception('未找到教师信息,设置失败');
}
$data = $request->post();
$teacher_schedule_time = TeacherScheduleTime::where(['id'=> $data['teacher_schedule_time_id']])->findOrEmpty();
if($teacher_schedule_time->isEmpty()){
throw new Exception('未找到教师课程安排');
}
$subject_homework = SubjectHomework::where(['teacher_id' => $teacher->id, 'teacher_schedule_time_id' => $data['teacher_schedule_time_id'], 'subject_id' => $data['subject_id']])->findOrEmpty();
if(!$subject_homework->isEmpty()){
throw new Exception('家庭作业已存在,请勿重复提交');
}
$res = SubjectHomework::create([
'teacher_id' => $teacher->id,
'teacher_schedule_time_id' => $data['teacher_schedule_time_id'],
'subject_id' => $teacher_schedule_time->subject_id,
'homework_file_url' => $data['homework_file_url'],
'homework_file_name' => $data['homework_file_name'],
]);
return [
'code' => ResponseCode::SUCCESS,
'msg' => '操作成功'
];
} catch (Exception $e) {
return [
'code' => ResponseCode::FAIL,
'msg' => $e->getMessage()
];
}
}
}