You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
234 lines
7.8 KiB
234 lines
7.8 KiB
<?php
|
|
// +----------------------------------------------------------------------
|
|
// | Niucloud-admin 企业快速开发的多应用管理平台
|
|
// +----------------------------------------------------------------------
|
|
// | 官方网址:https://www.niucloud.com
|
|
// +----------------------------------------------------------------------
|
|
// | niucloud团队 版权所有 开源版本可自由商用
|
|
// +----------------------------------------------------------------------
|
|
// | Author: Niucloud Team
|
|
// +----------------------------------------------------------------------
|
|
|
|
namespace app\api\controller\apiController;
|
|
|
|
use app\Request;
|
|
use app\service\api\apiService\PersonCourseScheduleService;
|
|
use core\base\BaseApiService;
|
|
use function DI\string;
|
|
|
|
/**
|
|
* 学生课程安排-控制器相关接口
|
|
* Class Personnel
|
|
* @package app\api\controller\apiController
|
|
*/
|
|
class PersonCourseSchedule extends BaseApiService
|
|
{
|
|
|
|
//列表(人员与课程安排关系表)
|
|
public function index(Request $request)
|
|
{
|
|
$resources_id = $request->param('resources_id', '');//客户资源ID
|
|
$status = $request->param('status', '');//状态0待上课1已上课2请假
|
|
$course_date = $request->param('course_date', '');//上课日期Y-m-d
|
|
$venue_id = $request->param('venue_id', '');//场地ID
|
|
|
|
if (empty($resources_id)) {
|
|
return fail('缺少参数');
|
|
}
|
|
|
|
$where = [
|
|
'resources_id' => $resources_id,
|
|
'status' => $status,
|
|
'course_date' => $course_date,
|
|
'venue_id' => $venue_id,
|
|
];
|
|
|
|
$res = (new PersonCourseScheduleService())->getList($where);
|
|
|
|
return success($res);
|
|
}
|
|
|
|
//详情
|
|
public function info(Request $request)
|
|
{
|
|
$person_course_schedule_id = $request->param('person_course_schedule_id', '');//客户资源ID
|
|
|
|
if (empty($person_course_schedule_id)) {
|
|
return fail('缺少参数');
|
|
}
|
|
|
|
$where = [
|
|
'person_course_schedule_id' => $person_course_schedule_id,
|
|
];
|
|
|
|
$res = (new PersonCourseScheduleService())->getInfo($where);
|
|
if(!$res['code']){
|
|
return fail($res['msg']);
|
|
}
|
|
|
|
return success($res['data']);
|
|
}
|
|
|
|
//学生端-学生课程安排-修改请假状态
|
|
public function editStatus(Request $request)
|
|
{
|
|
$person_course_schedule_id = $request->param('person_course_schedule_id', '');
|
|
$status = $request->param('status', '');
|
|
if (empty($person_course_schedule_id)) {
|
|
return fail('缺少参数');
|
|
}
|
|
if (!in_array($status, [0, 1, 2])) {
|
|
return fail('状态错误');
|
|
}
|
|
$data = [
|
|
'status' => $status
|
|
];
|
|
$res = (new PersonCourseScheduleService())->editStatus($person_course_schedule_id, $data);
|
|
if(!$res['code']){
|
|
return fail($res['msg']);
|
|
}
|
|
return success($res['data']);
|
|
|
|
}
|
|
|
|
//获取学生排课日历
|
|
public function getCalendar(Request $request){
|
|
$resources_id = $request->param('resources_id', '');//客户资源ID
|
|
$start_date = $request->param('start_date', '');//开始日期(Y-m-d)
|
|
$end_date = $request->param('end_date', '');//结束日期(Y-m-d)
|
|
|
|
if (empty($resources_id) || empty($start_date) || empty($end_date)) {
|
|
return fail('缺少参数');
|
|
}
|
|
$where = [
|
|
'resources_id'=>$resources_id,
|
|
'start_date'=>$start_date,
|
|
'end_date'=>$end_date
|
|
];
|
|
$res = (new PersonCourseScheduleService())->getCalendar($where);
|
|
return success($res);
|
|
}
|
|
|
|
//获取学生排课的全部场地列表
|
|
public function getVenueListAll(Request $request){
|
|
$resources_id = $request->param('resources_id', '');//客户资源ID
|
|
$course_date = $request->param('course_date', '');//上课日期(Y-m-d)
|
|
if (empty($resources_id)) {
|
|
return fail('缺少参数');
|
|
}
|
|
$where = [
|
|
'resources_id'=>$resources_id,
|
|
'course_date'=>$course_date
|
|
];
|
|
$res = (new PersonCourseScheduleService())->getVenueListAll($where);
|
|
return success($res);
|
|
}
|
|
|
|
//获取学生排课的教练列表
|
|
public function getMyCoach(Request $request){
|
|
$resources_id = $request->param('resources_id', '');//客户资源ID
|
|
if (empty($resources_id)) {
|
|
return fail('缺少参数');
|
|
}
|
|
$where = [
|
|
'resources_id'=>$resources_id,
|
|
];
|
|
$res = (new PersonCourseScheduleService())->memberCoachList($where);
|
|
if(!$res['code']){
|
|
return fail($res['msg']);
|
|
}
|
|
return success($res['data']);
|
|
}
|
|
|
|
//获取学生课时消费记录列表
|
|
public function getStudentCourseUsageList(Request $request){
|
|
$resources_id = $request->param('resources_id', '');//客户资源ID
|
|
if (empty($resources_id)) {
|
|
return fail('缺少参数');
|
|
}
|
|
$where = [
|
|
'resources_id'=>$resources_id,
|
|
];
|
|
$res = (new PersonCourseScheduleService())->getStudentCourseUsageList($where);
|
|
if(!$res['code']){
|
|
return fail($res['msg']);
|
|
}
|
|
return success($res['data']);
|
|
}
|
|
|
|
//获取学生课程信息列表(包含教练配置)
|
|
public function getStudentCourseInfo(Request $request){
|
|
$resource_id = $request->param('resource_id', '');//客户资源ID
|
|
$member_id = $request->param('member_id', '');//会员ID
|
|
$student_id = $request->param('student_id', '');//学生ID
|
|
|
|
if (empty($resource_id)) {
|
|
return fail('缺少参数resource_id');
|
|
}
|
|
|
|
$where = [
|
|
'resource_id' => $resource_id,
|
|
'member_id' => $member_id,
|
|
'student_id' => $student_id,
|
|
];
|
|
|
|
$res = (new PersonCourseScheduleService())->getStudentCourseInfo($where);
|
|
if(!$res['code']){
|
|
return fail($res['msg']);
|
|
}
|
|
return success($res['data']);
|
|
}
|
|
|
|
//获取人员列表(教练、教务、助教)
|
|
public function getPersonnelList(Request $request){
|
|
$res = (new PersonCourseScheduleService())->getPersonnelList();
|
|
if(!$res['code']){
|
|
return fail($res['msg']);
|
|
}
|
|
return success($res['data']);
|
|
}
|
|
|
|
//更新学生课程人员配置
|
|
public function updateStudentCoursePersonnel(Request $request){
|
|
$student_course_id = $request->param('student_course_id', '');//学生课程ID
|
|
$main_coach_id = $request->param('main_coach_id', '');//主教练ID
|
|
$education_id = $request->param('education_id', '');//教务ID
|
|
$assistant_ids = $request->param('assistant_ids', '');//助教IDs,逗号分隔
|
|
|
|
if (empty($student_course_id)) {
|
|
return fail('缺少参数student_course_id');
|
|
}
|
|
|
|
$data = [
|
|
'main_coach_id' => $main_coach_id,
|
|
'education_id' => $education_id,
|
|
'assistant_ids' => $assistant_ids,
|
|
];
|
|
|
|
$res = (new PersonCourseScheduleService())->updateStudentCoursePersonnel($student_course_id, $data);
|
|
if(!$res['code']){
|
|
return fail($res['msg']);
|
|
}
|
|
return success($res['data']);
|
|
}
|
|
|
|
//获取学生课程详情包含已上课的情况和订单情况
|
|
public function getStudentCourseDetail(Request $request)
|
|
{
|
|
$student_course_id = $request->param('student_course_id', '');
|
|
|
|
if (empty($student_course_id)) {
|
|
return fail('缺少参数student_course_id');
|
|
}
|
|
|
|
$where = [
|
|
'student_course_id' => $student_course_id,
|
|
];
|
|
|
|
$res = (new PersonCourseScheduleService())->getStudentCourseDetail($where);
|
|
if(!$res['code']){
|
|
return fail($res['msg']);
|
|
}
|
|
return success($res['data']);
|
|
}
|
|
}
|
|
|