HourDataSwitch.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. <?php
  2. /**
  3. * HourDataSwitch.php UTF-8
  4. * 时表切量数据生成
  5. *
  6. * @date : 2019/12/10 21:05
  7. *
  8. * @license 这不是一个自由软件,未经授权不许任何使用和传播。
  9. * @author : dengcongshuai <dcs@huosdk.com>
  10. * @version : HUOSDK 8.0
  11. */
  12. namespace console\index\controller;
  13. use huomp\logic\data\HourArchiveLogic;
  14. use huomp\logic\data\HourArchiveSwitchLogic;
  15. use think\console\Command;
  16. use think\console\Input;
  17. use think\console\input\Option;
  18. use think\console\Output;
  19. class HourDataSwitch extends Command {
  20. protected function configure() {
  21. $this->setName('hourdata_switch')->setDescription('时表切量数据生成');
  22. $this->addOption('option', 'o', Option::VALUE_REQUIRED, 'choose task to do', '');
  23. $this->addOption('date', 'd', Option::VALUE_REQUIRED, 'choose date to do', '');
  24. $this->addOption('hour', 'hk', Option::VALUE_REQUIRED, 'choose hour to do', '');
  25. }
  26. /**
  27. * /www/wdlinux/php/bin/php /huosdk/mini/think hourdata_switch
  28. *
  29. * @param Input $input
  30. * @param Output $output
  31. *
  32. * @return int|null|void
  33. */
  34. protected function execute(Input $input, Output $output) {
  35. $_hour_archive_switch_logic = new HourArchiveSwitchLogic();
  36. $_task = $input->getOption('option');
  37. $_date = $input->getOption('date');
  38. $_hour = $input->getOption('hour');
  39. if ('archiveHour' == $_task) {
  40. $_time = time() - 3600;
  41. if (empty($_date)) {
  42. $_date = date('Y-m-d', $_time);
  43. }
  44. if (empty($_hour)) {
  45. $_hour = date('H', $_time);
  46. }
  47. /* 玩家充值数据每时 */
  48. $_hour_archive_switch_logic->archiveHour($_date, $_hour);
  49. // $_date = '2020-11-13';
  50. // for ($_i = 0; $_i < 70; $_i++) {
  51. // for ($_h = 0; $_h <= 23; $_h++) {
  52. // $_hour = $_h;
  53. // $_hour_archive_logic->archiveHour($_date, $_hour);
  54. // if ($_date == '2020-12-16' && $_hour == 14) {
  55. // exit;
  56. // }
  57. // }
  58. // $_date = date('Y-m-d', strtotime($_date) + 86400);
  59. // }
  60. }
  61. exit;
  62. }
  63. }