Test.php 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. <?php
  2. namespace app\controller\api;
  3. use app\common\dao\shared\SharedProsperityUserDao;
  4. use app\common\enum\CommonEnum;
  5. use app\common\enum\shared\SharedProsperityRewardRecordEnum;
  6. use app\common\model\shared\SharedProsperityUser;
  7. use app\common\repositories\shared\SharedProsperityUserRepository;
  8. use app\common\repositories\store\order\StoreGroupOrderRepository;
  9. use app\common\repositories\store\order\StoreOrderRepository;
  10. use app\common\repositories\user\UserRepository;
  11. use app\traits\GzcApiRequest;
  12. use think\facade\Db;
  13. class Test
  14. {
  15. public function test()
  16. {
  17. // // 1、获取订单数据
  18. // /** @var StoreGroupOrderRepository $storeGroupOrderRepository */
  19. // $storeGroupOrderRepository = app()->make(StoreGroupOrderRepository::class);
  20. // // 获取订单组数据
  21. // $groupOrderSn = 'wx177442719463317087';
  22. // $storeGroupOrderEntity = $storeGroupOrderRepository->getStoreGroupOrderEntityByGroupOrderSn($groupOrderSn);
  23. // /** @var StoreOrderRepository $storeOrderRepository */
  24. // $storeOrderRepository = app()->make(StoreOrderRepository::class);
  25. // // 获取订单集合
  26. // $storeOrderEntityList = $storeOrderRepository->getStoreOrderEntityListByGroupOrderId($storeGroupOrderEntity->getGroupOrderId());
  27. // try {
  28. // Db::transaction(function () use (
  29. // $storeGroupOrderRepository,
  30. // $storeGroupOrderEntity
  31. // ) {
  32. // $storeGroupOrderRepository->storeGroupOrderPaySuccess($storeGroupOrderEntity->getGroupOrderId());
  33. // });
  34. // } catch (\Throwable $e) {
  35. // Db::name("log")
  36. // ->insert([
  37. // 'data' => '【订单支付回调】【结算订单失败】:时间:' . date('Y-m-d H:i:s', time()) . ';订单编号:1111订单失败原因:' . json_encode([
  38. // 'error_message' => $e->getMessage(),
  39. // 'error_file' => $e->getFile(),
  40. // 'error_line' => $e->getLine(),
  41. // 'error_code' => $e->getCode(),
  42. // 'exception_class' => get_class($e),
  43. // 'trace' => $e->getTraceAsString()
  44. // ], JSON_UNESCAPED_UNICODE)
  45. // ]);
  46. // dd($e->getMessage());
  47. // }
  48. //
  49. //
  50. // die;
  51. //
  52. // $title = '系统补贴';
  53. // $map = [
  54. // 294 => 165,
  55. // 186 => 860
  56. // ];
  57. //
  58. // foreach ($map as $uid => $money) {
  59. // $bill = [
  60. // 'uid' => $uid,
  61. // 'link_id' => 0,
  62. // 'pm' => 1,
  63. // 'title' => $title,
  64. // 'category' => 'now_money',
  65. // 'type' => 'commission',
  66. // 'number' => $money,
  67. // 'balance' => 0,
  68. // 'mark' => $title,
  69. // 'create_time' => date('Y-m-d H:i:s'),
  70. // 'status' => 1,
  71. // 'commission_type' => CommonEnum::COMMISSION_TYPE['SYSTEM_SUBSIDY_COMMISSION']['code'],
  72. // 'order_sn' => 0,
  73. // 'tripartite' => 0,
  74. // 'type_shop' => 0,
  75. // 'mer_id' => 0,
  76. // 'source' => 0,
  77. // 'order_type' => 1,
  78. // 'is_red_brokerage' => 0,
  79. // 'gzc' => 3,
  80. // 'take_time' => time(),
  81. // 'district_id' => '',
  82. // 'street_id' => '',
  83. // 'month' => '',
  84. // ];
  85. // $a = Db::name('user_bill')->insert($bill);
  86. //
  87. // $b = Db::name('user')->where('uid', $uid)->inc('brokerage_price', $money)->update();
  88. // }
  89. // die;
  90. // $sharedUserPvCount = Db::name('shared_prosperity_reward_record')
  91. // ->where(['type' => SharedProsperityRewardRecordEnum::TYPE['PV']['code'], 'status' => SharedProsperityRewardRecordEnum::STATUS['VALID']['code'], 'pm' => SharedProsperityRewardRecordEnum::PM['INCOME']['code']])
  92. // ->whereNotIn('user_id',$testUids)
  93. // ->sum('number'); // 共富会员专区总业绩
  94. // dd($sharedUserPvCount);
  95. // die;
  96. //
  97. $total = 2756.48;
  98. $map = [
  99. 1 => 0.3,
  100. 2 => 0.15,
  101. 3 => 0.03,
  102. 4 => 0.008,
  103. ];
  104. $groupMap = [
  105. 1 => 0.05,
  106. 2 => 0.1
  107. ];
  108. $testUids = Db::name('user')->where('test_user', '1')->column('uid');
  109. $users = Db::name('shared_prosperity_user')->whereNotIn('user_id',$testUids)->group('partner_level')->field('partner_level,count(*) as num')->select()->toArray();
  110. $res = [];
  111. foreach ($users as $user) {
  112. if ($user['partner_level'] == 0 || $user['partner_level'] == 5) {
  113. continue;
  114. }
  115. $res[$user['partner_level']] = [
  116. 'num' => $user['num'],
  117. 'money' => $total * $map[$user['partner_level']] / $user['num']
  118. ];
  119. }
  120. $groupRes = [];
  121. $groupUsers = Db::name('shared_prosperity_group_user')->whereNotIn('user_id',$testUids)->group('group_id')->field('group_id,count(*)as num')->select()->toArray();
  122. foreach ($groupUsers as $groupUser) {
  123. $groupRes[$groupUser['group_id']] = [
  124. 'num' => $groupUser['num'],
  125. 'money' => $total * $groupMap[$groupUser['group_id']] / $groupUser['num']
  126. ];
  127. }
  128. dd($res, $groupRes);
  129. // 18201226770 4858下的单 改成 13716268932 5064下单
  130. // 上下级关系正确
  131. // 订单所属已修改
  132. // 订单产生的共富奖励已修改
  133. // 佣金修改
  134. // 查询团队业绩
  135. // $ids = [
  136. // 1213
  137. // ];
  138. // $res = [];
  139. // foreach ($ids as $id) {
  140. // /** @var SharedProsperityUserDao $dao */
  141. // $dao = app()->make(SharedProsperityUserDao::class);
  142. // $userIds = $dao->getAllSubordinateUserIds($id,true,5);
  143. // /** @var SharedProsperityUser $model */
  144. // $sum = SharedProsperityUser::getDB()
  145. // ->whereIn('user_id', $userIds)
  146. // ->sum('pv');
  147. // $res[$id] = $sum;
  148. // }
  149. // dd($res);
  150. /** @var SharedProsperityUserRepository $userRepository */
  151. $userRepository = app()->make(SharedProsperityUserRepository::class);
  152. $list = $userRepository->getUserTree(294);
  153. // var_dump(json_encode($list));
  154. // $field = request()->param('field');
  155. // /** @var UserRepository $userRepository */
  156. // $userRepository = app()->make(UserRepository::class);
  157. // $list = $userRepository->getUserForTree($field, 0);
  158. var_dump(json_encode($list));
  159. // return app('json')->success($list);
  160. }
  161. }