【发布时间】:2017-12-30 21:42:32
【问题描述】:
在这里,我使用日程安排和额外的时间安排明智地设置治疗师的工作时间。 治疗师 nancy fernadez 的时间表是:
- 她在 2017 年 5 月 31 日的额外(额外)工作时间是 10:00:00 到 14:00:00,即 12 小时内是上午 10:00 到下午 2:00
-
为她安排工作时间,日期 31-05-2017 是 14:00:00 到 19:00:00,即 12 小时内是下午 2:00 到晚上 7:00
Nancy fernadez 全天提供服务,即上午 10:00 至下午 7:00。
问题: 我在 13:25 至 14:25 之间预订我的预订时间,即 01:25 pm 至 02:25 pm。它会给我错误,就像当时没有治疗师一样...实际上按照时间表 nancy 有空...
这是任务分配日历的图片
这里是我的 mysql 查询下方,询问她的额外工作时间
SELECT SQL_CALC_FOUND_ROWS *
FROM `extra_day`
INNER JOIN `therapist` ON `thrp_id` = `exd_thrp_id`
WHERE `exd_thrp_id` = '3'
AND `exd_date` = '2017-05-31'
AND `exd_from` <= '13:25:00'
AND `exd_to` >= '14:25:00'
这里是我的 mysql 查询下方,为她安排明智的工作时间
SELECT SQL_CALC_FOUND_ROWS s.*, CONCAT(th.thrp_fname, " ", th.thrp_surname) AS thrp_name
FROM `schedule` `s`
INNER JOIN `therapist` `th` ON `s`.`schd_thrp_id` = `th`.`thrp_id`
WHERE `schd_thrp_id` = '3'
AND `schd_day` = '3'
AND `schd_from` <= '13:25:00'
我使用下面的控制器检查治疗师的可用性
// check if therapist comes on this day (regular schedule or extra day)
$this->load->model('schedule_model');
$schedule = $this->schedule_model->Get(NULL, array('schd_thrp_id' => $data['bk_thrp_id'],
'schd_day' => date('N', strtotime($data['bk_start'])),
'schd_from' => date('H:i:s', strtotime($data['bk_start']))
));
$this->load->model('additional_work_model');
$additional_work = $this->additional_work_model->Get(NULL, array('exd_thrp_id' => $data['bk_thrp_id'],
'exd_date' => date('Y-m-d', strtotime($data['bk_start'])),
'exd_from' => date('H:i:s', strtotime($data['bk_start'])),
'exd_to' => date('H:i:s', strtotime($data['bk_end']))
));
if ($schedule['countFiltered'] == 0 && $additional_work['countFiltered'] == 0) {
$response['status'] = 'failure';
$response['errormsg'] = 'Therapist not available.';
return $response;
}
如果有任何与问题相关的疑问,请问我
感谢您的帮助...
【问题讨论】:
-
还是没有找到解决方案?
-
@Nawin,不,我没找到
标签: php mysql codeigniter datetime