BusinessController.php 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. <?php
  2. /**
  3. * 重庆赤晓店信息科技有限公司
  4. * https://www.chixiaodian.com
  5. * Copyright (c) 2023 赤店商城 All rights reserved.
  6. */
  7. namespace app\modules\alliance\controllers;
  8. use app\models\BusinessMember;
  9. use app\modules\alliance\models\BusinessMemberForm;
  10. use app\models\BusinessMemberOrder;
  11. use app\models\SaasShareMoney;
  12. use app\modules\admin\models\SaasUsersForm;
  13. use app\models\WechatConfig;
  14. use app\models\Option;
  15. use app\models\SaasUser;
  16. use yii\base\BaseObject;
  17. use yii\helpers\Json;
  18. use app\utils\Tools;
  19. /**
  20. * Class GoodsController
  21. * @package app\modules\admin\controllers
  22. */
  23. class BusinessController extends BaseController
  24. {
  25. /**
  26. * 获取会员卡信息
  27. */
  28. public function actionBusinessInfo(){
  29. $form = new BusinessMemberForm();
  30. return $this->asJson($form->getAll());
  31. }
  32. public function actionDemo(){
  33. $saas_id = 131;
  34. $saasInfo = SaasUser::findOne($saas_id);
  35. $order = BusinessMemberOrder::findOne(82);
  36. $rightInfo = BusinessMember::findOne($order->member_id);
  37. if($saasInfo['parent_id'] > 0){
  38. $saas_parent_id = $saasInfo['parent_id'];
  39. $level = 1;
  40. do {
  41. echo $level.'---'.$saas_parent_id;
  42. if($level == 1){
  43. if(($rightInfo['commission_one'] > 0) && ($saasInfo['parent_id'] > 0)){
  44. $rebate = sprintf("%.2f", ($rightInfo['commission_one'] / 100) * $order->pay_price );
  45. $source = 1; //一级分账
  46. }else{
  47. break;
  48. }
  49. }
  50. if($level == 2){
  51. if($rightInfo['commission_two'] > 0){
  52. $rebate = sprintf("%.2f", ($rightInfo['commission_two'] / 100) * $order->pay_price );
  53. $source = 2; //二级分账
  54. }else{
  55. break;
  56. }
  57. }
  58. if($level == 3){
  59. if($rightInfo['commission_three'] > 0){
  60. $rebate = sprintf("%.2f", ($rightInfo['commission_three'] / 100) * $order->pay_price );
  61. $source = 3; //三级分账
  62. }else{
  63. break;
  64. }
  65. }
  66. $type = 0; //类型 0--佣金 1--提现
  67. $order->share_price += $rebate;
  68. $order->save();
  69. SaasShareMoney::set($rebate, $saas_parent_id, $order->id, $type, $source, 0, 0);
  70. $saas_parent_id = $this->saasCommission($saas_parent_id, $rebate );
  71. if(!$saas_parent_id || $saas_parent_id <= 0){
  72. break;
  73. }
  74. $level++;
  75. }
  76. while($level <=3);
  77. }
  78. }
  79. //用户添加佣金
  80. private function saasCommission($saas_id,$price){
  81. $saasInfo = SaasUser::findOne(['id' =>$saas_id,'is_delete'=>0]);
  82. if(!$saasInfo){
  83. return false;
  84. }
  85. $saasInfo->price += $price;
  86. $saasInfo->total_price += $price;
  87. $saasInfo->save();
  88. return isset($saasInfo['parent_id']) ? $saasInfo['parent_id']: 0;
  89. }
  90. //权限配置
  91. public function actionRightConf() {
  92. $saas_id = get_saas_user_id();
  93. $conf = Option::get('alliance_member_right_conf', -1, 'store', '{}');
  94. $conf = json_decode($conf['value'], true);
  95. $right = (new SaasUsersForm())->getRightList(['id'=>$saas_id]);
  96. $right = $right['data']['data'][0];
  97. $data = [
  98. 'code'=> 0,
  99. 'msg' => '成功',
  100. 'data' => $conf,
  101. 'paysum' => (new BusinessMemberForm())->paySum($saas_id),
  102. 'right' => $right,
  103. ];
  104. return $this->asJson($data);
  105. }
  106. //开通权限
  107. public function actionRightOpen() {
  108. $saas_id = get_saas_user_id();
  109. $rid = input_params('rid', 0);
  110. $form = new BusinessMemberForm();
  111. $data = $form->openRight($saas_id,$rid);
  112. return $this->asJson($data);
  113. }
  114. }