CodenoLogic.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace app\api\logic;
  3. use Exception;
  4. use fast\Asset;
  5. use think\Cache;
  6. use think\Loader ;
  7. use app\common\model\ProductOrder;
  8. use app\common\model\CodeUserModel;
  9. use app\common\model\CodeUserLogModel;
  10. use app\common\model\LedgerFrozenChangeModel;
  11. //激活码
  12. class CodenoLogic
  13. {
  14. //发放激活礼包
  15. public static function setActivate(int $uid, int $level, string $code_no)
  16. {
  17. $config = config('code_config');
  18. $frozen = 0;
  19. if(empty($level)){
  20. // 发放冻结金额
  21. $frozen = $config[$level]['num'];
  22. Loader::model('LedgerWalletModel')->changeWalletAccount($uid, Asset::FROZEN, $config[$level]['num'], LedgerFrozenChangeModel::CodeNo, $uid);
  23. }else{
  24. //添加激活码数量
  25. CodeUserModel::addCodeUser($uid, ($level-1), $config[$level]['num']);
  26. }
  27. //添加激活码记录
  28. CodeUserLogModel::addCodeUserLog($uid, $level, $config[$level]['gift1']['product_id'], $config[$level]['gift2']['product_id'], $frozen, $code_no);
  29. // 空投产品礼包1
  30. ProductOrder::setPopularNoAreaOrder($config[$level]['gift2']['num'], 0, 0, $config[$level]['gift1']['product_id'], $uid, ProductOrder::Airdrop);
  31. // 空投产品礼包2
  32. ProductOrder::setPopularNoAreaOrder($config[$level]['gift2']['num'], 0, 0, $config[$level]['gift2']['product_id'], $uid, ProductOrder::Airdrop);
  33. }
  34. }