獎金制度lt rt 實現方法

2022-09-03 17:06:17 字數 3087 閱讀 7500

mysql 會員表字段 parent_id lt rt level  預設lt=0 rt=1 level=1

會員註冊插入會員表

$userinfo = db::name('user')

->where('userkey',$pid)

->field('parent_id,id,userkey,user_id,lt,rt,level')

->find();

$rt = $userinfo['rt'];

$lt = $userinfo['lt'];

$level = $userinfo['level'];

db::name('user')->where('lt','>=',$rt)->setinc('lt', 2);

db::name('user')->where('rt','>=',$rt)->setinc('rt', 2);

db::name('user')->where('id',$userid)->update(['lt' => $rt,'rt' => $rt+1,'level' => $level+1]);

公升級

//查詢所有使用者 資訊

$assets = 0;//團隊資產

$p_count= 0;//直推有效使用者數量

//查詢所有使用者

$userdate = db::name('user')->field('user_id,id,parent_id,lt,rt,level,uplevel')->select();

foreach ($userdate as $key => $value)

//公升級操作

if($assets >= 200000)else

} //降級操作

if($p_count < 10)

}

}//會員公升級 大咖 大神的公升級操作

$df_user = db::name('user')->where('uplevel = 1')->field('id,parent_id,user_id')->select();//查詢所有大戶 使用者

foreach ($df_user as $k => $v)

}//大神 公升級操作

$dk_user = db::name('user')->where('uplevel = 2')->field('id,parent_id,user_id')->select();//查詢所有大咖 使用者

foreach ($dk_user as $k => $v)

}

控制獎金發放

//$date = date('y-m-d');

$fj_time = bcadd(strtotime($date),23*3600,0);

$time = time();

if($time == $fj_time)

//獎金比例

$bonusproportion = array(1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1);

$layered = explode(",", $param['layered']);

if (is_array($layered))

//查詢所有智慧型狗 賬號

$where['a.open'] = 1;

$dog_account = db::table('ryw_intelligent_dog')

->alias('a')

->join('currency b','a.currency_id = b.id')

->join('user c','a.user_id = c.user_id')

->where($where)

->field('a.*,b.currency_mark,c.parent_id')

->select();

foreach ($dog_account as $k => $v)else

$parent_id = $v['parent_id'];

// 發放收益

$sum_money = bcmul($currency_price,$v['count'],4);//投入 智慧型狗的幣種資產

$profit = bcmul($sum_money,$earningsratio,4); // $earningsratio 收益比例 該智慧型狗賬號 獲取收益總額

db::starttrans();

try$res = db::name('user')->where('id', $parent_id)->field('parent_id,id,user_id,uplevel')->find();//推薦人資訊

$parent_id = $res['parent_id'];

$uuid = $res['id']; //推薦人id

$u_user_id = $res['user_id'];

$uplevel = $res['uplevel'];//等級資訊

//統計上級直推人數

$count = db::name('user')->where('parent_id', $uuid)->count();

$tg_profit = $profit * $bonusproportion[$i]; //上級收益

if($count < $i+1)else

if($uplevel == 2 && $u > 0)else

$datas['user_id'] = $u_user_id;

$datas['type'] = 3;

$datas['earning'] = $gg_profit;

$datas['add_date'] = $time;

$datas['from_user'] = $user_id;

$datas['status'] = 0;

$datas['from_account_id'] = $from_account_id;

db::name('prizerecord')->insert($datas);

}if($uplevel == 1 && $u > 0)

$i++;

}}

研發軟體專案獎金發放制度

研發軟體專案獎金發放制度 第一條為調動軟體研發人員的工作積極性,提高軟體的開發質量和開發效率,促進研發人員深入市場,及時跟蹤產品的銷售情況,特制定此制度。第二條本制度適用於從事軟體專案開發的人員。第三條根據 研發中心軟體開發過程規範 的要求立項的專案,在專案完成,專案結項申請書 通過批准後,參與專案...

Python實現獎金計算兩種方法的比較

應發獎金計算 簡述 企業發放的獎金根據利潤提成。利潤 profit 低於或等於10萬元時,獎金可提10 利潤高於10萬元,低於20萬元時,低於10萬元的部分按10 提成,高於10萬元的部分,可提成7.5 20萬到40萬之間時,高於20萬元的部分,可提成5 40萬到60萬之間時高於40萬元的部分,可提...

Python實現企業發放獎金總數

企業發放的獎金根據利潤提成。利潤 i 低於或等於10萬元時,獎金可提10 利潤高於10萬元,低於20萬元時,低於10萬元的部分按10 提成,高於10萬元的部分,可提成7.5 20萬到40萬之間時,高於20萬元的部分,可提成5 40萬到60萬之間時高於40萬元的部分,可提成3 60萬到100萬之間時,...