| | |
| | | use app\common\model\plus\agent\User as AgentUserModel; |
| | | use app\common\model\plus\team\User as TeamUserModel; |
| | | use app\common\model\plus\team\Order as TeamOrderModel; |
| | | use app\common\model\plus\vip\User as VipUserModel; |
| | | use app\common\model\plus\vip\Order as VipOrderModel; |
| | | |
| | | /** |
| | | * 股东申请模型 |
| | |
| | | return ['text' => $method[$value], 'value' => $value]; |
| | | } |
| | | |
| | | } |
| | | /** |
| | | * 统计VIP会员直接推荐数量 |
| | | * @param $userId |
| | | * @return int |
| | | */ |
| | | public function countVipRecommendations($userId) |
| | | { |
| | | return VipUserModel::where('referee_id', '=', $userId)->count(); |
| | | } |
| | | |
| | | /** |
| | | * 统计企业商户入驻数量 |
| | | * @param $userId |
| | | * @return int |
| | | */ |
| | | public function countMerchantSettlements($userId) |
| | | { |
| | | // 假设商家入驻与推广团队的关联字段是referee_id |
| | | // 需要根据实际数据库结构调整 |
| | | return \app\common\model\Shop::where('referee_id', '=', $userId)->count(); |
| | | } |
| | | |
| | | /** |
| | | * 统计VIP专区商品购买次数 |
| | | * @param $userId |
| | | * @return int |
| | | */ |
| | | public function countSelfVipPurchases($userId) |
| | | { |
| | | return VipOrderModel::where('user_id', '=', $userId) |
| | | ->where('is_vip', '=', 1) |
| | | ->count(); |
| | | } |
| | | |
| | | /** |
| | | * 检查股东候选人是否满足新的三个条件 |
| | | * @param $userId |
| | | * @param $appId |
| | | * @return bool |
| | | */ |
| | | public function checkNewShareholderConditions($userId, $appId) |
| | | { |
| | | $config = Setting::getItem('basic', $appId); |
| | | |
| | | // 1. 检查VIP会员直接推荐数量 |
| | | $vipRecommendCount = $this->countVipRecommendations($userId); |
| | | if ($vipRecommendCount < $config['vip_recommend_count']) { |
| | | return false; |
| | | } |
| | | |
| | | // 2. 检查企业商户入驻数量 |
| | | $merchantCount = $this->countMerchantSettlements($userId); |
| | | if ($merchantCount < $config['merchant_settle_count']) { |
| | | return false; |
| | | } |
| | | |
| | | // 3. 检查VIP专区商品购买次数 |
| | | $selfVipPurchaseCount = $this->countSelfVipPurchases($userId); |
| | | if ($selfVipPurchaseCount < $config['self_vip_purchase_count']) { |
| | | return false; |
| | | } |
| | | |
| | | // 所有条件都满足 |
| | | return true; |
| | | } |
| | | |
| | | }, |