添加:经销商添加人数限制,每个等级单独设置
This commit is contained in:
parent
54e1ba3dc9
commit
cd9a571d4d
|
|
@ -200,6 +200,7 @@ class TeamDividendLevelSetController extends BaseController
|
|||
$data['hierarchy_limit'] = !empty($data['hierarchy_limit']) ? $data['hierarchy_limit'] : 0;
|
||||
$data['auto_withdraw_day'] = !empty($data['auto_withdraw_day']) ? $data['auto_withdraw_day'] : '';
|
||||
$data['auto_withdraw_period'] = !empty($data['auto_withdraw_period']) ? $data['auto_withdraw_period'] : '';
|
||||
$data['number_limit'] = !empty($data['number_limit']) ? $data['number_limit'] : 0;
|
||||
$dividend_model->fill($data);
|
||||
$validator = $dividend_model->validator();
|
||||
|
||||
|
|
|
|||
|
|
@ -116,40 +116,39 @@ class NewUpgrateJob implements ShouldQueue
|
|||
// 默认可以升级
|
||||
$upgradeRet = false;
|
||||
foreach ($upgradeLevels as $level) {
|
||||
// \Log::debug('经销商升级 - 当前等级信息:',$level->toArray());
|
||||
// 判断:如果当前等级人数已经达到限制 则不升级(上限小于等于已存在数量 不能升级到该等级)
|
||||
$hasNum = (int)TeamDividendAgencyModel::uniacid()->count();
|
||||
// \Log::debug('经销商升级 - 数量限制比较:',[$hasNum,(int)$level->number_limit]);
|
||||
if((int)$level->number_limit <= $hasNum && (int)$level->number_limit > 0) continue;
|
||||
|
||||
//dump($level->level_name);
|
||||
// 没有升级条件
|
||||
if (!$level->hasOneUpgradeSet || !$level->hasOneUpgradeSet->parase) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// 升级条件
|
||||
$parase = unserialize($level->hasOneUpgradeSet->parase);
|
||||
|
||||
// 升级后的等级设置
|
||||
$afterLevelSetting = $level->toArray();
|
||||
$afterLevelSetting['has_one_upgrade_set']['parase'] = unserialize($afterLevelSetting['has_one_upgrade_set']['parase']);
|
||||
$this->uplogService->setAfterLevelSetting($afterLevelSetting);
|
||||
// 升级后的等级id
|
||||
$this->uplogService->setAfterLevelId($level['id']);
|
||||
|
||||
// 记录
|
||||
//$logModel->level_ups = $parase[0];
|
||||
|
||||
// 升级条件 组
|
||||
$upgradeGroup = $parase[0]['group'];
|
||||
|
||||
if ($this->order) {
|
||||
if ($parase[0]['become'] != $this->order_status) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if ($parase[0]['become'] == TeamDividendLevelUpgrade::ORDER_PAY) {
|
||||
$order_status = Order::WAIT_SEND;
|
||||
} else {
|
||||
$order_status = Order::COMPLETE;
|
||||
}
|
||||
|
||||
if ($upgradeGroup) {
|
||||
// 升级条件编号
|
||||
$upgradeGroupSerialNumber = TeamDividendLevelUpgrade::getUpgradeIsSerialNumber();
|
||||
|
|
|
|||
|
|
@ -17,13 +17,14 @@ class TeamDividendLevelModel extends BackendModel
|
|||
protected $guarded = [''];
|
||||
public $attributes = [
|
||||
'upgrade_reward_point' => 0,
|
||||
'upgrade_reward_gold' => 0,
|
||||
'code_num' => 0,
|
||||
'award_hierarchy' => 0,
|
||||
'award_ratio' => 0,
|
||||
'award_gratitude' => 0,
|
||||
'auto_withdraw_day' => 0,
|
||||
'upgrade_reward_gold' => 0,
|
||||
'code_num' => 0,
|
||||
'award_hierarchy' => 0,
|
||||
'award_ratio' => 0,
|
||||
'award_gratitude' => 0,
|
||||
'auto_withdraw_day' => 0,
|
||||
'auto_withdraw_period' => 0,
|
||||
'number_limit' => 0,
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -9,11 +9,11 @@ use Illuminate\Database\Eloquent\Model;
|
|||
use Yunshop\CollectionRoom\models\CollectionRoomModel;
|
||||
use Yunshop\TeamDividend\events\LevelChangeEvent;
|
||||
use Yunshop\TeamDividend\models\TeamDividendAgencyModel;
|
||||
use Yunshop\TeamDividend\models\TeamDividendLevelModel;
|
||||
|
||||
class DealerObserver extends BaseObserver
|
||||
{
|
||||
|
||||
|
||||
// 添加后
|
||||
public function created(Model $model){
|
||||
\Log::debug('新增经销商 - created - 用户uid:',$model->toArray());
|
||||
if((int)$model->uid > 0){
|
||||
|
|
@ -23,21 +23,29 @@ class DealerObserver extends BaseObserver
|
|||
|
||||
}
|
||||
|
||||
|
||||
public function updating(Model $model)
|
||||
{
|
||||
/**
|
||||
* @var TeamDividendAgencyModel $model
|
||||
*/
|
||||
// 修改前
|
||||
public function updating(Model $model){
|
||||
if ($model->getOriginal('level') != $model->level) {
|
||||
/**
|
||||
* @var TeamDividendAgencyModel $model
|
||||
*/
|
||||
event(new LevelChangeEvent($model));
|
||||
// 判断:如果当前等级人数已经达到限制 则不升级(上限小于等于已存在数量 不能升级到该等级)
|
||||
$hasNum = (int)TeamDividendAgencyModel::uniacid()->count();
|
||||
$levelNumberLimit = (int)TeamDividendLevelModel::uniacid()->where('id',$model->level)->value('number_limit');
|
||||
if((int)$levelNumberLimit <= $hasNum && (int)$levelNumberLimit > 0) return false;
|
||||
}
|
||||
}
|
||||
public function creating(Model $model)
|
||||
{
|
||||
// 添加前
|
||||
public function creating(Model $model){
|
||||
/**
|
||||
* @var TeamDividendAgencyModel $model
|
||||
*/
|
||||
event(new LevelChangeEvent($model));
|
||||
// 判断:如果当前等级人数已经达到限制 则不升级(上限小于等于已存在数量 不能升级到该等级)
|
||||
$hasNum = (int)TeamDividendAgencyModel::uniacid()->count();
|
||||
$levelNumberLimit = (int)TeamDividendLevelModel::uniacid()->where('id',$model->level)->value('number_limit');
|
||||
if((int)$levelNumberLimit <= $hasNum && (int)$levelNumberLimit > 0) return false;
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -44,6 +44,17 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-xs-12 col-sm-3 col-md-2 control-label">等级人数限制</label>
|
||||
<div class="col-sm-6 col-xs-6">
|
||||
<div class='input-group col-xs-4'>
|
||||
<input type='text' name='dividend[number_limit]' class="form-control discounts_value" value="{{$dividend->number_limit?$dividend->number_limit:0}}"/>
|
||||
<div class='input-group-addon waytxt'>人</div>
|
||||
</div>
|
||||
<span class="help-block">当前等级总人数达到指定数量后,其他人则不能升级到当前等级。为空或者0则不限制人数</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-xs-12 col-sm-3 col-md-2 control-label">提成比例</label>
|
||||
<div class="col-sm-6 col-xs-6">
|
||||
|
|
|
|||
Loading…
Reference in New Issue