master
chenzhi 5 years ago
parent 114cf4a503
commit bf7c7ed14f

@ -132,6 +132,9 @@ class AggregateFinanceSetController extends Controller {
$v['create_time'] = time();
$v['admin_name'] = "system";
$v['admin_id'] = 0;
$v['second_party_info'] = json_encode([
"partner"=>$v['channel_name']
],JSON_UNESCAPED_UNICODE);
$Aggregate->add($v);
}
}
@ -147,229 +150,5 @@ class AggregateFinanceSetController extends Controller {
public function setDateCount($date)
{
$this->date = $date;
$tarry = explode('-',$date);
$this->beginTime=mktime(0,0,0,$tarry[1],$tarry[2],$tarry[0]);
$this->endTime=mktime(0,0,0,$tarry[1],$tarry[2]-0+1,$tarry[0])-1;
set_time_limit(0);
$t1 = microtime(true);
//判断是否存在
$PromoteRes = $this->PromoteCountModel->where("date = '{$this->beginTime}'")->find();
$GameRes = $this->GameCountModel->where("date = '{$this->beginTime}'")->find();
$reset='';
if(!empty($PromoteRes) || !empty($GameRes) ){
if($this->reset){
$this->PromoteCountModel->where("date = '{$this->beginTime}'")->delete();
$this->GameCountModel->where("date = '{$this->beginTime}'")->delete();
$reset = "reset and creat ";
}else{
echo ("{$this->date} 已统计,请勿重复提交".PHP_EOL);
return;
}
}
$this->model->startTrans();
$this->addid = [];
$this->adddata = [];
$this->promoteNew();
$this->promotePayMoeny();
$this->promoteActive();
$this->promoteCreateDb();
// unset($this->addid);
// unset($this->adddata);
$this->gameid = [];
$this->gamedata = [];
$this->gameNew();
$this->gamePayMoeny();
$this->gameActive();
$this->gameCreateDb();
$this->model->commit();
$t2 = microtime(true);
echo ("{$this->date} {$reset}success runtime:".round($t2-$t1,3).'s'.PHP_EOL);
# code...
}
//=======================聚合推广员========================
//1聚合新增
public function promoteNew()
{
$map = ['register_time'=>['between',[$this->beginTime,$this->endTime]],"puid"=>0,"promote_id"=>["gt",0]];
$promoteNew = $this->UserModel->field('COUNT(1) AS new_user_count,promote_id,promote_account')
->where($map)
->group("promote_id")
->select();
$count = count($promoteNew);
for ($i=0; $i < $count; $i++) {
$this->addid[] = $promoteNew[$i]["promote_id"];
$this->adddata[$promoteNew[$i]["promote_id"]] = $promoteNew[$i];
}
unset($promoteNew);
}
//2聚合付费
public function promotePayMoeny()
{
$map = ['pay_time'=>['between',[$this->beginTime,$this->endTime]],"pay_status"=>1,"promote_id"=>["gt",0]];//1支付成功
$promotePayMoeny = $this->SpendModel->field('sum(pay_amount) AS pay_money_count,promote_id,promote_account')
->where($map)
->group("promote_id")
->select();
$count = count($promotePayMoeny);
for ($i=0; $i < $count; $i++) {
if (in_array($promotePayMoeny[$i]["promote_id"],$this->addid)) {
//存在
$this->adddata[$promotePayMoeny[$i]["promote_id"]]["pay_money_count"] = $promotePayMoeny[$i]["pay_money_count"];
}else{
$this->addid[] = $promotePayMoeny[$i]["promote_id"];
$this->adddata[$promotePayMoeny[$i]["promote_id"]] = $promotePayMoeny[$i];
}
}
unset($promotePayMoeny);
}
//3聚合活跃
public function promoteActive()
{
$map = ['login_time'=>['between',[$this->beginTime,$this->endTime]],"promote_id"=>["gt",0]];//0不是小号
$promoteActive = $this->LoginModel->field('COUNT(DISTINCT user_id) AS active_user_count,GROUP_CONCAT(DISTINCT user_id) active_user_list,promote_id')
->where($map)
->group("promote_id")
->select();
$count = count($promoteActive);
for ($i=0; $i < $count; $i++) {
if (in_array($promoteActive[$i]["promote_id"],$this->addid)) {
//存在
$this->adddata[$promoteActive[$i]["promote_id"]]["active_user_count"] = $promoteActive[$i]["active_user_count"];
$this->adddata[$promoteActive[$i]["promote_id"]]["active_user_list"] = $promoteActive[$i]["active_user_list"];
}else{
$this->addid[] = $promoteActive[$i]["promote_id"];
$this->adddata[$promoteActive[$i]["promote_id"]] = $promoteActive[$i];
}
}
unset($promoteActive);
}
//4加入数据库
public function promoteCreateDb()
{
$count = count($this->addid);
if ($count > 0) {
foreach ($this->adddata as $key => $value) {
$value['date']=$this->beginTime;
$value['create_time']=$this->nowdata;
$value['active_user_list'] = @json_encode(array_map("intFun",explode(",",$value['active_user_list'])));
if(empty($value['promote_account']) && $value['promote_id']){
if($value['promote_id'] == 0){
$value['promote_account'] = "官方渠道";
}else{
$value['promote_account'] = $this->PromoteModel->field("account")->where("id = {$value['promote_id']}")->find()['account'];
if(!$value['promote_account']){
$value['promote_account']="未知推广员";
}
}
}
$tempdbres = $this->PromoteCountModel->add($value);
if($tempdbres === false){
$this->model->rollback();
die("error");
}
}
}
}
//=======================聚合游戏========================
//1聚合新增
public function gameNew()
{
$map = ['register_time'=>['between',[$this->beginTime,$this->endTime]],"puid"=>0,"fgame_id"=>["gt",0]];//0不是小号
$gameNew = $this->UserModel->field('COUNT(1) AS new_user_count,fgame_id game_id,fgame_name game_name')
->where($map)
->group("fgame_id")
->select();
$count = count($gameNew);
for ($i=0; $i < $count; $i++) {
$this->gameid[] = $gameNew[$i]["game_id"];
$this->gamedata[$gameNew[$i]["game_id"]] = $gameNew[$i];
}
unset($gameNew);
}
//2聚合付费
public function gamePayMoeny()
{
$map = ['pay_time'=>['between',[$this->beginTime,$this->endTime]],"pay_status"=>1,"game_id"=>["gt",0]];//1支付成功
$gamePayMoeny = $this->SpendModel->field('sum(pay_amount) AS pay_money_count,game_id,game_name')
->where($map)
->group("game_id")
->select();
$count = count($gamePayMoeny);
for ($i=0; $i < $count; $i++) {
if (in_array($gamePayMoeny[$i]["game_id"],$this->gameid)) {
//存在
$this->gamedata[$gamePayMoeny[$i]["game_id"]]["pay_money_count"] = $gamePayMoeny[$i]["pay_money_count"];
}else{
$this->gameid[] = $gamePayMoeny[$i]["game_id"];
$this->gamedata[$gamePayMoeny[$i]["game_id"]] = $gamePayMoeny[$i];
}
}
unset($gamePayMoeny);
}
//3聚合活跃
public function gameActive()
{
$map = ['login_time'=>['between',[$this->beginTime,$this->endTime]],"game_id"=>["gt",0]];//0不是小号
$gameActive = $this->LoginModel->field('COUNT(DISTINCT user_id) AS active_user_count,GROUP_CONCAT(DISTINCT user_id) active_user_list,game_id,game_name')
->where($map)
->group("game_id")
->select();
$count = count($gameActive);
for ($i=0; $i < $count; $i++) {
if (in_array($gameActive[$i]["game_id"],$this->gameid)) {
//存在
$this->gamedata[$gameActive[$i]["game_id"]]["active_user_count"] = $gameActive[$i]["active_user_count"];
$this->gamedata[$gameActive[$i]["game_id"]]["active_user_list"] = $gameActive[$i]["active_user_list"];
}else{
$this->gameid[] = $gameActive[$i]["game_id"];
$this->gamedata[$gameActive[$i]["game_id"]] = $gameActive[$i];
}
}
unset($gameActive);
}
//4加入数据库
public function gameCreateDb()
{
$count = count($this->gameid);
if ($count > 0) {
foreach ($this->gamedata as $key => $value) {
$value['date']=$this->beginTime;
$value['create_time']=$this->nowdata;
$value['active_user_list'] = @json_encode(array_map("intFun",explode(",",$value['active_user_list'])));
$tempdbres = $this->GameCountModel->add($value);
if($tempdbres === false){
$this->model->rollback();
die("error");
}
}
}
}
}

