智慧教务系统
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.
 
 
 
 
 
 

149 lines
4.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\jlClassService;
use app\service\api\apiService\PhysicalTestService;
use core\base\BaseApiService;
/**
* 客户资源相关接口
* Class Personnel
* @package app\api\controller\apiController
*/
class ClassApi extends BaseApiService
{
//课程列表
public function jlClassList(Request $request){
$id = $this->member_id;
$data = $this->request->params([
["name",'']
]);
return success((new jlClassService())->list($id,$data));
}
//课程详情
public function jlClassInfo(Request $request){
$data = $this->request->params([
["class_id",0]
]);
return success('获取成功',(new jlClassService())->info($data['class_id']));
}
//获取学员详情
public function jlStudentsInfo(Request $request){
$data = $this->request->params([
["students_id",0]
]);
return success('获取成功',(new jlClassService())->jlStudentsInfo($data['students_id']));
}
//体测列表
public function PhysicalTestList(Request $request){
$data = $this->request->params([
["user_id",0]
]);
return success('获取成功',(new jlClassService())->PhysicalTestList($data['user_id']));
}
//体测详情
public function PhysicalTestInfo(Request $request)
{
$id = $request->param('survey_id', '');//体测报告的id
if (empty($id)) {
return fail('缺少参数');
}
$where = [
'id' => $id,
];
$res = (new PhysicalTestService())->getInfo($where);
$physicalTestReport = [];
if (isset($res['data']['physical_test_report'])) {
$value = $res['data']['physical_test_report'];
if (is_string($value)) {
if (strpos($value, ',') !== false) {
$physicalTestReport = array_map('trim', explode(',', $value));
} else {
$physicalTestReport = [$value];
}
} elseif (is_array($value)) {
$physicalTestReport = $value;
}
}
$res['data']['physical_test_report'] = $physicalTestReport;
if(!$res['code']){
return fail($res['msg']);
}
return success($res['data']);
}
//添加作业-获取班级列表
public function jlGetClassesList(Request $request)
{
return success((new jlClassService())->GetClassesList());
}
//添加作业-获取课程列表
public function jlGetCoursesList(Request $request)
{
return success((new jlClassService())->GetCoursesList());
}
//添加作业-学员列表
public function jlGetStudentList(Request $request)
{
return success((new jlClassService())->GetStudentList());
}
//添加作业
public function addJlPublishJob(Request $request)
{
$id = $this->member_id;
$data = $this->request->params([
["class_id",0],
["classes_id_name",''],
["description",''],
["content_type",''],
["course_id",0],
["course_id_name",''],
["student_id",''],
["students_ids_name",''],
["type",''],
["personnel_id",$id],
]);
if (isset($data['student_id'])) {
if (is_string($data['student_id']) && strpos($data['student_id'], ',') !== false) {
$studentIds = explode(',', $data['student_id']);
$studentIds = array_map('trim', $studentIds);
} elseif (is_array($data['student_id'])) {
$studentIds = $data['student_id'];
} else {
$studentIds = [(string)$data['student_id']];
}
$studentIds = array_map('intval', $studentIds);
} else {
$studentIds = [];
}
$data['student_id'] = $studentIds;
return success('操作成功', (new jlClassService())->addPublishJob($data));
}
//获取我的页面统计个数
public function getStatisticsInfo()
{
$id = $this->member_id;
return success('操作成功', (new jlClassService())->getStatisticsInfo($id));
}
}