From 93a8bb70e124cb88a992cd69b616a6c1c8462141 Mon Sep 17 00:00:00 2001 From: chenzhi Date: Fri, 29 May 2020 18:45:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=BC=96=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Application/Admin/Common/function.php | 3 + .../CompanyStatementController.class.php | 959 +++--------------- .../CompanyStatementSetController.class.php | 24 +- .../CompanyStatement/editCpStatement.html | 669 ++++++++++++ .../CompanyStatement/editPcStatement.html | 650 ++++++++++++ .../Admin/View/CompanyStatement/lists.html | 114 +-- .../CompanyStatement/viewCpStatement.html | 311 ++++++ .../CompanyStatement/viewPcStatement.html | 305 ++++++ Data/update.sql | 1 + 9 files changed, 2145 insertions(+), 891 deletions(-) create mode 100644 Application/Admin/View/CompanyStatement/editCpStatement.html create mode 100644 Application/Admin/View/CompanyStatement/editPcStatement.html create mode 100644 Application/Admin/View/CompanyStatement/viewCpStatement.html create mode 100644 Application/Admin/View/CompanyStatement/viewPcStatement.html diff --git a/Application/Admin/Common/function.php b/Application/Admin/Common/function.php index d21624a70..408114613 100644 --- a/Application/Admin/Common/function.php +++ b/Application/Admin/Common/function.php @@ -805,6 +805,9 @@ function convertAmountToCn($num) { //空的变量用来保存转换字符串 $daxie = ''; + if($num < 0){ + $daxie .= "负"; + } //分割数字,区分圆角分 list($left_num, $right_num) = explode('.', $num); diff --git a/Application/Admin/Controller/CompanyStatementController.class.php b/Application/Admin/Controller/CompanyStatementController.class.php index 5c0a212a6..a5fd8afad 100644 --- a/Application/Admin/Controller/CompanyStatementController.class.php +++ b/Application/Admin/Controller/CompanyStatementController.class.php @@ -27,10 +27,20 @@ class CompanyStatementController extends ThinkController "3"=>"合作确认", "4"=>"已汇总" ]; + public $admininfo; + public function _initialize() + { + $this->admininfo = $_SESSION['onethink_admin']['user_auth']; + parent::_initialize(); + } public function lists() { $params = I('get.'); $page = $params['p'] ? intval($params['p']) : 1; $row = $params['row'] ? intval($params['row']) : 10; + //权限分配 + if(!IS_ROOT){ + $this->OpAuthList= getModuleControllerAuth(); + } $map = []; if (isset($_REQUEST['time_start']) && isset($_REQUEST['time_end'])) { @@ -94,6 +104,7 @@ class CompanyStatementController extends ThinkController if(isset($_REQUEST['verify_status'])){ $map['verify_status'] = $_REQUEST['verify_status']; } + $this->checkListOrCountAuthRestMap($map);//导出权限 //条件end $data = M("company_statement","tab_") ->field("id,withdraw_type,company_name,company_belong,statement_begin_time,statement_end_time,statement_money,platform_amount,verify_status,verify_log,op_time") @@ -118,7 +129,7 @@ class CompanyStatementController extends ThinkController } else { $symbol = "
"; } - // $v["create"]= "{$v['verify_log']['create_user']} {$symbol} {$v['verify_log']['create_time']}"; + $v["create"]= "{$v['verify_log']['create_user']} {$symbol} {$v['verify_log']['create_time']}"; if(isset($v['verify_log']['verify_user'])){ if($v['status'] == -1){ $ts = "审核拒绝"; @@ -153,9 +164,10 @@ class CompanyStatementController extends ThinkController }else{ $v["pool"] = '--'; } + $v['oplist'] = $this->OpAuth($v); } - // dd($data); - $count = M("company_statement","tab_")->field("count(id) count")->where($map)->find(); + $count = M("company_statement","tab_")->field("count(id) count,IFNULL(SUM(CASE WHEN withdraw_type < 2 THEN platform_amount ELSE 0 END),0) as platform_amount,SUM(statement_money) as statement_money")->where($map)->find(); + // dd($count); $parameter['p'] = $page; $parameter['row'] = $row; $page = set_pagination($count['count'], $row, $parameter); @@ -164,843 +176,148 @@ class CompanyStatementController extends ThinkController } $this->assign('data',$data); - + $this->assign('count',$count); $this->assign('CompanyType',$this->CompanyType); $this->assign('CompanyBelong',$this->CompanyBelong); $this->assign('VerifyStatus',$this->VerifyStatus); $this->display(); } - - public function createDownstreamOrder() { - - $this->display(); - - } - - public function saveDownstreamOrder() { - - - - $second_party_info = $_REQUEST['second_party_info']; - $first_party_info = $_REQUEST['first_party_info']; - $statement_info = $_REQUEST['statement_info']; - $sumData = $_REQUEST['sum_data']; - - if ($second_party_info['settlement_type']=='补点订单') { - $second_party_info['order_type'] = 1; - } else { - $second_party_info['order_type'] = 0; - } - - if (!$second_party_info||!$first_party_info||!$statement_info||!$statement_info) { - $this->ajaxReturn(['code'=>0, 'msg'=>'数据错误' ]); - } - $insert['statement_type'] = 1; - $insert['company_id'] = $_REQUEST['company_id']; - $insert['company_name'] = $second_party_info['partner']; - $insert['link_phone'] = $second_party_info['link_phone'];; - - $statement_begin_time = strtotime($statement_info[0]['statement_begin_time']); - $statement_end_time = strtotime($statement_info[0]['statement_end_time']); - - foreach($statement_info as $key => $value) { - - if ($statement_begin_time>strtotime($value['statement_begin_time'])&&$value['statement_begin_time']) { - $statement_begin_time = strtotime($value['statement_begin_time']); - } -// var_dump(strtotime($value['statement_begin_time']); - - if ($statement_end_timewhere(['ext_field'=>$_REQUEST['ext_field']])->find())) { - - addOperationLog(['op_type'=>0,'key'=>$second_party_info['partner'].'/'.getNowDate(),'op_name'=>'新增下游对账单','url'=>U('StatementMangement/lists'),'menu'=>'推广员-结算管理-结算单管理-新增下游对账单']); - - M('statement','tab_')->add($insert); - $this->ajaxReturn(['code'=>1, 'msg'=>'生成结算单成功']); - } else { - $this->ajaxReturn(['code'=>0, 'msg'=>'生成结算单失败,结算单已经存在']); - } - - } - - public function editDownstreamOrder() { - - $this->display('edit'); - - } - - public function editDownstreamOrderSave() { - $second_party_info = $_REQUEST['second_party_info']; - $first_party_info = $_REQUEST['first_party_info']; - $statement_info = $_REQUEST['statement_info']; - $sumData = $_REQUEST['sum_data']; - - if (!$second_party_info||!$first_party_info||!$statement_info||!$statement_info) { - $this->ajaxReturn(['code'=>0, 'msg'=>'数据错误' ]); - } - $insert['statement_type'] = 1; - $insert['company_id'] = $_REQUEST['company_id']; - $insert['company_name'] = $second_party_info['partner']; - $insert['link_phone'] = $second_party_info['link_phone'];; - - $statement_begin_time = strtotime($statement_info[0]['statement_begin_time']); - $statement_end_time = strtotime($statement_info[0]['statement_end_time']); - - foreach($statement_info as $key => $value) { - - if ($statement_begin_time>strtotime($value['statement_begin_time'])&&$value['statement_begin_time']) { - $statement_begin_time = strtotime($value['statement_begin_time']); - } -// var_dump(strtotime($value['statement_begin_time']); - - if ($statement_end_timewhere(['ext_field'=>$_REQUEST['ext_field']])->save($insert))) { - - addOperationLog(['op_type'=>1,'key'=>$second_party_info['partner'].'/'.getNowDate(),'op_name'=>'编辑下游对账单','url'=>U('StatementMangement/lists'),'menu'=>'推广员-结算管理-结算单管理-新增下游对账单']); - - $this->ajaxReturn(['code'=>1, 'msg'=>'结算单编辑成功']); - } else { - $this->ajaxReturn(['code'=>0, 'msg'=>'结算单编辑失败']); - } - } - - public function delStatementData() { - - $id = $_REQUEST['id']; - if (!$id) { - $this->ajaxReturn(['code'=>2000,'error'=>'no']); - } - $statementData = M('statement','tab_')->where(['id'=>$id])->find(); - - $is_del = M('statement','tab_')->where(['id'=>$id])->delete(); - - if ($is_del) { - - addOperationLog(['op_type'=>2,'key'=>$statementData['company_name'].'/'.date('YmdHis',$statementData['statement_begin_time']).'/'.date('YmdHis',$statementData['statement_end_time']),'op_name'=>'删除下游对账单','url'=>U('StatementMangement/lists'),'menu'=>'推广员-结算管理-结算单管理-删除下游对账单']); - - $this->ajaxReturn(['code'=>0,'success'=>'ok']); - } else { - $this->ajaxReturn(['code'=>2000,'error'=>'no']); - } - - } - - public function rewardManageList($row = 10, $p = 1) - { - $map = []; - if (!empty(I("game_name"))) { - $game_ids = array_column(getGameByName(I("game_name")), 'id'); - if ($game_ids) { - $map['relation_game_id'] = ['in', $game_ids]; - } - } - if (!empty(I('partner_id'))) { - $map['company_id'] = I('partner_id'); - } - if (strlen(I('company_type'))) { - $map['company_type'] = I('company_type'); - } - if (!empty(I('account'))) { - $map['accounts'] = ['like', '%' . I('account') . '%']; - } - $list = M('reward_record', 'tab_')->where($map)->page($p, $row)->select(); - if ($list) { - $companys[1] = array_column(M('partner', 'tab_')->field('id, partner as name')->select(), 'name', 'id'); - $companys[2] = array_column(M('promote_company', 'tab_')->field('id, company_name as name')->select(), 'name', 'id'); - $games = array_column(M('game', 'tab_')->field('relation_game_id, relation_game_name')->group('relation_game_id')->select(), 'relation_game_name', 'relation_game_id'); - foreach ($list as &$item) { - $item['company_name'] = $companys[$item['company_type']][$item['company_id']]; - $item['accounts'] = json_decode($item['accounts'], true) ?: []; - $item['reward_type_desc'] = $item['reward_type'] == 1 ? "奖励" : "惩罚"; - $item['company_type_desc'] = $item['company_type'] == 1 ? "上游公司" : "下游公司"; - $item['relation_game_name'] = $games[$item['relation_game_id']]; - $item['reward_time'] = $item['reward_time'] ? date('Y-m-d H:i:s', $item['reward_time']) : '-'; - // if ($item['company_type'] == 1) { - - // } else { - - // } - } - } - $count = M('reward_record', 'tab_')->where($map)->count(); - $page = set_pagination($count, $row); - if ($page) { - $this->assign('_page', $page); - } - $this->assign('list', $list); - $this->display(); - } - - public function rewardManageSave($id=0) + //查看 + public function viewStatement() { - if (IS_POST) { - $data = [ - 'reward_type' => I('reward_type'), - 'company_type' => I('company_type'), - 'company_id' => I('company_id'), - 'relation_game_id' => I('relation_game_id'), - 'money' => I('money'), - 'content' => I('content'), - 'remark' => I('remark'), - 'reward_time' => strtotime(I('reward_time')) - ]; - - $accounts = I('account'); - $user_types = I('user_type'); - if ($accounts) { - - foreach ($accounts as $index => $account) { - - if (checkAccount($user_types[$index],$account)==1) { - $data['accounts'][] = array_merge(['account'=>$account], ['user_type'=>$user_types[$index]]); - } else { - return $this->error('账号'.$account.'不存在,请重新输入'); - } -// $data['accounts'][] = array_merge(['account'=>$account], ['user_type'=>$user_types[$index]]); - } - } else { - $data['accounts'] = []; - } - $data['accounts']=a_array_unique($data['accounts']); -// dump($data['accounts']);die(); - $data['accounts'] = json_encode($data['accounts']); - if (!is_numeric(I('money'))) { - return $this->error('请输入正确的金额'); - } - if (empty(I('content'))) { - return $this->error('请填写事件内容'); - } - if ($id) { - $upt = M('reward_record', 'tab_')->where(['id'=>$id])->save($data); - if ($upt === false) { - $this->error('保存失败'); - } else { - $companyName = M('partner','tab_')->field('partner')->where(['id'=>$data['company_id']])->find(); - addOperationLog(['op_type'=>1,'key'=>$companyName['partner'].'/'.(($data['reward_type']==1)?'奖励':'惩罚').'/'.$data['money'],'op_name'=>'修改奖惩记录','url'=>U('Query/settlement'),'menu'=>'推广员-结算单管理-奖罚记录管理-修改奖惩记录']); - - $this->success('保存成功', U('StatementMangement/rewardManageList')); - } - } else { - $data['create_time'] = time(); - $data['creater_id'] = is_login(); - $ins = M('reward_record', 'tab_')->add($data); - - $companyName = M('partner','tab_')->field('partner')->where(['id'=>$data['company_id']])->find(); - addOperationLog(['op_type'=>0,'key'=>$companyName['partner'].'/'.(($data['reward_type']==1)?'奖励':'惩罚').'/'.$data['money'],'op_name'=>'新增奖惩记录','url'=>U('Query/settlement'),'menu'=>'推广员-结算单管理-奖罚记录管理-新增奖惩记录']); - - return $ins ? $this->success('新增成功', U('StatementMangement/rewardManageList')) : $this->error('新增失败'); - } - } else { - $games = M('game', 'tab_')->field('relation_game_id, relation_game_name')->group('relation_game_id')->select(); - $this->assign('games', $games); - if ($id) { - if (I('delete')) { - - $rewardRecordData = M('reward_record', 'tab_')->where(['id'=>$id])->find(); - - $upt = M('reward_record', 'tab_')->where(['id'=>$id])->delete(); - - $companyName = M('partner','tab_')->field('partner')->where(['id'=>$rewardRecordData['company_id']])->find(); - - addOperationLog(['op_type'=>2,'key'=>$companyName['partner'].'/'.(($rewardRecordData['reward_type']==1)?'奖励':'惩罚').'/'.$rewardRecordData['money'],'op_name'=>'删除奖惩记录','url'=>U('StatementMangement/rewardManageList'),'menu'=>'推广员-结算单管理-奖罚记录管理']); - - return $upt ? $this->success('删除成功') : $this->error('删除失败'); - } else { - $data = M('reward_record', 'tab_')->where(['id'=>$id])->find(); - if (!$data) return $this->error("未找到该记录"); - $data['accounts'] = json_decode($data['accounts'], true) ?: []; - $this->assign('data', $data); - } - } else { - $data['reward_time'] = strtotime(date('Y-m-01')); - $this->assign('data', $data); - } - $this->display(); + if(!isset($_REQUEST['id'])){ + $this->error('参数错误'); } + $id = $_REQUEST['id']; + //获取基本信息 + $dbres = M("CompanyStatement","tab_")->where("id='{$id}'")->find(); + $first_party_info = json_decode($dbres['first_party_info'],true); + $second_party_info = json_decode($dbres['second_party_info'],true); + $statement_info = json_decode($dbres['statement_info'],true); - } - - public function getCompanys($type=1) - { - if ($type == 1) { - $data = M('partner', 'tab_')->field('id, partner as name')->select(); - } elseif ($type == 0) { - $data = []; - } else { - $data = M('promote_company', 'tab_')->field('id, company_name as name')->select(); + if($dbres['pay_type'] == 2){ + $company = $second_party_info['partner']; + $pyinfo = $second_party_info; + }else{ + $company = $first_party_info['partner']; + $pyinfo = $first_party_info; + } + $senddata = array( + "company"=>$company, + "payinfo"=>$pyinfo, + "first_part_company"=>$first_party_info['partner'], + "second_part_company"=>$second_party_info['partner'], + "pay_type"=>$dbres['pay_type'], + "withdraw_type"=>$dbres['withdraw_type'],//2补丁 + "first_party_info"=>$first_party_info, + "second_party_info"=>$second_party_info, + "statement_info"=>$statement_info, + "statement_count"=>array("pay_amount"=>$dbres['pay_amount'],"statement_money"=>$dbres['statement_money'],"big_ratio_money"=>convertAmountToCn($dbres['statement_money'])) + ); + $this->assign("data",$senddata); + + if($dbres["company_belong"] == 9){ + //上游 + $this->display("viewCpStatement"); + }else{ + $this->display("viewPcStatement"); } - return $this->success($data, '', true); } - - public function PersonOrderList() { - - if ($_REQUEST['time_start'] || $_REQUEST['time_end'] ) { - $withdrawMap = []; - if ($_REQUEST['time_start']&&!$_REQUEST['time_end']) { - $withdrawMap['settlement_begin_time'] = ['egt',strtotime($_REQUEST['time_start'])]; - } - - if (!$_REQUEST['time_start']&&$_REQUEST['time_end']) { - $withdrawMap['settlement_end_time'] = ['elt',strtotime($_REQUEST['time_end'])]; - } - - if ($_REQUEST['time_start']&&$_REQUEST['time_end']) { - $withdrawMap['settlement_begin_time'] = ['egt',strtotime($_REQUEST['time_start'])]; - $withdrawMap['settlement_end_time'] = ['elt',strtotime($_REQUEST['time_end'])]; - } - - $data = M('withdraw',"tab_") - ->field("widthdraw_number,settlement_begin_time,settlement_end_time,settlement_type,promote_account") - ->join('left join tab_promote_belong on tab_withdraw.promote_id=tab_promote_belong.promote_id') - ->join("left join tab_statement as statement on tab_withdraw.widthdraw_number = statement.ext_field") - ->where("ext_field is null and tab_promote_belong.company_type=2") - ->where($withdrawMap) - ->select(); - - $statement = M('statement','tab_') - ->field('ext_field') - ->where(['ext_field'=>['like','%,%']]) - ->select(); - - $withdrawData = []; - - foreach($statement as $key => $value) { - - $handleData = explode(',',$value['ext_field']); - - foreach ($handleData as $hk => $hv) { - array_push($withdrawData,$hv); - } - - } - - foreach ($data as $key => $value) { - $data[$key]['settlement_begin_time'] = date("Y-m-d H:i:s", $data[$key]['settlement_begin_time']); - $data[$key]['settlement_end_time'] = date("Y-m-d H:i:s", $data[$key]['settlement_end_time']); - - if (in_array($value['widthdraw_number'],$withdrawData)) { - unset($data[$key]); - } - - } - - $this->assign('withdraw_data',$data); - - } - - if ($_REQUEST['withdraw']&&$data) { - - $map = []; - - $map['widthdraw_number'] = ['in',$_REQUEST['withdraw']]; - - $data = M('withdraw','tab_') - ->field("tab_withdraw.id,pc.company_name,pc.id as cid,tab_withdraw.promote_id,tab_withdraw.promote_account,username,'个人' as type,game_ratio - ,mobile_phone,real_name,pc.bank_card,bank_address as account_openin,tab_promote.address,pc.settlement_contact as bank_account") - ->join('left join tab_promote_belong on tab_withdraw.promote_id=tab_promote_belong.promote_id') - ->join("left join tab_statement as statement on tab_withdraw.widthdraw_number = statement.ext_field") - ->join("left join tab_promote on tab_promote.id=tab_promote_belong.promote_id") - ->join("left join tab_promote_company as pc on pc.id = tab_promote.company_id") - ->join("left join sys_ucenter_member on sys_ucenter_member.id=tab_promote.admin_id") - ->where("ext_field is null and tab_promote_belong.company_type=2") - ->where($map) - ->select(); - - - $game_ratio = []; - foreach($data as $dkey => &$dval) { - $gameStr = []; -// $address = ''; -// if (is_array($data['address'])) { -// foreach($data['address'] as $key => $value) { -// $address = $address.' '.$value; -// } -// } -// $dval['address'] = $address; - $rowspan = 0; - $dval['rowspan'] = 0; - - $dval['game_ratio'] = json_decode($dval['game_ratio'],true); - - if (is_array($dval['game_ratio'])) { - foreach ($dval['game_ratio'] as $key => &$value) { - - foreach ($value as $k => &$v) { - -// $v['game_id'] = $key; - - $v['game_name'] = substr(get_gamename($key),0,strpos(get_gamename($key), '(')); - - if (!in_array($v['game_name'],$gameStr)) { - array_push($gameStr,$v['game_name']); - - } else { -// var_dump($key); - if (!$game_ratio[$v['game_name']]) { - $game_ratio[$v['game_name']] = $v; - } - else { - $game_ratio[$v['game_name']]['sum_amount'] += $v['sum_amount']; - } - unset($value[$k]); - } -// - } - if (!$value) { - unset($dval['game_ratio'][$key]); - } - - } - - foreach ($dval['game_ratio'] as $key => $val) { - - $val[0]['reward'] = 0; - $val[0]['forfeit'] = 0; - $startTime = strtotime($val[0]['begin_time']); - $endTime = strtotime($val[0]['end_time']); - - $rewardData = M('reward_record','tab_') - ->field("sum(tab_reward_record.money) as money,reward_type,relation_game_name") - ->join("left join (select * from tab_game group by relation_game_id)tab_game on tab_reward_record.relation_game_id=tab_game.relation_game_id") - ->where(['company_type'=>2,'relation_game_name'=>['like',"%{$val[0]['game_name']}%"],'reward_time'=>['between',[$startTime,$endTime]]]) - ->group('reward_type') - ->select(); - - foreach ($rewardData as $rk => $rv) { - - if ($rv['reward_type'] == 1) { - $val[0]['reward'] = $rv['money']; - } else { - $val[0]['forfeit'] = $rv['money']; - } - - } - - foreach ($val as $k => &$v) { - - if ($game_ratio[$v['game_name']]) { - - $v['sum_amount'] = number_format($v['sum_amount'] + $game_ratio[$v['game_name']]['sum_amount'],2,'.',''); - - } - //计算结算金额 - $val[0]['real_amount'] = number_format($val[0]['sum_amount'] * ($val[0]['selle_ratio']/100)+$val[0]['reward']-$val[0]['forfeit'],2,'.',''); - } - - $rowspan++; - unset($dval['game_ratio'][$key]); - array_push($dval['game_ratio'],$val[0]); - - } - - $dval['rowspan'] = $rowspan; - - } - } - - $this->assign('data',$data); - - } - $this->display(); - - } - - public function savePersonOrder() { - -// dump($_POST); - - - - $data['statement_info'] = $_POST['statement_info']; - $data['first_party_info'] = json_encode([]); - $data['second_party_info'] = $_POST['second_party_info']; - $data['statement_begin_time'] = strtotime($_POST['time_start']); - $data['statement_end_time'] = strtotime($_POST['time_end']); - $data['create_time'] = time(); - $data['statement_money'] = 0; - $data['pay_amount'] = 0; - $data['ext_field'] = ''; - $data['company_name'] = '个人结账单'; - $data['statement_type'] = 2; - - if($data['second_party_info'] == '[]' || $data['statement_info'] == '[]') { - $this->ajaxReturn(['status'=>1,'msg'=>'数据错误']); - } - - - $statement_info = json_decode($data['statement_info'],true); - - foreach($statement_info as $key => $value) { - $data['statement_money'] += $value['sum_amount']; - $data['pay_amount'] += $value['real_amount']; - } - - $second_party_info = json_decode($data['second_party_info'],true); - - foreach($second_party_info as $key => $value) { - $data['ext_field'] = $data['ext_field'].$value['widthdraw_number'].','; - } - - $is_exist = M('statement','tab_')->where(['ext_field'=>$data['ext_field'],'statement_type'=>2])->find(); - if ($is_exist) { - $this->ajaxReturn(['status'=>0,'msg'=>'请勿重复添加']); - } - - $is_save = M('statement','tab_')->add($data); - - if ($is_save) { - - addOperationLog(['op_type'=>0,'key'=>'个人结算单'.'/'.getNowDate(),'op_name'=>'生成下游个人结算单','url'=>U('StatementMangement/lists'),'menu'=>'推广员-结算管理-结算单管理-生成下游个人结算单']); - - $this->ajaxReturn(['status'=>1,'msg'=>'生成成功']); - } else { - $this->ajaxReturn(['status'=>0,'msg'=>'生成失败']); - } - - } - - public function PersonOrderEdit() { - - if ($_REQUEST['time_start'] || $_REQUEST['time_end'] ) { - $withdrawMap = []; - if ($_REQUEST['time_start']&&!$_REQUEST['time_end']) { - $withdrawMap['settlement_begin_time'] = ['egt',strtotime($_REQUEST['time_start'])]; - } - - if (!$_REQUEST['time_start']&&$_REQUEST['time_end']) { - $withdrawMap['settlement_end_time'] = ['elt',strtotime($_REQUEST['time_end'])]; - } - - if ($_REQUEST['time_start']&&$_REQUEST['time_end']) { - $withdrawMap['settlement_begin_time'] = ['egt',strtotime($_REQUEST['time_start'])]; - $withdrawMap['settlement_end_time'] = ['elt',strtotime($_REQUEST['time_end'])]; - } - - $data = M('withdraw',"tab_") - ->field("widthdraw_number,settlement_begin_time,settlement_end_time,settlement_type,promote_account") - ->join('left join tab_promote_belong on tab_withdraw.promote_id=tab_promote_belong.promote_id') - ->join("left join tab_statement as statement on tab_withdraw.widthdraw_number = statement.ext_field") - ->where("tab_promote_belong.company_type=2") - ->where($withdrawMap) - ->select(); -// dump($data);die(); - - $statement = M('statement','tab_') - ->field('ext_field') - ->where('ext_field is not null') - ->select(); - - $withdrawData = []; - - foreach($statement as $key => $value) { - - $handleData = explode(',',$value['ext_field']); - - foreach ($handleData as $hk => $hv) { - array_push($withdrawData,$hv); - } - - } - -// $thisWithdraw = explode(',',$_REQUEST['withdraw']); - $thisWithdraw = explode(',',M('statement','tab_')->where(['id'=>$_REQUEST['id']])->find()['ext_field']); -// dump($thisWithdraw);die(); - - - foreach ($data as $key => $value) { -// $data[$key]['settlement_begin_time'] = date("Y-m-d H:i:s", $data[$key]['settlement_begin_time']); -// $data[$key]['settlement_end_time'] = date("Y-m-d H:i:s", $data[$key]['settlement_end_time']); - -// var_dump($value['widthdraw_number'].$_REQUEST['withdraw']);die(); - - if (in_array($value['widthdraw_number'],$withdrawData)&&!in_array($value['widthdraw_number'],$thisWithdraw)) { - unset($data[$key]); - } - - } - - foreach ($data as $key => $value) { - $data[$key]['settlement_begin_time'] = date("Y-m-d H:i:s", $data[$key]['settlement_begin_time']); - $data[$key]['settlement_end_time'] = date("Y-m-d H:i:s", $data[$key]['settlement_end_time']); - - } - - $this->assign('withdraw_data',$data); - - } - - if ($_REQUEST['withdraw']&&$data) { - - $map = []; - - $map['widthdraw_number'] = ['in',$_REQUEST['withdraw']]; - - $data = M('withdraw','tab_') - ->field("tab_withdraw.id,pc.company_name,pc.id as cid,tab_withdraw.promote_id,tab_withdraw.promote_account,username,'个人' as type,game_ratio - ,mobile_phone,real_name,pc.bank_card,bank_address as account_openin,tab_promote.address,pc.settlement_contact as bank_account") - ->join('left join tab_promote_belong on tab_withdraw.promote_id=tab_promote_belong.promote_id') - ->join("left join tab_statement as statement on tab_withdraw.widthdraw_number = statement.ext_field") - ->join("left join tab_promote on tab_promote.id=tab_promote_belong.promote_id") - ->join("left join tab_promote_company as pc on pc.id = tab_promote.company_id") - ->join("left join sys_ucenter_member on sys_ucenter_member.id=tab_promote.admin_id") - ->where("tab_promote_belong.company_type=2") - ->where($map) - ->select(); - - - $game_ratio = []; - foreach($data as $dkey => &$dval) { - $gameStr = []; - - $rowspan = 0; - $dval['rowspan'] = 0; - - $dval['game_ratio'] = json_decode($dval['game_ratio'],true); - - if (is_array($dval['game_ratio'])) { - foreach ($dval['game_ratio'] as $key => &$value) { - - foreach ($value as $k => &$v) { - -// $v['game_id'] = $key; - - $v['game_name'] = substr(get_gamename($key),0,strpos(get_gamename($key), '(')); - - if (!in_array($v['game_name'],$gameStr)) { - array_push($gameStr,$v['game_name']); - - } else { -// var_dump($key); - if (!$game_ratio[$v['game_name']]) { - $game_ratio[$v['game_name']] = $v; - } - else { - $game_ratio[$v['game_name']]['sum_amount'] += $v['sum_amount']; - } - unset($value[$k]); - } -// - } - if (!$value) { - unset($dval['game_ratio'][$key]); - } - - } - - foreach ($dval['game_ratio'] as $key => $val) { - - $val[0]['reward'] = 0; - $val[0]['forfeit'] = 0; - $startTime = strtotime($val[0]['begin_time']); - $endTime = strtotime($val[0]['end_time']); - - $rewardData = M('reward_record','tab_') - ->field("sum(tab_reward_record.money) as money,reward_type,relation_game_name") - ->join("left join (select * from tab_game group by relation_game_id)tab_game on tab_reward_record.relation_game_id=tab_game.relation_game_id") - ->where(['company_type'=>2,'relation_game_name'=>['like',"%{$val[0]['game_name']}%"],'reward_time'=>['between',[$startTime,$endTime]]]) - ->group('reward_type') - ->select(); - - foreach ($rewardData as $rk => $rv) { - - if ($rv['reward_type'] == 1) { - $val[0]['reward'] = $rv['money']; - } else { - $val[0]['forfeit'] = $rv['money']; - } - - } - - foreach ($val as $k => &$v) { - - if ($game_ratio[$v['game_name']]) { - - $v['sum_amount'] = number_format($v['sum_amount'] + $game_ratio[$v['game_name']]['sum_amount'],2,'.',''); - - } - //计算结算金额 - $val[0]['real_amount'] = number_format($val[0]['sum_amount'] * ($val[0]['selle_ratio']/100)+$val[0]['reward']-$val[0]['forfeit'],2,'.',''); - } - - $rowspan++; - unset($dval['game_ratio'][$key]); - array_push($dval['game_ratio'],$val[0]); - - } - - $dval['rowspan'] = $rowspan; - - } - } - - $this->assign('data',$data); - - } - $this->display(); - - } - - public function savePersonOrderEdit() { - - $data['statement_info'] = $_POST['statement_info']; - $data['first_party_info'] = json_encode([]); - $data['second_party_info'] = $_POST['second_party_info']; - $data['statement_begin_time'] = strtotime($_POST['time_start']); - $data['statement_end_time'] = strtotime($_POST['time_end']); - $data['create_time'] = time(); - $data['statement_money'] = 0; - $data['pay_amount'] = 0; - $data['ext_field'] = ''; - $data['company_name'] = '个人结账单'; - $data['statement_type'] = 2; - - - if($data['second_party_info'] == '[]' || $data['statement_info'] == '[]') { - $this->ajaxReturn(['status'=>1,'msg'=>'数据错误']); - } - - - $statement_info = json_decode($data['statement_info'],true); - - foreach($statement_info as $key => $value) { - $data['statement_money'] += $value['sum_amount']; - $data['pay_amount'] += $value['real_amount']; - } - - $second_party_info = json_decode($data['second_party_info'],true); - - foreach($second_party_info as $key => $value) { - $data['ext_field'] = $data['ext_field'].$value['widthdraw_number'].','; - } - $data['ext_field'] = rtrim($data['ext_field'], ","); - - $is_save = M('statement','tab_')->where(['id'=>$_REQUEST['withdraw_id']])->save($data); - -// echo M('statement','tab_')->_sql();die(); - - if ($is_save) { - - addOperationLog(['op_type'=>1,'key'=>'个人结算单'.'/'.getNowDate(),'op_name'=>'编辑下游个人结算单','url'=>U('StatementMangement/lists'),'menu'=>'推广员-结算管理-结算单管理-编辑下游个人结算单']); - - $this->ajaxReturn(['status'=>1,'msg'=>'修改成功']); - } else { - $this->ajaxReturn(['status'=>0,'msg'=>'修改失败']); - } - - } - - - public function personOrderDetail() { - - $id = $_REQUEST['id']; - - $map['id'] = $id; - - $data = M('statement','tab_') - ->field("second_party_info,statement_info") - ->where($map) - ->find(); - - - $data['second_party_info'] = json_decode($data['second_party_info'],true); - $data['statemnt_info'] = json_decode($data['statement_info'],true); - -// dump($data['statemnt_info']);die(); - - $this->assign('second_party_info',$data['second_party_info']); - $this->assign('statemnt_info',$data['statemnt_info']); - - $this->display(); - } - - public function verifyStatementStatus() { - - $order = $_REQUEST['order']; - - if ($order) { - - $isVerify = M('statement','tab_')->where(['id'=>['in',$order]])->save(['verify_status'=>1]); - - if ($isVerify) { - - $data = M('statement','tab_')->where(['id'=>['in',$order]])->select(); - - foreach ($data as $key => $value) { - - addOperationLog(['op_type'=>1,'key'=>$value['company_name'].'/'.date('YmdHis',$value['statement_begin_time']).'/'.date('YmdHis',$value['statement_end_time']),'op_name'=>'编辑结算单审核通过','url'=>U('StatementMangement/lists'),'menu'=>'推广员-结算管理-结算单管理-结算单审核通过']); - - } - - $this->ajaxReturn(['status'=>1]); + //编辑 + public function editStatement() + { + if ($_POST) { + $params = I('post.'); + if(!isset($params['id'])){ + $this->error('参数错误'); + } + $params['first_party_info'] = json_encode($params['first_party_info'],JSON_UNESCAPED_UNICODE); + $params['second_party_info'] = json_encode($params['second_party_info'],JSON_UNESCAPED_UNICODE); + $params['statement_info'] = json_encode($params['statement_info'],JSON_UNESCAPED_UNICODE); + $params['verify_status'] = 0; + $params['verify_log'] = json_encode(["create_user"=>$this->admininfo["username"],"create_time"=>date("Y-m-d H:i:s")]); + $params['op_time'] = time(); + M("CompanyStatement","tab_")->save($params); + $this->ajaxReturn(["code"=>0,"msg"=>"ok"]); + }else{ + if (!isset($_REQUEST['id'])) { + $this->error('参数错误'); + } + $id = $_REQUEST['id']; + //获取基本信息 + $dbres = M("CompanyStatement", "tab_")->where("id='{$id}'")->find(); + $dbres['first_party_info'] = json_decode($dbres['first_party_info'], true); + $dbres['second_party_info']= json_decode($dbres['second_party_info'], true); + $dbres['statement_info'] = json_decode($dbres['statement_info'], true); + $this->assign("data", $dbres); + if ($dbres["company_belong"] == 9) { + //上游 + $this->display("editCpStatement"); } else { - $this->ajaxReturn(['status'=>0]); + $this->display("editPcStatement"); } - } else { - $this->ajaxReturn(['status'=>0]); } - } - public function rejectStatementStatus() { - - $order = $_REQUEST['order']; - - if ($order) { - - $isVerify = M('statement','tab_')->where(['id'=>['in',$order]])->save(['verify_status'=>2]); - - if ($isVerify) { - - $data = M('statement','tab_')->where(['id'=>['in',$order]])->select(); - - foreach ($data as $key => $value) { - - addOperationLog(['op_type'=>1,'key'=>$value['company_name'].'/'.date('YmdHis',$value['statement_begin_time']).'/'.date('YmdHis',$value['statement_end_time']),'op_name'=>'编辑结算单审核通过','url'=>U('StatementMangement/lists'),'menu'=>'推广员-结算管理-结算单管理-结算单审核通过']); - + public function OpAuth($info) + { + $id = $info['id']; + $img = $info['ext_field']; + $remark = $info['remark']; + //原始列表 + $opBtn = [ + "viewStatement"=>"查看", + "editStatement"=>"编辑", + "addRemark"=>"新增备注", + "editRemark"=>"修改备注", + "viewRemark"=>"查看备注", + ]; + //操作对应菜单 + $optist = []; + switch ($info['verify_status']) { + case '-2': + $optist = ["viewStatement","editStatement","addRemark","viewRemark","editRemark"]; + break; + case '-1': + $optist = ["viewStatement","editStatement","addRemark","viewRemark","editRemark"]; + break; + case '0': + $optist = ["viewStatement","editStatement","addRemark","viewRemark","editRemark"]; + break; + case '1': + $optist = ["viewStatement","editStatement","addRemark","viewRemark","editRemark"]; + break; + case '2': + $optist = ["viewStatement","editStatement","addRemark","viewRemark","editRemark"]; + break; + case '3': + $optist = ["viewStatement","addRemark","viewRemark","editRemark"]; + break; + case '4': + $optist = ["viewStatement","addRemark","viewRemark","editRemark"]; + break; + default: + break; + } + if(empty($info['remark'])){ + //未上传备注 + $optist = array_diff($optist, ["editRemark", "viewRemark"]); + }else{ + $optist = array_diff($optist, ["addRemark"]); + } + // + $resarr = []; + foreach ($optist as $k => $v) { + if(IS_ROOT){ + $resarr[] = $opBtn[$v]; + }else{ + if(in_array($v,$this->OpAuthList)){ + $resarr[] = $opBtn[$v]; } - - $this->ajaxReturn(['status'=>1]); - } else { - $this->ajaxReturn(['status'=>0]); } - } else { - $this->ajaxReturn(['status'=>0]); } - + return $resarr; } } diff --git a/Application/Admin/Controller/CompanyStatementSetController.class.php b/Application/Admin/Controller/CompanyStatementSetController.class.php index 0d24e6865..827a077fd 100644 --- a/Application/Admin/Controller/CompanyStatementSetController.class.php +++ b/Application/Admin/Controller/CompanyStatementSetController.class.php @@ -179,7 +179,7 @@ class CompanyStatementSetController extends Controller { } //比例计算及保存 // TODO:此处不判断现游戏名=原包名,但却不是同一款游戏 - $verify_log=json_encode(["create_user"=>$_SESSION['onethink_admin']['user_auth']["username"],"create_time"=>date("Y-m-d H:i:s")]); + $verify_log=json_encode(["create_user"=>"system","create_time"=>date("Y-m-d H:i:s")]); $GameDb = M("Game","tab_"); $StatementDb = M("CompanyStatement","tab_"); @@ -191,6 +191,9 @@ class CompanyStatementSetController extends Controller { //1.获取甲乙方信息 if($v['first_company_type'] == 1){ //甲方上游 + $cp[$v['first_company_id']]['invoice_type'] = $v['invoice_type']; + $cp[$v['first_company_id']]['invoice_content'] = $v['invoice_content']; + $add_data['first_party_info'] = json_encode($cp[$v['first_company_id']],JSON_UNESCAPED_UNICODE); $add_data['second_party_info'] = json_encode($our[$v['second_company_id']],JSON_UNESCAPED_UNICODE); $add_data['company_id'] = $v['first_company_id']; @@ -198,6 +201,9 @@ class CompanyStatementSetController extends Controller { }else{ //乙方上游 + $cp[$v['second_company_id']]['invoice_type'] = $v['invoice_type']; + $cp[$v['second_company_id']]['invoice_content'] = $v['invoice_content']; + $add_data['first_party_info'] = json_encode($our[$v['first_company_id']],JSON_UNESCAPED_UNICODE); $add_data['second_party_info'] = json_encode($cp[$v['second_company_id']],JSON_UNESCAPED_UNICODE); $add_data['company_id'] = $v['second_company_id']; @@ -416,7 +422,7 @@ class CompanyStatementSetController extends Controller { unset($js_id); $this->getPromoteCompanySpend($pcList,array_unique(array_keys($pcList)),$begintime,$endtime); //数据整合 - $verify_log=json_encode(["create_user"=>$_SESSION['onethink_admin']['user_auth']["username"],"create_time"=>date("Y-m-d H:i:s")]); + $verify_log=json_encode(["create_user"=>"system","create_time"=>date("Y-m-d H:i:s")]); $StatementDb = M("CompanyStatement","tab_"); $statement_begin_time = date("Y-m-d",$begintime); @@ -426,6 +432,9 @@ class CompanyStatementSetController extends Controller { //1.获取甲乙方信息 if($v['first_company_type'] == 1){ //甲方上游 + $pc[$v['first_company_id']]['invoice_type'] = $v['invoice_type']; + $pc[$v['first_company_id']]['invoice_content'] = $v['invoice_content']; + $add_data['first_party_info'] = json_encode($pc[$v['first_company_id']],JSON_UNESCAPED_UNICODE); $add_data['second_party_info'] = json_encode($our[$v['second_company_id']],JSON_UNESCAPED_UNICODE); $add_data['company_id'] = $v['first_company_id']; @@ -433,6 +442,9 @@ class CompanyStatementSetController extends Controller { }else{ //乙方上游 + $pc[$v['second_company_id']]['invoice_type'] = $v['invoice_type']; + $pc[$v['second_company_id']]['invoice_content'] = $v['invoice_content']; + $add_data['first_party_info'] = json_encode($our[$v['first_company_id']],JSON_UNESCAPED_UNICODE); $add_data['second_party_info'] = json_encode($pc[$v['second_company_id']],JSON_UNESCAPED_UNICODE); $add_data['company_id'] = $v['second_company_id']; @@ -471,12 +483,10 @@ class CompanyStatementSetController extends Controller { $tratio = $tratio1-$tratio2; } - if($v['first_company_type'] == 1){ - $game['first_ratio']=$tratio; - $game['second_ratio']=100-$tratio; + if($v['type'] == 2){ + $game['increment_ratio']=$tratio; }else{ - $game['first_ratio']=100-$tratio; - $game['second_ratio']=$tratio; + $game['ratio']=$tratio; } $add_data['pay_amount'] += $va['pay_amount']; diff --git a/Application/Admin/View/CompanyStatement/editCpStatement.html b/Application/Admin/View/CompanyStatement/editCpStatement.html new file mode 100644 index 000000000..360d2c15c --- /dev/null +++ b/Application/Admin/View/CompanyStatement/editCpStatement.html @@ -0,0 +1,669 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
甲方: +
+ +
+
联系人: + +
联系电话: + +
邮寄地址: + +
公司税号: + +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
乙方: +
+ +
+
联系人: + +
联系电话: + +
邮寄地址: + +
公司税号: + +
+
+
+
+
+

支付给:{$data.company_name} + +

+
+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
结算时间产品平台总额分成比例渠道费率税费费率结算金额
甲方乙方 + 结算金额=平台总额*(1-渠道费)*分成比例*(1-税费费率)
+ 请先选择生成条件后点击生成对账数据 +
+
+
+
+
+
+ + + + + + + + + + + + + + + +
收款方名称: + +
银行账号: + +
开户行: + +
+
+
+ + + + + + + + + + + +
开票项目: + +
发票类型: +
+ +
+
+
+
+
+
+ +
+ + + + + + + + + \ No newline at end of file diff --git a/Application/Admin/View/CompanyStatement/editPcStatement.html b/Application/Admin/View/CompanyStatement/editPcStatement.html new file mode 100644 index 000000000..9d2f3547f --- /dev/null +++ b/Application/Admin/View/CompanyStatement/editPcStatement.html @@ -0,0 +1,650 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
甲方: +
+ +
+
联系人: + +
联系电话: + +
邮寄地址: + +
公司税号: + +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
乙方: +
+ +
+
联系人: + +
联系电话: + +
邮寄地址: + +
公司税号: + +
+
+
+
+
+

支付给:{$data.company_name} + +

+
+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
结算时间产品平台总额(元)补点比例分成比例税费费率结算金额(元)
+ 请先选择生成条件后点击生成对账数据 +
+
+
+
+
+
+ + + + + + + + + + + + + + + +
收款方名称: + +
银行账号: + +
开户行: + +
+
+
+ + + + + + + + + + + +
开票项目: + +
发票类型: +
+ +
+
+
+
+
+
+ +
+ + + + + + + + + \ No newline at end of file diff --git a/Application/Admin/View/CompanyStatement/lists.html b/Application/Admin/View/CompanyStatement/lists.html index 5e9c3c6df..2dd25ec25 100644 --- a/Application/Admin/View/CompanyStatement/lists.html +++ b/Application/Admin/View/CompanyStatement/lists.html @@ -45,6 +45,9 @@ font-weight: 600; font-size: 18px; } + .data_list table td{ + line-height: 2; + } - - @@ -266,6 +263,35 @@ var order_url = window.location.protocol+"//"+window.location.host+"/admin.php?s=/Public/cp_login.html"; $("#order_url").html("流程说明:结算自动生成对账单--->财务审核对账单--->发起对外对账--->合作方进行确认--->进入报销流程【合作方确认地址:"+order_url+"】"); + $(".viewStatement").click(function () { + var id = $(this).data("id"); + var url = "{:U('viewStatement')}"+"&id="+id + layer.open({ + type: 2, + title: "海南万盟天下科技有限公司", + shadeClose: true, + shade: 0.8, + area: ['70%', '80%'], + content: url + }); + }); + $(".editStatement").click(function () { + var id = $(this).data("id"); + var url = "{:U('editStatement')}"+"&id="+id + + layer.open({ + type: 2, + title: "海南万盟天下科技有限公司", + shadeClose: true, + shade: 0.8, + area: ['70%', '80%'], + content: url + }); + }); + + + + @@ -376,46 +402,8 @@ }); }); - $(".statement_edit").click(function () { - - var edit = $(this).data(); - var ext_field = $(this).attr('ext_field'); - if(edit.type == 0){ - var url = "/admin.php?s=/Statement/editCpStatement/id/"+edit.id; - }else if(edit.type == 1){ - var url = "/admin.php?s=/StatementMangement/editDownstreamOrder/id/"+edit.id+"/ext_field/"+ext_field; - }else if(edit.type == 2){ - var url = "/admin.php?s=/StatementMangement/PersonOrderEdit/id/"+edit.id+"/withdraw/"+ext_field+"/time_start/"+edit.start+"/time_end/"+edit.end; - } - - layer.open({ - type: 2, - title: "海南万盟天下科技有限公司", - shadeClose: true, - shade: 0.8, - area: ['70%', '80%'], - content: url - }); - }); - $(".statement_view").click(function () { - var id = $(this).data("id"); - - var type = $(this).data("type"); - if (type == 2) { - var url = "/admin.php?s=/StatementMangement/personOrderDetail/id/"+id; - } else { - var url = "/admin.php?s=/VerifyBill/show/id/"+id+"/from/pc"; - } - - layer.open({ - type: 2, - title: "海南万盟天下科技有限公司", - shadeClose: true, - shade: 0.8, - area: ['70%', '80%'], - content: url - }); - }); + + $(".statement_del").click(function () { var del = $(this).data(); layer.confirm('【警告】撤销后将不可回退,如需继续请点击确认', { diff --git a/Application/Admin/View/CompanyStatement/viewCpStatement.html b/Application/Admin/View/CompanyStatement/viewCpStatement.html new file mode 100644 index 000000000..67ba85220 --- /dev/null +++ b/Application/Admin/View/CompanyStatement/viewCpStatement.html @@ -0,0 +1,311 @@ + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
甲方: +
+ +
+
联系人: + +
联系电话: + +
邮寄地址: + +
公司税号: + +
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
乙方: +
+ +
+
联系人: + +
联系电话: + +
邮寄地址: + +
公司税号: + +
+
+
+
+ +
+
+

支付给:{$data.company} + +

+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
结算时间产品平台总额分成比例渠道费率税费费率结算金额
甲方乙方 + 结算金额=平台总额*(1-渠道费)*分成比例*(1-税费费率)
{$it.statement_begin_time}~{$it.statement_end_time}{$it.game_name}-{$it.pay_amount}{$it.pay_amount}{$it.first_ratio}%{$it.second_ratio}%{$it.promote_ratio}%{$it.fax_ratio}%-{$it.sum_money}{$it.sum_money}
合计{$data.statement_count.pay_amount}{$data.statement_count.statement_money}
本月分成总金额(人民币大写):{$data.statement_count.big_ratio_money}
+
+
+ +
+
+ + + + + + + + + + + + + + + +
收款方名称: + +
银行账号: + +
开户行: + +
+
+
+ + + + + + + + + + + +
开票项目: + +
发票类型: +
+ +
+ +
+
+
+
+ + diff --git a/Application/Admin/View/CompanyStatement/viewPcStatement.html b/Application/Admin/View/CompanyStatement/viewPcStatement.html new file mode 100644 index 000000000..b5c0b65a3 --- /dev/null +++ b/Application/Admin/View/CompanyStatement/viewPcStatement.html @@ -0,0 +1,305 @@ + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
甲方: +
+ +
+
联系人: + +
联系电话: + +
邮寄地址: + +
公司税号: + +
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
乙方: +
+ +
+
联系人: + +
联系电话: + +
邮寄地址: + +
公司税号: + +
+
+
+
+ +
+
+

支付给:{$data.company} + +

+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
结算时间产品平台总额(元)补点比例分成比例税费费率结算金额(元)
{$it.statement_begin_time}~{$it.statement_end_time}{$it.game_name}-{$it.pay_amount}{$it.pay_amount}{$it.increment_ratio}%{$it.ratio}%{$it.fax_ratio}%-{$it.sum_money}{$it.sum_money}
合计{$data.statement_count.pay_amount}{$data.statement_count.statement_money}
本月分成总金额(人民币大写):{$data.statement_count.big_ratio_money}
+
+
+ +
+
+ + + + + + + + + + + + + + + +
收款方名称: + +
银行账号: + +
开户行: + +
+
+
+ + + + + + + + + + + +
开票项目: + +
发票类型: +
+ +
+ +
+
+
+
+ + diff --git a/Data/update.sql b/Data/update.sql index 411dfb573..d1c839025 100644 --- a/Data/update.sql +++ b/Data/update.sql @@ -1869,6 +1869,7 @@ CREATE TABLE `tab_company_statement` ( `second_party_info` text NOT NULL DEFAULT '' COMMENT '乙方相关信息json', `statement_info` text NOT NULL DEFAULT '' COMMENT '订单相关信息json', `op_time` int(11) NOT NULL DEFAULT '0' COMMENT '操作时间', + `remark` varchar(255) COLLATE utf8mb4_bin NOT NULL COMMENT '备注', PRIMARY KEY (`id`), KEY `withdraw_type` (`withdraw_type`) USING BTREE, KEY `company_id` (`company_id`) USING BTREE,