SharingFees.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. namespace app\api\command;
  3. use app\common\logic\ScanLogic;
  4. use think\console\Command;
  5. use think\console\Input;
  6. use think\console\Output;
  7. use app\common\model\ProductOrder;
  8. use app\common\model\UserModel;
  9. use think\Model;
  10. class SharingFees extends Command
  11. {
  12. protected function configure()
  13. {
  14. $this->setName('sharingFees')->setDescription('手续费分润');
  15. }
  16. protected function execute(Input $input, Output $output)
  17. {
  18. /* 永不超时 */
  19. // ini_set('max_execution_time', 0);
  20. // 记录开始运行的时间
  21. $GLOBALS['_beginTime'] = microtime(TRUE);
  22. $output->writeln('定时任务开始执行:' . date('Y-m-d H:i:s', time()));
  23. /*** 发放分红收益 ***/
  24. $output->writeln("开始发放空投:");
  25. $i = 0;
  26. $count = $this->reset_user_pledge($i);
  27. $output->writeln('定时任务执行结束,总执行:' . $count . '个');
  28. }
  29. /*手续费分润
  30. 当日使用(交易、赠送扣除)的茶宝手续费和茶宝(手续费账户)分别统计一下总量。
  31. 比如茶宝手续费有1000,茶宝(手续费账户)有2000,持有A的分润10%,则分别为100和200
  32. 1)先算出所有人产品A的持有量(如300),根据持有量算出每份产品应发放茶宝和茶宝(手续费账户)的数量。
  33. (茶宝:100/300=0.333 茶宝(手续费账户)200/300=0.666)
  34. 2)再算出持有A产品的用户,每人持有量;根据每人持有量*每份应发数量,计算出每人应发总额,发放到该用户的茶宝账户上。
  35. 3)按上述算法,以此计算持有B和持有CDE的用户
  36. */
  37. public function reset_user_pledge(){
  38. }
  39. }