master
cody 5 months ago
parent 59acfcd1af
commit 41c9b5111f

@ -54,7 +54,7 @@ class CalendarsController extends BaseController
public function index() public function index()
{ {
$all = request()->all(); $all = request()->all();
$list = $this->model->with('courseContent')->where(function ($query) use ($all) { $list = $this->model->with('course','courseContent')->where(function ($query) use ($all) {
if (isset($all['filter']) && !empty($all['filter'])) { if (isset($all['filter']) && !empty($all['filter'])) {
foreach ($all['filter'] as $condition) { foreach ($all['filter'] as $condition) {
$key = $condition['key'] ?? null; $key = $condition['key'] ?? null;
@ -158,6 +158,8 @@ class CalendarsController extends BaseController
* summary="保存", * summary="保存",
* description="", * description="",
* @OA\Parameter(name="id", in="query", @OA\Schema(type="integer", format="int64"), required=true, description="ID存在则更新不存在则新增"), * @OA\Parameter(name="id", in="query", @OA\Schema(type="integer", format="int64"), required=true, description="ID存在则更新不存在则新增"),
* @OA\Parameter(name="type", in="query", @OA\Schema(type="integer"), required=false, description="类型1课程2课堂3事件"),
* @OA\Parameter(name="course_id", in="query", @OA\Schema(type="integer"), required=false, description="课程ID"),
* @OA\Parameter(name="course_content_id", in="query", @OA\Schema(type="integer"), required=false, description="课程课堂ID"), * @OA\Parameter(name="course_content_id", in="query", @OA\Schema(type="integer"), required=false, description="课程课堂ID"),
* @OA\Parameter(name="date", in="query", @OA\Schema(type="string", format="date"), required=false, description="日期YYYY-MM-DD"), * @OA\Parameter(name="date", in="query", @OA\Schema(type="string", format="date"), required=false, description="日期YYYY-MM-DD"),
* @OA\Parameter(name="title", in="query", @OA\Schema(type="string", maxLength=255), required=false, description="标题"), * @OA\Parameter(name="title", in="query", @OA\Schema(type="string", maxLength=255), required=false, description="标题"),

@ -814,7 +814,7 @@ class CourseController extends CommonController
if ($validator->fails()) { if ($validator->fails()) {
return $this->fail([ResponseCode::ERROR_PARAMETER, implode(',', $validator->errors()->all())]); return $this->fail([ResponseCode::ERROR_PARAMETER, implode(',', $validator->errors()->all())]);
} }
$list = Calendar::with('courseContent')->where('date', 'like', $all['month'] . '%')->orderBy('date')->get(); $list = Calendar::with('course', 'courseContent')->where('date', 'like', $all['month'] . '%')->orderBy('date')->get();
return $this->success($list); return $this->success($list);
} }

@ -9,6 +9,11 @@ use Illuminate\Support\Facades\Cache;
class Calendar extends SoftDeletesModel class Calendar extends SoftDeletesModel
{ {
public function course()
{
return $this->hasOne(Course::class, 'id', 'course_id');
}
public function courseContent() public function courseContent()
{ {
return $this->hasMany(CourseContent::class, 'id', 'course_content_id'); return $this->hasMany(CourseContent::class, 'id', 'course_content_id');

@ -14,6 +14,10 @@ return new class extends Migration {
{ {
Schema::create('calendars', function (Blueprint $table) { Schema::create('calendars', function (Blueprint $table) {
$table->id(); $table->id();
// 类型
$table->tinyInteger('type')->nullable()->comment('类型1课程2课堂3事件');
//课程id
$table->integer('course_id')->nullable()->comment('课程id');
// 课程课堂id // 课程课堂id
$table->integer('course_content_id')->nullable()->comment('课程课堂id'); $table->integer('course_content_id')->nullable()->comment('课程课堂id');
// 日期 // 日期

Loading…
Cancel
Save