refactor(app): 优化邮件模板

master
cody 4 weeks ago
parent 1fc528a2e3
commit 3a8b3f9e9a

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