parent
4ffc763368
commit
1cff04e30a
|
|
@ -516,45 +516,48 @@ class MemberController extends BaseController
|
|||
}
|
||||
// 处理分销商相关信息
|
||||
$agentLevelId = $data[$currentMemberInfo['mobile']]['分销商熊猫画等级ID'] ?? 0;
|
||||
$agentCulturalLevelId = $data[$currentMemberInfo['mobile']]['分销商文创等级ID'] ?? 0;
|
||||
if(in_array($currentMemberInfo['uid'],$hasAgentUid)){
|
||||
// 修改
|
||||
$updateAgentData[] = [
|
||||
'id' => $hasAgentList[$currentMemberInfo['uid']]['id'],
|
||||
'agent_level_id' => $agentLevelId,
|
||||
'cultural_level_id' => $agentCulturalLevelId,
|
||||
];
|
||||
}else{
|
||||
// 添加
|
||||
$insertAgentData[] = [
|
||||
'uniacid' => $uniacid,
|
||||
'member_id' => $currentMemberInfo['uid'],
|
||||
'parent_id' => $parentId,
|
||||
'parent' => $relation,
|
||||
'agent_level_id' => $agentLevelId,
|
||||
'cultural_level_id' => $agentCulturalLevelId,
|
||||
'created_at' => time(),
|
||||
'updated_at' => time(),
|
||||
];
|
||||
if((int)$agentLevelId > 0){
|
||||
if(in_array($currentMemberInfo['uid'],$hasAgentUid)){
|
||||
// 修改
|
||||
$updateAgentData[] = [
|
||||
'id' => $hasAgentList[$currentMemberInfo['uid']]['id'],
|
||||
'agent_level_id' => $agentLevelId,
|
||||
// 'cultural_level_id' => $agentCulturalLevelId,
|
||||
];
|
||||
}else{
|
||||
// 添加
|
||||
$insertAgentData[] = [
|
||||
'uniacid' => $uniacid,
|
||||
'member_id' => $currentMemberInfo['uid'],
|
||||
'parent_id' => $parentId,
|
||||
'parent' => $relation,
|
||||
'agent_level_id' => $agentLevelId,
|
||||
// 'cultural_level_id' => $agentCulturalLevelId,
|
||||
'created_at' => time(),
|
||||
'updated_at' => time(),
|
||||
];
|
||||
}
|
||||
}
|
||||
// 处理经销商信息
|
||||
$teamDividendLevelId = $data[$currentMemberInfo['mobile']]['经销商熊猫画等级ID'] ?? 0;
|
||||
$teamDividendCulturalLevelId = $data[$currentMemberInfo['mobile']]['经销商文创等级ID'] ?? 0;
|
||||
if(in_array($currentMemberInfo['uid'],$hasTeamDividendUid)){
|
||||
// 修改
|
||||
TeamDividendAgencyModel::changeLevel($hasTeamDividendList[$currentMemberInfo['uid']]['id'],$teamDividendLevelId,'');
|
||||
TeamDividendAgencyModel::changeLevel($hasTeamDividendList[$currentMemberInfo['uid']]['id'],$teamDividendCulturalLevelId,'cultural');
|
||||
}else{
|
||||
// 添加
|
||||
TeamDividendAgencyModel::addTeamAgency([
|
||||
'uniacid' => $uniacid,
|
||||
'uid' => $currentMemberInfo['uid'],
|
||||
'parent_id' => $parentId,
|
||||
'relation' => $relation,
|
||||
'level' => $teamDividendLevelId,
|
||||
'cultural_level_id' => $teamDividendCulturalLevelId,
|
||||
'upgrade_at' => time(),
|
||||
]);
|
||||
// $teamDividendCulturalLevelId = $data[$currentMemberInfo['mobile']]['经销商文创等级ID'] ?? 0;
|
||||
if((int)$teamDividendLevelId > 0){
|
||||
if(in_array($currentMemberInfo['uid'],$hasTeamDividendUid)){
|
||||
// 修改
|
||||
TeamDividendAgencyModel::changeLevel($hasTeamDividendList[$currentMemberInfo['uid']]['id'],$teamDividendLevelId,'');
|
||||
// TeamDividendAgencyModel::changeLevel($hasTeamDividendList[$currentMemberInfo['uid']]['id'],$teamDividendCulturalLevelId,'cultural');
|
||||
}else{
|
||||
// 添加
|
||||
TeamDividendAgencyModel::addTeamAgency([
|
||||
'uniacid' => $uniacid,
|
||||
'uid' => $currentMemberInfo['uid'],
|
||||
'parent_id' => $parentId,
|
||||
'relation' => $relation,
|
||||
'level' => $teamDividendLevelId,
|
||||
// 'cultural_level_id' => $teamDividendCulturalLevelId,
|
||||
'upgrade_at' => time(),
|
||||
]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -913,6 +913,9 @@ class SurveyController extends BaseController{
|
|||
'ims_yz_users_profile',
|
||||
'ims_yz_role',
|
||||
'ims_yz_permission',
|
||||
'ims_yz_coupon',
|
||||
'ims_yz_goods_rebate',
|
||||
'ims_yz_goods_cultural_order_fund_log',
|
||||
|
||||
// 经销商相关
|
||||
'ims_yz_team_dividend_level',
|
||||
|
|
@ -943,8 +946,8 @@ class SurveyController extends BaseController{
|
|||
// 获取全部数据库列表
|
||||
$tables = $this->getAllTable();
|
||||
// 获取存在数据的表
|
||||
// $hasTable = $this->getHasDataTable($tables,$notCleanUp);
|
||||
// debug($hasTable);
|
||||
$hasTable = $this->getHasDataTable($tables,$notCleanUp);
|
||||
debug($hasTable);
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ use Illuminate\Database\Eloquent\SoftDeletes;
|
|||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Validation\Rule;
|
||||
use Yunshop\TeamDividend\observers\DealerObserver;
|
||||
use Yunshop\TeamDividend\services\UpgradeService;
|
||||
|
||||
class TeamDividendAgencyModel extends BackendModel
|
||||
{
|
||||
|
|
@ -297,4 +298,118 @@ class TeamDividendAgencyModel extends BackendModel
|
|||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public function addTeamAgency($agentData){
|
||||
// 其他验证
|
||||
$agency_model = new \Yunshop\TeamDividend\admin\models\TeamDividendAgencyModel();
|
||||
$agency_model->fill($agentData);
|
||||
$validator = $agency_model->validator();
|
||||
if ($validator->fails()) {
|
||||
throw new \Exception($validator->messages()->first());
|
||||
} else {
|
||||
if ($agency_model->save()) {
|
||||
// 升级后等级
|
||||
$c_level = TeamDividendLevelModel::with(['hasOneUpgradeSet'])->find($agentData['level']);
|
||||
// 升级前等级
|
||||
$o_level = NULL;
|
||||
// 升级日志
|
||||
Uplog::addLog($agency_model, $o_level, $c_level);
|
||||
|
||||
|
||||
// if((int)$agentData['cultural_level_id'] > 0){
|
||||
// // 升级后等级
|
||||
// $c_c_level = TeamDividendLevelModel::with(['hasOneUpgradeSet'])->find((int)$agentData['cultural_level_id']);
|
||||
// // 升级前等级
|
||||
// $o_c_level = NULL;
|
||||
// // 升级日志
|
||||
// Uplog::addLog($agency_model, $o_c_level, $c_c_level);
|
||||
// }
|
||||
|
||||
|
||||
//签合同
|
||||
$data=[
|
||||
'member_id'=>$agentData['uid'],
|
||||
'created_at' => time(),
|
||||
];
|
||||
event(new \app\common\events\plugin\TeamDividendEvent($data));
|
||||
//激活码
|
||||
$upgrade_set = (new UpgradeService())->getUpgradeById($agentData['level']);
|
||||
|
||||
if ($upgrade_set) {
|
||||
$set = \Setting::get('plugin.team_dividend');
|
||||
if ($set['is_activation_code'] && $upgrade_set[0]->code_num) {
|
||||
$level_list = TeamDividendLevelModel::getList()->get();
|
||||
$code_num = unserialize($upgrade_set[0]->code_num);
|
||||
foreach($level_list as $key => $level) {
|
||||
if($code_num['level_'.$level->id]) {
|
||||
(new UpgradeService())->senCode($agentData['uid'], $code_num['level_'.$level->id], $level->id, $level->level_name);
|
||||
}
|
||||
}
|
||||
\Log::debug('激活码');
|
||||
}
|
||||
}
|
||||
(new UpgradeService())->becomeAgencyNotify($agentData['uid']);
|
||||
|
||||
}else{
|
||||
throw new \Exception('添加失败');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function changeLevel($id,$levelId,$leveType){
|
||||
$agency = TeamDividendAgencyModel::find($id);
|
||||
|
||||
// 等级类型:''=普通等级,cultural=文创等级
|
||||
// if((string)$leveType == 'cultural'){
|
||||
// $level = $agency->cultural_level_id;
|
||||
// $agency->cultural_level_id = $levelId;
|
||||
// $agency->cultural_upgrade_at = time();
|
||||
// }else{
|
||||
$level = $agency->level;
|
||||
$agency->level = $levelId;
|
||||
$agency->upgrade_at = time();
|
||||
// }
|
||||
|
||||
// 升级后等级
|
||||
$c_level = TeamDividendLevelModel::with(['hasOneUpgradeSet'])->find($leveType == 'cultural' ? $agency->cultural_level_id : $agency->level);
|
||||
// 升级前等级
|
||||
$o_level = TeamDividendLevelModel::with(['hasOneUpgradeSet'])->find($level);
|
||||
|
||||
|
||||
if($c_level && $o_level && $c_level->level_type != $o_level->level_type ){
|
||||
// 非默认等级 且 类型不一致,升级失败
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
if ($agency->save()) {
|
||||
// 升级日志
|
||||
Uplog::addLog($agency, $o_level, $c_level);
|
||||
|
||||
if ($c_level->level_weight > $o_level->level_weight) {
|
||||
//激活码
|
||||
$upgrade_set = (new UpgradeService())->getUpgradeById($agency->level);
|
||||
|
||||
if ($upgrade_set) {
|
||||
$set = \Setting::get('plugin.team_dividend');
|
||||
if ($set['is_activation_code'] && $upgrade_set[0]->code_num) {
|
||||
$level_list = TeamDividendLevelModel::getList()->get();
|
||||
$code_num = (is_array($upgrade_set[0]->code_num) ? $upgrade_set[0]->code_num : unserialize($upgrade_set[0]->code_num)) ?: [];
|
||||
foreach($level_list as $key => $level) {
|
||||
if($code_num['level_'.$level->id]) {
|
||||
(new UpgradeService())->senCode($agency->uid, $code_num['level_'.$level->id], $level->id, $level->level_name);
|
||||
}
|
||||
}
|
||||
\Log::debug('激活码');
|
||||
}
|
||||
}
|
||||
|
||||
//代理商升级通知
|
||||
(new UpgradeService())->agencyUpgradeNotify($agency->uid, $o_level->level_name, $o_level->dividend_ratio_name, $agency->level);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue