| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- <?php
- /**
- * hdApp 门店邀请 / 我的分佣
- */
- namespace hd\controllers;
- use bizHd\shop\classes\MainInviteClass;
- use bizHd\shop\classes\MainInviteCommissionClass;
- use bizHd\shop\classes\MainInviteFlowClass;
- use common\components\util;
- use Yii;
- class MainInviteController extends BaseController
- {
- public $guestAccess = [];
- /**
- * 我的分佣首页:xhMainInvite + 待结算 + 最近佣金
- */
- public function actionIndex()
- {
- $mainId = (int) $this->mainId;
- $invite = MainInviteClass::ensureByMainId($mainId);
- $inviteData = [
- 'inviteCode' => '',
- 'inviteCodeMask' => '',
- 'totalCommission' => '0.00',
- 'ableCommission' => '0.00',
- 'commissionAmount' => '0.00',
- 'hdDiscountAmount' => '0.00',
- 'inviteCount' => 0,
- ];
- if (!empty($invite)) {
- $code = $invite['inviteCode'] ?? '';
- $inviteData = [
- 'inviteCode' => $code,
- 'inviteCodeMask' => MainInviteCommissionClass::maskInviteCode($code),
- 'totalCommission' => round((float) ($invite['totalCommission'] ?? 0), 2),
- 'ableCommission' => round((float) ($invite['ableCommission'] ?? 0), 2),
- 'commissionAmount' => round((float) ($invite['commissionAmount'] ?? 0), 2),
- 'hdDiscountAmount' => round((float) ($invite['hdDiscountAmount'] ?? 0), 2),
- 'inviteCount' => (int) ($invite['inviteCount'] ?? 0),
- ];
- }
- $recentRaw = MainInviteCommissionClass::getRecentList($mainId, 5);
- $recentList = [];
- foreach ($recentRaw as $row) {
- $recentList[] = MainInviteCommissionClass::formatRecentRow($row);
- }
- util::success([
- 'invite' => $inviteData,
- 'recentList' => $recentList,
- ]);
- }
- /**
- * 邀约花店列表(xhMainInviteCommission 按 inviterMainId)
- */
- public function actionInviteShopList()
- {
- $get = Yii::$app->request->get();
- $keyword = trim($get['keyword'] ?? '');
- $data = MainInviteCommissionClass::getInviteShopList($this->mainId, $keyword);
- util::success($data);
- }
- /**
- * 佣金变动明细分页(xhMainInviteFlow)
- */
- public function actionCommissionList()
- {
- $list = MainInviteFlowClass::getFlowList($this->mainId);
- util::success($list);
- }
- /**
- * 可提现佣金全额存入中央钱包余额
- * POST:无参,按当前登录 mainId 处理
- */
- public function actionDepositBalance()
- {
- $mainId = (int) $this->mainId;
- $shopId = (int) $this->shopId;
- $shopName = trim((string) ($this->shop->name ?? ''));
- try {
- $result = MainInviteClass::depositAbleCommissionToWallet($mainId, $shopId, $shopName);
- $invite = MainInviteClass::getByMainId($mainId);
- $inviteData = [
- 'totalCommission' => round((float) ($invite['totalCommission'] ?? 0), 2),
- 'ableCommission' => round((float) ($invite['ableCommission'] ?? 0), 2),
- ];
- util::success(array_merge($result, ['invite' => $inviteData]));
- } catch (\Exception $e) {
- util::fail($e->getMessage());
- }
- }
- }
|