@ -28,64 +28,73 @@ class AggregateFinanceStatementController extends ThinkController
$row = empty($row) ? 10 : $row;//每页条数
$map = [];
if (isset($_REQUEST['time_start']) && isset($_REQUEST['time_end'])) {
$map["_string"] = "(begintime BETWEEN {$_REQUEST['time_start']} AND {$_REQUEST['time_end']}) OR (endtime BETWEEN {$_REQUEST['time_start']} AND {$_REQUEST['time_end']})";
$time_start = strtotime($_REQUEST['time_start']);
$time_end = strtotime($_REQUEST['time_end'])+ 86399;
$map["_string"] = "(begintime BETWEEN {$time_start} AND {$time_end}) OR (endtime BETWEEN {$time_start} AND {$time_end})";
} elseif (isset($_REQUEST['time_start'])) {
$map["_string"] = "(begintime >= {$_REQUEST['time_start']} ) OR (endtime >= {$_REQUEST['time_end']})";
$time_start = strtotime($_REQUEST['time_start']);
$map["_string"] = "(begintime >= {$time_start} ) OR (endtime >= {$time_start})";
} elseif (isset($_REQUEST['time_end'])) {
$map["_string"] = "(begintime <= {$_REQUEST['time_start']} ) OR (endtime <= {$_REQUEST['time_end']})";
$time_end = strtotime($_REQUEST['time_end'])+ 86399;
$map["_string"] = "(begintime <= {$time_end} ) OR (endtime <= {$time_end})";
}
if (isset($_REQUEST['time_start2']) && isset($_REQUEST['time_end2'])) {
$map['create_time'] = ['between', [strtotime($_REQUEST['time_start2']), strtotime($_REQUEST['time_end2']) + 86399]];
} elseif (isset($_REQUEST['time_start2'])) {
$map['create_time'] = ['EGT', strtotime($_REQUEST['time_start2'])];
} elseif (isset($_REQUEST['time_end2'])) {
$map['create_time'] = ['ELT', strtotime($_REQUEST['time_end2']) + 86399];
}
if ($_REQUEST['verify_status']) {
$map['verify_status'] = $_REQUEST['verify_status'];
}
if ($_REQUEST['channel_id']) {
$map['channel_id'] = $_REQUEST['channel_id'];
}
if ($_REQUEST['withdraw_type']) {
$map['withdraw_type'] = $_REQUEST['withdraw_type'];
$typeflag = false;
if (isset($_REQUEST['withdraw_type'])) {
if($_REQUEST['withdraw_type'] == 1){
$typeflag = 1;//月结
$map["withdraw_type"] = 1;
}else{
$typeflag = 2;//周结
$map["withdraw_type"] = ["in",[0,2]];
}
}
if (isset($_REQUEST['withdraw_type2'])) {
if($_REQUEST['withdraw_type2'] == 2){
if($typeflag == 1){ //月结的补点找不到
$map['withdraw_type'] = 999;
}else{ //周结的补点就是补点
$map['withdraw_type'] = 2;
}
}else{
if($typeflag == 1){//月结的正常=月结
$map['withdraw_type'] = 1;
}elseif($typeflag == 2){//周结的正常=周结
$map['withdraw_type'] = 0;
}else{//没选的正常是 非补点
$map['withdraw_type'] = ["in",[0,1]];
}
}
}
$data = M("aggregate_statement","tab_")
->where($map)
->order("create_time Desc");
if($is_export){
$data = $data->select();
}else{
$data = $data->page($page,$row)->select();
}
->order("create_time Desc")->page($page,$row)->select();
foreach($data as $key => $value) {
$data[$key]['verify_status_str'] = $this->verify_status[$value['verify_status']];
$data[$key]['create_time'] = date('Y-m-d H:i:s',$value['create_time']);
$data[$key]['begintime'] = date('Y-m-d H:i:s',$value['begintime']);
$data[$key]['endtime'] = date('Y-m-d H:i:s',$value['endtime']);
$data[$key]['withdraw_type_1'] = ($value['withdraw_type'] == 1 ? "月结" :"周结");
$data[$key]['withdraw_type_2'] = ($value['withdraw_type'] == 2 ? "补点" :"正常结算");
}
$count = M("aggregate_statement","tab_")->field("count(id) count,SUM(ratio_money) ratio_money")->where($map)->find();
// // var_dump($data);die();
// foreach ($data as $key => $value) {
// $data[$key]['order'] = json_decode($value['second_party_info'],true)['order_type'];
// }
// $sumData = M("statement","tab_")
// ->field('sum(`statement_money`) as sum_money,statement_type')
// ->where($map)
// ->group('statement_type')
// ->select();
// $handleSumData = [];
// foreach ($sumData as $key => $value) {
// $handleSumData[$value['statement_type']] = $value['sum_money'];
// }
// if (!$handleSumData[1]) {
// $handleSumData[1] = 0;
// }
// if (!$handleSumData[0]) {
// $handleSumData[0] = 0;
// }
// $this->assign('sum',$handleSumData);
// // dump($sumData);die();
//分页
$parameter['p'] = $page;
@ -107,8 +116,81 @@ class AggregateFinanceStatementController extends ThinkController
public function getAggChannel()
{
return M("aggregate_statement","tab_")->field("channel_id,channel_name")->group("channel_id")->select();
# code...
}
//申请开票
public function createStatement(){
if (isset($_REQUEST['id'])){
$id = $_REQUEST['id'];
}else{
$this->error("参数错误");
}
$info = M("aggregate_statement","tab_")->field("statement_info,pay_money,ratio_money")->where("id={$id}")->find();
$statement_info = json_decode($info['statement_info'],true);
$this->assign('data',$statement_info);
$this->assign('data_count',["pay_money"=>$info['pay_money'],"ratio_money"=>$info['ratio_money']]);
$this->assign('id',$id);
$this->display();
}
public function doAddStatement(){
$first_partner_type = $_REQUEST['first_partner_type'];
$second_party_info = $_REQUEST['second_party_info'];
$statement_info = $_REQUEST['statement_info'];
$admininfo = $_SESSION['onethink_admin']['user_auth'];
$data_count = $_REQUEST['statement_count'];
//拼凑数据
$adddata = array(
"pay_money"=>$data_count['pay_money'],
"ratio_money"=>$data_count['ratio_money'],
"pay_type"=>$_REQUEST['statement_type'] == 0 ? 1 :0,
"first_party_info"=>json_encode($_REQUEST['first_party_info'],JSON_UNESCAPED_UNICODE),
"second_party_info"=>json_encode($_REQUEST['second_party_info'],JSON_UNESCAPED_UNICODE),
"statement_info"=>json_encode($statement_info,JSON_UNESCAPED_UNICODE),
"admin_name"=>$admininfo['username'],
"admin_id"=>$admininfo['uid'],
"verify_status"=>1
);
$id = $_REQUEST['statement_id'];
$res = M("aggregate_statement","tab_")->where("id = '{$id}'")->save($adddata);
if($res !== false){
$this->ajaxReturn(array("success"=>"ok","code"=>0));
}else{
$this->ajaxReturn(array("error"=>"database error","code"=>2000));
}
}
//获取公司信息
public function getCompanyList()
{
$id = $_REQUEST['id'];
$cpCompany = M("aggregate_statement","tab_")->field("id,second_party_info")->where("id={$id}")->find();
$data = array();
$data['ptCompany']= M("CompanyInfo","tab_")->field('id,partner')->select();
$data['cpCompany']= [[
"id"=> $cpCompany['id'],
"partner"=>json_decode($cpCompany['second_party_info'],true)['partner']
]];
$this->ajaxReturn(array("success"=>$data,"code"=>2000));
}
public function getCpCompanyInfo()
{
$CompanyId = $_REQUEST['company_id'];
$company_type = $_REQUEST['company_type'];
if($company_type == 'pt'){
$info = M("CompanyInfo","tab_")->field("id,partner,link_man,link_phone,address,company_tax_no,payee_name,bank_account,opening_bank")->where("id = '{$CompanyId}'")->find();
}else{
$cpCompany = M("aggregate_statement","tab_")->field("id,second_party_info")->where("id={$CompanyId}")->find();
$info = json_decode($cpCompany['second_party_info'],true);
}
$info['invoice_item'] = "信息技术服务费";
$info['invoice_type'] = "增值税专用发票";
if(empty($info)){
$this->ajaxReturn(array("error"=>"no find","code"=>2000));
}else{
$this->ajaxReturn(array("success"=>$info,"code"=>0));
}
}
}

