From 608194803ab197a2f1191dc89f58005a58265812 Mon Sep 17 00:00:00 2001 From: wuhui_zzw <1760308791@qq.com> Date: Tue, 26 Mar 2024 09:35:34 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E6=96=B0=E8=B4=A6?= =?UTF-8?q?=E5=8F=B7=E4=B8=8D=E8=83=BD=E4=B8=8B=E5=8D=95=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=20=E4=BF=AE=E6=94=B9=EF=BC=9A=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=96=87=E5=AD=97=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/models/goods/Privilege.php | 4 +- .../controllers/IncomeWithdrawController.php | 191 +++++++++--------- plugins/rebate/src/PluginApplication.php | 4 +- 3 files changed, 100 insertions(+), 99 deletions(-) diff --git a/app/common/models/goods/Privilege.php b/app/common/models/goods/Privilege.php index d1257def..5a7251b3 100644 --- a/app/common/models/goods/Privilege.php +++ b/app/common/models/goods/Privilege.php @@ -604,12 +604,12 @@ class Privilege extends BaseModel if($goodsRebate->is_open == 1){ // 判断:当前返利记录是否存在 $rebateInfo = Rebate::uniacid() - ->selectRaw('max(reality_thaw_time) as last_reality_thaw_time,max(status) as max_status') + ->selectRaw('max(id) as max_id,max(reality_thaw_time) as last_reality_thaw_time,max(status) as max_status') ->where('uid', $member->uid) ->where('goods_id', $this->goods_id) ->first(); // 不存在返利记录,从未购买 允许购买 - if(empty($rebateInfo)) return; + if((int)$rebateInfo->max_id <= 0) return; $rebateInfo = $rebateInfo->toArray(); // 判断:最大状态是否为1或者2 不是则失效,允许购买 if(!in_array($rebateInfo['max_status'],[0,1,2])) return; diff --git a/app/frontend/modules/finance/controllers/IncomeWithdrawController.php b/app/frontend/modules/finance/controllers/IncomeWithdrawController.php index 06e329c9..aabd6ceb 100644 --- a/app/frontend/modules/finance/controllers/IncomeWithdrawController.php +++ b/app/frontend/modules/finance/controllers/IncomeWithdrawController.php @@ -182,101 +182,102 @@ class IncomeWithdrawController extends ApiController $amountList = []; // 获取佣金信息 - if($income['type'] == 'teamDividend'){ - // 普通经销商佣金 - $amountList = Income::uniacid() - ->select(['yz_member_income.id','yz_member_income.amount']) - ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') - ->where('yz_member_income.incometable_type', $income['class']) - ->where('yz_member_income.status', Income::STATUS_INITIAL) - ->where('yz_member_income.member_id', $uid) - ->whereNotIn('yz_team_dividend.type', [4,5,6]) - ->get()->toArray(); - } - else if($income['type'] == 'teamDividendCultural'){ - // 文创经销商补贴 仅查询一个月前的未提现金额 - $startTime = strtotime(date("Y-m-1"));// 本月1号0点 - $amountList = Income::uniacid() - ->select(['yz_member_income.id','yz_member_income.amount']) - ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') - ->where('yz_member_income.incometable_type', $income['class']) - ->where('yz_member_income.status', Income::STATUS_INITIAL) - ->where('yz_member_income.member_id', $uid) - ->where('yz_member_income.created_at', '<',$startTime) - ->whereIn('yz_team_dividend.type', [4,5]) - ->get()->toArray(); - } - else if($income['type'] == 'ecological_services'){ - // 生态服务 - $amountList = Income::uniacid() - ->select(['yz_member_income.id','yz_member_income.amount']) - ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') - ->where('yz_member_income.incometable_type', $income['class']) - ->where('yz_member_income.status', Income::STATUS_INITIAL) - ->where('yz_member_income.member_id', $uid) - ->where('yz_team_dividend.type',6) - ->get()->toArray(); - } - else if($income['type'] == 'ecological_construction'){ - // 生态建设 经销商受益 - // $startTime = strtotime(date("Y-m-1"));// 本月1号0点 - $amountList = Income::uniacid() - ->select(['yz_member_income.id','yz_member_income.amount']) - ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') - ->where('yz_member_income.incometable_type', $income['class']) - ->where('yz_member_income.status', Income::STATUS_INITIAL) - ->where('yz_member_income.member_id', $uid) - // ->where('yz_member_income.created_at', '<',$startTime) - ->where('yz_team_dividend.type', 4) - ->get()->toArray(); - } - else if($income['type'] == 'ecological_contribution'){ - // 生态贡献 - $amountList = Income::uniacid() - ->select(['yz_member_income.id','yz_member_income.amount']) - ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') - ->where('yz_member_income.incometable_type', $income['class']) - ->where('yz_member_income.status', Income::STATUS_INITIAL) - ->where('yz_member_income.member_id', $uid) - ->where('yz_team_dividend.type', 5) - ->get()->toArray(); - } - else if($income['type'] == 'shaerholderDividend'){ - // 股东分红 - 权重分红 - $amountList = ShareholderDividendModel::getIncome((int)$uid,(int)0,'undrawn') - ->select(['yz_member_income.id','yz_member_income.amount']) - ->get() - ->toArray(); - } - else if($income['type'] == 'weight_income'){ - // 股东分红 - 加权收益 合伙人受益 - $amountList = ShareholderDividendModel::getIncome((int)$uid,(int)1,'undrawn') - ->select(['yz_member_income.id','yz_member_income.amount']) - ->get()->toArray(); - } - else if($income['type'] == 'commission'){ - // 分销商分红 - 分销商分红 - $amountList = CommissionOrder::getIncome((int)$uid,(int)0,'undrawn') - ->select(['yz_member_income.id','yz_member_income.amount']) - ->get()->toArray(); - } - else if($income['type'] == 'commission_share_reward'){ - // 分销商分红 - 销售受益( todo 修改:2023-12-15 提取分销商直推奖) - $amountList = CommissionOrder::getIncome((int)$uid,(int)1,'undrawn',1) - ->select(['yz_member_income.id','yz_member_income.amount']) - ->get()->toArray(); - } - else if($income['type'] == 'commission_service_reward'){ - // 分销商分红 - 服务受益( todo 修改:2023-12-15 提取分销商间推奖) - $amountList = CommissionOrder::getIncome((int)$uid,(int)1,'undrawn',2) - ->select(['yz_member_income.id','yz_member_income.amount']) - // ->where('yz_member_income.created_at', '<',$startTime) - ->get() - ->toArray(); - } - else{ - $amountList = $this->getIncomeModel()->select(['id','amount'])->where('incometable_type', $income['class'])->get()->toArray(); - } + // if($income['type'] == 'teamDividend'){ + // // 普通经销商佣金 + // $amountList = Income::uniacid() + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') + // ->where('yz_member_income.incometable_type', $income['class']) + // ->where('yz_member_income.status', Income::STATUS_INITIAL) + // ->where('yz_member_income.member_id', $uid) + // ->whereNotIn('yz_team_dividend.type', [4,5,6]) + // ->get()->toArray(); + // } + // else if($income['type'] == 'teamDividendCultural'){ + // // 文创经销商补贴 仅查询一个月前的未提现金额 + // $startTime = strtotime(date("Y-m-1"));// 本月1号0点 + // $amountList = Income::uniacid() + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') + // ->where('yz_member_income.incometable_type', $income['class']) + // ->where('yz_member_income.status', Income::STATUS_INITIAL) + // ->where('yz_member_income.member_id', $uid) + // ->where('yz_member_income.created_at', '<',$startTime) + // ->whereIn('yz_team_dividend.type', [4,5]) + // ->get()->toArray(); + // } + // else if($income['type'] == 'ecological_services'){ + // // 生态服务 + // $amountList = Income::uniacid() + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') + // ->where('yz_member_income.incometable_type', $income['class']) + // ->where('yz_member_income.status', Income::STATUS_INITIAL) + // ->where('yz_member_income.member_id', $uid) + // ->where('yz_team_dividend.type',6) + // ->get()->toArray(); + // } + // else if($income['type'] == 'ecological_construction'){ + // // 生态建设 经销商受益 + // // $startTime = strtotime(date("Y-m-1"));// 本月1号0点 + // $amountList = Income::uniacid() + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') + // ->where('yz_member_income.incometable_type', $income['class']) + // ->where('yz_member_income.status', Income::STATUS_INITIAL) + // ->where('yz_member_income.member_id', $uid) + // // ->where('yz_member_income.created_at', '<',$startTime) + // ->where('yz_team_dividend.type', 4) + // ->get()->toArray(); + // } + // else if($income['type'] == 'ecological_contribution'){ + // // 生态贡献 + // $amountList = Income::uniacid() + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->leftJoin('yz_team_dividend','yz_team_dividend.id','yz_member_income.incometable_id') + // ->where('yz_member_income.incometable_type', $income['class']) + // ->where('yz_member_income.status', Income::STATUS_INITIAL) + // ->where('yz_member_income.member_id', $uid) + // ->where('yz_team_dividend.type', 5) + // ->get()->toArray(); + // } + // else if($income['type'] == 'shaerholderDividend'){ + // // 股东分红 - 权重分红 + // $amountList = ShareholderDividendModel::getIncome((int)$uid,(int)0,'undrawn') + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->get() + // ->toArray(); + // } + // else if($income['type'] == 'weight_income'){ + // // 股东分红 - 加权收益 合伙人受益 + // $amountList = ShareholderDividendModel::getIncome((int)$uid,(int)1,'undrawn') + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->get()->toArray(); + // } + // else if($income['type'] == 'commission'){ + // // 分销商分红 - 分销商分红 + // $amountList = CommissionOrder::getIncome((int)$uid,(int)0,'undrawn') + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->get()->toArray(); + // } + // else if($income['type'] == 'commission_share_reward'){ + // // 分销商分红 - 销售受益( todo 修改:2023-12-15 提取分销商直推奖) + // $amountList = CommissionOrder::getIncome((int)$uid,(int)1,'undrawn',1) + // ->select(['yz_member_income.id','yz_member_income.amount']) + // ->get()->toArray(); + // } + // else if($income['type'] == 'commission_service_reward'){ + // // 分销商分红 - 服务受益( todo 修改:2023-12-15 提取分销商间推奖) + // $amountList = CommissionOrder::getIncome((int)$uid,(int)1,'undrawn',2) + // ->select(['yz_member_income.id','yz_member_income.amount']) + // // ->where('yz_member_income.created_at', '<',$startTime) + // ->get() + // ->toArray(); + // } + // else{ + // $amountList = $this->getIncomeModel()->select(['id','amount'])->where('incometable_type', $income['class'])->get()->toArray(); + // } + $amountList = $this->getIncomeModel()->select(['id','amount'])->where('incometable_type', $income['class'])->get()->toArray(); // 获取实际提现金额 计算相关手续费等内容 处理冻结金额等禁止提现金额 $this->withdraw_amounts = sprintf("%.2f",array_sum(array_column($amountList,'amount'))); $withdraw_amounts_ids = implode(',',array_column($amountList,'id')); diff --git a/plugins/rebate/src/PluginApplication.php b/plugins/rebate/src/PluginApplication.php index 4aee08cb..ac31d414 100644 --- a/plugins/rebate/src/PluginApplication.php +++ b/plugins/rebate/src/PluginApplication.php @@ -97,9 +97,9 @@ class PluginApplication extends \app\common\services\PluginApplication{ public function getIncomeItems(){ return [ 'rebate' => [ - 'title' => '消费返利', + 'title' => '养殖收益', 'type' => 'rebate', - 'type_name' => '消费返利', + 'type_name' => '养殖收益', 'class' => 'Yunshop\Rebate\models\Rebate', ] ];