@ -45,6 +45,31 @@ class MarketPercentageController extends ThinkController
->where($map)
->find();
$this->assign("sum",$sum);
foreach ($data as $key => $value) {
if ($value['company_belong'] == 0) {
$data[$key]['company_belong'] = '内团';
} else if ($value['company_belong'] == 1) {
$data[$key]['company_belong'] = '外团';
} else if ($value['company_belong'] == 2) {
$data[$key]['company_belong'] = '外团-分发联盟';
} else {
$data[$key]['company_belong'] = '无';
}
if ($value['develop_type'] == 1) {
$data[$key]['develop_type'] = '自主开发';
} else if ($value['develop_type'] == 2) {
$data[$key]['develop_type'] = '自主开发及维护';
} else if ($value['develop_type'] == 3) {
$data[$key]['develop_type'] = '只维护';
} else {
$data[$key]['develop_type'] = '无';
}
}
if ($_REQUEST['export']) {
$title = ['pay_time' => '时间',
@ -72,31 +97,6 @@ class MarketPercentageController extends ThinkController
data2csv($data,'市场结算管理',$title);
}
$this->assign("sum",$sum);
foreach ($data as $key => $value) {
if ($value['company_belong'] == 0) {
$data[$key]['company_belong'] = '内团';
} else if ($value['company_belong'] == 1) {
$data[$key]['company_belong'] = '外团';
} else if ($value['company_belong'] == 2) {
$data[$key]['company_belong'] = '外团-分发联盟';
} else {
$data[$key]['company_belong'] = '无';
}
if ($value['develop_type'] == 1) {
$data[$key]['develop_type'] = '自主开发';
} else if ($value['develop_type'] == 2) {
$data[$key]['develop_type'] = '自主开发及维护';
} else if ($value['develop_type'] == 3) {
$data[$key]['develop_type'] = '只维护';
} else {
$data[$key]['develop_type'] = '无';
}
}
$count = M("settleup_marketorder","tab_")
->where($map)
->group("promote_id,game_name,pay_time")
@ -371,51 +371,6 @@ class MarketPercentageController extends ThinkController
->select();
}
// $all_data = M("settleup_marketorder","tab_")
// ->field("tab_settleup_marketorder.id,pay_time,promote_account,company_belong,member.real_name,develop_type,game_name,
// sum(pay_amount) pay_amount,sum(company_profit) company_profit,group_id,market_percentage,nickname,admin_id,
// sum(if((develop_type = 1 or develop_type = 2), pay_amount, 0)) performance_revenue,sum(if(develop_type = 3, pay_amount, 0)) appraisal_bonuses")
// ->join("left join sys_auth_group_access access on admin_id=access.uid")
// ->join("left join sys_auth_group auth on access.group_id=auth.id")
// ->join("left join sys_member member on access.uid=member.uid")
// ->where(['group_id'=>['in','11,12,21']])
// ->group("admin_id,pay_time")
// ->select();
//
// $wait_amount = [];
// foreach ($all_data as $key => $value) {
//
// $sum_amount = $value['performance_revenue'] + $value['appraisal_bonuses'];
//
// $market_percentage = json_decode($value['market_percentage'],true);
// //业绩提成
// $all_data[$key]['performance_commission'] =
// number_format($value['company_profit']*($market_percentage['develop_commission_ratio']/100) +
// $value['company_profit']*($market_percentage['maintain_commission_ratio']/100), 2, '.', '');
//
// $sum_amount < $market_percentage['performance_revenue'] ? ($all_data[$key]['performance_commission'] = 0):"";
// //绩效考核奖金
// $all_data[$key]['achievement_bonus'] =
// number_format($value['company_profit']*($market_percentage['appraisal_bonuses_ratio']/100) +
// $value['company_profit']*($market_percentage['maintain_appraisal_bonuses_ratio']/100), 2, '.', '');
// $sum_amount < $market_percentage['appraisal_bonuses'] ? ($all_data[$key]['achievement_bonus'] = 0):"";
// //总提成
// $all_data[$key]['commission'] = number_format($all_data[$key]['performance_commission']+$all_data[$key]['achievement_bonus'], 2, '.', '');
// //应发金额
// $all_data[$key]['extend_commission'] =
// number_format($all_data[$key]['performance_commission'] * ($market_percentage['performance_monthly_ratio']/100)+
// $all_data[$key]['achievement_bonus'] * ($market_percentage['month_bonus_ratio']/100), 2, '.', '');
//
// //待发金额
// $all_data[$key]['wait_commission'] = number_format($all_data[$key]['commission'] - ( $all_data[$key]['performance_commission'] * ($market_percentage['performance_monthly_ratio']/100)+
// $all_data[$key]['achievement_bonus'] * ($market_percentage['month_bonus_ratio']/100) ), 2, '.', '');
// $wait_amount[$value['admin_id'].$value['pay_time']] = $all_data[$key]['wait_commission'];
//
// }
// dump($data);die();
$all_data = [];
$count = M("settleup_marketorder","tab_")
->field("pay_time,promote_account,company_belong,tab_settleup_marketorder.real_name,develop_type,game_name,
sum(pay_amount) pay_amount,sum(company_profit) company_profit,group_id,market_percentage,nickname")
@ -484,35 +439,23 @@ class MarketPercentageController extends ThinkController
if ($market_percentage['time'] == 1) {
if ($month == '07') {
// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].$yes.'-'.'01'] + $wait_amount[$value['admin_id'].$yes.'-'.'02'] + $wait_amount[$value['admin_id'].$yes.'-'.'03'];
$data[$key]['is_send_use'] = 1;
} elseif($month == '10') {
// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].$yes.'-'.'04'] + $wait_amount[$value['admin_id'].$yes.'-'.'05'] + $wait_amount[$value['admin_id'].$yes.'-'.'06'];
$data[$key]['is_send_use'] = 1;
} elseif($month == '04') {
// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].($yes-1).'-'.'10'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'11'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'12'];
$data[$key]['is_send_use'] = 1;
} elseif($month == '01') {
// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].($yes-1).'-'.'07'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'08'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'09'];
$data[$key]['is_send_use'] = 1;
}
} elseif($market_percentage['time'] == 2) {
// dump($wait_amount);die();
if ($month == '07') {
// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].$yes.'-'.'01'] + $wait_amount[$value['admin_id'].$yes.'-'.'02'] + $wait_amount[$value['admin_id'].$yes.'-'.'03'] +
// $wait_amount[$value['admin_id'].$yes.'-'.'04'] + $wait_amount[$value['admin_id'].$yes.'-'.'05'] + $wait_amount[$value['admin_id'].$yes.'-'.'06'];
$data[$key]['is_send_use'] = 1;
} elseif($month == '01') {
// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].($yes-1).'-'.'07'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'08'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'09'] +
// $wait_amount[$value['admin_id'].($yes-1).'-'.'10'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'11'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'12'];
$data[$key]['is_send_use'] = 1;
}
} elseif($market_percentage['time'] == 3) {
if ($month == '01') {
// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '01'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '02'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '03'] +
// $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '04'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '05'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '06'] +
// $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '07'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '08'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '09'] +
// $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '10'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '11'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '12'];
$data[$key]['is_send_use'] = 1;
}
} else {
@ -524,37 +467,9 @@ class MarketPercentageController extends ThinkController
$data[$key]['achievement_bonus'] * ($market_percentage['month_bonus_ratio']/100)), 4, '.', ''),0,-2);
$sum['wait_commission'] += $data[$key]['wait_commission'];
// $wait_amount[$value['admin_id'].$value['pay_time']] = $data[$key]['wait_commission'];
// if ($market_percentage['remain_time'] == 1) {
// if ($month == '07') {
// $data[$key]['wait_commission'] += $wait_amount[$value['admin_id'].$yes.'-'.'04'] + $wait_amount[$value['admin_id'].$yes.'-'.'05'] + $wait_amount[$value['admin_id'].$yes.'-'.'06'];
// } elseif($month == '10') {
// $data[$key]['wait_commission'] += $wait_amount[$value['admin_id'].$yes.'-'.'07'] + $wait_amount[$value['admin_id'].$yes.'-'.'08'] + $wait_amount[$value['admin_id'].$yes.'-'.'09'];
// } elseif($month == '04') {
// $data[$key]['wait_commission'] += $wait_amount[$value['admin_id'].$yes.'-'.'01'] + $wait_amount[$value['admin_id'].$yes.'-'.'02'] + $wait_amount[$value['admin_id'].$yes.'-'.'03'];
// } elseif($month == '01') {
// $data[$key]['wait_commission'] += $wait_amount[$value['admin_id'].($yes-1).'-'.'10'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'11'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'12'];
// }
//// } elseif($market_percentage['remain_time'] == 2) {
//// if ($month == '07') {
//// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].$yes.'-'.'01'] + $wait_amount[$value['admin_id'].$yes.'-'.'02'] + $wait_amount[$value['admin_id'].$yes.'-'.'03'] +
//// $wait_amount[$value['admin_id'].$yes.'-'.'04'] + $wait_amount[$value['admin_id'].$yes.'-'.'05'] + $wait_amount[$value['admin_id'].$yes.'-'.'06'];
//// } elseif($month == '01') {
//// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].($yes-1).'-'.'07'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'08'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'09'] +
//// $wait_amount[$value['admin_id'].($yes-1).'-'.'10'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'11'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'12'];
//// }
//// } elseif($market_percentage['remain_time'] == 3) {
//// $data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].($yes-1).'-'.'01'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'02'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'03'] +
//// $wait_amount[$value['admin_id'].($yes-1).'-'.'04'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'05'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'06'] +
//// $wait_amount[$value['admin_id'].($yes-1).'-'.'07'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'08'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'09'] +
//// $wait_amount[$value['admin_id'].($yes-1).'-'.'10'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'11'] + $wait_amount[$value['admin_id'].($yes-1).'-'.'12'];
// }
// $sum['wait_commission'] += $data[$key]['wait_commission'];
$sum['company_profit'] += $value['company_profit'];
}
// dump($data);die();
$this->assign("sum",$sum);
if ($_REQUEST['export']) {
@ -569,8 +484,8 @@ class MarketPercentageController extends ThinkController
'performance_commission' => '业绩提成',
'achievement_bonus' => '绩效考核奖金',
'commission' => '总提成',
'extend_commission' => '当月应发金额 ',
'wait_commission' => '剩余金额 ',
'extend_commission' => '本月发放 ',
'wait_commission' => '本月未发 ',
'is_send'=>'剩余金额发放状态'];
$data = array_merge($data,[$sum]);
@ -586,6 +501,39 @@ class MarketPercentageController extends ThinkController
}
public function insertAllUserBonus($time,$admin_id=0) {
// $time = $_REQUEST['time'];
$data = M("member")
->field("access.uid admin_id,real_name,nickname,group_id level,0 pay_amount,0 extend_commission,0 wait_commission")
->join("left join sys_auth_group_access access on sys_member.uid = access.uid")
->join("left join sys_auth_group auth on access.group_id=auth.id")
->where(['group_id'=>['in','11,12,21'],'sys_member.uid'=>$admin_id])
->select();
foreach ($data as $key => $value) {
$value['pay_time'] = $time;
$value['remark'] = '自动发放';
$value['create_time'] = time();
$sign = M("market_altogether","tab_")
->where(['admin_id'=>$value['admin_id'],'pay_time'=>$time])
->find();
if (!$sign) {
M("market_altogether","tab_")->add($value);
} else {
M("market_altogether","tab_")
->where(['admin_id'=>$value['admin_id'],'pay_time'=>$time])
->save($value);
}
}
}
public function sendBonus() {
$map['pay_time'] = $_REQUEST['pay_time'];
@ -595,6 +543,8 @@ class MarketPercentageController extends ThinkController
$this->ajaxReturn(['status'=>0,'msg'=>'数据错误']);
}
$this->insertAllUserBonus($_REQUEST['pay_time'],$_REQUEST['admin_id']);
$group_config = M("auth_group_access access")
->field("market_percentage")
->join("left join sys_auth_group auth on access.group_id=auth.id")
@ -638,10 +588,13 @@ class MarketPercentageController extends ThinkController
($yes-1).'-'.'07',($yes-1).'-'.'08',($yes-1).'-'.'09',($yes-1).'-'.'10',($yes-1).'-'.'11',($yes-1).'-'.'12'];
}
} else {
$where = [date("Y-m",strtotime("last month",strtotime($_REQUEST['pay_time'])))];
}
$where = array_merge($where,[$_REQUEST['pay_time']]);
$map['pay_time'] = ['in',$where];
// var_dump(date("Y-m",strtotime("last month",strtotime($_REQUEST['pay_time']))));die();
$data = M("settleup_marketorder","tab_")
->field("tab_settleup_marketorder.id,pay_time,promote_account,company_belong,tab_settleup_marketorder.real_name,develop_type,game_name,
sum(pay_amount) pay_amount,sum(company_profit) company_profit,group_id,market_percentage,nickname,admin_id,
@ -732,10 +685,9 @@ class MarketPercentageController extends ThinkController
$month = date("m",strtotime($value['pay_time']));
$yes = date("Y",strtotime($value['pay_time']));
$check_month = date("m",strtotime($_REQUEST['pay_time']));
if ($market_percentage['time'] == 1) {
//跨级发放验证当前发放月份
$check_month = date("m",strtotime($_REQUEST['pay_time']));
if ($month == '07') {
$data[$key]['extend_commission'] += $wait_amount[$value['admin_id'].$yes.'-'.'01'] + $wait_amount[$value['admin_id'].$yes.'-'.'02'] + $wait_amount[$value['admin_id'].$yes.'-'.'03'];
@ -779,17 +731,16 @@ class MarketPercentageController extends ThinkController
$wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '10'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '11'] + $wait_amount[$value['admin_id'] . ($yes - 1) . '-' . '12'];
}
}
// else {
// $data[$key]['is_send_use'] = 1;
// }
else {
$data[$key]['extend_commission'] +=$wait_amount[$value['admin_id'] . date("Y-m",strtotime("last month",strtotime($_REQUEST['pay_time'])))];
}
$insert['pay_time'] = $data[$key]['pay_time'];
$insert['admin_id'] = $data[$key]['admin_id'];
$insert['real_name'] = $data[$key]['real_name'];
$insert['nickname'] = $data[$key]['nickname'];
$insert['level'] = $data[$key]['level '];
$insert['level'] = $data[$key]['group_id '];
$insert['pay_amount'] = $data[$key]['pay_amount'];
$insert['extend_commission'] = $data[$key]['extend_commission'];
$insert['wait_commission'] = $data[$key]['wait_commission'];
@ -797,7 +748,12 @@ class MarketPercentageController extends ThinkController
if ($_REQUEST['all']) {
$insert['remark'] = '离职发放';
$insert['type'] = 1;
} elseif($month != $check_month) {
$insert['type'] = 2;
} else {
$insert['type'] = 0;
}
$insert['create_time'] = time();
$is_hav = M("market_altogether","tab_")
@ -812,8 +768,6 @@ class MarketPercentageController extends ThinkController
$is_add = M("market_altogether","tab_")->add($insert);
}
// $is_add = M("market_altogether","tab_")->add($insert);
if (!$is_add) {
$this->ajaxReturn(['status'=>0,'msg'=>'发放失败']);
}
@ -848,7 +802,7 @@ class MarketPercentageController extends ThinkController
$_REQUEST['pay_time']?$map['pay_time'] = $_REQUEST['pay_time']:'';
$_REQUEST['real_name']?$map['real_name'] = $_REQUEST['real_name']:'';
$_REQUEST['nickname']?$map['nickname'] = $_REQUEST['nickname']:'';
$_REQUEST['level']?$map['level '] = $_REQUEST['level']:'';
$_REQUEST['level']?$map['group_id '] = $_REQUEST['level']:'';
$data = M("market_altogether","tab_")
->field("max(pay_time) pay_time,real_name,admin_id,nickname,level,sum(pay_amount) pay_amount,sum(extend_commission) extend_commission, sum(wait_commission) wait_commission,remark,group_id,max(type) type")