教师空闲时间获取、删除

This commit is contained in:
Dai 2024-07-28 22:48:34 +08:00
parent f8f5cf0fa5
commit fe008f61f9
2 changed files with 83 additions and 6 deletions

View File

@ -20,6 +20,30 @@ class TeacherFreeTimeController extends BaseController
$service = new TeacherFreeTimeService(); $service = new TeacherFreeTimeService();
$res = $service->addFreeTime($request); $res = $service->addFreeTime($request);
return $this->json($res); return $this->json($res);
} /**
* @desc 添加空闲时间
* @param Request $request
* @return \support\Response
* @throws \Exception
*/
public function getFreeTime(Request $request)
{
$service = new TeacherFreeTimeService();
$res = $service->getFreeTime($request);
return $this->json($res);
}
/**
* @desc 删除空闲时间
* @param Request $request
* @return \support\Response
* @throws \Exception
*/
public function delete(Request $request)
{
$service = new TeacherFreeTimeService();
$res = $service->delete($request);
return $this->json($res);
} }
} }

View File

@ -31,7 +31,7 @@ class TeacherFreeTimeService
} }
$data = $request->post(); $data = $request->post();
if(empty($data['free_time'])){ if (empty($data['free_time'])) {
throw new Exception('请选择时间后提交'); throw new Exception('请选择时间后提交');
} }
@ -45,7 +45,7 @@ class TeacherFreeTimeService
$has_msg = false; $has_msg = false;
foreach ($free_time as $item) { foreach ($free_time as $item) {
$free_date = $item['day']; $free_date = $item['day'];
foreach ($item['times'] as $val){ foreach ($item['times'] as $val) {
$time = $val['zh']; $time = $val['zh'];
$en_time = $val['en']; $en_time = $val['en'];
$time_period = explode('-', $time); $time_period = explode('-', $time);
@ -71,17 +71,17 @@ class TeacherFreeTimeService
//判断是否已经存在 //判断是否已经存在
$exit = TeacherFreeTime::where($free_data)->findOrEmpty(); $exit = TeacherFreeTime::where($free_data)->findOrEmpty();
if(!$exit->isEmpty()){ if (!$exit->isEmpty()) {
$msg .= '【' + $free_data['en_time'] + '】'; $msg .= '【' + $free_data['en_time'] + '】';
$has_msg = true; $has_msg = true;
continue; continue;
} }
$res = TeacherFreeTime::create($free_data); $res = TeacherFreeTime::create($free_data);
if(!$res){ if (!$res) {
throw new Exception('保存失败'); throw new Exception('保存失败');
} }
if($has_msg){ if ($has_msg) {
$msg = $msg + '已存在添加'; $msg = $msg + '已存在添加';
} }
@ -128,7 +128,7 @@ class TeacherFreeTimeService
'msg' => '保存成功' 'msg' => '保存成功'
]; ];
}catch (Exception $e){ } catch (Exception $e) {
return [ return [
'code' => ResponseCode::FAIL, 'code' => ResponseCode::FAIL,
'msg' => $e->getMessage() 'msg' => $e->getMessage()
@ -137,4 +137,57 @@ class TeacherFreeTimeService
} }
/**
* @desc 获取教师空闲时间
* @param $request
* @return array
*/
public function getFreeTime($request)
{
try {
$free_time = TeacherFreeTime::where(['date' => $request->get('date'), 'teacher_id' => $request->teacher->id])->findOrEmpty();
if ($free_time->isEmpty()) {
throw new Exception('未找到数据');
}
return [
'code' => ResponseCode::SUCCESS,
'data' => $free_time,
'msg' => 'success'
];
} catch (Exception $e) {
return [
'code' => ResponseCode::FAIL,
'msg' => $e->getMessage()
];
}
}
/**
* @desc 删除空闲时间
* @param $request
* @return array
*/
public function delete($request)
{
try {
$free_time = TeacherFreeTime::where(['id' => $request->post('free_time_id')])->findOrEmpty();
if ($free_time->isEmpty()) {
throw new Exception('未找到数据');
}
$free_time->delete();
return [
'code' => ResponseCode::SUCCESS,
'msg' => '操作成功'
];
} catch (Exception $e) {
return [
'code' => ResponseCode::FAIL,
'msg' => $e->getMessage()
];
}
}
} }