Home.php 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace app\agent\controller;
  3. use think\facade\Session;
  4. use app\agent\BaseController;
  5. use app\common\model\User as UserModel;
  6. use app\common\model\Broker as BrokerModel;
  7. use app\common\model\ReportFactory as ReportFactoryModel;
  8. use app\common\model\ReportEntry as ReportEntryModel;
  9. class Home extends BaseController
  10. {
  11. public function index()
  12. {
  13. return view('index', [
  14. 'access_agent' => session('access_agent')
  15. ]);
  16. }
  17. public function console()
  18. {
  19. $agentid = $this->access_agent['id'];
  20. $brokeridarr = BrokerModel::where('agentid','=',$agentid)->column('id');
  21. $stime = strtotime(date("Y-m-d"),time());
  22. $tuserCount = UserModel::whereIn('brokerid',$brokeridarr)->where('brokerid','<>', 0)->where('createtime','between',[$stime,$stime+86400])->count();
  23. $yuserCount = UserModel::whereIn('brokerid',$brokeridarr)->where('brokerid','<>', 0)->where('createtime','between',[$stime-86400,$stime])->count();
  24. $userCount = UserModel::whereIn('brokerid',$brokeridarr)->where('brokerid','<>', 0)->count();
  25. $brolerCount = BrokerModel::where('agentid', '=', $agentid)->count();
  26. /*$entryCount = ReportEntryModel::where('agentid', '=', $agentid)->count();
  27. $entryfactorylist = ReportEntryModel::with('reportFactory')->where('agentid', '=', $agentid)->field('agentid,factoryid,COUNT(id) AS entrytol')->group('factoryid')->order('entrytol','desc')->select()->toArray();
  28. $entryfnamearr = array();
  29. $entryfvaluearr = array();
  30. if (!empty($entryfactorylist)){
  31. foreach($entryfactorylist as $k=>$v){
  32. $entryfnamearr[$k] = $v['reportFactory']['title'] ." - ".$v['reportFactory']['idnumber'];
  33. $entryfvaluearr[$k]['name'] = $v['reportFactory']['title'] ." - ".$v['reportFactory']['idnumber'];
  34. $entryfvaluearr[$k]['value'] = $v['entrytol'];
  35. }
  36. }*/
  37. $userlist = UserModel::whereIn('brokerid',$brokeridarr)->where('brokerid','<>', 0)->where('createtime','between',[$stime-86400*30, $stime+86399])->withAttr('createtime',function ($value,$data) { return date("Y-m-d",$value); })->select()->toArray();
  38. $userarr = periodDate( date('Y-m-d', time()-86400*30), date("Y-m-d") );
  39. if (!empty($userlist)){
  40. foreach($userlist as $k=>$v){
  41. $userarr[$v['createtime']] += 1;
  42. }
  43. }
  44. /*$usertolarr = arrKeyVal($userarr);
  45. $entrylist = ReportEntryModel::where('agentid', '=', $agentid)->where('createtime','between',[$stime-86400*30, $stime+86399])->withAttr('createtime',function ($value,$data) { return date("Y-m-d",$value); })->select()->toArray();
  46. $entryarr = periodDate( date('Y-m-d', time()-86400*30), date("Y-m-d") );
  47. if (!empty($entrylist)){
  48. foreach($entrylist as $k=>$v){
  49. $entryarr[$v['createtime']] += 1;
  50. }
  51. }
  52. $entrytolarr = arrKeyVal($entryarr);*/
  53. return view('home/console',[
  54. 'tuserCount' => $tuserCount,
  55. 'yuserCount' => $yuserCount,
  56. 'userCount' => $userCount,
  57. 'brolerCount' => $brolerCount,
  58. // 'entryCount' => $entryCount,
  59. //
  60. // 'entryfnamearr' => json_encode($entryfnamearr),
  61. // 'entryfvaluearr' => json_encode($entryfvaluearr),
  62. //
  63. // 'usernamearr' => json_encode($usertolarr['keyarr']),
  64. // 'uservaluearr' => json_encode($usertolarr['valarr']),
  65. //
  66. // 'entrynamearr' => json_encode($entrytolarr['keyarr']),
  67. // 'entryvaluearr' => json_encode($entrytolarr['valarr'])
  68. ]);
  69. }
  70. }