@ -0,0 +1,896 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="UTF-8">
<title></title>
<link rel="stylesheet" type="text/css" href="__CSS__/base.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/common.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/style.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/default_color.css" media="all">
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<script type="text/javascript" src="__STATIC__/jquery-2.0.3.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<script type="text/javascript" src="__STATIC__/layer3/layer.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js"charset="UTF-8"></script>
<script src="__STATIC__/juicer-min.js" type="text/javascript"></script>
</head>
<style>
html {
min-width:100%;
}
body {
padding: 0px 0px 150px;
width: 960px;
margin: auto;
}
.tabcon1711 table{
width: 480px;
}
table{
margin: auto;
}
.hidebox{
display: none;
}
.r{
width: 300px;
}
.l{
width: 180px;
}
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;
height: 35px;
height: 28px;
border-radius: 3px;
font-size: 12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height: 35px;
line-height: 28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height: 26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height: 26px;
line-height: 26px;
font-size: 12px;
}
.select2-results__option[aria-selected] {
font-size: 12px;
}
.input-list, .i_list {
float: left;
margin: 0;
}
</style>
<body>
<!-- <div style="width: 100%;line-height: 100px;font-size: 25px;font-weight: 600;text-align: center;">
海南万盟天下科技有限公司
</div> -->
<div style="display: flex;margin: auto;">
<div class="tab-content tabcon1711" id="firstPartBaseInfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">公司类型:</td>
<td class="r">
<div class="input-list input-list-game search_label_rehab">
<select id="first_partner_type" name="first_partner_type" class="select_gallery">
<option value="">请选择甲方公司类型</option>
<option value="0">CP上游公司</option>
<option value="1">平台归属公司</option>
</select>
</div>
</td>
</tr>
<tr>
<td class="l">甲方:</td>
<td class="r">
<div class="input-list input-list-game search_label_rehab">
<select id="first_partner_id" name="partner_id" class="select_gallery">
<option value="">请选择合作公司</option>
</select>
</div>
</td>
</tr>
<tbody id="first_part_bser_info_show">
<tr>
<td class="l">联系人:</td>
<td class="r">
<input type="text" class="txt" name="link_man" value="" disabled="disabled" placeholder="请先选择甲方公司">
</td>
</tr>
<tr>
<td class="l">联系电话:</td>
<td class="r">
<input type="text" class="txt" name="link_phone" value="" disabled="disabled" placeholder="请先选择甲方公司">
</td>
</tr>
<tr>
<td class="l">邮寄地址:</td>
<td class="r">
<input type="text" class="txt" name="address" value="" disabled="disabled" placeholder="请先选择甲方公司">
</td>
</tr>
<tr>
<td class="l">公司税号:</td>
<td class="r">
<input type="text" class="txt" name="company_tax_no" disabled="disabled" value="" placeholder="请先选择甲方公司">
</td>
</tr>
</tbody>
</tbody>
</table>
</div>
<div class="tab-content tabcon1711" id="secondPartBaseInfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l"></td>
<td class="r"></td>
</tr>
<tr>
<td class="l">乙方:</td>
<td class="r">
<div class="input-list input-list-game search_label_rehab">
<select id="second_partner_id" name="partner_id" class="select_gallery">
<option value="">请选择合作公司</option>
</select>
</div>
</td>
</tr>
<tbody id="second_part_bser_info_show">
<tr>
<td class="l">联系人:</td>
<td class="r">
<input type="text" class="txt" name="link_man" value="" disabled="disabled" placeholder="请先选择合作公司">
</td>
</tr>
<tr>
<td class="l">联系电话:</td>
<td class="r">
<input type="text" class="txt" name="link_phone" value="" disabled="disabled" placeholder="请先选择合作公司">
</td>
</tr>
<tr>
<td class="l">邮寄地址:</td>
<td class="r">
<input type="text" class="txt" name="address" value="" disabled="disabled" placeholder="请先选择合作公司">
</td>
</tr>
<tr>
<td class="l">公司税号:</td>
<td class="r">
<input type="text" class="txt" name="company_tax_no" value="" disabled="disabled" placeholder="请先选择合作公司">
</td>
</tr>
</tbody>
</tbody>
</table>
</div>
</div>
<div style="padding: 30px 0px 10px;display: block;height:30px;">
<div class="input-list input-list-server search_label_rehab">
<p style="font-size: 20px;font-weight: 600;">支付给:</p>
</div>
<div class="input-list input-list-server search_label_rehab" style="margin-left: 20px;">
<select id="statement_type" name="statement_type" class="select_gallery" style="width: 215px;">
<option value="">请选择合作公司</option>
</select>
</div>
</div>
<!-- <div class="search_list" style="display: block;line-height: 30px;height: 10px;">
<div class="input-list input-list-server search_label_rehab">
<p>请选择需要生成结算订单的月份:</p>
</div>
<div class="input-list" style="margin-left: 20px;">
<input type="text" readonly id="time_start" name="time_start" class="" value="{:I('time_start')}"
placeholder="开始时间" />
&nbsp;-&nbsp;
<div class="input-append date" id="datetimepicker" style="display:inline-block">
<input type="text" readonly id="time_end" name="time_end" class="" value="{:I('time_end')}"
placeholder="结束时间" />
<span class="add-on"><i class="icon-th"></i></span>
</div>
</div>
<div class="input-list" style="margin-left: 30px;">
<a class="sch-btn" href="javascript:;" id="getSpendStatement" style="width: 100px;">生成</a>
</div>
</div> -->
<!-- <div style="font-size: 12px;color:#777;">仅当选择时间为每月的1号至当月的最后一天才满足月结梯度分成比例,否则默认比例为最低分成比例。</div> -->
<div class="data_list box_mt" style="margin-top: 10px;">
<div class="">
<table>
<!-- 表头 -->
<thead>
<tr>
<th style="border-right: solid 1px #b6cad2;">结算时间</th>
<th style="border-right: solid 1px #b6cad2;">产品</th>
<th style="border-right: solid 1px #b6cad2;">平台总额</th>
<th style="border-right: solid 1px #b6cad2;">分成比例</th>
<th style="border-right: solid 1px #b6cad2;">税费费率</th>
<th >结算金额</th>
</tr>
</thead>
<!-- 列表 -->
<tbody id="statementInit" class="">
<tr style="height: 100px;">
<td colspan=8>
请先选择生成条件后点击生成对账数据
</td>
</tr>
</tbody>
<tbody id="statementShow">
</tbody>
</table>
</div>
</div>
<div id="partpatinfo" style="display: flex;margin: auto;">
<div class="tab-content tabcon1711" id="skf_payinfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">收款方名称:</td>
<td class="r">
<input type="text" class="txt" name="" disabled="disabled" placeholder="请先选择支付给谁" value="">
</td>
</tr>
<tr>
<td class="l">银行账号:</td>
<td class="r">
<input type="text" class="txt" name="" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr>
<tr>
<td class="l">开户行:</td>
<td class="r">
<input type="text" class="txt" name="password" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr>
</tbody>
</table>
</div>
<div class="tab-content tabcon1711" id="fkf_payinfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">开票项目:</td>
<td class="r">
<input type="text" class="txt" disabled="disabled" placeholder="请先选择支付给谁" name="invoice_item" value="">
</td>
</tr>
<tr>
<td class="l">发票类型:</td>
<td class="r">
<input type="text" class="txt" disabled="disabled" placeholder="请先选择支付给谁" name="invoice_type" value="">
</td>
</tr>
<!-- <tr>
<td class="l">付款方名称:</td>
<td class="r">
<input type="text" class="txt" name="" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr>
<tr>
<td class="l">银行账号:</td>
<td class="r">
<input type="text" class="txt" name="password" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr>
<tr>
<td class="l">开户行:</td>
<td class="r">
<input type="text" class="txt" name="" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr> -->
</tbody>
</table>
</div>
</div>
<div class="search_list" style="display: flex;justify-content:flex-end;width:960px;">
<div class="input-list" style="margin-left: 30px;float: right;">
<a class="sch-btn" href="javascript:;" id="createStatement" style="width: 150px;">申请开票</a>
</div>
</div>
<script type="text/html" id="partbasetpl">
<tr>
<td class="l">联系人:</td>
<td class="r">
<input type="text" class="txt normalchange" data-change="${type}.link_man" name="link_man" value="${link_man|nonull}" placeholder="请输入联系人">
</td>
</tr>
<tr>
<td class="l">联系电话:</td>
<td class="r">
<input type="text" class="txt normalchange" name="link_phone" data-change="${type}.link_phone" value="${link_phone|nonull}" placeholder="请输入联系电话">
</td>
</tr>
<tr>
<td class="l">邮寄地址:</td>
<td class="r">
<input type="text" class="txt normalchange" name="address" data-change="${type}.address" value="${address|nonull}" placeholder="请输入地址">
</td>
</tr>
<tr>
<td class="l">公司税号:</td>
<td class="r">
<input type="text" class="txt normalchange" name="company_tax_no" data-change="${type}.company_tax_no" value="${company_tax_no|nonull}" placeholder="请输入公司税号">
</td>
</tr>
</script>
<script type="text/html" id="partpaytpl">
<div class="tab-content tabcon1711" id="skf_payinfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">收款方名称:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入收款方名称" data-change="${'skf'|setChange}.payee_name" name="payee_name" value="${skfdata.payee_name|nonull}">
</td>
</tr>
<tr>
<td class="l">银行账号:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入银行账号" name="bank_account" data-change="${'skf'|setChange}.bank_account" value="${skfdata.bank_account|nonull}">
</td>
</tr>
<tr>
<td class="l">开户行:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入开户行" data-change="${'skf'|setChange}.opening_bank" value="${skfdata.opening_bank|nonull}" name="opening_bank">
</td>
</tr>
</tbody>
</table>
</div>
<div class="tab-content tabcon1711" id="fkf_payinfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">开票项目:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="信息技术服务费" data-change="${'skf'|setChange}.invoice_item" name="invoice_item" value="${skfdata.invoice_item|nonull}">
</td>
</tr>
<tr>
<td class="l">发票类型:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="增值税专用发票" name="invoice_type" data-change="${'skf'|setChange}.invoice_type" value="${skfdata.invoice_type|nonull}">
</td>
</tr>
<!-- <tr>
<td class="l">付款方名称:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入付款方名称" data-change="${'fkf'|setChange}.payee_name" name="payee_name" value="${fkfdata.payee_name|nonull}">
</td>
</tr>
<tr>
<td class="l">银行账号:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入银行账号" data-change="${'fkf'|setChange}.bank_account" name="bank_account" value="${fkfdata.bank_account|nonull}" >
</td>
</tr>
<tr>
<td class="l">开户行:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入开户行" data-change="${'fkf'|setChange}.opening_bank" value="${fkfdata.opening_bank|nonull}" name="opening_bank">
</td>
</tr> -->
</tbody>
</table>
</div>
</script>
<script type="text/html" id="statementTpl">
{@each list as it,index}
<tr>
<td>${it.begintime}~${it.endtime}</td>
<td>${it.game_name}</td>
<td>${it.money}元</td>
<td><input type="text" class="txt statementchange" name="ratio" data-index ="${index}" data-change="statement_info[${index}]['ratio']" value="${it.ratio}" style="width: 40px;">%</td>
<td><input type="text" class="txt statementchange" name="fax_ratio" data-index ="${index}" data-change="statement_info[${index}]['fax_ratio']" value="${it.fax_ratio}" style="width: 40px;">%</td>
<td>${it.ratio_money}元</td>
</tr>
{@/each}
<tr>
<td>合计</td>
<td></td>
<td>${count.pay_money}元</td>
<td></td>
<td></td>
<td>${count.ratio_money}元</td>
</tr>
<tr>
<td colspan=5>本月分成总金额(人民币大写):</td>
<td>${count.ratio_money|number_chinese}</td>
</tr>
</script>
<script>
$(function(){
TPLSHOW.juicerInit();
$(".select_gallery").select2();
$('#time_start').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
minView: 2,
autoclose: true,
endDate:new Date()
});
$('#datetimepicker').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
minView: 2,
endDate:new Date(),
autoclose: true,
pickerPosition: 'bottom-left'
})
EVENT.changeCompany();
EVENT.createStatement();
//获取账单信息
TPLSHOW.showStatementList(true);
// $("#first_partner_id").change();//默认甲方只能是我们公司
});
//基础类
var PUBLIC = {
CompanyKeyName:{
id:"公司表id",
partner:"公司名称",
link_man:'联系人',
link_phone:"联系电话",
address:'邮寄地址',
company_tax_no:'公司税号',
payee_name:'名称',
bank_account:"银行账号",
opening_bank:"开户行"
},
checkCompanyKey(type,key){
//获取公司名
var company = '';
if(key == "payee_name" || key == "bank_account" || key == "opening_bank"){
if((DATAOBJ.statement_type == 0 && type == "first_party_info") || (DATAOBJ.statement_type == 1 && type == "second_party_info")){
company = "收款方";
}
if((DATAOBJ.statement_type == 0 && type == "second_party_info")|| (DATAOBJ.statement_type == 1 && type == "first_party_info")){
company = "付款方";
}
}else{
if(type == "first_party_info"){
company = "甲方";
}else{
company = "乙方";
}
}
//获取键名
try {
var keyname = company+PUBLIC.CompanyKeyName[key];
} catch (error) {
var keyname = false;
}
//验证
if(DATAOBJ[type][key] ===''){
layer.msg(keyname+"不能为空");
return false;
}
if(key == "link_phone" && !CHECK.mobile.test(DATAOBJ[type][key])){
layer.msg(keyname+"格式错误");
return false;
}
if(key == "bank_account" && !CHECK.BankNo.test(DATAOBJ[type][key])){
layer.msg(keyname+"格式错误");
return false;
}
return true;
},
postData(url,data,callback){
$.ajax({
url:url,
data:data,
type:"post",
dataType:"json",
success:function(data){
callback(data)
}
})
},
floatAdd(a,b){
return Math.round(a*100+b*100)/100;
},
floatCut(a,b){
return Math.round(a*100-b*100)/100;
}
}
//数据类
var DATAOBJ = {
first_partner_type:false,
first_part_company:false,
second_part_company:false,
statement_type:false,
first_party_info:false,
second_party_info:false,
statement_info:{$data|json_encode=###,JSON_UNESCAPED_UNICODE},
statement_count:{$data_count|json_encode=###,JSON_UNESCAPED_UNICODE},
fine:0,
// statement_begin_time:false,
// statement_end_time:false,
statement_id:{$id}
}
//事件类
var EVENT = {
changeCompany(){
$("#first_partner_type").on("change",function(){
var type = $(this).find("option:selected").val();
if(type == ''){
type=false;
}
DATAOBJ.first_partner_type = type;
//获取cp和内部公司
var url = "{:U('getCompanyList')}";
PUBLIC.postData(url,{id:DATAOBJ.statement_id},function(data){
var ptCompany = data.success.ptCompany;
var cpCompany = data.success.cpCompany;
var ptstr = '<option value="">请选择平台归属公司</option>';
for (var i in ptCompany) {
ptstr += "<option value='" + ptCompany[i].id + "'>" + ptCompany[i].partner + "</option>"
}
var cpstr = '<option value="">请选择合作公司</option>';
for (var i in cpCompany) {
cpstr += "<option value='" + cpCompany[i].id + "'>" + cpCompany[i].partner + "</option>"
}
//
if(type == 0){
$("#first_partner_id").html(cpstr);
$("#second_partner_id").html(ptstr);
}else{
$("#first_partner_id").html(ptstr);
$("#second_partner_id").html(cpstr);
}
$("#first_partner_id").select2();
$("#second_partner_id").select2();
//重置数据
DATAOBJ.first_part_company=false;
DATAOBJ.second_part_company=false;
TPLSHOW.pushStatementTypeOption();
})
})
$("#first_partner_id").on("change",function(){
//获取数据
var comid = $(this).find("option:selected").val();
//获取基础数据
var url = "{:U('getCpCompanyInfo')}";
var company_type;
if(DATAOBJ.first_partner_type == 0){
//CP上游公司
company_type = "cp";
}else{
company_type = "pt";
}
PUBLIC.postData(url,{company_id:comid,company_type:company_type},function(data){
DATAOBJ.first_part_company = data.success.partner;
DATAOBJ.first_party_info = data.success;
data.success.type = "first_party_info";
TPLSHOW.firstPartInfo(data.success);
})
})
$("#second_partner_id").on("change",function(){
//获取数据
var comid = $(this).find("option:selected").val();
//获取基础数据
var url = "{:U('getCpCompanyInfo')}";
var company_type;
if(DATAOBJ.first_partner_type == 0){
//CP上游公司
company_type = "pt";
}else{
company_type = "cp";
}
PUBLIC.postData(url,{company_id:comid,company_type:company_type},function(data){
DATAOBJ.second_part_company = data.success.partner;
DATAOBJ.second_party_info = data.success;
data.success.type = "second_party_info";
TPLSHOW.secondPartInfo(data.success);
})
})
//生成订单
// $("#getSpendStatement").on("click",function(){
// //获取开始结束时间
// var time_start = $("#time_start").val();
// var time_end = $("#time_end").val();
// if(time_start == '' || time_end == '' || DATAOBJ.statement_type === false){
// layer.msg("收款方或账单开始结束时间均不允许为空");
// return false;
// }
// if (Date.parse(time_start) > Date.parse(time_end)){
// layer.msg('开始时间必须小于等于结束时间');
// return false;
// }
// var company_id;
// if(DATAOBJ.first_partner_type == 0){
// //CP上游公司
// company_id = $("#first_partner_id").find("option:selected").val();
// }else{
// company_id = $("#second_partner_id").find("option:selected").val();
// }
// //发起查询
// var selectData = {
// "time_start":time_start,
// "time_end":time_end,
// "statement_type":DATAOBJ.statement_type,
// "first_partner_type":DATAOBJ.first_partner_type,
// "company_id": company_id
// }
// var url = "{:U('getSpendStatement')}";
// PUBLIC.postData(url,selectData,function(data){
// console.log(data);
// if(data.code > 0){
// layer.alert(data.error);
// return false;
// }else{
// DATAOBJ.statement_begin_time = time_start;
// DATAOBJ.statement_end_time = time_end;
// DATAOBJ.statement_info = data.success;
// DATAOBJ.statement_count = data.count;
// TPLSHOW.showStatementList(true);
// }
// })
// })
},
createStatement(){
$("#createStatement").on("click",function(){
//验证信息
for (const key in DATAOBJ) {
if(DATAOBJ[key] === false){
layer.msg('页面中的参数均是必填项目,请先填满');
return false;
}
}
//验证甲方信息
// for (const key in DATAOBJ.first_party_info) {
// var t = DATAOBJ.first_party_info;
// var flag = PUBLIC.checkCompanyKey("first_party_info",key);
// if(!flag){
// return flag;
// }
// }
// //乙方
// for (const key in DATAOBJ.second_party_info) {
// var t = DATAOBJ.second_party_info;
// var flag = PUBLIC.checkCompanyKey("second_party_info",key);
// if(!flag){
// return flag;
// }
// }
layer.load(2);
$("#createStatement").off("click");//自我解绑
PUBLIC.postData("{:U('doAddStatement')}",DATAOBJ,function(data){
if(data.success){
layer.closeAll('loading');
layer.msg('添加成功');
setTimeout(function(){
window.parent.reload();
},350);
}else{
alert("添加失败,请联系管理员")
}
});
//发送添加请求
})
},
normalchange(){
$(".normalchange").off("blur");
$(".normalchange").on("blur",function(){
var val = $(this).val();
var index = $(this).data("change");
var str = "DATAOBJ."+index+"='"+val+"';";
eval(str);
})
},
statementchange(){
$(".statementchange").off("blur");
$(".statementchange").on("blur",function(){
// alert(1);
var sort = $(this).data("change");
var val = $(this).val();
var vdata = eval("DATAOBJ."+sort);//原先值
var dom = $(this);
if(!CHECK.number.test(val)){
layer.msg('结算单中的税率必须是数字,且不能为空');
dom.val(vdata);
return false;
}
var str = "DATAOBJ."+sort+"='"+val+"';";
if(val > 100 || val < 0){
layer.msg('结算单中的税率不允许大于100和小于0');
dom.val(vdata);
return false;
}
eval(str);
var index = $(this).data("index");
var td = DATAOBJ.statement_info[index];
var ratio = td['ratio']/100;
DATAOBJ.statement_count['ratio_money'] = PUBLIC.floatCut(DATAOBJ.statement_count['ratio_money'],td['ratio_money']);
td['ratio_money'] = Math.round((td['money']*ratio*(100-td['fax_ratio'])/100)* 100) / 100 ;
DATAOBJ.statement_count['ratio_money']=PUBLIC.floatAdd(DATAOBJ.statement_count['ratio_money'],td['ratio_money']);
TPLSHOW.showStatementList(true);
})
},
changeStatementType(){
$("#statement_type").off("change")
$("#statement_type").on("change",function(){
//获取数据
var statement_type = $(this).find("option:selected").val();
if(statement_type == ''){
statement_type = false;
}
DATAOBJ.statement_type = statement_type;
TPLSHOW.showPartPayInfo();
// TPLSHOW.showStatementList(true);
})
$(".select_gallery").select2();
}
}
var CHECK = {
number: /^\d+(\.{1}\d+)?$/,
mobile:/^1[3456789]\d{9}$/,
// BankNo:/^([1-9]{1})(\d{15}|\d{18})$/,
BankNo:/^([1-9]{1})\d{10,19}$/,
money:/((^[1-9]\d*)|^0)(\.\d{0,2}){0,1}$/
}
//
var TPLSHOW = {
juicerInit(){
var nonull = function(data) {
if(!data){
return '';
}
return data;
};
var setChange = function(typestr) {
if(DATAOBJ.statement_type == 0){
if(typestr == "fkf"){
return 'second_party_info';
}else{
return 'first_party_info';
}
}else{
if(typestr == "fkf"){
return 'first_party_info';
}else{
return 'second_party_info';
}
}
};
var number_chinese = function (str) {
var num = parseFloat(str);
var strOutput = "",
strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分';
num += "00";
var intPos = num.indexOf('.');
if (intPos >= 0){
num = num.substring(0, intPos) + num.substr(intPos + 1, 2);
}
strUnit = strUnit.substr(strUnit.length - num.length);
for (var i=0; i < num.length; i++){
strOutput += '零壹贰叁肆伍陆柒捌玖'.substr(num.substr(i,1),1) + strUnit.substr(i,1);
}
return strOutput.replace(/零角零分$/, '整').replace(/零[仟佰拾]/g, '零').replace(/零{2,}/g, '零').replace(/零([亿|万])/g, '$1').replace(/零+元/, '元').replace(/亿零{0,3}万/, '亿').replace(/^元/, "零元")
}
juicer.register('nonull', nonull);
juicer.register('setChange', setChange);
juicer.register('number_chinese', number_chinese);
},
//
firstPartInfo(data){
var tpl =$("#partbasetpl").html();
var html = juicer(tpl, data);
$("#first_part_bser_info_show").html(html);
TPLSHOW.pushStatementTypeOption();
},
secondPartInfo(data){
var tpl =$("#partbasetpl").html();
var html = juicer(tpl, data);
$("#second_part_bser_info_show").html(html);
TPLSHOW.pushStatementTypeOption();
},
//支付给公司
pushStatementTypeOption(){
EVENT.normalchange();
DATAOBJ.statement_type = false;//重新选择
// TPLSHOW.showStatementList(false);
if(DATAOBJ.first_part_company && DATAOBJ.second_part_company){
var str = "<option value=''>请选择合作公司</option><option value='0' selected>"+DATAOBJ.first_part_company+"</option>";
str += ("<option value='1' >"+DATAOBJ.second_part_company+"</option>");//默认支付给甲方
$("#statement_type").html(str);
EVENT.changeStatementType();
$("#statement_type").change();//默认支付给乙方
// TPLSHOW.showPartPayInfo();//查看底下是否有值
}else{
var str = "<option value=''>请选择合作公司</option>";
$("#statement_type").html(str);
EVENT.changeStatementType();
}
},
//支付信息显示
showPartPayInfo(){
var data = {};
if(DATAOBJ.statement_type !== false){
if(DATAOBJ.statement_type == 1){
data.fkfdata = DATAOBJ.first_party_info;
data.skfdata = DATAOBJ.second_party_info;
}else{
data.skfdata = DATAOBJ.first_party_info;
data.fkfdata = DATAOBJ.second_party_info;
}
data.type = DATAOBJ.statement_type;
}else{
data.skfdata = {};
data.fkfdata = {};
}
var tpl =$("#partpaytpl").html();
var html = juicer(tpl, data);
$("#partpatinfo").html(html);
EVENT.normalchange();
},
//订单信息显示
showStatementList(flag){
if(flag){
var data = {list:DATAOBJ.statement_info,count:DATAOBJ.statement_count,fine:DATAOBJ.fine};
console.log(DATAOBJ);
$("#statementInit").addClass("hidebox");
var tpl =$("#statementTpl").html();
var html = juicer(tpl, data);
$("#statementShow").html(html);
EVENT.statementchange();
}else{
// DATAOBJ.statement_info = false;
// DATAOBJ.statement_count = false;
// DATAOBJ.fine = 0;
$("#statementInit").removeClass("hidebox");
$("#statementShow").html('');
}
}
}
</script>
</body>
</html>

@ -0,0 +1,896 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="UTF-8">
<title></title>
<link rel="stylesheet" type="text/css" href="__CSS__/base.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/common.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/style.css" media="all">
<link rel="stylesheet" type="text/css" href="__CSS__/default_color.css" media="all">
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<script type="text/javascript" src="__STATIC__/jquery-2.0.3.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<script type="text/javascript" src="__STATIC__/layer3/layer.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js"charset="UTF-8"></script>
<script src="__STATIC__/juicer-min.js" type="text/javascript"></script>
</head>
<style>
html {
min-width:100%;
}
body {
padding: 0px 0px 150px;
width: 960px;
margin: auto;
}
.tabcon1711 table{
width: 480px;
}
table{
margin: auto;
}
.hidebox{
display: none;
}
.r{
width: 300px;
}
.l{
width: 180px;
}
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;
height: 35px;
height: 28px;
border-radius: 3px;
font-size: 12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height: 35px;
line-height: 28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height: 26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height: 26px;
line-height: 26px;
font-size: 12px;
}
.select2-results__option[aria-selected] {
font-size: 12px;
}
.input-list, .i_list {
float: left;
margin: 0;
}
</style>
<body>
<!-- <div style="width: 100%;line-height: 100px;font-size: 25px;font-weight: 600;text-align: center;">
海南万盟天下科技有限公司
</div> -->
<div style="display: flex;margin: auto;">
<div class="tab-content tabcon1711" id="firstPartBaseInfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">公司类型:</td>
<td class="r">
<div class="input-list input-list-game search_label_rehab">
<select id="first_partner_type" name="first_partner_type" class="select_gallery">
<option value="">请选择甲方公司类型</option>
<option value="0">CP上游公司</option>
<option value="1">平台归属公司</option>
</select>
</div>
</td>
</tr>
<tr>
<td class="l">甲方:</td>
<td class="r">
<div class="input-list input-list-game search_label_rehab">
<select id="first_partner_id" name="partner_id" class="select_gallery">
<option value="">请选择合作公司</option>
</select>
</div>
</td>
</tr>
<tbody id="first_part_bser_info_show">
<tr>
<td class="l">联系人:</td>
<td class="r">
<input type="text" class="txt" name="link_man" value="" disabled="disabled" placeholder="请先选择甲方公司">
</td>
</tr>
<tr>
<td class="l">联系电话:</td>
<td class="r">
<input type="text" class="txt" name="link_phone" value="" disabled="disabled" placeholder="请先选择甲方公司">
</td>
</tr>
<tr>
<td class="l">邮寄地址:</td>
<td class="r">
<input type="text" class="txt" name="address" value="" disabled="disabled" placeholder="请先选择甲方公司">
</td>
</tr>
<tr>
<td class="l">公司税号:</td>
<td class="r">
<input type="text" class="txt" name="company_tax_no" disabled="disabled" value="" placeholder="请先选择甲方公司">
</td>
</tr>
</tbody>
</tbody>
</table>
</div>
<div class="tab-content tabcon1711" id="secondPartBaseInfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l"></td>
<td class="r"></td>
</tr>
<tr>
<td class="l">乙方:</td>
<td class="r">
<div class="input-list input-list-game search_label_rehab">
<select id="second_partner_id" name="partner_id" class="select_gallery">
<option value="">请选择合作公司</option>
</select>
</div>
</td>
</tr>
<tbody id="second_part_bser_info_show">
<tr>
<td class="l">联系人:</td>
<td class="r">
<input type="text" class="txt" name="link_man" value="" disabled="disabled" placeholder="请先选择合作公司">
</td>
</tr>
<tr>
<td class="l">联系电话:</td>
<td class="r">
<input type="text" class="txt" name="link_phone" value="" disabled="disabled" placeholder="请先选择合作公司">
</td>
</tr>
<tr>
<td class="l">邮寄地址:</td>
<td class="r">
<input type="text" class="txt" name="address" value="" disabled="disabled" placeholder="请先选择合作公司">
</td>
</tr>
<tr>
<td class="l">公司税号:</td>
<td class="r">
<input type="text" class="txt" name="company_tax_no" value="" disabled="disabled" placeholder="请先选择合作公司">
</td>
</tr>
</tbody>
</tbody>
</table>
</div>
</div>
<div style="padding: 30px 0px 10px;display: block;height:30px;">
<div class="input-list input-list-server search_label_rehab">
<p style="font-size: 20px;font-weight: 600;">支付给:</p>
</div>
<div class="input-list input-list-server search_label_rehab" style="margin-left: 20px;">
<select id="statement_type" name="statement_type" class="select_gallery" style="width: 215px;">
<option value="">请选择合作公司</option>
</select>
</div>
</div>
<!-- <div class="search_list" style="display: block;line-height: 30px;height: 10px;">
<div class="input-list input-list-server search_label_rehab">
<p>请选择需要生成结算订单的月份:</p>
</div>
<div class="input-list" style="margin-left: 20px;">
<input type="text" readonly id="time_start" name="time_start" class="" value="{:I('time_start')}"
placeholder="开始时间" />
&nbsp;-&nbsp;
<div class="input-append date" id="datetimepicker" style="display:inline-block">
<input type="text" readonly id="time_end" name="time_end" class="" value="{:I('time_end')}"
placeholder="结束时间" />
<span class="add-on"><i class="icon-th"></i></span>
</div>
</div>
<div class="input-list" style="margin-left: 30px;">
<a class="sch-btn" href="javascript:;" id="getSpendStatement" style="width: 100px;">生成</a>
</div>
</div> -->
<!-- <div style="font-size: 12px;color:#777;">仅当选择时间为每月的1号至当月的最后一天才满足月结梯度分成比例,否则默认比例为最低分成比例。</div> -->
<div class="data_list box_mt" style="margin-top: 10px;">
<div class="">
<table>
<!-- 表头 -->
<thead>
<tr>
<th style="border-right: solid 1px #b6cad2;">结算时间</th>
<th style="border-right: solid 1px #b6cad2;">产品</th>
<th style="border-right: solid 1px #b6cad2;">平台总额</th>
<th style="border-right: solid 1px #b6cad2;">分成比例</th>
<th style="border-right: solid 1px #b6cad2;">税费费率</th>
<th >结算金额</th>
</tr>
</thead>
<!-- 列表 -->
<tbody id="statementInit" class="">
<tr style="height: 100px;">
<td colspan=8>
请先选择生成条件后点击生成对账数据
</td>
</tr>
</tbody>
<tbody id="statementShow">
</tbody>
</table>
</div>
</div>
<div id="partpatinfo" style="display: flex;margin: auto;">
<div class="tab-content tabcon1711" id="skf_payinfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">收款方名称:</td>
<td class="r">
<input type="text" class="txt" name="" disabled="disabled" placeholder="请先选择支付给谁" value="">
</td>
</tr>
<tr>
<td class="l">银行账号:</td>
<td class="r">
<input type="text" class="txt" name="" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr>
<tr>
<td class="l">开户行:</td>
<td class="r">
<input type="text" class="txt" name="password" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr>
</tbody>
</table>
</div>
<div class="tab-content tabcon1711" id="fkf_payinfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">开票项目:</td>
<td class="r">
<input type="text" class="txt" disabled="disabled" placeholder="请先选择支付给谁" name="invoice_item" value="">
</td>
</tr>
<tr>
<td class="l">发票类型:</td>
<td class="r">
<input type="text" class="txt" disabled="disabled" placeholder="请先选择支付给谁" name="invoice_type" value="">
</td>
</tr>
<!-- <tr>
<td class="l">付款方名称:</td>
<td class="r">
<input type="text" class="txt" name="" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr>
<tr>
<td class="l">银行账号:</td>
<td class="r">
<input type="text" class="txt" name="password" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr>
<tr>
<td class="l">开户行:</td>
<td class="r">
<input type="text" class="txt" name="" value="" disabled="disabled" placeholder="请先选择支付给谁">
</td>
</tr> -->
</tbody>
</table>
</div>
</div>
<div class="search_list" style="display: flex;justify-content:flex-end;width:960px;">
<div class="input-list" style="margin-left: 30px;float: right;">
<a class="sch-btn" href="javascript:;" id="createStatement" style="width: 150px;">申请开票</a>
</div>
</div>
<script type="text/html" id="partbasetpl">
<tr>
<td class="l">联系人:</td>
<td class="r">
<input type="text" class="txt normalchange" data-change="${type}.link_man" name="link_man" value="${link_man|nonull}" placeholder="请输入联系人">
</td>
</tr>
<tr>
<td class="l">联系电话:</td>
<td class="r">
<input type="text" class="txt normalchange" name="link_phone" data-change="${type}.link_phone" value="${link_phone|nonull}" placeholder="请输入联系电话">
</td>
</tr>
<tr>
<td class="l">邮寄地址:</td>
<td class="r">
<input type="text" class="txt normalchange" name="address" data-change="${type}.address" value="${address|nonull}" placeholder="请输入地址">
</td>
</tr>
<tr>
<td class="l">公司税号:</td>
<td class="r">
<input type="text" class="txt normalchange" name="company_tax_no" data-change="${type}.company_tax_no" value="${company_tax_no|nonull}" placeholder="请输入公司税号">
</td>
</tr>
</script>
<script type="text/html" id="partpaytpl">
<div class="tab-content tabcon1711" id="skf_payinfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">收款方名称:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入收款方名称" data-change="${'skf'|setChange}.payee_name" name="payee_name" value="${skfdata.payee_name|nonull}">
</td>
</tr>
<tr>
<td class="l">银行账号:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入银行账号" name="bank_account" data-change="${'skf'|setChange}.bank_account" value="${skfdata.bank_account|nonull}">
</td>
</tr>
<tr>
<td class="l">开户行:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入开户行" data-change="${'skf'|setChange}.opening_bank" value="${skfdata.opening_bank|nonull}" name="opening_bank">
</td>
</tr>
</tbody>
</table>
</div>
<div class="tab-content tabcon1711" id="fkf_payinfo">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">开票项目:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="信息技术服务费" data-change="${'skf'|setChange}.invoice_item" name="invoice_item" value="${skfdata.invoice_item|nonull}">
</td>
</tr>
<tr>
<td class="l">发票类型:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="增值税专用发票" name="invoice_type" data-change="${'skf'|setChange}.invoice_type" value="${skfdata.invoice_type|nonull}">
</td>
</tr>
<!-- <tr>
<td class="l">付款方名称:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入付款方名称" data-change="${'fkf'|setChange}.payee_name" name="payee_name" value="${fkfdata.payee_name|nonull}">
</td>
</tr>
<tr>
<td class="l">银行账号:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入银行账号" data-change="${'fkf'|setChange}.bank_account" name="bank_account" value="${fkfdata.bank_account|nonull}" >
</td>
</tr>
<tr>
<td class="l">开户行:</td>
<td class="r">
<input type="text" class="txt normalchange" placeholder="请输入开户行" data-change="${'fkf'|setChange}.opening_bank" value="${fkfdata.opening_bank|nonull}" name="opening_bank">
</td>
</tr> -->
</tbody>
</table>
</div>
</script>
<script type="text/html" id="statementTpl">
{@each list as it,index}
<tr>
<td>${it.begintime}~${it.endtime}</td>
<td>${it.game_name}</td>
<td>${it.money}元</td>
<td><input type="text" class="txt statementchange" name="ratio" data-index ="${index}" data-change="statement_info[${index}]['ratio']" value="${it.ratio}" style="width: 40px;">%</td>
<td><input type="text" class="txt statementchange" name="fax_ratio" data-index ="${index}" data-change="statement_info[${index}]['fax_ratio']" value="${it.fax_ratio}" style="width: 40px;">%</td>
<td>${it.ratio_money}元</td>
</tr>
{@/each}
<tr>
<td>合计</td>
<td></td>
<td>${count.pay_money}元</td>
<td></td>
<td></td>
<td>${count.ratio_money}元</td>
</tr>
<tr>
<td colspan=5>本月分成总金额(人民币大写):</td>
<td>${count.ratio_money|number_chinese}</td>
</tr>
</script>
<script>
$(function(){
TPLSHOW.juicerInit();
$(".select_gallery").select2();
$('#time_start').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
minView: 2,
autoclose: true,
endDate:new Date()
});
$('#datetimepicker').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
minView: 2,
endDate:new Date(),
autoclose: true,
pickerPosition: 'bottom-left'
})
EVENT.changeCompany();
EVENT.createStatement();
//获取账单信息
TPLSHOW.showStatementList(true);
// $("#first_partner_id").change();//默认甲方只能是我们公司
});
//基础类
var PUBLIC = {
CompanyKeyName:{
id:"公司表id",
partner:"公司名称",
link_man:'联系人',
link_phone:"联系电话",
address:'邮寄地址',
company_tax_no:'公司税号',
payee_name:'名称',
bank_account:"银行账号",
opening_bank:"开户行"
},
checkCompanyKey(type,key){
//获取公司名
var company = '';
if(key == "payee_name" || key == "bank_account" || key == "opening_bank"){
if((DATAOBJ.statement_type == 0 && type == "first_party_info") || (DATAOBJ.statement_type == 1 && type == "second_party_info")){
company = "收款方";
}
if((DATAOBJ.statement_type == 0 && type == "second_party_info")|| (DATAOBJ.statement_type == 1 && type == "first_party_info")){
company = "付款方";
}
}else{
if(type == "first_party_info"){
company = "甲方";
}else{
company = "乙方";
}
}
//获取键名
try {
var keyname = company+PUBLIC.CompanyKeyName[key];
} catch (error) {
var keyname = false;
}
//验证
if(DATAOBJ[type][key] ===''){
layer.msg(keyname+"不能为空");
return false;
}
if(key == "link_phone" && !CHECK.mobile.test(DATAOBJ[type][key])){
layer.msg(keyname+"格式错误");
return false;
}
if(key == "bank_account" && !CHECK.BankNo.test(DATAOBJ[type][key])){
layer.msg(keyname+"格式错误");
return false;
}
return true;
},
postData(url,data,callback){
$.ajax({
url:url,
data:data,
type:"post",
dataType:"json",
success:function(data){
callback(data)
}
})
},
floatAdd(a,b){
return Math.round(a*100+b*100)/100;
},
floatCut(a,b){
return Math.round(a*100-b*100)/100;
}
}
//数据类
var DATAOBJ = {
first_partner_type:false,
first_part_company:false,
second_part_company:false,
statement_type:false,
first_party_info:false,
second_party_info:false,
statement_info:{$data|json_encode=###,JSON_UNESCAPED_UNICODE},
statement_count:{$data_count|json_encode=###,JSON_UNESCAPED_UNICODE},
fine:0,
// statement_begin_time:false,
// statement_end_time:false,
statement_id:{$id}
}
//事件类
var EVENT = {
changeCompany(){
$("#first_partner_type").on("change",function(){
var type = $(this).find("option:selected").val();
if(type == ''){
type=false;
}
DATAOBJ.first_partner_type = type;
//获取cp和内部公司
var url = "{:U('getCompanyList')}";
PUBLIC.postData(url,{id:DATAOBJ.statement_id},function(data){
var ptCompany = data.success.ptCompany;
var cpCompany = data.success.cpCompany;
var ptstr = '<option value="">请选择平台归属公司</option>';
for (var i in ptCompany) {
ptstr += "<option value='" + ptCompany[i].id + "'>" + ptCompany[i].partner + "</option>"
}
var cpstr = '<option value="">请选择合作公司</option>';
for (var i in cpCompany) {
cpstr += "<option value='" + cpCompany[i].id + "'>" + cpCompany[i].partner + "</option>"
}
//
if(type == 0){
$("#first_partner_id").html(cpstr);
$("#second_partner_id").html(ptstr);
}else{
$("#first_partner_id").html(ptstr);
$("#second_partner_id").html(cpstr);
}
$("#first_partner_id").select2();
$("#second_partner_id").select2();
//重置数据
DATAOBJ.first_part_company=false;
DATAOBJ.second_part_company=false;
TPLSHOW.pushStatementTypeOption();
})
})
$("#first_partner_id").on("change",function(){
//获取数据
var comid = $(this).find("option:selected").val();
//获取基础数据
var url = "{:U('getCpCompanyInfo')}";
var company_type;
if(DATAOBJ.first_partner_type == 0){
//CP上游公司
company_type = "cp";
}else{
company_type = "pt";
}
PUBLIC.postData(url,{company_id:comid,company_type:company_type},function(data){
DATAOBJ.first_part_company = data.success.partner;
DATAOBJ.first_party_info = data.success;
data.success.type = "first_party_info";
TPLSHOW.firstPartInfo(data.success);
})
})
$("#second_partner_id").on("change",function(){
//获取数据
var comid = $(this).find("option:selected").val();
//获取基础数据
var url = "{:U('getCpCompanyInfo')}";
var company_type;
if(DATAOBJ.first_partner_type == 0){
//CP上游公司
company_type = "pt";
}else{
company_type = "cp";
}
PUBLIC.postData(url,{company_id:comid,company_type:company_type},function(data){
DATAOBJ.second_part_company = data.success.partner;
DATAOBJ.second_party_info = data.success;
data.success.type = "second_party_info";
TPLSHOW.secondPartInfo(data.success);
})
})
//生成订单
// $("#getSpendStatement").on("click",function(){
// //获取开始结束时间
// var time_start = $("#time_start").val();
// var time_end = $("#time_end").val();
// if(time_start == '' || time_end == '' || DATAOBJ.statement_type === false){
// layer.msg("收款方或账单开始结束时间均不允许为空");
// return false;
// }
// if (Date.parse(time_start) > Date.parse(time_end)){
// layer.msg('开始时间必须小于等于结束时间');
// return false;
// }
// var company_id;
// if(DATAOBJ.first_partner_type == 0){
// //CP上游公司
// company_id = $("#first_partner_id").find("option:selected").val();
// }else{
// company_id = $("#second_partner_id").find("option:selected").val();
// }
// //发起查询
// var selectData = {
// "time_start":time_start,
// "time_end":time_end,
// "statement_type":DATAOBJ.statement_type,
// "first_partner_type":DATAOBJ.first_partner_type,
// "company_id": company_id
// }
// var url = "{:U('getSpendStatement')}";
// PUBLIC.postData(url,selectData,function(data){
// console.log(data);
// if(data.code > 0){
// layer.alert(data.error);
// return false;
// }else{
// DATAOBJ.statement_begin_time = time_start;
// DATAOBJ.statement_end_time = time_end;
// DATAOBJ.statement_info = data.success;
// DATAOBJ.statement_count = data.count;
// TPLSHOW.showStatementList(true);
// }
// })
// })
},
createStatement(){
$("#createStatement").on("click",function(){
//验证信息
for (const key in DATAOBJ) {
if(DATAOBJ[key] === false){
layer.msg('页面中的参数均是必填项目,请先填满');
return false;
}
}
//验证甲方信息
// for (const key in DATAOBJ.first_party_info) {
// var t = DATAOBJ.first_party_info;
// var flag = PUBLIC.checkCompanyKey("first_party_info",key);
// if(!flag){
// return flag;
// }
// }
// //乙方
// for (const key in DATAOBJ.second_party_info) {
// var t = DATAOBJ.second_party_info;
// var flag = PUBLIC.checkCompanyKey("second_party_info",key);
// if(!flag){
// return flag;
// }
// }
layer.load(2);
$("#createStatement").off("click");//自我解绑
PUBLIC.postData("{:U('doAddStatement')}",DATAOBJ,function(data){
if(data.success){
layer.closeAll('loading');
layer.msg('添加成功');
setTimeout(function(){
window.parent.reload();
},350);
}else{
alert("添加失败,请联系管理员")
}
});
//发送添加请求
})
},
normalchange(){
$(".normalchange").off("blur");
$(".normalchange").on("blur",function(){
var val = $(this).val();
var index = $(this).data("change");
var str = "DATAOBJ."+index+"='"+val+"';";
eval(str);
})
},
statementchange(){
$(".statementchange").off("blur");
$(".statementchange").on("blur",function(){
// alert(1);
var sort = $(this).data("change");
var val = $(this).val();
var vdata = eval("DATAOBJ."+sort);//原先值
var dom = $(this);
if(!CHECK.number.test(val)){
layer.msg('结算单中的税率必须是数字,且不能为空');
dom.val(vdata);
return false;
}
var str = "DATAOBJ."+sort+"='"+val+"';";
if(val > 100 || val < 0){
layer.msg('结算单中的税率不允许大于100和小于0');
dom.val(vdata);
return false;
}
eval(str);
var index = $(this).data("index");
var td = DATAOBJ.statement_info[index];
var ratio = td['ratio']/100;
DATAOBJ.statement_count['ratio_money'] = PUBLIC.floatCut(DATAOBJ.statement_count['ratio_money'],td['ratio_money']);
td['ratio_money'] = Math.round((td['money']*ratio*(100-td['fax_ratio'])/100)* 100) / 100 ;
DATAOBJ.statement_count['ratio_money']=PUBLIC.floatAdd(DATAOBJ.statement_count['ratio_money'],td['ratio_money']);
TPLSHOW.showStatementList(true);
})
},
changeStatementType(){
$("#statement_type").off("change")
$("#statement_type").on("change",function(){
//获取数据
var statement_type = $(this).find("option:selected").val();
if(statement_type == ''){
statement_type = false;
}
DATAOBJ.statement_type = statement_type;
TPLSHOW.showPartPayInfo();
// TPLSHOW.showStatementList(true);
})
$(".select_gallery").select2();
}
}
var CHECK = {
number: /^\d+(\.{1}\d+)?$/,
mobile:/^1[3456789]\d{9}$/,
// BankNo:/^([1-9]{1})(\d{15}|\d{18})$/,
BankNo:/^([1-9]{1})\d{10,19}$/,
money:/((^[1-9]\d*)|^0)(\.\d{0,2}){0,1}$/
}
//
var TPLSHOW = {
juicerInit(){
var nonull = function(data) {
if(!data){
return '';
}
return data;
};
var setChange = function(typestr) {
if(DATAOBJ.statement_type == 0){
if(typestr == "fkf"){
return 'second_party_info';
}else{
return 'first_party_info';
}
}else{
if(typestr == "fkf"){
return 'first_party_info';
}else{
return 'second_party_info';
}
}
};
var number_chinese = function (str) {
var num = parseFloat(str);
var strOutput = "",
strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分';
num += "00";
var intPos = num.indexOf('.');
if (intPos >= 0){
num = num.substring(0, intPos) + num.substr(intPos + 1, 2);
}
strUnit = strUnit.substr(strUnit.length - num.length);
for (var i=0; i < num.length; i++){
strOutput += '零壹贰叁肆伍陆柒捌玖'.substr(num.substr(i,1),1) + strUnit.substr(i,1);
}
return strOutput.replace(/零角零分$/, '整').replace(/零[仟佰拾]/g, '零').replace(/零{2,}/g, '零').replace(/零([亿|万])/g, '$1').replace(/零+元/, '元').replace(/亿零{0,3}万/, '亿').replace(/^元/, "零元")
}
juicer.register('nonull', nonull);
juicer.register('setChange', setChange);
juicer.register('number_chinese', number_chinese);
},
//
firstPartInfo(data){
var tpl =$("#partbasetpl").html();
var html = juicer(tpl, data);
$("#first_part_bser_info_show").html(html);
TPLSHOW.pushStatementTypeOption();
},
secondPartInfo(data){
var tpl =$("#partbasetpl").html();
var html = juicer(tpl, data);
$("#second_part_bser_info_show").html(html);
TPLSHOW.pushStatementTypeOption();
},
//支付给公司
pushStatementTypeOption(){
EVENT.normalchange();
DATAOBJ.statement_type = false;//重新选择
// TPLSHOW.showStatementList(false);
if(DATAOBJ.first_part_company && DATAOBJ.second_part_company){
var str = "<option value=''>请选择合作公司</option><option value='0' selected>"+DATAOBJ.first_part_company+"</option>";
str += ("<option value='1' >"+DATAOBJ.second_part_company+"</option>");//默认支付给甲方
$("#statement_type").html(str);
EVENT.changeStatementType();
$("#statement_type").change();//默认支付给乙方
// TPLSHOW.showPartPayInfo();//查看底下是否有值
}else{
var str = "<option value=''>请选择合作公司</option>";
$("#statement_type").html(str);
EVENT.changeStatementType();
}
},
//支付信息显示
showPartPayInfo(){
var data = {};
if(DATAOBJ.statement_type !== false){
if(DATAOBJ.statement_type == 1){
data.fkfdata = DATAOBJ.first_party_info;
data.skfdata = DATAOBJ.second_party_info;
}else{
data.skfdata = DATAOBJ.first_party_info;
data.fkfdata = DATAOBJ.second_party_info;
}
data.type = DATAOBJ.statement_type;
}else{
data.skfdata = {};
data.fkfdata = {};
}
var tpl =$("#partpaytpl").html();
var html = juicer(tpl, data);
$("#partpatinfo").html(html);
EVENT.normalchange();
},
//订单信息显示
showStatementList(flag){
if(flag){
var data = {list:DATAOBJ.statement_info,count:DATAOBJ.statement_count,fine:DATAOBJ.fine};
console.log(DATAOBJ);
$("#statementInit").addClass("hidebox");
var tpl =$("#statementTpl").html();
var html = juicer(tpl, data);
$("#statementShow").html(html);
EVENT.statementchange();
}else{
// DATAOBJ.statement_info = false;
// DATAOBJ.statement_count = false;
// DATAOBJ.fine = 0;
$("#statementInit").removeClass("hidebox");
$("#statementShow").html('');
}
}
}
</script>
</body>
</html>

@ -57,29 +57,35 @@
<div class="cf top_nav_list" style="height: 38px;">
<!-- 高级搜索 -->
<div class="jssearch fl cf search_list" style="margin-bottom: 0">
<div class="input-list input-list-promote search_label_rehab">
<select id="channel_id" name="channel_id" class="select_gallery" >
<option company-type="" value="">请选择或输入对账公司</option>
<volist name="channel" id="vo">
<option value="{$vo.channel_id}" <?php echo $vo.channel_id == I('channel_id') ? 'selected':''; ?> >{$vo.channel_name}</option>
</volist>
</select>
</div>
<div class="input-list input-list-promote search_label_rehab">
<select id="withdraw_type" name="withdraw_type" class="select_gallery" style="width:150px;">
<option value="">结算方式</option>
<option value="">结算周期</option>
<option value="0">周结</option>
<option value="1">月结</option>
<option value="2">补点</option>
</select>
</div>
<div class="input-list input-list-promote search_label_rehab">
<select id="channel_id" name="channel_id" class="select_gallery" >
<option company-type="" value="">请选择或输入对账公司</option>
<volist name="channel" id="vo">
<option value="{$vo.channel_id}" <?php echo $vo.channel_id == I('channel_id') ? 'selected':''; ?> >{$vo.channel_name}</option>
</volist>
<select id="withdraw_type" name="withdraw_type2" class="select_gallery" style="width:150px;">
<option value="">结算类型</option>
<option value="1">正常计算</option>
<option value="2">补点</option>
</select>
</div>
<div class="input-list">
<input type="text" readonly id="time_start" name="time_start" class="" value="{:I('time_start')}" placeholder="开始时间" />
<input type="text" readonly id="time_start" name="time_start" class="" value="{:I('time_start')}" placeholder="结算开始时间" />
&nbsp;-&nbsp;
<div class="input-append date" id="datetimepicker" style="display:inline-block">
<input type="text" readonly id="time_end" name="time_end" class="" value="{:I('time_end')}" placeholder="结束时间" />
<input type="text" readonly id="time_end" name="time_end" class="" value="{:I('time_end')}" placeholder="结算结束时间" />
<span class="add-on"><i class="icon-th"></i></span>
</div>
</div>
@ -93,6 +99,15 @@
</select>
</div>
<div class="input-list">
<input type="text" readonly id="time_start2" name="time_start2" class="" value="{:I('time_start2')}" placeholder="生成开始时间" />
&nbsp;-&nbsp;
<div class="input-append date" id="datetimepicker2" style="display:inline-block">
<input type="text" readonly id="time_end2" name="time_end2" class="" value="{:I('time_end2')}" placeholder="生成结束时间" />
<span class="add-on"><i class="icon-th"></i></span>
</div>
</div>
<!-- <input type="hidden" name="" value="" class="sortBy">
<input type="hidden" name="type" value="{$_GET['type']}"> -->
@ -105,11 +120,19 @@
<div class="butnbox" >
<div class="butnlist jscheckbutn" style="margin-left: 2px">
<a class="butn" id="upstream">生成上游对账单</a>
<!-- <a class="butn" id="upstream">申请开票</a>
<a class="butn" id="upstream">审批通过</a>
<a class="butn" id="upstream" style="background-color: red;">审批拒绝</a> -->
<a class="butn" id="upstream">已开票</a>
<a class="butn" id="upstream">已到账</a>
<a class="butn" id="upstream" style="width: 150px;background-color:green;">重算对账金额</a>
<a class="butn" id="upstream">批量导出</a>
<!-- <a class="butn" id="upstream">生成上游对账单</a>
<a class="butn" id="downstream">生成下游对账单</a>
<a class="butn" id="persondownstream" style="width: 150px">生成下游个人结算单</a>
<a class="butn" id="shenhe" >审核通过</a>
<a class="butn" id="reject" >审核拒绝</a>
<a class="butn" id="reject" >审核拒绝</a> -->
</div>
</div>
@ -123,10 +146,11 @@
<th><input class="check-all" type="checkbox"></th>
<th>对账公司</th>
<th>结算方式</th>
<th>对账日期</th>
<th>对账金额</th>
<th>状态</th>
<th>结算日期</th>
<th>结算周期</th>
<th>结算类型</th>
<th>结算金额</th>
<th>审批状态</th>
<th>操作人</th>
<th>生成时间</th>
<th>操作</th>
@ -146,18 +170,37 @@
<td ><input class="ids" type="checkbox" value="{$data['id']}" name="ids[]" >
</td>
<td>{$data.channel_name}</td>
<td><if condition="$data['withdraw_type'] eq 0">周结<elseif condition="$data['withdraw_type'] eq 1"/>月结<elseif condition="$data['withdraw_type'] eq 2 "/>补点</if></td>
<td>{$data.begintime}-{$data.endtime}</td>
<td>{$data.withdraw_type_1}</td>
<td>{$data.withdraw_type_2}</td>
<td>{$data.ratio_money}</td>
<td>{$data.verify_status_str}</td>
<td>{$data.admin_name}</td>
<td>{$data.create_time}</td>
<td>
<a class="confirm statement_view" data-id="{$data.id}" data-type="{$data.statement_type}">查看</a>
<switch name="data.verify_status">
<case value="-1">
<!-- <a class="confirm statement_view" id="createStatement" data-id="{$data.id}">申请开票</a> -->
</case>
<case value="0">
<a class="confirm createStatement" data-id="{$data.id}">申请开票</a>
</case>
<case value="1">
<a class="confirm editStatement" data-id="{$data.id}">编辑</a>
</case>
<case value="2">
</case>
<default />
</switch>
<!-- <a class="confirm statement_view" data-id="{$data.id}" data-type="{$data.statement_type}">查看</a>
<if condition="$data['is_confirm'] eq 0">
<a class="confirm statement_edit" data-id="{$data.id}" data-start="{$data.statement_begin_time}" data-end="{$data.statement_end_time}" data-type="{$data.statement_type}" ext_field="{$data.ext_field}">编辑</a>
</if>
<a class="confirm statement_del" data-type="{$data.statement_type}" data-id="{$data.id}">撤销</a>
<a class="confirm statement_del" data-type="{$data.statement_type}" data-id="{$data.id}">撤销</a> -->
</td>
</tr>
@ -278,46 +321,52 @@
})
//搜索功能
var start = $("#time_start").val();
var end = $("#time_end").val();
if(start !='' && end != ''){
if (Date.parse(start) > Date.parse(end)){
layer.msg('开始时间必须小于等于结束时间');
return false;
}
}
$("#upstream").click(function () {
layer.open({
type: 2,
title: "海南万盟天下科技有限公司",
shadeClose: true,
shade: 0.8,
area: ['70%', '80%'],
content:'/admin.php?s=/Statement/createCpStatement/'
});
});
$("#downstream").click(function () {
//申请开票
$(".createStatement").click(function () {
var id = $(this).data("id");
layer.open({
type: 2,
title: "海南万盟天下科技有限公司",
shadeClose: true,
shade: 0.8,
area: ['70%', '80%'],
content: '/admin.php?s=/statementMangement/createDownstreamOrder/'
content:'/admin.php?s=/AggregateFinanceStatement/createStatement/id/'+id
});
});
$("#persondownstream").click(function () {
//开票编辑
$(".editStatement").click(function () {
var id = $(this).data("id");
layer.open({
type: 2,
title: "海南万盟天下科技有限公司",
shadeClose: true,
shade: 0.8,
area: ['70%', '80%'],
content: '/admin.php?s=/statementMangement/PersonOrderList/'
content:'/admin.php?s=/AggregateFinanceStatement/createStatement/id/'+id
});
});
// $("#downstream").click(function () {
// layer.open({
// type: 2,
// title: "海南万盟天下科技有限公司",
// shadeClose: true,
// shade: 0.8,
// area: ['70%', '80%'],
// content: '/admin.php?s=/statementMangement/createDownstreamOrder/'
// });
// });
// $("#persondownstream").click(function () {
// layer.open({
// type: 2,
// title: "海南万盟天下科技有限公司",
// shadeClose: true,
// shade: 0.8,
// area: ['70%', '80%'],
// content: '/admin.php?s=/statementMangement/PersonOrderList/'
// });
// });
$(".statement_edit").click(function () {
@ -340,25 +389,25 @@
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_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('【警告】撤销后将不可回退,如需继续请点击确认', {
@ -435,25 +484,21 @@
pickerPosition: 'bottom-left'
})
$('#time_start2').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
minView: 2,
autoclose: true
});
$("#company_id").change(function(){
var str = '<option value="">对账类型</option>';
console.log($("#company_id option:selected").attr('company-type'))
if ($("#company_id option:selected").attr('company-type') == '1') {
str += ' <option value="1" selected=selected>下游游对账单</option>\n' +
' <option value="0">上游对账单</option>';
} else if ($("#company_id option:selected").attr('company-type') == '0') {
str += ' <option value="1">下游对账单</option>\n' +
' <option value="0" selected=selected>上游对账单</option>';
}
$("#statement_type").empty();
$("#statement_type").append(str);
$("#statement_type").select2();
$('#datetimepicker2').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
minView: 2,
autoclose: true,
pickerPosition: 'bottom-left'
})
});
$(".paixu").click(function(){

Loading…
Cancel
Save