WorkwxCrontabController.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. namespace console\controllers;
  3. use addons\Workwx\common\models\CustomerDayLog;
  4. use addons\Workwx\common\models\TransactionData;
  5. use addons\Workwx\common\service\DailyService;
  6. use addons\Workwx\common\service\LiveCodeService;
  7. use addons\Workwx\common\service\StaffService;
  8. use addons\Workwx\common\service\StatisticsService;
  9. use common\models\mall\Mall;
  10. use common\models\mall\MallAddons;
  11. use yii\console\Controller;
  12. class WorkwxCrontabController extends Controller
  13. {
  14. /**
  15. * 一些统计,10分钟一次
  16. * @desc
  17. */
  18. public function actionStatistics(){
  19. $mall_list = Mall::getEnableMallList();
  20. foreach ($mall_list as $item) {
  21. if (!MallAddons::isInstall($item['id'],'Workwx')){
  22. continue;
  23. }
  24. $statistics = new StatisticsService(['mall_id'=>$item['id']]);
  25. $statistics->initStatistics();
  26. // 统计每个员工下面的每天客户数量
  27. CustomerDayLog::staffDayAllLog($item['id']);
  28. }
  29. }
  30. /**
  31. * 发送 每日经营日报 消息
  32. * @desc
  33. */
  34. public function actionEverydayDaily(){
  35. $daily = new DailyService();
  36. $daily->everydayDaily();
  37. }
  38. /**
  39. * 活码自动上下线
  40. * @desc
  41. */
  42. public function actionLiveAutoLine(){
  43. LiveCodeService::newAutoLine();
  44. }
  45. /**
  46. * 1分钟一次,
  47. * 根据手机号码,查找员工在商城的user_id
  48. * @desc
  49. */
  50. public function actionUpdateMallUserId(){
  51. $mall_list = Mall::getEnableMallList();
  52. foreach ($mall_list as $item) {
  53. StaffService::updateMallUserId($item['id']);
  54. }
  55. }
  56. /**
  57. * 每天运行1次
  58. * 统计交易数据
  59. *
  60. * @return void
  61. */
  62. public function actionTransactionData()
  63. {
  64. $model = TransactionData::find();
  65. $time = strtotime('-1day');
  66. $one = $model->where(['time' => $time])->one();
  67. if (empty($one)) {
  68. TransactionData::storeMallTransactionData();
  69. }
  70. }
  71. }