Index.php 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?php
  2. namespace app\api\controller\doctor;
  3. use app\common\controller\Apic;
  4. use app\common\library\Sms;
  5. use think\Exception;
  6. use think\Validate;
  7. use think\Db;
  8. /**
  9. * 首页
  10. */
  11. class Index extends Apic
  12. {
  13. protected $noNeedLogin = [];
  14. protected $noNeedRight = '*';
  15. public function paiban_info(){
  16. $today = date('Y-m-d');
  17. $today_start = strtotime(date('Y-m-d'));
  18. //本周
  19. $this_week = this_week();
  20. //医生排班
  21. $paiban = Db::name('doctor_paiban')->where('doctor_id',$this->auth->id)->where('activetime','BETWEEN',$this_week)->order('activetime asc')->column('activetime,active');
  22. //dump($paiban);
  23. //组合数据
  24. $week_text = [1=>'周一',2=>'周二',3=>'周三',4=>'周四',5=>'周五',6=>'周六',7=>'周日'];
  25. $week_data = [];
  26. for($i=1;$i<=7;$i++){
  27. $i_time = $this_week[0] + 86400*($i-1);
  28. $i_data = [
  29. 'time' => $i_time,
  30. 'date' => date('Y-m-d',$i_time),
  31. 'date_text' => date('d日',$i_time),
  32. 'week' => date('w',$i_time),
  33. 'is_today' => 0,
  34. ];
  35. if($i_data['date'] == $today){
  36. $i_data['is_today'] = 1;
  37. }
  38. if($i_data['week'] == 0){
  39. $i_data['week'] = 7;
  40. }
  41. $i_data['week_text'] = $week_text[$i_data['week']];
  42. //今天各整点
  43. $i_child = [];
  44. for($y=8;$y<=20;$y++){
  45. $y_hour = $i_time + $y*3600;
  46. $child = [
  47. 'time' => $y_hour,
  48. 'date' => date('Y-m-d H:i',$y_hour),
  49. 'date_text' => date('H:i',$y_hour),
  50. 'active' => 0,
  51. ];
  52. if(isset($paiban[$y_hour]) && $paiban[$y_hour] == 1){
  53. $child['active'] = 1;
  54. }
  55. $i_child[] = $child;
  56. }
  57. $i_data['child'] = $i_child;
  58. //
  59. $week_data[] = $i_data;
  60. }
  61. //dump($week_data);
  62. $this->success(1,$week_data);
  63. }
  64. }