166 lines
6.8 KiB
PHP
166 lines
6.8 KiB
PHP
<?php
|
|
/**
|
|
* B2B商城系统 - 团队十年电商经验汇集巨献!
|
|
* =========================================================
|
|
* Copy right 2023-2046 四川正今科技有限公司, 保留所有权利。
|
|
* ----------------------------------------------
|
|
* 官方网址: https://www.viewsphp.com
|
|
* =========================================================
|
|
*/
|
|
|
|
namespace addon\fenxiao\shop\controller;
|
|
|
|
use addon\fenxiao\model\Config as ConfigModel;
|
|
use addon\fenxiao\model\FenxiaoLevel as FenxiaoLevelModel;
|
|
use app\shop\controller\BaseShop;
|
|
use addon\fenxiao\model\Fenxiao;
|
|
|
|
/**
|
|
* 分销等级管理
|
|
*/
|
|
class Level extends BaseShop
|
|
{
|
|
|
|
/**
|
|
* 分销等级列表
|
|
*/
|
|
public function lists()
|
|
{
|
|
$model = new FenxiaoLevelModel();
|
|
$field = 'level_id,level_num,level_name,one_rate,two_rate,three_rate,status,create_time,is_default,one_fenxiao_order_num,one_fenxiao_order_money,one_fenxiao_total_order,order_num,order_money,one_child_num,one_child_fenxiao_num,upgrade_type';
|
|
if (request()->isAjax()) {
|
|
|
|
$page = input('page', 1);
|
|
$page_size = input('page_size', PAGE_LIST_ROWS);
|
|
$list = $model->getLevelPageList([ [ 'site_id', '=', $this->site_id ], ['is_default', '=', 0] ], $page, $page_size, 'level_num asc,one_rate asc', $field);
|
|
if (!empty($list[ 'data' ][ 'list' ])) {
|
|
foreach ($list[ 'data' ][ 'list' ] as $key => $val) {
|
|
$fenxiao_model = new Fenxiao();
|
|
$fenxiao_count = $fenxiao_model->getFenxiaoMemberCount([ [ 'level_id', '=', $val[ 'level_id' ] ] ]);
|
|
$list[ 'data' ][ 'list' ][ $key ][ 'fenxiao_num' ] = $fenxiao_count;
|
|
}
|
|
}
|
|
|
|
return $list;
|
|
|
|
} else {
|
|
$this->forthMenu();
|
|
//获取系统配置
|
|
$config_model = new ConfigModel();
|
|
$basics = $config_model->getFenxiaoBasicsConfig($this->site_id);
|
|
$this->assign("basics_info", $basics[ 'data' ][ 'value' ]);
|
|
return $this->fetch('level/lists');
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* 添加分销等级
|
|
*/
|
|
public function add()
|
|
{
|
|
$model = new FenxiaoLevelModel();
|
|
|
|
if (request()->isAjax()) {
|
|
|
|
$data = [
|
|
'site_id' => $this->site_id,
|
|
'level_name' => input('level_name', ''),
|
|
'one_rate' => input('one_rate', ''),
|
|
'two_rate' => input('two_rate', ''),
|
|
'three_rate' => input('three_rate', ''),
|
|
'upgrade_type' => input('upgrade_type', ''),
|
|
'level_num' => input('level_num', 1),
|
|
'fenxiao_order_num' => input('fenxiao_order_num', ''),
|
|
'fenxiao_order_meney' => input('fenxiao_order_meney', ''),
|
|
'one_fenxiao_order_num' => input('one_fenxiao_order_num', ''),
|
|
'one_fenxiao_order_money' => input('one_fenxiao_order_money', ''),
|
|
'one_fenxiao_total_order' => input('one_fenxiao_total_order', ''),
|
|
'order_num' => input('order_num', ''),
|
|
'order_money' => input('order_money', ''),
|
|
'child_num' => input('child_num', ''),
|
|
'child_fenxiao_num' => input('child_fenxiao_num', ''),
|
|
'one_child_num' => input('one_child_num', ''),
|
|
'one_child_fenxiao_num' => input('one_child_fenxiao_num', ''),
|
|
];
|
|
$res = $model->addLevel($data);
|
|
return $res;
|
|
} else {
|
|
//获取系统配置
|
|
$config_model = new ConfigModel();
|
|
$basics = $config_model->getFenxiaoBasicsConfig($this->site_id);
|
|
$this->assign("basics_info", $basics[ 'data' ][ 'value' ]);
|
|
|
|
$level_weight = $model->getLevelList([ [ 'level_num', '<>', '' ], [ 'site_id', '=', $this->site_id ] ], 'level_num');
|
|
$level_weight = $level_weight[ 'data' ];
|
|
if (!empty($level_weight)) $level_weight = array_column($level_weight, 'level_num');
|
|
$this->assign('level_weight', $level_weight);
|
|
|
|
return $this->fetch('level/add');
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* 编辑分销等级
|
|
*/
|
|
public function edit()
|
|
{
|
|
$model = new FenxiaoLevelModel();
|
|
|
|
if (request()->isAjax()) {
|
|
|
|
$data = [
|
|
'level_name' => input('level_name', ''),
|
|
'one_rate' => input('one_rate', ''),
|
|
'two_rate' => input('two_rate', ''),
|
|
'three_rate' => input('three_rate', ''),
|
|
'upgrade_type' => input('upgrade_type', ''),
|
|
'level_num' => input('level_num', 0),
|
|
'fenxiao_order_num' => input('fenxiao_order_num', ''),
|
|
'fenxiao_order_meney' => input('fenxiao_order_meney', ''),
|
|
'one_fenxiao_order_num' => input('one_fenxiao_order_num', ''),
|
|
'one_fenxiao_order_money' => input('one_fenxiao_order_money', ''),
|
|
'one_fenxiao_total_order' => input('one_fenxiao_total_order', ''),
|
|
'order_num' => input('order_num', ''),
|
|
'order_money' => input('order_money', ''),
|
|
'child_num' => input('child_num', ''),
|
|
'child_fenxiao_num' => input('child_fenxiao_num', ''),
|
|
'one_child_num' => input('one_child_num', ''),
|
|
'one_child_fenxiao_num' => input('one_child_fenxiao_num', ''),
|
|
];
|
|
$level_id = input('level_id', '');
|
|
|
|
$res = $model->editLevel($data, [ [ 'level_id', '=', $level_id ], [ 'site_id', '=', $this->site_id ] ]);
|
|
return $res;
|
|
} else {
|
|
$level_id = input('level_id', '');
|
|
$info = $model->getLevelInfo([ [ 'level_id', '=', $level_id ], [ 'site_id', '=', $this->site_id ] ]);
|
|
if (empty($info[ 'data' ])) $this->error('未获取到等级数据', addon_url('fenxiao://shop/level/lists'));
|
|
$this->assign('info', $info[ 'data' ]);
|
|
//获取系统配置
|
|
$config_model = new ConfigModel();
|
|
$basics = $config_model->getFenxiaoBasicsConfig($this->site_id);
|
|
$this->assign("basics_info", $basics[ 'data' ][ 'value' ]);
|
|
|
|
$level_weight = $model->getLevelList([ [ 'level_num', '<>', '' ], [ 'level_id', '<>', $level_id ], [ 'site_id', '=', $this->site_id ] ], 'level_num');
|
|
$level_weight = $level_weight[ 'data' ];
|
|
if (!empty($level_weight)) $level_weight = array_column($level_weight, 'level_num');
|
|
$this->assign('level_weight', $level_weight);
|
|
}
|
|
|
|
return $this->fetch('level/edit');
|
|
}
|
|
|
|
/**
|
|
* 删除分销等级
|
|
*/
|
|
public function delete()
|
|
{
|
|
$model = new FenxiaoLevelModel();
|
|
|
|
$level_id = input('level_id', '');
|
|
$res = $model->deleteLevel($level_id, $this->site_id);
|
|
return $res;
|
|
}
|
|
} |