|
@@ -122,16 +122,16 @@ class Demo extends Api
|
|
|
$invite_count = Db::name('offline_shop')->where('invite_id',$user_id)->count();
|
|
|
|
|
|
//我上个月直推线下商家的总数量
|
|
|
- $invite_count_mon = Db::name('offline_shop')->where('invite_id',$user_id)->whereTime('create_time','last month')->count();
|
|
|
+ $invite_count_mon = Db::name('offline_shop')->where('invite_id',$user_id)->whereTime('back_time','last month')->count();
|
|
|
|
|
|
//我的个人业绩。我所有直推线下商家的3-20%的让利总额
|
|
|
$invite_amount = Db::name('bill')->where('shop_invite_id',$user_id)->where('table_name','offline_shop_order')->where('back_status','neq',0)
|
|
|
- ->whereTime('createtime','last month')->sum('back_amount');
|
|
|
+ ->whereTime('back_time','last month')->sum('back_amount');
|
|
|
|
|
|
//我团队业绩
|
|
|
$invite_uids = $this->get_all_down_uids($user_id);
|
|
|
$invite_amount_tuandui = Db::name('bill')->where('shop_invite_id','IN',$invite_uids)->where('table_name','offline_shop_order')->where('back_status','neq',0)
|
|
|
- ->whereTime('createtime','last month')->sum('back_amount');
|
|
|
+ ->whereTime('back_time','last month')->sum('back_amount');
|
|
|
|
|
|
//dd($last_month,$invite_count,$invite_count_mon,$invite_amount,$invite_amount_tuandui);
|
|
|
|
|
@@ -194,10 +194,88 @@ class Demo extends Api
|
|
|
|
|
|
}
|
|
|
|
|
|
+ //获取我的团队用户ids
|
|
|
private function get_all_down_uids($user_id){
|
|
|
return $user_id;
|
|
|
}
|
|
|
|
|
|
+ //业务员 a%评分,b%业绩加权
|
|
|
+ public function yewuyuan_ab(){
|
|
|
+
|
|
|
+ //上个月的公司分红1% 。酒店,餐厅,老年大学活动,线下,商城,所有让利总额,作为基数
|
|
|
+ $back_amount_sum = Db::name('bill')->whereTime('back_time','last month')->where('back_status','neq',0)->sum('back_amount');
|
|
|
+ if($back_amount_sum <= 0){
|
|
|
+ echo '基数为0结束';exit;
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ //dump($back_amount_sum);
|
|
|
+
|
|
|
+ $yingxiao_level = Db::name('yingxiao_level')->where('id','IN','1,2')->column('id,fenhong,pingfen,jiaquan');
|
|
|
+
|
|
|
+ //百分之一
|
|
|
+ $base_1 = bcdiv(bcmul($back_amount_sum,$yingxiao_level[1]['fenhong'],4),100,4);
|
|
|
+ $base_2 = bcdiv(bcmul($back_amount_sum,$yingxiao_level[2]['fenhong'],4),100,4);
|
|
|
+
|
|
|
+ //两个ab基数
|
|
|
+ $back_amount_a1 = bcdiv(bcmul($base_1,$yingxiao_level[1]['pingfen'],4),100,4);
|
|
|
+ $back_amount_b1 = bcdiv(bcmul($base_1,$yingxiao_level[1]['jiaquan'],4),100,4);
|
|
|
+
|
|
|
+ $back_amount_a2 = bcdiv(bcmul($base_2,$yingxiao_level[2]['pingfen'],4),100,4);
|
|
|
+ $back_amount_b2 = bcdiv(bcmul($base_2,$yingxiao_level[2]['jiaquan'],4),100,4);
|
|
|
+
|
|
|
+ //dd($base_1,$base_2,$back_amount_a1,$back_amount_b1,$back_amount_a2,$back_amount_b2);
|
|
|
+
|
|
|
+ //两个ab奖
|
|
|
+ $last_month = date('Ym',strtotime(date('Y-m-01')) - 86400);
|
|
|
+
|
|
|
+ $redis_key_a1 = $last_month . '_yingxiao_a_1';
|
|
|
+ $redis_key_b1 = $last_month . '_yingxiao_b_1';
|
|
|
+
|
|
|
+ $redis_key_a2 = $last_month . '_yingxiao_a_2';
|
|
|
+ $redis_key_b2 = $last_month . '_yingxiao_b_2';
|
|
|
+
|
|
|
+ $a1_list = RedisUtil::getInstance($redis_key_a1)->LRANGE();
|
|
|
+ $b1_list = RedisUtil::getInstance($redis_key_b1)->LRANGE();
|
|
|
+
|
|
|
+ $a2_list = RedisUtil::getInstance($redis_key_a2)->LRANGE();
|
|
|
+ $b2_list = RedisUtil::getInstance($redis_key_b2)->LRANGE();
|
|
|
+
|
|
|
+ //dd($redis_key_a1,$redis_key_b1,$a1_list,$b1_list);
|
|
|
+
|
|
|
+ if(!empty($a1_list)){
|
|
|
+ $a1_price = bcdiv($back_amount_a1,count($a1_list),2);
|
|
|
+ foreach($a1_list as $a1){
|
|
|
+ dump($a1);
|
|
|
+ dump($a1_price);
|
|
|
+ //给用户id:$a1发钱
|
|
|
+//
|
|
|
+ }
|
|
|
+ }
|
|
|
+ dump($b1_list);
|
|
|
+ if(!empty($b1_list)){
|
|
|
+ dump(array_column($b1_list,'invite_amount_tuandui'));
|
|
|
+ $b1_total = array_sum(array_column($b1_list,'invite_amount_tuandui'));
|
|
|
+ dump($b1_total);
|
|
|
+ foreach($b1_list as $b1){
|
|
|
+// dump($b1['user_id']);
|
|
|
+// bcmul($back_amount_b1,bcdiv($b1['invite_amount_tuandui'],$b1_total,4),2);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if(!empty($a2_list)){
|
|
|
+ $a2_price = bcdiv($back_amount_a2,count($a2_list),2);
|
|
|
+ foreach($a2_list as $a2){
|
|
|
+ dump($a2);
|
|
|
+ dump($a2_price);
|
|
|
+ //给用户id:$a2发钱
|
|
|
+//
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
//每月初执行,跑代理辅助表,把上个月的数据全部推送到 代理队列
|
|
|
public function task_agent(){
|
|
|
$last_month = date('Ym',strtotime(date('Y-m-01')) - 86400); //上个月一号,202502
|