Index.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. <?php
  2. namespace app\api\controller\screen;
  3. use app\hander\HelpHander;
  4. use think\Controller;
  5. use think\Db;
  6. /**
  7. * 大屏接口
  8. */
  9. class Index extends Controller
  10. {
  11. protected $sid = 0;
  12. protected $orgId = 0;
  13. protected function initialize()
  14. {
  15. parent::initialize();
  16. $token = input('token','','trim');
  17. $str = think_decrypt($token);
  18. // $str = '4|100';
  19. $data = $str?explode('|',$str):[];
  20. if(count($data) != 2){
  21. HelpHander::error('参数错误');
  22. }
  23. $this->sid = $data[0];
  24. $this->orgId = $data[1];
  25. }
  26. // 大屏详情
  27. public function info(){
  28. $ret = model('Screen')->getInfo($this->sid,$this->orgId);
  29. if(!$ret){
  30. HelpHander::error('大屏不存在');
  31. }
  32. HelpHander::success($ret);
  33. }
  34. // 获取大屏紧急联系人或图片
  35. public function getOrgInfo(){
  36. $data = [
  37. 'name' => model('Config')->getConfig('org_emergency_name',$this->orgId),
  38. 'phone' => model('Config')->getConfig('org_emergency_phone',$this->orgId),
  39. 'img' => model('Config')->getConfig('org_screen_img',$this->orgId)
  40. ];
  41. HelpHander::success($data);
  42. }
  43. // 日常工作任务记录
  44. public function dailyTaskRecord(){
  45. $map[] = ['org_id','=',$this->orgId];
  46. $map[] = ['task_id','>',0];
  47. $lists = Db::name('daily_record')
  48. ->where($map)
  49. ->field('user_id,task_id,daily_id')
  50. ->limit(20)
  51. ->order('id desc')
  52. ->select();
  53. $data = [];
  54. foreach ($lists as $k=>$v){
  55. $uname = Db::name('user')->where('id',$v['user_id'])->value('real_name');
  56. $task = Db::name('daily_task')->where('id',$v['task_id'])->value('title');
  57. $daily = Db::name('daily')->where('id',$v['daily_id'])->value('title');
  58. $data[] = [$daily,$task,$uname];
  59. }
  60. HelpHander::success($data);
  61. }
  62. public function questionnaireInfoList(){
  63. $map[] = ['del','=',0];
  64. $map[] = ['org_id','=',$this->orgId];
  65. $map= empty($map) ? true: $map;
  66. $lists1 = db('questionnaire')
  67. ->where($map)
  68. ->select();
  69. $total1 = $total2 = 0;
  70. foreach($lists1 as $k=>$v){
  71. $records = Db::name('questionnaire_record')
  72. ->where('questionnaire_id',$v['id'])
  73. ->count();
  74. $total1 +=$v['view'];
  75. $total2 +=$records;
  76. }
  77. //数据查询
  78. $lists = db('questionnaire')
  79. ->where($map)
  80. ->limit(20)
  81. ->order('id desc')
  82. ->select();
  83. $dd = [];
  84. foreach ($lists as $k=>$v){
  85. $records = Db::name('questionnaire_record')
  86. ->where('questionnaire_id',$v['id'])
  87. ->count();
  88. $dd[] = [$v['title'],$v['view'],$records,date('Y-m-d H:i',strtotime($v['create_time']))];
  89. }
  90. $data = [
  91. 'info'=>[
  92. 'total'=>count($lists1),
  93. 'total1'=>$total1,
  94. 'total2'=>$total2,
  95. ],
  96. 'list'=>$dd
  97. ];
  98. HelpHander::success($data);
  99. }
  100. }