初始上传
This commit is contained in:
198
addon/fenxiao/shop/controller/Config.php
Executable file
198
addon/fenxiao/shop/controller/Config.php
Executable file
@@ -0,0 +1,198 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\fenxiao\shop\controller;
|
||||
|
||||
use addon\fenxiao\model\Config as ConfigModel;
|
||||
use addon\fenxiao\model\FenxiaoLevel as FenxiaoLevelModel;
|
||||
use addon\fenxiao\model\FenxiaoWithdraw;
|
||||
use app\model\goods\Goods as GoodsModel;
|
||||
use app\model\system\Document;
|
||||
use app\shop\controller\BaseShop;
|
||||
|
||||
/**
|
||||
* 分销设置
|
||||
*/
|
||||
class Config extends BaseShop
|
||||
{
|
||||
|
||||
/**
|
||||
* 分销基础设置
|
||||
*/
|
||||
public function basics()
|
||||
{
|
||||
$model = new ConfigModel();
|
||||
|
||||
if (request()->isJson()) {
|
||||
$data = [
|
||||
'level' => input('level', ''),//分销层级
|
||||
'internal_buy' => input('internal_buy', ''),//分销内购
|
||||
'is_examine' => input('is_examine', ''),//是否需要审核(0关闭 1开启)
|
||||
'self_purchase_rebate' => input('self_purchase_rebate', ''),//是否开启分销商自购返佣(0关闭 1开启)
|
||||
'fenxiao_condition' => input('fenxiao_condition', ''),//成为分销商条件(0无条件 1申请 2消费次数 3消费金额 4购买指定商品)
|
||||
'consume_count' => input('consume_count', ''),//消费次数
|
||||
'consume_money' => input('consume_money', ''), //消费金额
|
||||
'goods_ids' => input('goods_ids', ''), //指定商品id
|
||||
'consume_condition' => input('consume_condition', ''),//消费条件(1付款后 2订单完成)
|
||||
'perfect_info' => input('perfect_info', ''),//完善资料
|
||||
'child_condition' => input('child_condition', ''),//成为下线条件
|
||||
'is_apply' => input('is_apply', ''),//是否开启分销申请(0关闭 1开启)
|
||||
'is_commission_money' => input('is_commission_money', ''),//是否开启商品详情一级佣金(0关闭 1开启)
|
||||
'one_rate' => input('one_rate', 0.00),
|
||||
'two_rate' => input('two_rate', 0.00),
|
||||
'three_rate' => input('three_rate', 0.00),
|
||||
];
|
||||
|
||||
$res = $model->setFenxiaoBasicsConfig($data, 1, $this->site_id);
|
||||
return $res;
|
||||
} else {
|
||||
$basics = $model->getFenxiaoBasicsConfig($this->site_id);
|
||||
$this->assign('basics_info', $basics[ 'data' ][ 'value' ]);
|
||||
|
||||
$fenxiao = $model->getFenxiaoConfig($this->site_id)[ 'data' ][ 'value' ];
|
||||
|
||||
$fenxiao[ 'goods_list' ] = '';
|
||||
if ($fenxiao[ 'fenxiao_condition' ] == 4) { // 购买指定商品
|
||||
$goods_model = new GoodsModel();
|
||||
$condition[] = [ 'goods_id', 'in', $fenxiao[ 'goods_ids' ] ];
|
||||
$condition[] = [ 'site_id', '=', $this->site_id ];
|
||||
$fenxiao[ 'goods_list' ] = $goods_model->getGoodsList($condition, 'goods_id,goods_name,goods_image,price,goods_stock')[ 'data' ];
|
||||
}
|
||||
$this->assign('fenxiao_info', $fenxiao);
|
||||
|
||||
$relation = $model->getFenxiaoRelationConfig($this->site_id);
|
||||
$this->assign('relation_info', $relation[ 'data' ][ 'value' ]);
|
||||
|
||||
$level_model = new FenxiaoLevelModel();
|
||||
$level_info = $level_model->getLevelInfo([ [ 'site_id', '=', $this->site_id ], [ 'is_default', '=', 1 ] ], 'one_rate,two_rate,three_rate')[ 'data' ];
|
||||
$this->assign('level', $level_info);
|
||||
|
||||
return $this->fetch('config/basics');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销协议设置
|
||||
*/
|
||||
public function agreement()
|
||||
{
|
||||
$model = new ConfigModel();
|
||||
|
||||
if (request()->isJson()) {
|
||||
$data = [
|
||||
'is_agreement' => input('is_agreement', ''),//是否显示申请协议
|
||||
'agreement_title' => input('agreement_title', ''),//协议标题
|
||||
'agreement_content' => input('agreement_content', ''),//协议内容
|
||||
'img' => input('img', ''),//申请页面顶部图片
|
||||
];
|
||||
$res = $model->setFenxiaoAgreementConfig($data, 1, $this->site_id);
|
||||
return $res;
|
||||
} else {
|
||||
$agreement = $model->getFenxiaoAgreementConfig($this->site_id);
|
||||
$this->assign('agreement_info', $agreement[ 'data' ][ 'value' ]);
|
||||
|
||||
$document_model = new Document();
|
||||
$document = $document_model->getDocument([ [ 'site_id', '=', $this->site_id ], [ 'app_module', '=', 'shop' ], [ 'document_key', '=', 'FENXIAO_AGREEMENT'] ]);
|
||||
$this->assign('document', $document[ 'data' ]);
|
||||
|
||||
return $this->fetch('config/agreement');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销结算设置
|
||||
*/
|
||||
public function settlement()
|
||||
{
|
||||
$model = new ConfigModel();
|
||||
if (request()->isJson()) {
|
||||
$transfer_type = '';
|
||||
if (!empty(input('transfer_type'))) {
|
||||
$transfer_type = implode(',', input('transfer_type'));
|
||||
}
|
||||
$data = [
|
||||
'account_type' => input('account_type', ''),//佣金计算方式
|
||||
'settlement_day' => input('settlement_day', ''),//天数
|
||||
'withdraw' => input('withdraw', ''),//最低提现额度
|
||||
'withdraw_rate' => input('withdraw_rate', ''),//佣金提现手续费
|
||||
// 'min_no_fee' => input('min_no_fee', ''),//最低免手续费区间
|
||||
// 'max_no_fee' => input('max_no_fee', ''),//最高免手续费区间
|
||||
'withdraw_status' => input('withdraw_status', ''),//提现审核
|
||||
'withdraw_type' => input('withdraw_type', ''),//提现方式,
|
||||
|
||||
'transfer_type' => $transfer_type,//转账方式,
|
||||
'is_auto_transfer' => input('is_auto_transfer', 0),//是否自动转账 1 手动转账 2 自动转账
|
||||
// 'min' => input('min', 0),//提现最低额度
|
||||
'max' => input('max', 0),//提现最高额度
|
||||
];
|
||||
$res = $model->setFenxiaoSettlementConfig($data, 1, $this->site_id);
|
||||
return $res;
|
||||
} else {
|
||||
// $settlement = $model->getFenxiaoSettlementConfig($this->site_id);
|
||||
// $this->assign('settlement_info', $settlement[ 'data' ][ 'value' ]);
|
||||
$withdraw_config = $model->getFenxiaoWithdrawConfig($this->site_id)[ 'data' ][ 'value' ] ?? [];
|
||||
$this->assign('withdraw_info', $withdraw_config);
|
||||
|
||||
$fenxiao_withdraw_model = new FenxiaoWithdraw();
|
||||
$transfer_type_list = $fenxiao_withdraw_model->getTransferType($this->site_id);
|
||||
$transfer_type_list[ 'balance' ] = '余额';
|
||||
$this->assign('transfer_type_list', $transfer_type_list);
|
||||
|
||||
return $this->fetch('config/settlement');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销文字设置
|
||||
*/
|
||||
public function words()
|
||||
{
|
||||
$model = new ConfigModel();
|
||||
if (request()->isJson()) {
|
||||
$data = [
|
||||
'concept' => input('concept', ''),//分销概念
|
||||
'fenxiao_name' => input('fenxiao_name', ''),//分销商名称
|
||||
'withdraw' => input('withdraw', ''),//提现名称
|
||||
'account' => input('account', ''),//佣金
|
||||
'my_team' => input('my_team', ''),//我的团队
|
||||
'child' => input('child', ''),//下线
|
||||
];
|
||||
|
||||
$res = $model->setFenxiaoWordsConfig($data, 1, $this->site_id);
|
||||
return $res;
|
||||
} else {
|
||||
$config_info = $model->getFenxiaoWordsConfig($this->site_id)[ 'data' ][ 'value' ];
|
||||
$this->assign('config_info', $config_info);
|
||||
|
||||
return $this->fetch('config/words');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 活动规则
|
||||
*/
|
||||
public function promoteRule()
|
||||
{
|
||||
$document_model = new Document();
|
||||
if (request()->isJson()) {
|
||||
$content = input('content', '');
|
||||
$res = $document_model->setDocument('分销推广规则', $content, [ [ 'site_id', '=', $this->site_id ], [ 'app_module', '=', 'shop' ], [ 'document_key', '=', 'FENXIAO_PROMOTE_RULE'] ]);
|
||||
return $res;
|
||||
} else {
|
||||
$document = $document_model->getDocument([ [ 'site_id', '=', $this->site_id ], [ 'app_module', '=', 'shop' ], [ 'document_key', '=', 'FENXIAO_PROMOTE_RULE'] ]);
|
||||
$this->assign('document', $document[ 'data' ]);
|
||||
|
||||
return $this->fetch('config/promote_rule');
|
||||
}
|
||||
}
|
||||
}
|
||||
695
addon/fenxiao/shop/controller/Fenxiao.php
Executable file
695
addon/fenxiao/shop/controller/Fenxiao.php
Executable file
@@ -0,0 +1,695 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\fenxiao\shop\controller;
|
||||
|
||||
use addon\fenxiao\model\Config as ConfigModel;
|
||||
use addon\fenxiao\model\Fenxiao as FenxiaoModel;
|
||||
use addon\fenxiao\model\FenxiaoAccount;
|
||||
use addon\fenxiao\model\FenxiaoApply;
|
||||
use addon\fenxiao\model\FenxiaoData;
|
||||
use addon\fenxiao\model\FenxiaoLevel as FenxiaoLevelModel;
|
||||
use addon\fenxiao\model\FenxiaoOrder as FenxiaoOrderModel;
|
||||
use app\model\goods\Goods as GoodsModel;
|
||||
use app\model\member\Member as MemberModel;
|
||||
use app\shop\controller\BaseShop;
|
||||
use think\App;
|
||||
|
||||
/**
|
||||
* 分销设置
|
||||
*/
|
||||
class Fenxiao extends BaseShop
|
||||
{
|
||||
public function __construct(App $app = null)
|
||||
{
|
||||
$this->replace = [
|
||||
'FENXIAO_JS' => __ROOT__ . '/addon/fenxiao/shop/view/public/js',
|
||||
'FENXIAO_CSS' => __ROOT__ . '/addon/fenxiao/shop/view/public/css'
|
||||
];
|
||||
parent::__construct($app);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销概况
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
return $this->fetch('fenxiao/index');
|
||||
}
|
||||
|
||||
public function stat()
|
||||
{
|
||||
$data = [
|
||||
'account_data' => [],
|
||||
'fenxiao_account' => 0.00,
|
||||
'shop_commission' => [],
|
||||
'shop_commission_end' => [],
|
||||
'commission_money' => 0.00,
|
||||
'fenxiao_apply_num' => 0,
|
||||
'fenxiao_num' => 0,
|
||||
'fenxiao_goods_num' => 0
|
||||
];
|
||||
|
||||
$fenxiao_data_model = new FenxiaoData();
|
||||
$account_data = $fenxiao_data_model->getFenxiaoAccountData($this->site_id);
|
||||
$data['account_data'] = $account_data;
|
||||
|
||||
//累计佣金
|
||||
$fenxiao_account = number_format($account_data[ 'account' ], 2, '.', '');
|
||||
$data['fenxiao_account'] = $fenxiao_account;
|
||||
|
||||
//获取分销的总金额
|
||||
$order_model = new FenxiaoOrderModel();
|
||||
$commission = $order_model->getFenxiaoOrderInfo([ [ 'site_id', '=', $this->site_id ] ], 'sum(real_goods_money) as real_goods_money,sum(commission) as commission')[ 'data' ];
|
||||
if ($commission[ 'real_goods_money' ] == null) {
|
||||
$commission[ 'real_goods_money' ] = '0.00';
|
||||
}
|
||||
if ($commission[ 'commission' ] == null) {
|
||||
$commission[ 'commission' ] = '0.00';
|
||||
}
|
||||
$data['shop_commission'] = $commission;
|
||||
|
||||
//获取已结算分销的总金额
|
||||
$commission_end = $order_model->getFenxiaoOrderInfo([ [ 'site_id', '=', $this->site_id ], [ 'is_settlement', '=', 1 ], [ 'is_refund', '=', 0 ] ], 'sum(real_goods_money) as real_goods_money,sum(commission) as commission')[ 'data' ];
|
||||
if ($commission_end[ 'real_goods_money' ] == null) {
|
||||
$commission_end[ 'real_goods_money' ] = '0.00';
|
||||
}
|
||||
if ($commission_end[ 'commission' ] == null) {
|
||||
$commission_end[ 'commission' ] = '0.00';
|
||||
}
|
||||
$data['shop_commission_end'] = $commission_end;
|
||||
|
||||
//获取已退款的佣金
|
||||
$commission_refund = $order_model->getFenxiaoOrderInfo([ [ 'site_id', '=', $this->site_id ], [ 'is_refund', '=', 1 ] ], 'sum(real_goods_money) as real_goods_money,sum(commission) as commission')[ 'data' ];
|
||||
if ($commission_refund[ 'real_goods_money' ] == null) {
|
||||
$commission_refund[ 'real_goods_money' ] = '0.00';
|
||||
}
|
||||
if ($commission_refund[ 'commission' ] == null) {
|
||||
$commission_refund[ 'commission' ] = '0.00';
|
||||
}
|
||||
$commission_money = round($commission[ 'commission' ], 2) - round($commission_end[ 'commission' ], 2) - round($commission_refund[ 'commission' ], 2);
|
||||
$commission_money = number_format($commission_money, 2);
|
||||
$data['commission_money'] = $commission_money;
|
||||
|
||||
$fenxiao_apply_num = $fenxiao_data_model->getFenxiaoApplyCount($this->site_id);
|
||||
$data['fenxiao_apply_num'] = $fenxiao_apply_num;
|
||||
|
||||
//分销商人数
|
||||
$fenxiao_num = $fenxiao_data_model->getFenxiaoCount($this->site_id);
|
||||
$data['fenxiao_num'] = $fenxiao_num;
|
||||
|
||||
$goods_model = new GoodsModel();
|
||||
$fenxiao_goods_num = $goods_model->getGoodsInfo([ [ 'site_id', '=', $this->site_id ], [ 'is_fenxiao', '=', 1 ], [ 'is_delete', '=', 0 ] ], 'count(goods_id) as fenxiao_goods_num')[ 'data' ];
|
||||
$data['fenxiao_goods_num'] = $fenxiao_goods_num[ 'fenxiao_goods_num' ];
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 分销商列表
|
||||
*/
|
||||
public function lists()
|
||||
{
|
||||
$model = new FenxiaoModel();
|
||||
if (request()->isJson()) {
|
||||
|
||||
$condition[] = [ 'f.site_id', '=', $this->site_id ];
|
||||
$fenxiao_name = input('fenxiao_name', '');
|
||||
$nickname = input('nickname', '');
|
||||
$mobile = input('mobile', '');
|
||||
$parent_name = input('parent_name', '');
|
||||
$level_id = input('level_id', '');
|
||||
$start_time = input('start_time', '');
|
||||
$end_time = input('end_time', '');
|
||||
$status = input('status', '');
|
||||
|
||||
if ($fenxiao_name) {
|
||||
$condition[] = [ 'f.fenxiao_name', 'like', '%' . $fenxiao_name . '%' ];
|
||||
}
|
||||
if ($nickname) {
|
||||
$condition[] = [ 'm.nickname', 'like', '%' . $nickname . '%' ];
|
||||
}
|
||||
if ($mobile) {
|
||||
$condition[] = [ 'm.mobile', 'like', '%' . $mobile . '%' ];
|
||||
}
|
||||
|
||||
if ($parent_name) {
|
||||
$condition[] = [ 'pf.fenxiao_name', 'like', '%' . $parent_name . '%' ];
|
||||
}
|
||||
|
||||
if ($level_id) {
|
||||
$condition[] = [ 'f.level_id', '=', $level_id ];
|
||||
}
|
||||
if ($start_time && $end_time) {
|
||||
$condition[] = [ 'f.create_time', 'between', [ date_to_time($start_time), date_to_time($end_time) ] ];
|
||||
} elseif (!$start_time && $end_time) {
|
||||
$condition[] = [ 'f.create_time', '<=', date_to_time($end_time) ];
|
||||
|
||||
} elseif ($start_time && !$end_time) {
|
||||
$condition[] = [ 'f.create_time', '>=', date_to_time($start_time) ];
|
||||
}
|
||||
|
||||
if (!empty($status)) {
|
||||
$condition[] = [ 'f.status', '=', $status ];
|
||||
}
|
||||
$page = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$list = $model->getFenxiaoPageList($condition, $page, $page_size, 'f.create_time desc', $this->site_id);
|
||||
return $list;
|
||||
|
||||
} else {
|
||||
$level_model = new FenxiaoLevelModel();
|
||||
$level_list = $level_model->getLevelList([ [ 'status', '=', 1 ], [ 'site_id', '=', $this->site_id ] ], 'level_id,level_name')[ 'data' ];
|
||||
$this->assign('level_list', $level_list);
|
||||
|
||||
$config_model = new ConfigModel();
|
||||
$basics = $config_model->getFenxiaoBasicsConfig($this->site_id)[ 'data' ][ 'value' ];
|
||||
$this->assign('basics_info', $basics);
|
||||
|
||||
|
||||
return $this->fetch('fenxiao/lists');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加分销商
|
||||
*/
|
||||
public function add()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
|
||||
$fenxiao_data = [
|
||||
'site_id' => $this->site_id,
|
||||
'fenxiao_name' => input('fenxiao_name', ''),//分销商名称
|
||||
'level_id' => input('level_id', 0),//分销商等级
|
||||
'parent' => input('fenxiao_id', 0),//上级分销商ID
|
||||
'member_id' => input('member_id', 0),//关联会员ID
|
||||
];
|
||||
$apply_model = new FenxiaoApply();
|
||||
return $apply_model->addFenxiao($fenxiao_data);
|
||||
|
||||
} else {
|
||||
|
||||
//获取分销商等级
|
||||
$level_model = new FenxiaoLevelModel();
|
||||
$level_list = $level_model->getLevelList([ [ 'status', '=', 1 ], [ 'site_id', '=', $this->site_id ] ], 'level_id,level_name')[ 'data' ];
|
||||
$this->assign('level_list', $level_list);
|
||||
|
||||
//获取分销商列表
|
||||
$fenxiao_model = new FenxiaoModel();
|
||||
$condition[] = [ 'status', '=', '1' ];
|
||||
$fenxiao_list = $fenxiao_model->getFenxiaoList($condition, 'fenxiao_id,fenxiao_name')[ 'data' ];
|
||||
$this->assign('fenxiao_list', $fenxiao_list);
|
||||
|
||||
//获取会员列表
|
||||
$member_model = new MemberModel();
|
||||
$where[] = [ 'is_fenxiao', '=', '0' ];
|
||||
$member_list = $member_model->getMemberList($where, 'member_id,nickname')[ 'data' ];
|
||||
$this->assign('member_list', $member_list);
|
||||
|
||||
return $this->fetch('fenxiao/add');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取分销商列表
|
||||
*/
|
||||
public function getFenxiaoList()
|
||||
{
|
||||
$page_index = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$fenxiao_search = input('fenxiao_search', '');
|
||||
$condition = [];
|
||||
$condition[] = [ 'mobile|fenxiao_name', 'like', '%' . $fenxiao_search . '%' ];
|
||||
$condition[] = [ 'status', '=', 1 ];
|
||||
$fenxiao_model = new FenxiaoModel();
|
||||
$list = $fenxiao_model->getFenxiaoPageLists($condition, $page_index, $page_size, '', 'fenxiao_id,fenxiao_name,account');
|
||||
return $list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员列表
|
||||
*/
|
||||
public function getMemberList()
|
||||
{
|
||||
$page_index = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$member_search = input('member_search', '');
|
||||
$condition = [];
|
||||
$condition[] = [ 'mobile|email|username|nickname', 'like', '%' . $member_search . '%' ];
|
||||
$condition[] = [ 'site_id', '=', $this->site_id ];
|
||||
$condition[] = [ 'is_fenxiao', '=', '0' ];
|
||||
$member_model = new MemberModel();
|
||||
$list = $member_model->getMemberPageList($condition, $page_index, $page_size, '', 'member_id,headimg,nickname,point,balance');
|
||||
return $list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 详情
|
||||
*/
|
||||
public function detail()
|
||||
{
|
||||
$fenxiao_id = input('fenxiao_id', '');
|
||||
|
||||
$model = new FenxiaoModel();
|
||||
$fenxiao_leve_model = new FenxiaoLevelModel();
|
||||
|
||||
$condition[] = [ 'f.fenxiao_id', '=', $fenxiao_id ];
|
||||
$info = $model->getFenxiaoDetailInfo($condition);
|
||||
if (empty($info[ 'data' ])) $this->error('未获取到分销商数据', href_url('fenxiao://shop/fenxiao/lists'));
|
||||
//团队人员数据
|
||||
$info['data']['team_num'] = $model->getFenxiaoTeamNum($fenxiao_id, $this->site_id)['data'];
|
||||
|
||||
$fenxiao_level = $fenxiao_leve_model->getLevelInfo([ [ 'level_id', '=', $info[ 'data' ][ 'level_id' ] ] ]);
|
||||
|
||||
$this->assign('status', $model->fenxiao_status_zh);
|
||||
$this->assign('level', $fenxiao_level[ 'data' ]);
|
||||
$this->assign('info', $info[ 'data' ]);
|
||||
|
||||
$this->assign('fenxiao_id', $fenxiao_id);
|
||||
|
||||
$config_model = new ConfigModel();
|
||||
$basics_config = $config_model->getFenxiaoBasicsConfig($this->site_id);
|
||||
$this->assign('fenxiao_level_num', $basics_config[ 'data' ][ 'value' ][ 'level' ]);
|
||||
|
||||
return $this->fetch('fenxiao/fenxiao_detail');
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销账户信息
|
||||
*/
|
||||
public function account()
|
||||
{
|
||||
$model = new FenxiaoModel();
|
||||
$fenxiao_id = input('fenxiao_id', '');
|
||||
|
||||
$condition[] = [ 'f.fenxiao_id', '=', $fenxiao_id ];
|
||||
$info = $model->getFenxiaoDetailInfo($condition);
|
||||
if (empty($info[ 'data' ])) $this->error('未获取到分销商数据', href_url('fenxiao://shop/fenxiao/lists'));
|
||||
$account = $info[ 'data' ][ 'account' ] - $info[ 'data' ][ 'account_withdraw_apply' ];
|
||||
$info[ 'data' ][ 'account' ] = number_format($account, 2, '.', '');
|
||||
$this->assign('fenxiao_info', $info[ 'data' ]);
|
||||
|
||||
if (request()->isJson()) {
|
||||
|
||||
$account_model = new FenxiaoAccount();
|
||||
$page = input('page', 1);
|
||||
$status = input('status', '');
|
||||
|
||||
$fenxiao_id = input('fenxiao_id', '');
|
||||
$list_condition[] = [ 'fenxiao_id', '=', $fenxiao_id ];
|
||||
if ($status) {
|
||||
if ($status == 1) {
|
||||
$list_condition[] = [ 'money', '>', 0 ];
|
||||
} else {
|
||||
$list_condition[] = [ 'money', '<', 0 ];
|
||||
}
|
||||
}
|
||||
|
||||
$start_time = input('start_time', '');
|
||||
$end_time = input('end_time', '');
|
||||
if ($start_time && $end_time) {
|
||||
$list_condition[] = [ 'create_time', 'between', [ $start_time, $end_time ] ];
|
||||
} elseif (!$start_time && $end_time) {
|
||||
$list_condition[] = [ 'create_time', '<=', $end_time ];
|
||||
|
||||
} elseif ($start_time && !$end_time) {
|
||||
$list_condition[] = [ 'create_time', '>=', $start_time ];
|
||||
}
|
||||
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$list = $account_model->getFenxiaoAccountPageList($list_condition, $page, $page_size);
|
||||
return $list;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销商团队
|
||||
*/
|
||||
public function team()
|
||||
{
|
||||
$fenxiao_id = input('fenxiao_id', 0);
|
||||
$fenxiao_model = new FenxiaoModel();
|
||||
if (request()->isJson()) {
|
||||
$level = input('level', 1);
|
||||
$page = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$list = $fenxiao_model->getFenxiaoTeam($level, $fenxiao_id, $page, $page_size);
|
||||
return $list;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单管理
|
||||
*/
|
||||
public function order()
|
||||
{
|
||||
$model = new FenxiaoOrderModel();
|
||||
if (request()->isJson()) {
|
||||
|
||||
$page_index = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$fenxiao_id = input('fenxiao_id', '');
|
||||
$status = input('status', 0);
|
||||
|
||||
$condition[] = [ 'one_fenxiao_id|two_fenxiao_id|three_fenxiao_id', '=', $fenxiao_id ];
|
||||
|
||||
$search_text_type = input('search_text_type', 'goods_name');//订单编号/商品名称
|
||||
$search_text = input('search_text', '');
|
||||
if (!empty($search_text)) {
|
||||
$condition[] = [ 'fo.' . $search_text_type, 'like', '%' . $search_text . '%' ];
|
||||
}
|
||||
if (in_array($status, [ 1, 2 ])) {
|
||||
$condition[] = [ 'fo.is_settlement', '=', $status - 1 ];
|
||||
}
|
||||
|
||||
//下单时间
|
||||
$start_time = input('start_time', '');
|
||||
$end_time = input('end_time', '');
|
||||
if (!empty($start_time) && empty($end_time)) {
|
||||
$condition[] = [ 'fo.create_time', '>=', date_to_time($start_time) ];
|
||||
} elseif (empty($start_time) && !empty($end_time)) {
|
||||
$condition[] = [ 'fo.create_time', '<=', date_to_time($end_time) ];
|
||||
} elseif (!empty($start_time) && !empty(date_to_time($end_time))) {
|
||||
$condition[] = [ 'fo.create_time', 'between', [ date_to_time($start_time), date_to_time($end_time) ] ];
|
||||
}
|
||||
|
||||
$list = $model->getFenxiaoOrderPage($condition, $page_index, $page_size);
|
||||
return $list;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单详情
|
||||
*/
|
||||
public function orderDetail()
|
||||
{
|
||||
$fenxiao_order_model = new FenxiaoOrderModel();
|
||||
$fenxiao_order_id = input('fenxiao_order_id', '');
|
||||
$order_info = $fenxiao_order_model->getFenxiaoOrderDetail([ [ 'fenxiao_order_id', '=', $fenxiao_order_id ] ]);
|
||||
$this->assign('order_info', $order_info[ 'data' ]);
|
||||
return $this->fetch('fenxiao/order_detail');
|
||||
}
|
||||
|
||||
/**
|
||||
* 冻结
|
||||
*/
|
||||
public function frozen()
|
||||
{
|
||||
$fenxiao_id = input('fenxiao_id', '');
|
||||
$model = new FenxiaoModel();
|
||||
return $model->frozen($fenxiao_id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 恢复正常
|
||||
*/
|
||||
public function unfrozen()
|
||||
{
|
||||
$fenxiao_id = input('fenxiao_id', '');
|
||||
$model = new FenxiaoModel();
|
||||
return $model->unfrozen($fenxiao_id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销商申请列表
|
||||
*/
|
||||
public function apply()
|
||||
{
|
||||
$model = new FenxiaoApply();
|
||||
if (request()->isJson()) {
|
||||
|
||||
$condition[] = [ 'fa.site_id', '=', $this->site_id ];
|
||||
$condition[] = [ 'fa.status', '=', 1 ];
|
||||
$condition[] = [ 'm.is_delete', '=', 0 ];
|
||||
|
||||
$fenxiao_name = input('fenxiao_name', '');
|
||||
if ($fenxiao_name) {
|
||||
$condition[] = [ 'fenxiao_name', 'like', '%' . $fenxiao_name . '%' ];
|
||||
}
|
||||
$nickname = input('nickname', '');
|
||||
if ($nickname) {
|
||||
$condition[] = [ 'm.nickname', 'like', '%' . $nickname . '%' ];
|
||||
}
|
||||
$mobile = input('mobile', '');
|
||||
if ($mobile) {
|
||||
$condition[] = [ 'm.mobile', 'like', '%' . $mobile . '%' ];
|
||||
}
|
||||
$level_id = input('level_id', '');
|
||||
if ($level_id) {
|
||||
$condition[] = [ 'fa.level_id', '=', $level_id ];
|
||||
}
|
||||
$create_start_time = input('create_start_time', '');
|
||||
$create_end_time = input('create_end_time', '');
|
||||
if ($create_start_time && $create_end_time) {
|
||||
$condition[] = [ 'fa.create_time', 'between', [ strtotime($create_start_time), strtotime($create_end_time) ] ];
|
||||
} elseif (!$create_start_time && $create_end_time) {
|
||||
$condition[] = [ 'fa.create_time', '<=', strtotime($create_end_time) ];
|
||||
|
||||
} elseif ($create_start_time && !$create_end_time) {
|
||||
$condition[] = [ 'fa.create_time', '>=', strtotime($create_start_time) ];
|
||||
}
|
||||
|
||||
$rg_start_time = input('rg_start_time', '');
|
||||
$rg_end_time = input('rg_end_time', '');
|
||||
if ($rg_start_time && $rg_end_time) {
|
||||
$condition[] = [ 'fa.reg_time', 'between', [ strtotime($rg_start_time), strtotime($rg_end_time) ] ];
|
||||
} elseif (!$rg_start_time && $rg_end_time) {
|
||||
$condition[] = [ 'fa.reg_time', '<=', strtotime($rg_end_time) ];
|
||||
|
||||
} elseif ($rg_start_time && !$rg_end_time) {
|
||||
$condition[] = [ 'fa.reg_time', '>=', strtotime($rg_start_time) ];
|
||||
}
|
||||
|
||||
$join = [
|
||||
[ 'member m', 'fa.member_id = m.member_id', 'inner' ]
|
||||
];
|
||||
$field = 'fa.apply_id,fa.fenxiao_name,fa.parent,fa.member_id,fa.level_id,fa.level_name,fa.order_complete_money,fa.order_complete_num,fa.reg_time,fa.create_time,fa.status,m.mobile,m.nickname,m.headimg';
|
||||
|
||||
$page = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$list = $model->getFenxiaoApplyPageList($condition, $page, $page_size, 'fa.create_time desc', $field, 'fa', $join);
|
||||
return $list;
|
||||
} else {
|
||||
|
||||
$level_model = new FenxiaoLevelModel();
|
||||
$level_list = $level_model->getLevelList([ [ 'status', '=', 1 ] ], 'level_id,level_name');
|
||||
$this->assign('level_list', $level_list[ 'data' ]);
|
||||
|
||||
return $this->fetch('fenxiao/apply');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销商申请通过
|
||||
*/
|
||||
public function applyPass()
|
||||
{
|
||||
$apply_id = input('apply_id');
|
||||
|
||||
$model = new FenxiaoApply();
|
||||
$res = $model->pass($apply_id, $this->site_id);
|
||||
return $res;
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销商申请通过
|
||||
*/
|
||||
public function applyRefuse()
|
||||
{
|
||||
$apply_id = input('apply_id');
|
||||
$model = new FenxiaoApply();
|
||||
$res = $model->refuse($apply_id);
|
||||
return $res;
|
||||
}
|
||||
|
||||
/**
|
||||
* 变更上下级
|
||||
*/
|
||||
public function change()
|
||||
{
|
||||
$member_id = input('member_id');
|
||||
$model = new FenxiaoModel();
|
||||
$member_model = new MemberModel();
|
||||
|
||||
//用户信息
|
||||
$member_info = $member_model->getMemberInfo([ [ 'member_id', '=', $member_id ] ], 'fenxiao_id,is_fenxiao')[ 'data' ];
|
||||
//获取分销信息
|
||||
$fenxiao_info = $model->getFenxiaoInfo([ [ 'fenxiao_id', '=', $member_info[ 'fenxiao_id' ] ] ], 'parent');
|
||||
//获取上级分销商信息
|
||||
$parent_info = [];
|
||||
if (!empty($fenxiao_info[ 'data' ])) {
|
||||
$parent_info = $model->getFenxiaoInfo([ [ 'fenxiao_id', '=', $fenxiao_info[ 'data' ][ 'parent' ] ] ], 'fenxiao_id,fenxiao_name')['data'];
|
||||
}
|
||||
if (request()->isJson()) {
|
||||
if ($member_info[ 'is_fenxiao' ] == 1) {
|
||||
$condition[] = [ 'f.fenxiao_id', '<>', $member_info[ 'fenxiao_id' ] ];
|
||||
$condition[] = [ 'f.parent', '<>', $member_info[ 'fenxiao_id' ] ];
|
||||
}
|
||||
|
||||
$condition[] = [ 'f.site_id', '=', $this->site_id ];
|
||||
$status = input('status', 1);
|
||||
if ($status) {
|
||||
$condition[] = [ 'f.status', '=', $status ];
|
||||
}
|
||||
|
||||
$fenxiao_name = input('fenxiao_name', '');
|
||||
if ($fenxiao_name) {
|
||||
$condition[] = [ 'f.fenxiao_name', 'like', '%' . $fenxiao_name . '%' ];
|
||||
}
|
||||
|
||||
$parent_name = input('parent_name', '');
|
||||
if ($parent_name) {
|
||||
$condition[] = [ 'pf.fenxiao_name', 'like', '%' . $parent_name . '%' ];
|
||||
}
|
||||
|
||||
$level_id = input('level_id', '');
|
||||
if ($level_id) {
|
||||
$condition[] = [ 'f.level_id', '=', $level_id ];
|
||||
}
|
||||
$start_time = input('start_time', '');
|
||||
$end_time = input('end_time', '');
|
||||
if ($start_time && $end_time) {
|
||||
$condition[] = [ 'f.create_time', 'between', [ date_to_time($start_time), date_to_time($end_time) ] ];
|
||||
} elseif (!$start_time && $end_time) {
|
||||
$condition[] = [ 'f.create_time', '<=', date_to_time($end_time) ];
|
||||
|
||||
} elseif ($start_time && !$end_time) {
|
||||
$condition[] = [ 'f.create_time', '>=', date_to_time($start_time) ];
|
||||
}
|
||||
if(!empty($parent_info)){
|
||||
$order = \think\facade\Db::raw("IF(f.fenxiao_id = {$parent_info['fenxiao_id']}, 1, 2) asc,f.create_time desc");
|
||||
}else{
|
||||
$order = 'f.create_time desc';
|
||||
}
|
||||
|
||||
$page = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$list = $model->getFenxiaoPageList($condition, $page, $page_size, $order);
|
||||
return $list;
|
||||
|
||||
} else {
|
||||
$level_model = new FenxiaoLevelModel();
|
||||
$level_list = $level_model->getLevelList([ [ 'status', '=', 1 ], [ 'site_id', '=', $this->site_id ] ], 'level_id,level_name');
|
||||
$this->assign('level_list', $level_list[ 'data' ]);
|
||||
|
||||
$config_model = new ConfigModel();
|
||||
$basics = $config_model->getFenxiaoBasicsConfig($this->site_id);
|
||||
$this->assign('basics_info', $basics[ 'data' ][ 'value' ]);
|
||||
|
||||
$this->assign('member_id', $member_id);
|
||||
$this->assign('parent_info', $parent_info);
|
||||
|
||||
$change_end_func = input('change_end_func', 'changeEnd');
|
||||
$this->assign('change_end_func', $change_end_func);
|
||||
|
||||
return $this->fetch('fenxiao/change');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 确认变更
|
||||
*/
|
||||
public function confirmChange()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
|
||||
$member_id = input('member_id', '');
|
||||
$parent = input('parent', '');
|
||||
$type = input('type', '');
|
||||
$model = new FenxiaoModel();
|
||||
if ($type == 1) {
|
||||
$res = $model->changeParentFenxiao($member_id, $parent);
|
||||
} else {
|
||||
$res = $model->cancelParentFenxiao($member_id);
|
||||
}
|
||||
|
||||
return $res;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员详情
|
||||
*/
|
||||
public function memberInfo()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
|
||||
$member_id = input('member_id', '');
|
||||
$condition[] = [ 'site_id', '=', $this->site_id ];
|
||||
$condition[] = [ 'member_id', '=', $member_id ];
|
||||
$member_model = new MemberModel();
|
||||
$member_info_result = $member_model->getMemberInfo($condition);
|
||||
$member_info = $member_info_result['data'];
|
||||
if (empty($member_info)) return $member_model->error([], '账号不存在!');
|
||||
return $member_info_result;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改分销商等级
|
||||
*/
|
||||
public function changeLevel()
|
||||
{
|
||||
$member_id = input('member_id', '');
|
||||
$fenxiao_id = input('fenxiao_id', '');
|
||||
if (request()->isJson()) {
|
||||
$level_model = new FenxiaoLevelModel();
|
||||
$fenxiao_model = new FenxiaoModel();
|
||||
$fenxiao_info = $fenxiao_model->getFenxiaoInfo([ [ 'fenxiao_id', '=', $fenxiao_id ] ], 'member_id,level_id,level_name')[ 'data' ];
|
||||
$condition[] = [ 'site_id', '=', $this->site_id ];
|
||||
if (!empty($fenxiao_info)) {
|
||||
$condition[] = [ 'level_id', '<>', $fenxiao_info[ 'level_id' ] ];
|
||||
}
|
||||
|
||||
$lists = $level_model->getLevelPageList($condition, '1', PAGE_LIST_ROWS, 'level_num asc');
|
||||
return $lists;
|
||||
} else {
|
||||
$config_model = new ConfigModel();
|
||||
$basics = $config_model->getFenxiaoBasicsConfig($this->site_id);
|
||||
$this->assign('basics_info', $basics[ 'data' ][ 'value' ]);
|
||||
|
||||
$this->assign('member_id', $member_id);
|
||||
|
||||
$this->assign('fenxiao_id', $fenxiao_id);
|
||||
|
||||
$change_end_func = input('change_end_func', 'changeEnd');
|
||||
$this->assign('change_end_func', $change_end_func);
|
||||
|
||||
return $this->fetch('fenxiao/change_level');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 确认变更
|
||||
*/
|
||||
public function confirmChangeLevel()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
|
||||
$member_id = input('member_id', '');
|
||||
$level_id = input('level_id', '');
|
||||
|
||||
$level_model = new FenxiaoLevelModel();
|
||||
$level_data = $level_model->getLevelInfo([ [ 'level_id', '=', $level_id ] ], 'level_id,level_name')[ 'data' ];
|
||||
$fenxiao_model = new FenxiaoModel();
|
||||
$data = [
|
||||
'level_id' => $level_data[ 'level_id' ],
|
||||
'level_name' => $level_data[ 'level_name' ]
|
||||
];
|
||||
$res = $fenxiao_model->changeFenxiaoLevel($data, [ [ 'member_id', '=', $member_id ] ]);
|
||||
return $res;
|
||||
}
|
||||
}
|
||||
}
|
||||
271
addon/fenxiao/shop/controller/Goods.php
Executable file
271
addon/fenxiao/shop/controller/Goods.php
Executable file
@@ -0,0 +1,271 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\fenxiao\shop\controller;
|
||||
|
||||
use addon\fenxiao\model\FenxiaoGoodsSku as FenxiaoGoodsSkuModel;
|
||||
use addon\fenxiao\model\FenxiaoLevel as FenxiaoLevelModel;
|
||||
use app\model\goods\Goods as GoodsModel;
|
||||
use app\shop\controller\BaseShop;
|
||||
use addon\fenxiao\model\FenxiaoGoods as FenxiaoGoodsModel;
|
||||
use think\facade\Db;
|
||||
use addon\fenxiao\model\Config as FenxiaoConfigModel;
|
||||
|
||||
/**
|
||||
* 分销商品
|
||||
*/
|
||||
class Goods extends BaseShop
|
||||
{
|
||||
|
||||
/**
|
||||
* 分销等级列表
|
||||
*/
|
||||
public function lists()
|
||||
{
|
||||
$model = new GoodsModel();
|
||||
|
||||
if (request()->isJson()) {
|
||||
|
||||
$page_index = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$condition = [
|
||||
[ 'is_delete', '=', 0 ],
|
||||
[ 'site_id', '=', $this->site_id ]
|
||||
];
|
||||
$search_text_type = input('search_text_type', 'goods_name');//店铺名称或者商品名称
|
||||
$search_text = input('search_text', '');
|
||||
$goods_class = input('goods_class', '');//商品种类
|
||||
$goods_state = input('goods_state', '');//商品状态
|
||||
$category_id = input('category_id', '');//分类ID
|
||||
$is_fenxiao = input('is_fenxiao', '');
|
||||
$start_sale = input('start_sale', 0);
|
||||
$end_sale = input('end_sale', 0);
|
||||
if (!empty($search_text)) {
|
||||
$condition[] = [ $search_text_type, 'like', '%' . $search_text . '%' ];
|
||||
}
|
||||
|
||||
if ($is_fenxiao !== '') {
|
||||
$condition[] = [ 'is_fenxiao', '=', $is_fenxiao ];
|
||||
}
|
||||
if (!empty($start_sale)) $condition[] = [ 'sale_num', '>=', $start_sale ];
|
||||
if (!empty($end_sale)) $condition[] = [ 'sale_num', '<=', $end_sale ];
|
||||
|
||||
if ($goods_class !== '') {
|
||||
$condition[] = [ 'goods_class', '=', $goods_class ];
|
||||
}
|
||||
|
||||
if ($goods_state !== '') {
|
||||
$condition[] = [ 'goods_state', '=', $goods_state ];
|
||||
}
|
||||
|
||||
if (!empty($category_id)) {
|
||||
$condition[] = [ 'category_id', 'like', '%,' . $category_id . ',%' ];
|
||||
}
|
||||
$list = $model->getGoodsPageList($condition, $page_index, $page_size);
|
||||
return $list;
|
||||
} else {
|
||||
|
||||
return $this->fetch('goods/lists');
|
||||
}
|
||||
}
|
||||
|
||||
public function detail()
|
||||
{
|
||||
$goods_id = input('goods_id');
|
||||
$goods_model = new GoodsModel();
|
||||
$fenxiao_sku_model = new FenxiaoGoodsSkuModel();
|
||||
$fenxiao_leve_model = new FenxiaoLevelModel();
|
||||
$goods_info = $goods_model->getGoodsDetail($goods_id);
|
||||
if (empty($goods_info[ 'data' ]) || $goods_info[ 'data' ][ 'site_id' ] != $this->site_id) $this->error('商品信息不存在');
|
||||
$fenxiao_skus = $fenxiao_sku_model->getSkuList([ 'goods_id' => $goods_id ]);
|
||||
$skus = [];
|
||||
foreach ($fenxiao_skus[ 'data' ] as $fenxiao_sku) {
|
||||
$skus[ $fenxiao_sku[ 'level_id' ] . '_' . $fenxiao_sku[ 'sku_id' ] ] = $fenxiao_sku;
|
||||
}
|
||||
$goods_info[ 'data' ][ 'fenxiao_skus' ] = $skus;
|
||||
$goods_info[ 'data' ][ 'goods_image' ] = explode(',', $goods_info[ 'data' ][ 'goods_image' ]);
|
||||
$fenxiao_level = $fenxiao_leve_model->getLevelList([ [ 'site_id', '=', $this->site_id ] ]);
|
||||
$this->assign('fenxiao_level', $fenxiao_level[ 'data' ]);
|
||||
$this->assign('goods_info', $goods_info[ 'data' ]);
|
||||
|
||||
$fenxiao_config_model = new FenxiaoConfigModel();
|
||||
$fenxiao_config = $fenxiao_config_model->getFenxiaoBasicsConfig($this->site_id)[ 'data' ] ?? [];
|
||||
$this->assign('fenxiao_config', $fenxiao_config[ 'value' ] ?? []);
|
||||
return $this->fetch('goods/detail');
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加活动
|
||||
*/
|
||||
public function config()
|
||||
{
|
||||
$goods_id = input('goods_id');
|
||||
$goods_model = new GoodsModel();
|
||||
$fenxiao_sku_model = new FenxiaoGoodsSkuModel();
|
||||
$fenxiao_leve_model = new FenxiaoLevelModel();
|
||||
$fenxiao_level = $fenxiao_leve_model->getLevelList([ [ 'site_id', '=', $this->site_id ], [ 'status', '=', 1 ] ], '*', 'level_num asc,one_rate asc');
|
||||
$goods_info = $goods_model->getGoodsDetail($goods_id);
|
||||
if (empty($goods_info[ 'data' ]) || $goods_info[ 'data' ][ 'site_id' ] != $this->site_id) $this->error('商品信息不存在');
|
||||
$fenxiao_config_model = new FenxiaoConfigModel();
|
||||
$fenxiao_config = $fenxiao_config_model->getFenxiaoBasicsConfig($this->site_id)[ 'data' ] ?? [];
|
||||
$fenxiao_config = $fenxiao_config[ 'value' ] ?? [];
|
||||
if (request()->isJson()) {
|
||||
Db::startTrans();
|
||||
try {
|
||||
$fenxiao_type = input('fenxiao_type', 1);
|
||||
$fenxiao_skus = input('fenxiao', []);
|
||||
$is_fenxiao = input('is_fenxiao', 0);
|
||||
$fenxiao_price = input('fenxiao_price', []);
|
||||
|
||||
$goods_data = [ 'is_fenxiao' => $is_fenxiao, 'fenxiao_type' => $fenxiao_type ];
|
||||
if ($fenxiao_type == 2) {
|
||||
$fenxiao_goods_sku_data = [];
|
||||
foreach ($fenxiao_skus as $level_id => $level_data) {
|
||||
foreach ($level_data[ 'sku_id' ] as $key => $sku_id) {
|
||||
$fenxiao_total = 0;
|
||||
$fenxiao_level = [ 'one', 'two', 'three' ];
|
||||
foreach ($fenxiao_level as $level) {
|
||||
$item_rate_array = $level_data[ $level . '_rate' ] ?? [];
|
||||
$item_rate = $item_rate_array[ $key ] ?? 0;
|
||||
$item_money_array = $level_data[ $level . '_money' ] ?? [];
|
||||
$item_money = $item_money_array[ $key ] ?? 0;
|
||||
$var_rate_name = $level . '_rate';
|
||||
$$var_rate_name = $item_rate;
|
||||
$var_money_name = $level . '_money';
|
||||
$$var_money_name = $item_money;
|
||||
if ($item_rate > 0) {
|
||||
$fenxiao_total += $level_data[ 'sku_price' ][ $key ] * $item_rate / 100;
|
||||
} elseif ($item_money > 0) {
|
||||
$fenxiao_total += $item_money;
|
||||
}
|
||||
}
|
||||
if (empty($fenxiao_total)) {
|
||||
return error(-1, '分销金额不可以为零');
|
||||
}
|
||||
if ($level_data[ 'sku_price' ][ $key ] < $fenxiao_total) {
|
||||
return error(-1, '分销总金额不能大于商品sku价格的100%!');
|
||||
}
|
||||
|
||||
if ($fenxiao_config[ 'level' ] < 3) {
|
||||
$three_rate = 0;
|
||||
$three_money = 0;
|
||||
//通过分销设置的等级配置
|
||||
if ($fenxiao_config[ 'level' ] < 2) {
|
||||
$two_rate = 0;
|
||||
$two_money = 0;
|
||||
}
|
||||
}
|
||||
$fenxiao_sku = [
|
||||
'goods_id' => $goods_id,
|
||||
'level_id' => $level_id,
|
||||
'sku_id' => $sku_id,
|
||||
'one_rate' => $one_rate ?? 0,
|
||||
'one_money' => $one_money ?? 0,
|
||||
'two_rate' => $two_rate ?? 0,
|
||||
'two_money' => $two_money ?? 0,
|
||||
'three_rate' => $three_rate ?? 0,
|
||||
'three_money' => $three_money ?? 0,
|
||||
];
|
||||
$fenxiao_goods_sku_data[] = $fenxiao_sku;
|
||||
}
|
||||
}
|
||||
$fenxiao_sku_model->deleteSku([ 'goods_id' => $goods_id ]);
|
||||
$fenxiao_sku_model->addSkuList($fenxiao_goods_sku_data);
|
||||
}
|
||||
if ($fenxiao_type == 1) {
|
||||
$fenxiao_goods_sku_data = [];
|
||||
foreach ($fenxiao_level[ 'data' ] as $level) {
|
||||
foreach ($goods_info[ 'data' ][ 'sku_data' ] as $sku) {
|
||||
$item_one_rate = $level[ 'one_rate' ] ?? 0;
|
||||
$item_two_rate = $level[ 'two_rate' ] ?? 0;
|
||||
$item_three_rate = $level[ 'three_rate' ] ?? 0;
|
||||
//通过分销设置的等级配置
|
||||
if ($fenxiao_config[ 'level' ] < 3) {
|
||||
$item_three_rate = 0;
|
||||
if ($fenxiao_config[ 'level' ] < 2) {
|
||||
$item_two_rate = 0;
|
||||
}
|
||||
}
|
||||
$fenxiao_sku = [
|
||||
'goods_id' => $goods_id,
|
||||
'level_id' => $level[ 'level_id' ],
|
||||
'sku_id' => $sku[ 'sku_id' ],
|
||||
'one_rate' => $item_one_rate,
|
||||
'one_money' => 0,
|
||||
'two_rate' => $item_two_rate,
|
||||
'two_money' => 0,
|
||||
'three_rate' => $item_three_rate,
|
||||
'three_money' => 0,
|
||||
];
|
||||
$fenxiao_goods_sku_data[] = $fenxiao_sku;
|
||||
}
|
||||
}
|
||||
$fenxiao_sku_model->deleteSku([ 'goods_id' => $goods_id ]);
|
||||
$fenxiao_sku_model->addSkuList($fenxiao_goods_sku_data);
|
||||
}
|
||||
|
||||
$fenxiao_goods_model = new FenxiaoGoodsModel();
|
||||
$re = $fenxiao_goods_model->editGoodsFenxiao($goods_data, [ [ 'goods_id', '=', $goods_id ], [ 'site_id', '=', $this->site_id ] ]);
|
||||
|
||||
if ($is_fenxiao) {
|
||||
foreach ($fenxiao_price as $sku_id => $item) {
|
||||
if (empty($item) || $item < 0) $item = 0;
|
||||
$res = model('goods_sku')->update([ 'fenxiao_price' => $item ], [ [ 'sku_id', '=', $sku_id ], [ 'site_id', '=', $this->site_id ] ]);
|
||||
}
|
||||
}
|
||||
Db::commit();
|
||||
return $re;
|
||||
} catch (\Exception $e) {
|
||||
Db::rollback();
|
||||
return error(-1, $e->getMessage());
|
||||
}
|
||||
}
|
||||
$fenxiao_skus = $fenxiao_sku_model->getSkuList([ 'goods_id' => $goods_id ]);
|
||||
$skus = [];
|
||||
foreach ($fenxiao_skus[ 'data' ] as $fenxiao_sku) {
|
||||
$skus[ $fenxiao_sku[ 'level_id' ] . '_' . $fenxiao_sku[ 'sku_id' ] ] = $fenxiao_sku;
|
||||
}
|
||||
$goods_info[ 'data' ][ 'fenxiao_skus' ] = $skus;
|
||||
$goods_info[ 'data' ][ 'goods_image' ] = explode(',', $goods_info[ 'data' ][ 'goods_image' ]);
|
||||
|
||||
$this->assign('fenxiao_level', $fenxiao_level[ 'data' ]);
|
||||
$this->assign('goods_info', $goods_info[ 'data' ]);
|
||||
|
||||
$this->assign('fenxiao_config', $fenxiao_config);
|
||||
return $this->fetch('goods/config');
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改分销状态
|
||||
*/
|
||||
public function modify()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$fenxiao_goods_model = new FenxiaoGoodsModel();
|
||||
$goods_id = input('goods_id');
|
||||
$is_fenxiao = input('is_fenxiao', 0);
|
||||
return $fenxiao_goods_model->modifyGoodsFenxiaoStatus($goods_id, $is_fenxiao ? 0 : 1, $this->site_id);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量设置是否参与分销
|
||||
* @return array
|
||||
*/
|
||||
public function setGoodsIsFenxiao()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$fenxiao_goods_model = new FenxiaoGoodsModel();
|
||||
$goods_ids = input('goods_ids', '');
|
||||
$is_fenxiao = input('is_fenxiao', 0);
|
||||
return $fenxiao_goods_model->modifyGoodsIsFenxiao($goods_ids, $is_fenxiao, $this->site_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
160
addon/fenxiao/shop/controller/Level.php
Executable file
160
addon/fenxiao/shop/controller/Level.php
Executable file
@@ -0,0 +1,160 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.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()->isJson()) {
|
||||
|
||||
$page = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$list = $model->getLevelPageListInAdmin([ [ 'site_id', '=', $this->site_id ], ['is_default', '=', 0] ], $page, $page_size, 'level_num asc,one_rate asc', $field);
|
||||
|
||||
return $list;
|
||||
|
||||
} else {
|
||||
|
||||
//获取系统配置
|
||||
$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()->isJson()) {
|
||||
|
||||
$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()->isJson()) {
|
||||
|
||||
$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('未获取到等级数据', href_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;
|
||||
}
|
||||
}
|
||||
36
addon/fenxiao/shop/controller/Market.php
Executable file
36
addon/fenxiao/shop/controller/Market.php
Executable file
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\fenxiao\shop\controller;
|
||||
|
||||
use app\shop\controller\BaseShop;
|
||||
|
||||
/**
|
||||
* 分销市场
|
||||
*/
|
||||
class Market extends BaseShop
|
||||
{
|
||||
/**
|
||||
* 分销市场
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
|
||||
$data = [
|
||||
'site_id' => $this->site_id,
|
||||
'name' => 'DIY_FENXIAO_MARKET',
|
||||
'support_diy_view' => [ '', 'DIY_FENXIAO_MARKET' ],
|
||||
];
|
||||
$edit_view = event('DiyViewEdit', $data, true);
|
||||
|
||||
return $edit_view;
|
||||
}
|
||||
|
||||
}
|
||||
122
addon/fenxiao/shop/controller/Order.php
Executable file
122
addon/fenxiao/shop/controller/Order.php
Executable file
@@ -0,0 +1,122 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\fenxiao\shop\controller;
|
||||
|
||||
use addon\fenxiao\model\FenxiaoOrder;
|
||||
use app\shop\controller\BaseShop;
|
||||
use think\App;
|
||||
|
||||
/**
|
||||
* 分销订单
|
||||
*/
|
||||
class Order extends BaseShop
|
||||
{
|
||||
public function __construct(App $app = null)
|
||||
{
|
||||
$this->replace = [
|
||||
'FENXIAO_JS' => __ROOT__ . '/addon/fenxiao/shop/view/public/js',
|
||||
'FENXIAO_CSS' => __ROOT__ . '/addon/fenxiao/shop/view/public/css'
|
||||
];
|
||||
parent::__construct($app);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分销订单列表
|
||||
*/
|
||||
public function lists()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$model = new FenxiaoOrder();
|
||||
$page_index = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$status = input('status', 0);
|
||||
$condition = [ [ 'fo.site_id', '=', $this->site_id ] ];
|
||||
if ($status == 3) {
|
||||
$condition[] = [ 'fo.is_refund', '=', 1 ];
|
||||
}
|
||||
if (in_array($status, [ 1, 2 ])) {
|
||||
$condition[] = [ 'fo.is_settlement', '=', $status - 1 ];
|
||||
}
|
||||
$search_text_type = input('search_text_type', "sku_name");//商品名称/订单编号
|
||||
$search_text = input('search_text', "");
|
||||
if (!empty($search_text)) {
|
||||
$condition[] = [ 'fo.' . $search_text_type, 'like', '%' . $search_text . '%' ];
|
||||
}
|
||||
//下单时间
|
||||
$start_time = input('start_time', '');
|
||||
$end_time = input('end_time', '');
|
||||
if (!empty($start_time) && empty($end_time)) {
|
||||
$condition[] = [ 'fo.create_time', '>=', date_to_time($start_time) ];
|
||||
} elseif (empty($start_time) && !empty($end_time)) {
|
||||
$condition[] = [ 'fo.create_time', '<=', date_to_time($end_time) ];
|
||||
} elseif (!empty($start_time) && !empty(date_to_time($end_time))) {
|
||||
$condition[] = [ 'fo.create_time', 'between', [ date_to_time($start_time), date_to_time($end_time) ] ];
|
||||
}
|
||||
|
||||
$list = $model->getFenxiaoOrderPage($condition, $page_index, $page_size);
|
||||
|
||||
return $list;
|
||||
} else {
|
||||
|
||||
//订单状态
|
||||
return $this->fetch('order/lists');
|
||||
}
|
||||
}
|
||||
|
||||
public function detail()
|
||||
{
|
||||
$fenxiao_order_model = new FenxiaoOrder();
|
||||
$order_id = input('order_id', '');
|
||||
$order_info = $fenxiao_order_model->getFenxiaoOrderDetail([ [ 'order_id', '=', $order_id ] ]);
|
||||
if (empty($order_info[ 'data' ])) $this->error('未获取到订单数据', href_url('fenxiao://shop/order/lists'));
|
||||
$this->assign('order_detail', $order_info[ 'data' ]);
|
||||
return $this->fetch('order/detail');
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单导出
|
||||
*/
|
||||
public function exportorder()
|
||||
{
|
||||
$model = new FenxiaoOrder();
|
||||
$status = input('status', 0);
|
||||
$fenxiao_order_id = input('order_ids', "");
|
||||
|
||||
$condition = [ [ 'fo.site_id', '=', $this->site_id ] ];
|
||||
if ($status == 3) {
|
||||
$condition[] = [ 'fo.is_refund', '=', 1 ];
|
||||
}
|
||||
if (in_array($status, [ 1, 2 ])) {
|
||||
$condition[] = [ 'fo.is_settlement', '=', $status - 1 ];
|
||||
}
|
||||
$search_text_type = input('search_text_type', "goods_name");//商品名称/订单编号
|
||||
$search_text = input('search_text', "");
|
||||
if (!empty($search_text)) {
|
||||
$condition[] = [ 'fo.' . $search_text_type, 'like', '%' . $search_text . '%' ];
|
||||
}
|
||||
//下单时间
|
||||
$start_time = input('start_time', '');
|
||||
$end_time = input('end_time', '');
|
||||
if (!empty($start_time) && empty($end_time)) {
|
||||
$condition[] = [ 'fo.create_time', '>=', date_to_time($start_time) ];
|
||||
} elseif (empty($start_time) && !empty($end_time)) {
|
||||
$condition[] = [ 'fo.create_time', '<=', date_to_time($end_time) ];
|
||||
} elseif (!empty($start_time) && !empty(date_to_time($end_time))) {
|
||||
$condition[] = [ 'fo.create_time', 'between', [ date_to_time($start_time), date_to_time($end_time) ] ];
|
||||
}
|
||||
if ($fenxiao_order_id) {
|
||||
$condition = [];
|
||||
$condition[] = [ "fo.fenxiao_order_id", "in", $fenxiao_order_id ];
|
||||
}
|
||||
$model->orderExport($condition);
|
||||
return;
|
||||
}
|
||||
}
|
||||
309
addon/fenxiao/shop/controller/Postertemplate.php
Executable file
309
addon/fenxiao/shop/controller/Postertemplate.php
Executable file
@@ -0,0 +1,309 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\fenxiao\shop\controller;
|
||||
|
||||
use addon\fenxiao\model\PosterTemplate as PosterTemplateModel;
|
||||
use app\model\system\Site;
|
||||
use app\model\upload\Upload;
|
||||
use app\shop\controller\BaseShop;
|
||||
use extend\Poster as PosterExtend;
|
||||
|
||||
/**
|
||||
* 海报模板 控制器
|
||||
*/
|
||||
class Postertemplate extends BaseShop
|
||||
{
|
||||
/**
|
||||
* 海报模板列表
|
||||
* @return mixed
|
||||
*/
|
||||
public function lists()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$page_index = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$search_text = input('search_text', '');
|
||||
$condition = [ [ 'site_id', '=', $this->site_id ] ];
|
||||
$condition[] = [ 'template_type', '=', 'fenxiao' ];
|
||||
if (!empty($search_text)) {
|
||||
$condition[] = [ 'poster_name', 'like', '%' . $search_text . '%' ];
|
||||
}
|
||||
$poster_template_model = new PosterTemplateModel();
|
||||
$res = $poster_template_model->getPosterTemplatePageList($condition, $page_index, $page_size);
|
||||
return $res;
|
||||
} else {
|
||||
return $this->fetch('poster_template/lists');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加海报模板
|
||||
* @return mixed
|
||||
*/
|
||||
public function addPosterTemplate()
|
||||
{
|
||||
$poster_template_model = new PosterTemplateModel();
|
||||
if (request()->isJson()) {
|
||||
$default_template = PosterTemplateModel::DEFAULT_TEMPLATE;
|
||||
$add_data = [];
|
||||
$template_json = [];
|
||||
foreach ($default_template as $field => $field_value) {
|
||||
if ($field == 'template_json') {
|
||||
foreach ($default_template[ 'template_json' ] as $json_field => $json_field_value) {
|
||||
$template_json[ $json_field ] = input($json_field, $json_field_value);
|
||||
}
|
||||
} else {
|
||||
$add_data[ $field ] = input($field, $field_value);
|
||||
}
|
||||
}
|
||||
unset($add_data[ 'template_id' ]);
|
||||
$add_data[ 'site_id' ] = $this->site_id;
|
||||
$add_data[ 'template_json' ] = json_encode($template_json, true);
|
||||
|
||||
return $poster_template_model->addPosterTemplate($add_data);
|
||||
} else {
|
||||
//模板信息
|
||||
$muban_id = input('muban_id', 0);
|
||||
$muban_info = $poster_template_model->getMubanInfo([ [ 'muban_id', '=', $muban_id ] ])[ 'data' ];
|
||||
if (!empty($muban_info)) {
|
||||
$template_info = $muban_info;
|
||||
$template_info[ 'template_json' ] = json_decode($template_info[ 'template_json' ], true);
|
||||
$template_info[ 'template_id' ] = 0;
|
||||
} else {
|
||||
$template_info = PosterTemplateModel::DEFAULT_TEMPLATE;
|
||||
}
|
||||
$template_info[ 'template_json' ] = $poster_template_model->correctTemplateJsonData($template_info[ 'template_json' ])[ 'data' ];
|
||||
$template_info = array_merge($template_info, $template_info[ 'template_json' ]);
|
||||
unset($template_info[ 'template_json' ]);
|
||||
$this->assign('template_info', $template_info);
|
||||
|
||||
//站点信息
|
||||
$site_model = new Site();
|
||||
$site_info = $site_model->getSiteInfo([ [ "site_id", "=", $this->site_id ] ], 'site_name,logo,logo_square')[ 'data' ];
|
||||
$this->assign('site_data', $site_info);
|
||||
|
||||
return $this->fetch('poster_template/add');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加海报模板
|
||||
* @return mixed
|
||||
*/
|
||||
public function editPosterTemplate()
|
||||
{
|
||||
$template_id = input('template_id', '');
|
||||
$poster_template_model = new PosterTemplateModel();
|
||||
if (request()->isJson()) {
|
||||
$default_template = PosterTemplateModel::DEFAULT_TEMPLATE;
|
||||
$edit_data = [];
|
||||
$template_json = [];
|
||||
foreach ($default_template as $field => $field_value) {
|
||||
if ($field == 'template_json') {
|
||||
foreach ($default_template[ 'template_json' ] as $json_field => $json_field_value) {
|
||||
$template_json[ $json_field ] = input($json_field, $json_field_value);
|
||||
}
|
||||
} else {
|
||||
$edit_data[ $field ] = input($field, $field_value);
|
||||
}
|
||||
}
|
||||
unset($edit_data[ 'template_id' ]);
|
||||
$edit_data[ 'site_id' ] = $this->site_id;
|
||||
$edit_data[ 'template_json' ] = json_encode($template_json, true);
|
||||
return $poster_data = $poster_template_model->editPosterTemplate($edit_data, [
|
||||
[ 'template_id', '=', $template_id ],
|
||||
[ 'site_id', '=', $this->site_id ]
|
||||
]);
|
||||
} else {
|
||||
//模板信息
|
||||
$template_info = $poster_template_model->getPosterTemplateInfo([
|
||||
[ 'site_id', '=', $this->site_id ],
|
||||
[ 'template_id', '=', $template_id ],
|
||||
], '*')[ 'data' ];
|
||||
if (empty($template_info)) $this->error('模板信息有误');
|
||||
$template_info[ 'template_json' ] = json_decode($template_info[ 'template_json' ], true);
|
||||
$template_info[ 'template_json' ] = $poster_template_model->correctTemplateJsonData($template_info[ 'template_json' ])[ 'data' ];
|
||||
$template_info = array_merge($template_info, $template_info[ 'template_json' ]);
|
||||
unset($template_info[ 'template_json' ]);
|
||||
$this->assign('template_info', $template_info);
|
||||
|
||||
//站点信息
|
||||
$site_model = new Site();
|
||||
$site_info = $site_model->getSiteInfo([ [ "site_id", "=", $this->site_id ] ], 'site_name,logo,logo_square');
|
||||
$this->assign('site_data', $site_info[ 'data' ]);
|
||||
return $this->fetch('poster_template/add');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取海报模板预览
|
||||
* @return mixed
|
||||
*/
|
||||
public function posterTemplateDetail()
|
||||
{
|
||||
$template_id = input('template_id', '');
|
||||
$condition = [
|
||||
[ 'template_id', '=', $template_id ],
|
||||
[ 'site_id', '=', $this->site_id ]
|
||||
];
|
||||
$poster_template_model = new PosterTemplateModel();
|
||||
$poster_data = $poster_template_model->getPosterTemplateInfo($condition);
|
||||
if (empty($poster_data[ 'data' ])) {
|
||||
return $poster_template_model->error(null, '海报数据有误');
|
||||
}
|
||||
|
||||
$poster_data[ 'data' ][ 'template_json' ] = json_decode($poster_data[ 'data' ][ 'template_json' ], true);
|
||||
$poster_data[ 'data' ][ 'template_json' ] = $poster_template_model->correctTemplateJsonData($poster_data[ 'data' ][ 'template_json' ])[ 'data' ];
|
||||
$site_model = new Site();
|
||||
$where = array (
|
||||
[ "site_id", "=", $this->site_id ]
|
||||
);
|
||||
$site_info = $site_model->getSiteInfo($where);
|
||||
$poster_width = 720;
|
||||
$poster_height = 1280;
|
||||
$poster = new PosterExtend($poster_width, $poster_height);
|
||||
$ground = [
|
||||
[
|
||||
'action' => 'setBackground', // 设背景色
|
||||
'data' => [ 255, 255, 255 ]
|
||||
],
|
||||
];
|
||||
|
||||
$fontRate = 0.725; // 20px 等于 14.5磅,换算比率 1px = 0.725磅
|
||||
$option = [
|
||||
[
|
||||
'action' => 'imageCopy', // 写入二维码
|
||||
'data' => [
|
||||
getUrl() . '/public/static/img/caner_erweima.png',
|
||||
$poster_data[ 'data' ][ 'qrcode_left' ] * 2,
|
||||
$poster_data[ 'data' ][ 'qrcode_top' ] * 2,
|
||||
$poster_data[ 'data' ][ 'qrcode_width' ] * 2,
|
||||
$poster_data[ 'data' ][ 'qrcode_height' ] * 2,
|
||||
'square',
|
||||
0,
|
||||
1
|
||||
]
|
||||
],
|
||||
[
|
||||
'action' => 'imageText', // 写入分享语
|
||||
'data' => [
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'share_content' ],
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'share_content_font_size' ] * $fontRate * 2,
|
||||
is_array($poster_data[ 'data' ][ 'template_json' ][ 'share_content_color' ]) ? $poster_data[ 'data' ][ 'template_json' ][ 'share_content_color' ] : hex2rgb($poster_data[ 'data' ][ 'template_json' ][ 'share_content_color' ]),
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'share_content_left' ] * 2,
|
||||
( $poster_data[ 'data' ][ 'template_json' ][ 'share_content_top' ] ) * 2,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'share_content_width' ] * 2,
|
||||
1
|
||||
]
|
||||
]
|
||||
];
|
||||
|
||||
$nickname_color = is_array($poster_data[ 'data' ][ 'template_json' ][ 'nickname_color' ]) ? $poster_data[ 'data' ][ 'template_json' ][ 'nickname_color' ] : hex2rgb($poster_data[ 'data' ][ 'template_json' ][ 'nickname_color' ]);
|
||||
|
||||
$member_option = [
|
||||
[
|
||||
'action' => 'imageCopy', // 写入用户头像
|
||||
'data' => [
|
||||
getUrl() . '/public/static/img/default_img/head.png',
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'headimg_left' ] * 2,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'headimg_top' ] * 2,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'headimg_width' ] * 2,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'headimg_height' ] * 2,
|
||||
!empty($poster_data[ 'data' ][ 'template_json' ][ 'headimg_shape' ]) ? $poster_data[ 'data' ][ 'template_json' ][ 'headimg_shape' ] : 'square',
|
||||
0,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'headimg_is_show' ]
|
||||
]
|
||||
],
|
||||
[
|
||||
'action' => 'imageText', // 写入分享人昵称
|
||||
'data' => [
|
||||
'用户昵称',
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'nickname_font_size' ] * $fontRate * 2,
|
||||
$nickname_color,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'nickname_left' ] * 2,
|
||||
( $poster_data[ 'data' ][ 'template_json' ][ 'nickname_top' ] ) * 2,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'nickname_width' ] * 2,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'nickname_height' ] * 2,
|
||||
0,
|
||||
$poster_data[ 'data' ][ 'template_json' ][ 'nickname_is_show' ]
|
||||
]
|
||||
],
|
||||
];
|
||||
|
||||
$back_ground = [
|
||||
[
|
||||
'action' => 'imageCopy', // 写入背景图
|
||||
'data' => [
|
||||
img($poster_data[ 'data' ][ 'background' ]),
|
||||
0,
|
||||
0,
|
||||
720,
|
||||
1280,
|
||||
'square',
|
||||
0,
|
||||
1
|
||||
]
|
||||
],
|
||||
];
|
||||
$option = array_merge($ground, $back_ground, $option, $member_option);
|
||||
$option_res = $poster->create($option);
|
||||
|
||||
if (is_array($option_res)) return $option_res;
|
||||
$pic_name = rand(10000, 99999);
|
||||
$res = $option_res->jpeg('upload/poster/goods', 'fenxiao' . $pic_name);
|
||||
if ($res[ 'code' ] < 0) {
|
||||
return $res;
|
||||
}
|
||||
|
||||
$upload = new Upload($this->site_id);
|
||||
$cloud_res = $upload->fileCloud($res[ 'data' ][ 'path' ]);
|
||||
return $cloud_res;
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除海报模板
|
||||
* @return mixed
|
||||
*/
|
||||
public function delPosterTemplate()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$template_ids = input('template_ids', '');
|
||||
$condition = [
|
||||
[ 'template_id', 'in', $template_ids ],
|
||||
[ 'site_id', '=', $this->site_id ],
|
||||
];
|
||||
$poster_template_model = new PosterTemplateModel();
|
||||
$res = $poster_template_model->deletePosterTemplate($condition);
|
||||
return $res;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑模板状态啊
|
||||
* @return array
|
||||
*/
|
||||
public function editstatus()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$template_id = input('template_id', 0);
|
||||
$template_status = input('template_status', 0);
|
||||
$condition = [
|
||||
[ 'template_id', 'in', $template_id ],
|
||||
[ 'site_id', '=', $this->site_id ]
|
||||
];
|
||||
$data = [ 'template_status' => $template_status ];
|
||||
$poster_template_model = new PosterTemplateModel();
|
||||
$res = $poster_template_model->editPosterTemplate($data, $condition);
|
||||
return $res;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
242
addon/fenxiao/shop/controller/Withdraw.php
Executable file
242
addon/fenxiao/shop/controller/Withdraw.php
Executable file
@@ -0,0 +1,242 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\fenxiao\shop\controller;
|
||||
|
||||
use addon\fenxiao\model\FenxiaoStat;
|
||||
use addon\fenxiao\model\FenxiaoWithdraw as FenxiaoWithdrawModel;
|
||||
use addon\wechatpay\model\Config as WechatPayConfig;
|
||||
use app\shop\controller\BaseShop;
|
||||
|
||||
/**
|
||||
* 分销等级管理
|
||||
*/
|
||||
class Withdraw extends BaseShop
|
||||
{
|
||||
|
||||
/**
|
||||
* 会员提现列表
|
||||
* @return mixed
|
||||
*/
|
||||
public function lists()
|
||||
{
|
||||
$model = new FenxiaoWithdrawModel();
|
||||
$transfer_type_list = $model->getTransferType($this->site_id);
|
||||
if (request()->isJson()) {
|
||||
$page = input('page', 1);
|
||||
$page_size = input('page_size', PAGE_LIST_ROWS);
|
||||
$withdraw_no = input('withdraw_no', '');
|
||||
$start_date = input('start_date', '');
|
||||
$end_date = input('end_date', '');
|
||||
$status = input('status', 'all');//提现状态
|
||||
$transfer_type = input('transfer_type', '');//提现转账方式
|
||||
$fenxiao_name = input('fenxiao_name', '');//提现转账方式
|
||||
|
||||
$payment_start_date = input('payment_start_date', '');
|
||||
$payment_end_date = input('payment_end_date', '');
|
||||
|
||||
$condition = [ [ 'fw.site_id', '=', $this->site_id ] ];
|
||||
if (!empty($withdraw_no)) {
|
||||
$condition[] = [ 'fw.withdraw_no', 'like', '%' . $withdraw_no . '%' ];
|
||||
}
|
||||
if (!empty($transfer_type)) {
|
||||
$condition[] = [ 'fw.transfer_type', '=', $transfer_type ];
|
||||
}
|
||||
if ($status != "all") {
|
||||
$condition[] = [ 'fw.status', '=', $status ];
|
||||
}
|
||||
if (!empty($fenxiao_name)) {
|
||||
$condition[] = [ 'm.nickname|fw.fenxiao_name', '=', $fenxiao_name ];
|
||||
}
|
||||
if ($start_date != '' && $end_date != '') {
|
||||
$condition[] = [ 'fw.create_time', 'between', [ strtotime($start_date), strtotime($end_date) ] ];
|
||||
} else if ($start_date != '' && $end_date == '') {
|
||||
$condition[] = [ 'fw.create_time', '>=', strtotime($start_date) ];
|
||||
} else if ($start_date == '' && $end_date != '') {
|
||||
$condition[] = [ 'fw.create_time', '<=', strtotime($end_date) ];
|
||||
}
|
||||
|
||||
if ($payment_start_date != '' && $payment_end_date != '') {
|
||||
$condition[] = [ 'fw.payment_time', 'between', [ strtotime($payment_start_date), strtotime($payment_end_date) ] ];
|
||||
} else if ($payment_start_date != '' && $payment_end_date == '') {
|
||||
$condition[] = [ 'fw.payment_time', '>=', strtotime($payment_start_date) ];
|
||||
} else if ($payment_start_date == '' && $payment_end_date != '') {
|
||||
$condition[] = [ 'fw.payment_time', '<=', strtotime($payment_end_date) ];
|
||||
}
|
||||
|
||||
$order = 'fw.create_time desc';
|
||||
$field = 'fw.id,fw.site_id,fw.withdraw_no,fw.member_id,fw.fenxiao_id,fw.fenxiao_name,fw.withdraw_type,fw.bank_name,fw.account_number,fw.realname,fw.mobile,fw.money,fw.withdraw_rate,
|
||||
fw.withdraw_rate_money,fw.real_money,fw.`status`,fw.remark,fw.create_time,fw.payment_time,fw.modify_time,fw.transfer_type,fw.transfer_name,fw.transfer_remark,fw.transfer_no,
|
||||
fw.transfer_account_no,fw.document,fw.audit_time,fw.refuse_reason,fw.applet_type,fw.fail_reason, m.headimg,m.nickname,m.mobile as member_mobile,m.headimg';
|
||||
$join = [
|
||||
[ 'member m', 'fw.member_id = m.member_id', 'left' ]
|
||||
];
|
||||
$list = $model->getFenxiaoWithdrawPageList($condition, $page, $page_size, $order, $field, 'fw', $join);
|
||||
|
||||
foreach ($list[ 'data' ][ 'list' ] as $k => $v) {
|
||||
$list[ 'data' ][ 'list' ][ $k ][ 'transfer_type_name' ] = $transfer_type_list[ $v[ 'transfer_type' ] ];
|
||||
}
|
||||
return $list;
|
||||
} else {
|
||||
$this->assign('transfer_type_list', $transfer_type_list);
|
||||
|
||||
$fenxiao_stat_model = new FenxiaoStat();
|
||||
$fenxiao_balance_sum = $fenxiao_stat_model->getFenxiaoAccountSum($this->site_id)[ 'data' ] ?? [];
|
||||
$this->assign('fenxiao_balance_sum', $fenxiao_balance_sum);
|
||||
|
||||
//提现状态
|
||||
$this->assign('status_list', $model->status);
|
||||
|
||||
$config_model = new WechatPayConfig();
|
||||
$config = $config_model->getPayConfig($this->site_id)[ 'data' ][ 'value' ];;
|
||||
$transfer_v3_type = $config['transfer_type'] == 'v3' && $config['transfer_v3_type'] == $config_model::TRANSFER_V3_TYPE_USER ;
|
||||
|
||||
$this->assign("transfer_v3_type",$transfer_v3_type);
|
||||
return $this->fetch("withdraw/lists");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 提现记录详情
|
||||
* @return mixed
|
||||
*/
|
||||
public function detail()
|
||||
{
|
||||
$fenxiao_withdraw_model = new FenxiaoWithdrawModel();
|
||||
$params = array (
|
||||
'id' => input('id', 0),
|
||||
'site_id' => $this->site_id
|
||||
);
|
||||
$detail = $fenxiao_withdraw_model->getFenxiaoWithdrawDetail($params)[ 'data' ] ?? [];
|
||||
if (empty($detail))
|
||||
$this->error('找不到提现账户记录');
|
||||
|
||||
$this->assign('info', $detail);
|
||||
return $this->fetch('withdraw/detail');
|
||||
}
|
||||
|
||||
/**
|
||||
* 同意
|
||||
* @return array
|
||||
*/
|
||||
public function agree()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$id = input('id', 0);
|
||||
$fenxiao_withdraw_model = new FenxiaoWithdrawModel();
|
||||
$params = array (
|
||||
'site_id' => $this->site_id,
|
||||
"id" => $id,
|
||||
);
|
||||
$result = $fenxiao_withdraw_model->agree($params);
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 拒绝
|
||||
* @return array
|
||||
*/
|
||||
public function refuse()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$id = input('id', 0);
|
||||
$refuse_reason = input('refuse_reason', '');
|
||||
$fenxiao_withdraw_model = new FenxiaoWithdrawModel();
|
||||
$data = array (
|
||||
"refuse_reason" => $refuse_reason,
|
||||
'site_id' => $this->site_id,
|
||||
'id' => $id
|
||||
);
|
||||
$result = $fenxiao_withdraw_model->refuse($data);
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 转账
|
||||
*/
|
||||
public function transferFinish()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$id = input('id', 0);
|
||||
$certificate = input('certificate', '');
|
||||
$certificate_remark = input('certificate_remark', '');
|
||||
$fenxiao_withdraw_model = new FenxiaoWithdrawModel();
|
||||
$data = array (
|
||||
"id" => $id,
|
||||
"site_id" => $this->site_id,
|
||||
"certificate" => $certificate,
|
||||
"certificate_remark" => $certificate_remark,
|
||||
);
|
||||
$result = $fenxiao_withdraw_model->transferFinish($data);
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 转账
|
||||
*/
|
||||
public function transfer()
|
||||
{
|
||||
if (request()->isJson()) {
|
||||
$id = input('id', 0);
|
||||
$fenxiao_withdraw_model = new FenxiaoWithdrawModel();
|
||||
$result = $fenxiao_withdraw_model->transfer([ 'id' => $id, 'site_id' => $this->site_id ]);
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
public function export()
|
||||
{
|
||||
$fenxiao_withdraw_model = new FenxiaoWithdrawModel();
|
||||
|
||||
$withdraw_no = input('withdraw_no', '');
|
||||
$start_date = input('start_date', '');
|
||||
$end_date = input('end_date', '');
|
||||
$status = input('status', 'all');//提现状态
|
||||
$transfer_type = input('transfer_type', '');//提现转账方式
|
||||
$fenxiao_name = input('fenxiao_name', '');//提现转账方式
|
||||
|
||||
$payment_start_date = input('payment_start_date', '');
|
||||
$payment_end_date = input('payment_end_date', '');
|
||||
|
||||
$condition = [ [ 'site_id', '=', $this->site_id ] ];
|
||||
if (!empty($withdraw_no)) {
|
||||
$condition[] = [ 'withdraw_no', 'like', '%' . $withdraw_no . '%' ];
|
||||
}
|
||||
if (!empty($transfer_type)) {
|
||||
$condition[] = [ 'transfer_type', '=', $transfer_type ];
|
||||
}
|
||||
if ($status != "all") {
|
||||
$condition[] = [ 'status', '=', $status ];
|
||||
}
|
||||
if (!empty($fenxiao_name)) {
|
||||
$condition[] = [ 'fenxiao_name', '=', $fenxiao_name ];
|
||||
}
|
||||
if ($start_date != '' && $end_date != '') {
|
||||
$condition[] = [ 'create_time', 'between', [ strtotime($start_date), strtotime($end_date) ] ];
|
||||
} else if ($start_date != '' && $end_date == '') {
|
||||
$condition[] = [ 'create_time', '>=', strtotime($start_date) ];
|
||||
} else if ($start_date == '' && $end_date != '') {
|
||||
$condition[] = [ 'create_time', '<=', strtotime($end_date) ];
|
||||
}
|
||||
|
||||
if ($payment_start_date != '' && $payment_end_date != '') {
|
||||
$condition[] = [ 'payment_time', 'between', [ strtotime($payment_start_date), strtotime($payment_end_date) ] ];
|
||||
} else if ($payment_start_date != '' && $payment_end_date == '') {
|
||||
$condition[] = [ 'payment_time', '>=', strtotime($payment_start_date) ];
|
||||
} else if ($payment_start_date == '' && $payment_end_date != '') {
|
||||
$condition[] = [ 'payment_time', '<=', strtotime($payment_end_date) ];
|
||||
}
|
||||
$order = 'create_time desc';
|
||||
$fenxiao_withdraw_model->exportFenxiaoWithdraw($condition, $order, $this->site_id);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user