Compare commits

...

4 Commits

@ -138,7 +138,7 @@ class CourseContentController extends BaseController
if ($validator->fails()) {
return $this->fail([ResponseCode::ERROR_PARAMETER, implode(',', $validator->errors()->all())]);
}
$detail = $this->model->with('courseContentEvaluation.courseContentEvaluationAsks', 'teacher', 'directionDetail')->find($all['id']);
$detail = $this->model->with('courseContentEvaluation.courseContentEvaluationAsks', 'teacher')->find($all['id']);
return $this->success($detail);
}

@ -48,7 +48,7 @@ class TeacherController extends BaseController
public function index()
{
$all = request()->all();
$list = $this->model->with('courseContents.course', 'courseContents.directionDetail')->where(function ($query) use ($all) {
$list = $this->model->with('courseContents.course', 'courseContents')->where(function ($query) use ($all) {
if (isset($all['filter']) && !empty($all['filter'])) {
foreach ($all['filter'] as $condition) {
$key = $condition['key'] ?? null;

@ -181,6 +181,7 @@ class UserController extends BaseController
* @OA\Parameter(name="year", in="query", @OA\Schema(type="string"), required=true, description="年份"),
* @OA\Parameter(name="is_black", in="query", @OA\Schema(type="string"), required=true, description="是否黑名单0否1是"),
* @OA\Parameter(name="is_yh_invested", in="query", @OA\Schema(type="string"), required=true, description="是否元和已投企业0否1是"),
* @OA\Parameter(name="company_tag", in="query", @OA\Schema(type="string"), required=true, description="企业标签"),
* @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"),
* @OA\Response(
* response="200",
@ -212,6 +213,11 @@ class UserController extends BaseController
}
});
}
if (isset($all['company_tag'])) {
$list = $list->whereHas('company', function ($query) use ($all) {
$query->where('company_tag', 'like', '%' . $all['company_tag'] . '%');
});
}
$list = $list->whereHas('courseSigns', function ($query) use ($all) {
if (isset($all['course_id'])) {
$query->where('course_id', $all['course_id']);

@ -65,10 +65,10 @@ class CourseContent extends SoftDeletesModel
return $this->hasMany(CourseContentEvaluationAsk::class, 'course_content_id', 'id');
}
public function directionDetail()
{
return $this->hasOne(ParameterDetail::class, 'id', 'direction');
}
// public function directionDetail()
// {
// return $this->hasOne(ParameterDetail::class, 'id', 'direction');
// }
/**
* 获取课程详情小程序码

@ -85,48 +85,83 @@ class MeetRepository
*/
public function appointment($model, $appointmentConfig, &$out)
{
$startDateTime = new \DateTime($model->start_time);
$endDateTime = new \DateTime($model->end_time);
$meetOther = json_decode($appointmentConfig->room, true);
$url = $this->baseUrl . '/services/api/BookingService.aspx';
$header[] = 'Content-Type: application/json';
$params = [
'account' => $this->account,
'password' => md5($this->password),
'roomName' => $appointmentConfig->name,
'roomCode' => $meetOther['code'],
'roomAddress' => $meetOther['address'],
'beginTime' => $model->start_time,
'endTime' => $model->end_time,
'speaker' => $model->name,
'subject' => empty($model->content) ? '预约会议室' : $model->content,
'booker' => "{$model->name};{$model->mobile};",
'attendance' => "{$model->name};{$model->mobile};",
'signUrl' => ''
];
$result = [];
$finally = 0;
try {
$resultJson = httpCurl($url, 'GET', $params, $header);
$out = $resultJson;
$result = json_decode($resultJson, true);
if ($result['success']) {
$finally = 1;
$meetIds = explode(',', $model->meet_id);
array_push($meetIds, $result['data']);
$meetIds = array_filter($meetIds);
$model->meet_id = implode(',', $meetIds);
$model->save();
ThirdAppointmentLog::add($model->id, 0, $model->user_id, $url, $params, $result, $finally, '会议室预约');
return true;
} else {
$out = $resultJson;
ThirdAppointmentLog::add($model->id, 0, $model->user_id, $url, $params, $result, $finally, '会议室预约');
$allMeetIds = [];
$allResults = [];
$currentDate = clone $startDateTime;
while ($currentDate->format('Y-m-d') <= $endDateTime->format('Y-m-d')) {
$dayStart = clone $currentDate;
$dayEnd = clone $currentDate;
$dayEnd->setTime(23, 59, 59);
if ($currentDate->format('Y-m-d') === $startDateTime->format('Y-m-d')) {
$dayStart = clone $startDateTime;
}
if ($currentDate->format('Y-m-d') === $endDateTime->format('Y-m-d')) {
$dayEnd = clone $endDateTime;
}
$params = [
'account' => $this->account,
'password' => md5($this->password),
'roomName' => $appointmentConfig->name,
'roomCode' => $meetOther['code'],
'roomAddress' => $meetOther['address'],
'beginTime' => $dayStart->format('Y-m-d H:i:s'),
'endTime' => $dayEnd->format('Y-m-d H:i:s'),
'speaker' => $model->name,
'subject' => empty($model->content) ? '预约会议室' : $model->content,
'booker' => "{$model->name};{$model->mobile};",
'attendance' => "{$model->name};{$model->mobile};",
'signUrl' => ''
];
$result = [];
$finally = 0;
try {
$resultJson = httpCurl($url, 'GET', $params, $header);
$result = json_decode($resultJson, true);
if ($result['success']) {
$finally = 1;
$allMeetIds[] = $result['data'];
$allResults[] = $result;
ThirdAppointmentLog::add($model->id, 0, $model->user_id, $url, $params, $result, $finally, '会议室预约-' . $currentDate->format('Y-m-d'));
} else {
$out = $resultJson;
ThirdAppointmentLog::add($model->id, 0, $model->user_id, $url, $params, $result, $finally, '会议室预约-' . $currentDate->format('Y-m-d'));
return false;
}
} catch (\Exception $e) {
$out = $e->getMessage();
ThirdAppointmentLog::add($model->id, 0, $model->user_id, $url, $params, $result, $finally, '会议室预约-' . $currentDate->format('Y-m-d'));
return false;
}
} catch (\Exception $e) {
$out = $e->getMessage();
ThirdAppointmentLog::add($model->id, 0, $model->user_id, $url, $params, $result, $finally, '会议室预约');
return false;
$currentDate->modify('+1 day');
}
if (!empty($allMeetIds)) {
$meetIds = explode(',', $model->meet_id);
$meetIds = array_merge($meetIds, $allMeetIds);
$meetIds = array_filter($meetIds);
$model->meet_id = implode(',', $meetIds);
$model->save();
$out = json_encode($allResults, JSON_UNESCAPED_UNICODE);
return true;
}
return false;
}
/**

Loading…
Cancel
Save