优化新增下游公司

master
chenzhi 5 years ago
parent 69adcbabf8
commit d9d55a3bcb

@ -59,122 +59,120 @@ class PromoteCompanyController extends ThinkController
}else{
$companyres = $companyres->page($page,$row)->select();
}
if(1 == 0){
//获取公司id
$companyids = implode(',', array_column($companyres, 'id'));
//获取所属会长及其游戏分成
$promotemap['company_id']=["in",$companyids];
$promotemap['level'] = 1;
$promoteres = M("Promote","tab_")
->field("id,company_id,account,settlement_type")
->where($promotemap)
//获取公司id
$companyids = implode(',', array_column($companyres, 'id'));
//获取所属会长及其游戏分成
$promotemap['company_id']=["in",$companyids];
$promotemap['level'] = 1;
$promoteres = M("Promote","tab_")
->field("id,company_id,account,settlement_type")
->where($promotemap)
->select();
//获取会长id
$promoteids = implode(',', array_column($promoteres, 'id'));
//获取游戏比例
$gameradiores = M("PromoteGameRatio","tab_")
->alias("pg")
->field("pg.ratio,pg.relation_game_id,pg.turnover_ratio,pg.game_id,pg.promote_id,ga.relation_game_name,ga.game_type_name")
->join("tab_game ga ON pg.game_id = ga.id")
->where(array(
"status"=>1,
"promote_id"=>["in",$promoteids]
))
->group("relation_game_id,promote_id")
->select();
//获取会长id
$promoteids = implode(',', array_column($promoteres, 'id'));
//获取游戏比例
$gameradiores = M("PromoteGameRatio","tab_")
->alias("pg")
->field("pg.ratio,pg.relation_game_id,pg.turnover_ratio,pg.game_id,pg.promote_id,ga.relation_game_name,ga.game_type_name")
->join("tab_game ga ON pg.game_id = ga.id")
->where(array(
"status"=>1,
"promote_id"=>["in",$promoteids]
))
->group("relation_game_id,promote_id")
->select();
//比例数据处理
$gameradiotemp = array();
foreach($gameradiores as $k=>$v){
$turnover_ratio = json_decode($v['turnover_ratio'],true);
$v['turnover_ratio'] = array(
array("ratio"=>$v['ratio']."%","name"=>"默认比例")
);
foreach($turnover_ratio as $ke=>$va){
$t=array("ratio"=>$va["ratio"]."%");
if(array_key_exists("instanceof",$va)){
//存在
if($va['instanceof']=='1'){
$t['name']="月流水≥".$va['turnover'];
}else{
$t['name']="月流水>".$va['turnover'];
}
}else{
$t['name']="月流水≥".$va['turnover'];
}
$v['turnover_ratio'][]=$t;
}
$v['row'] = count($v['turnover_ratio']);
unset($v["ratio"]);
unset($v["relation_game_id"]);
unset($v["game_id"]);
$gameradiotemp[$v['promote_id']][]=$v;
}
unset($gameradiores);
//会长数据处理
$promoterestemp=[];
foreach($promoteres as $k=>$v){
if(array_key_exists($v['id'],$gameradiotemp)){
//比例数据处理
$gameradiotemp = array();
foreach($gameradiores as $k=>$v){
$turnover_ratio = json_decode($v['turnover_ratio'],true);
$v['turnover_ratio'] = array(
array("ratio"=>$v['ratio']."%","name"=>"默认比例")
);
foreach($turnover_ratio as $ke=>$va){
$t=array("ratio"=>$va["ratio"]."%");
if(array_key_exists("instanceof",$va)){
//存在
$v['list'] = $gameradiotemp[$v['id']];
foreach($gameradiotemp[$v['id']] as $ke=>$va){
$v['row'] += $va['row'];
if($va['instanceof']=='1'){
$t['name']="月流水≥".$va['turnover'];
}else{
$t['name']="月流水>".$va['turnover'];
}
}else{
$v['list']=[
["relation_game_name"=>"--","game_type_name"=>"--",
"turnover_ratio"=>[
["name"=>"--","ratio"=>"--"]
],
"row"=>1
]
];
$v["row"]=1;
$t['name']="月流水≥".$va['turnover'];
}
if($v['settlement_type'] == 1){
$v['settlement_type']="周结";
}else{
$v['settlement_type']="月结";
$v['turnover_ratio'][]=$t;
}
$v['row'] = count($v['turnover_ratio']);
unset($v["ratio"]);
unset($v["relation_game_id"]);
unset($v["game_id"]);
$gameradiotemp[$v['promote_id']][]=$v;
}
unset($gameradiores);
//会长数据处理
$promoterestemp=[];
foreach($promoteres as $k=>$v){
if(array_key_exists($v['id'],$gameradiotemp)){
//存在
$v['list'] = $gameradiotemp[$v['id']];
foreach($gameradiotemp[$v['id']] as $ke=>$va){
$v['row'] += $va['row'];
}
$promoterestemp[$v['company_id']]["list"][]=$v;
}else{
$v['list']=[
["relation_game_name"=>"--","game_type_name"=>"--",
"turnover_ratio"=>[
["name"=>"--","ratio"=>"--"]
],
"row"=>1
]
];
$v["row"]=1;
}
if($v['settlement_type'] == 1){
$v['settlement_type']="周结";
}else{
$v['settlement_type']="月结";
}
unset($promoteres);
$promoterestemp[$v['company_id']]["list"][]=$v;
}
unset($promoteres);
//处理公司数据
foreach($companyres as $k=>&$v){
// if(array_key_exists($v['id'],$promoterestemp)){
// //存在
// $v['list'] = $promoterestemp[$v['id']]['list'];
// foreach($promoterestemp[$v['id']] as $ke=>$va){
// foreach($va as $key=>$val){
// $v['row'] += $val['row'];
// }
if(array_key_exists($v['id'],$promoterestemp)){
//存在
$v['list'] = $promoterestemp[$v['id']]['list'];
foreach($promoterestemp[$v['id']] as $ke=>$va){
foreach($va as $key=>$val){
$v['row'] += $val['row'];
}
// }
// $v['can_del'] = 0;
// }else{
// //空值
// $v['can_del'] = 1;
// $v['list']=[
// [
// "account"=>"--",
// "settlement_type"=>"--",
// 'list'=>[
// [
// "relation_game_name"=>"--",
// "game_type_name"=>"--",
// "turnover_ratio"=>[
// ["name"=>"--","ratio"=>"--"]
// ],
// "row"=>1
// ]
// ]
// ]
// ];
// $v['row'] += 1;
// }
}
$v['can_del'] = 0;
}else{
//空值
$v['can_del'] = 1;
$v['list']=[
[
"account"=>"--",
"settlement_type"=>"--",
'list'=>[
[
"relation_game_name"=>"--",
"game_type_name"=>"--",
"turnover_ratio"=>[
["name"=>"--","ratio"=>"--"]
],
"row"=>1
]
]
]
];
$v['row'] += 1;
}
if( $v["contact_begin"] >0 ){
$v["contact_begin"] = date('Y/m/d', $v["contact_begin"]);
}else{
@ -236,34 +234,14 @@ class PromoteCompanyController extends ThinkController
public function add()
{
if ($_POST) {
$company_name = I('post.company_name', '');
$model = M($this->modelName, 'tab_');
$map['company_name'] = $company_name;
$res = $model->where($map)->getField('id');
if ($res) {
$this->ajaxReturn(array(
'status' => 0,
'info' => "推广公司已经存在"
));
}
$time = time();
$save = I('post.');//前端已经验证
$this->checkData($save);
$save['create_time'] = $time;
$save['last_up_time'] = $time;
$save['contact_begin']=strtotime($save['contact_begin']);
$save['contact_end']=strtotime($save['contact_end']);
if(isset($save['resources'])){
$save['resources'] = json_encode($save['resources'],JSON_UNESCAPED_UNICODE);
}
if(empty($save['contact_phone'])){
$save['contact_phone'] = 0;
}
$res = $model->add($save);
$save['turnover_ratio'] = $this->setTurnoverRatio($save);
$res = M("promote_company","tab_")->add($save);
if ($res) {
addOperationLog(['op_type'=>0,'key'=>$company_name,'op_name'=>'新增推广公司','url'=>U('PromoteCompany/lists'),'menu'=>'推广员-推广员管理-推广公司管理-新增推广公司']);
addOperationLog(['op_type'=>0,'key'=>$save['company_name'],'op_name'=>'新增推广公司','url'=>U('PromoteCompany/lists')]);
\Think\Log::actionLog('PromoteCompany/add', 'partner', $res);
$array=array(
"info"=>"添加成功",
@ -715,6 +693,127 @@ WHERE old_change_promote_id in ({$promoteData})";
}
}
}
//
protected function setTurnoverRatio($params)
{
$save['turnover_ratio'] = [];
if (!empty(array_filter($params['turnover'])) || !empty(array_filter($params['turnover_ratio'])) ) {
if (is_array($params['turnover']) && is_array($params['turnover_ratio']) && is_array($params['instanceof'])) {
foreach ($params['turnover'] as $turnover) {
if (empty($turnover)) {
$this->error('月流水不能为空');
}
}
foreach ($params['turnover_ratio'] as $turnoverRatio) {
if (empty($turnoverRatio)) {
$this->error('月流水分成比例不能为空');
}
}
foreach ($params['instanceof'] as $intervalClosedStatus) {
if (!in_array($intervalClosedStatus, [1, 2])) {
$this->error('月流水分符号不能为空');
}
}
$turnoverCount = count($params['turnover']);
$sortTurnover = $params['turnover'];
sort($sortTurnover);
if ($params['turnover'] != $sortTurnover || $turnoverCount != count(array_unique($params['turnover']))) {
$this->error('月流水必须以正序的方式填写,且必须大于上一个月流水');
}
$ratio = $params['ratio'] ?? 0;
// if ($params['turnover_ratio'][0] <= $ratio) {
// $this->error('月流水分成比例必须大于默认分成比例');
// }
$turnoverRatioCount = count($params['turnover_ratio']);
$sortTurnoverRatio = $params['turnover_ratio'];
sort($sortTurnoverRatio);
// if ($params['turnover_ratio'] != $sortTurnoverRatio || $turnoverRatioCount != count(array_unique($params['turnover_ratio']))) {
// $this->error('月流水分成比例必须以正序的方式填写,且必须大于上一个月流水分成比例');
// }
foreach ($params['turnover'] as $key => $turnover) {
$save['turnover_ratio'][] = [
'turnover' => bcdiv($turnover, 1, 2),
'ratio' => bcdiv($params['turnover_ratio'][$key], 1, 2),
'instanceof' => (isset($params['instanceof'][$key]) ? $params['instanceof'][$key] : 1),
];
}
}
}
return json_encode($save['turnover_ratio']);
}
protected function checkData(&$save)
{
$company_name = trim($save["company_name"]);
$status = intval($save['status']);
if (empty($company_name)) {
$this->error('请输入推广公司名称');
}
$model = M("promote_company", 'tab_');
$map['company_name'] = $company_name;
$res = $model->where($map)->field("id")->find();
if ($res) {
if(isset($save['id'])){
if($save['id'] !=$res['id']){
$this->error('推广公司已存在');
}
}else{
$this->error('推广公司已存在');
}
}
if(!empty(I("contact_phone")) && !checkPhone(I('contact_phone'))) {
$this->error('联系电话格式不正确');
}
if(!empty(I('reg_phone')) && !checkPhone(I('reg_phone'))) {
$this->error('注册电话格式不正确');
}
if(!empty(I('taxation_rate')) && I('taxation_rate') > 0) {
if(!checkNumber(I('taxation_rate'))){
$this->error('税费费率格式错误');
}else{
$save['taxation_rate'] = ($save['taxation_rate'] ?: 0);
}
}else{
$save['taxation_rate']=0;
}
if(!empty(I('channel_rate')) && I('channel_rate') > 0) {
if(!checkNumber(I('channel_rate'))){
$this->error('渠道费率格式不对');
}else{
$save['channel_rate'] = ($save['channel_rate'] ?: 0);
}
}else{
$save['channel_rate']=0;
}
if(!empty(I('fax_ratio')) && I('fax_ratio') > 0) {
if(!checkNumber(I('fax_ratio'))){
$this->error('开票税点格式不对');
}else{
$save['fax_ratio'] = ($save['fax_ratio'] ?: 0);
}
}else{
$save['fax_ratio']=0;
}
if(!empty(I('server_fee')) && !checkNumber(I('server_fee')) && I("has_server_fee") == 1) {
$this->error('服务器费用格式不对');
}else{
if(empty(I('server_fee'))){
$save['server_fee']=0;
}else{
$save['server_fee']=I('server_fee');
}
}
$time =time();
$save['contact_begin'] = strtotime($save['contact_begin']);
$save['contact_end'] = strtotime($save['contact_end']);
$save['validity_start_time'] = strtotime($save['validity_start_time']);
$save['validity_end_time'] = strtotime($save['validity_end_time']);
$save['last_up_time'] = $time;
}
}

@ -2,6 +2,7 @@
<block name="css">
<link rel="stylesheet" type="text/css" href="__CSS__/admin_table.css" media="all">
<link rel="stylesheet" type="text/css" href="__STATIC__/webuploader/webuploader.css" media="all">
<link href="__STATIC__/icons_alibaba/iconfont.css" rel="stylesheet">
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<style>
@ -32,6 +33,48 @@
border-radius: 4px;
cursor: pointer;
}
.list-ratio {
display: table;
}
.list-ratio .li-ratio {
display: flex;
margin-bottom: 20px;
align-items: center;
}
.list-ratio .li-ratio .turnover, .list-ratio .li-ratio .turnover-ratio {
position: relative;
}
.list-ratio .li-ratio .turnover span, .list-ratio .li-ratio .turnover-ratio .error-message {
color: red;
position: absolute;
left: 0;
top: 30px;
white-space: nowrap;
display: none;
}
.iconfont-btn {
cursor: pointer;
}
.iconfont-style {
font-size: 18px;
color: #fff;
border-radius: 4px;
border: 0;
padding: 5px;
margin-left: 10px;
}
.iconfont-selected {
background-color: #0A9AF2;
}
.iconfont-selected:hover {
background-color: #03a9f4;
}
.iconfont-unselected {
background-color: #999;
}
.iconfont-unselected:hover {
background-color: #ababab;
}
</style>
<!-- 标签页导航 -->
@ -42,7 +85,7 @@
<div class="tab-content tabcon1711">
<!-- 表单 -->
<form id="form" >
<form id="form" autocomplete="off">
<!-- 基础 -->
<div id="tab1" class="tab-pane in tab1 ">
<table border="0" cellspacing="0" cellpadding="0">
@ -53,12 +96,28 @@
<input type="text" class="txt " name="company_name" value="" placeholder="请输入推广公司名称">
</td>
</tr>
<tr>
<td class="l"><i class="mustmark" style="margin-left:-7px">*</i>团体归属:</td>
<td class="r" >
<div class="input-list input-list-server search_label_rehab" style="margin:0;">
<select id="company_belong" name="company_belong" class="select_gallery" style="width: 215px;">
<!-- <option value="">请选择团体归属</option> -->
<volist name=":getCompanyBlong()" id="vo">
<option value="{$vo.id}" <php> if($vo['id'] == 3)echo selected;</php>>{$vo.name}</option>
</volist>
</select>
</div>
</td>
</tr>
<tr>
<td class="l">对应平台(简称):</td>
<td class="r" >
<input type="text" class="txt " name="platform_name" value="" placeholder="请输入对应平台">
</td>
</tr>
<tr>
<td class="l">合同期限:</td>
<td class="r" >
@ -74,13 +133,35 @@
</div>
</td>
</tr>
<tr>
<td class="l">结算生效期限:</td>
<td class="r">
<input type="text" class="txt time time3" name="validity_start_time" value="" placeholder="生效开始时间">
&nbsp;-&nbsp;<input type="text" class="txt time time4" name="validity_end_time" value="" placeholder="生效结束时间">
</td>
</tr>
<tr>
<td class="l">开票税点:</td>
<td class="r" >
<input type="number" class="txt" name="fax_ratio" value="0" placeholder="请输入开票税点">
<span>%</span>
<input type="text" class="txt" name="fax_ratio" value="" placeholder="开票税点(最多两位小数)"><span style="margin-left: 3px;padding-top: 5px">%</span>
</td>
</tr>
<tr>
<td class="l">渠道费率:</td>
<td class="r" >
<input type="text" class="txt " name="channel_rate" value="" placeholder="渠道费率(最多两位小数)"> <span style="margin-left: 3px;padding-top: 5px">%</span>
</td>
</tr>
<tr>
<td class="l">税费费率:</td>
<td class="r" >
<input type="text" class="txt " name="taxation_rate" value="" placeholder="税费费率(最多三位小数)"><span style="margin-left: 3px;padding-top: 5px">%</span>
</td>
</tr>
<tr>
<td class="l">公司性质:</td>
<td class="r" >
@ -92,7 +173,7 @@
</select>
</div>
</td>
</tr>
</tr>
<tr>
<td class="l">是否签署合同:</td>
<td class="r" >
@ -105,6 +186,7 @@
</div>
</td>
</tr>
<tr>
<td class="l">是否展示合同服务协议:</td>
<td class="r" >
@ -119,22 +201,22 @@
</div>
</td>
</tr>
<tr>
<td class="l">团体归属:</td>
<td class="l">开发类型:</td>
<td class="r" >
<div class="input-list input-list-server search_label_rehab" style="margin:0;">
<select id="company_belong" name="company_belong" class="select_gallery" style="width: 215px;">
<!-- <option value="">请选择团体归属</option> -->
<volist name=":getCompanyBlong()" id="vo">
<option value="{$vo.id}" <php> if($vo['id'] == 3)echo selected;</php>>{$vo.name}</option>
</volist>
</select>
</div>
<select id="develop_type" name="develop_type" class="select_gallery" style="width: 215px;">
<option value="">请选择开发类型</option>
<option value="1" >自主开发</option>
<option value="2" >自主开发及维护</option>
<option value="3" >只维护</option>
</select>
</td>
</tr>
<tr>
<td class="l">联系结算人:</td>
<td class="l">联系人:</td>
<td class="r" >
<input type="text" class="txt " name="settlement_contact" value="" placeholder="请输入结算联系人">
</td>
@ -145,28 +227,24 @@
<input type="text" class="txt " name="contact_phone" value="" placeholder="请输入联系电话">
</td>
</tr>
<tr>
<td class="l">所在地址:</td>
<td class="l">注册地址:</td>
<td class="r" >
<input type="text" class="txt " name="address" value="" placeholder="请输入所在地址">
<input type="text" class="txt " name="reg_address" value="" placeholder="请输入注册地址">
</td>
</tr>
<tr>
<td class="l">银行卡号:</td>
<td class="l">注册电话:</td>
<td class="r" >
<input type="text" class="txt " name="bank_card" value="" placeholder="请输入银行卡号">
<input type="text" class="txt " name="reg_phone" value="" placeholder="请输入注册电话">
</td>
</tr>
<!-- <tr>
<td class="l"><i class="mustmark" style="margin-left:-7px">*</i>银行卡名:</td>
<td class="r" >
<input type="text" class="txt " name="bank_cardname" value="" placeholder="请输入银行卡名">
</td>
</tr> -->
<tr>
<td class="l">收款银行</td>
<td class="l">邮寄地址:</td>
<td class="r" >
<input type="text" class="txt " name="bank_name" value="" placeholder="请输入收款银行">
<input type="text" class="txt " name="address" value="" placeholder="请输入邮寄地址">
</td>
</tr>
<tr>
@ -175,6 +253,19 @@
<input type="text" class="txt " name="bank_address" value="" placeholder="请输入账户名">
</td>
</tr>
<tr>
<td class="l">银行卡号:</td>
<td class="r" >
<input type="text" class="txt " name="bank_card" value="" placeholder="请输入银行卡号">
</td>
</tr>
<tr>
<td class="l">收款银行:</td>
<td class="r" >
<input type="text" class="txt " name="bank_name" value="" placeholder="请输入收款银行">
</td>
</tr>
<tr>
<td class="l">支付宝真实姓名:</td>
@ -190,23 +281,45 @@
</td>
</tr>
<tr>
<td class="l">开发类型</td>
<td class="l">备注</td>
<td class="r" >
<select id="develop_type" name="develop_type" class="select_gallery" style="width: 215px;">
<option value="">请选择开发类型</option>
<option value="1" >自主开发</option>
<option value="2" >自主开发及维护</option>
<option value="3" >只维护</option>
</select>
<input type="text" class="txt " name="content" value="" placeholder="">
</td>
</tr>
<tr>
<td class="l">备注:</td>
<td class="r" >
<input type="text" class="txt " name="content" value="" placeholder="">
<td class="l noticeinfo"><i class="mustmark" style="margin-left:-7px">*</i>承担服务费:</td>
<td class="r table_radio">
<span class="form_radio table_btn" style="width: auto;">
<label>
<input type="radio" class="inp_radio" value="0" name="has_server_fee" checked>
</label>
<label>
<input type="radio" class="inp_radio" value="1" name="has_server_fee" >
</label>
</span>
<span class="notice-text" id="server_fee_input" style="color: #000;display: none;"><input type="text" class="txt " name="server_fee" value="0" placeholder="请输入服务器费用" style="width: 100px;">&nbsp;&nbsp;</span>
</td>
</tr>
<tr>
<td class="l noticeinfo"><i class="mustmark" style="margin-left:-7px">*</i>合作关系:</td>
<td class="r table_radio">
<span class="form_radio table_btn">
<label>
<input type="radio" class="inp_radio" value="1" name="cooperation_status" checked> 合作中
</label>
<label>
<input type="radio" class="inp_radio" value="0" name="cooperation_status"> 停止合作
</label>
</span>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l noticeinfo"><i class="mustmark" style="margin-left:-7px">*</i>显示状态:</td>
<td class="r table_radio">
@ -222,27 +335,61 @@
</td>
</tr>
<tr>
<td class="l noticeinfo">文档管理</td>
<td class="l noticeinfo"><i class="mustmark" style="margin-left:-7px">*</i>市场总监信息展示:</td>
<td class="r table_radio">
<div class="coin-detail" data-url="{:U('PromoteCompany/addfile')}" style="margin:0px;background: #fff;color: #333;font-weight: 400;border: 1px solid #777;">
添加
</div>
<span class="form_radio table_btn">
<label>
<input type="radio" class="inp_radio" value="1" name="marketing_director_show" >展示
</label>
<label>
<input type="radio" class="inp_radio" value="2" name="marketing_director_show" checked> 隐藏
</label>
</span>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l noticeinfo">市场总监信息展示:</td>
<td class="l noticeinfo"><i class="mustmark" style="margin-left:-7px">*</i>合作方比例增量:</td>
<td class="r table_radio">
<span class="form_radio table_btn">
<label>
<input type="radio" class="inp_radio" value="1" name="marketing_director_show" >展示
<input type="radio" class="inp_radio" value="0" name="has_ratio" checked>
</label>
<label>
<input type="radio" class="inp_radio" value="2" name="marketing_director_show" checked> 隐藏
<input type="radio" class="inp_radio" value="1" name="has_ratio">
</label>
</span>
<span class="notice-text"></span>
</td>
</tr>
<tr id="turnover_ratio" style="display: none;">
<td class="l"></td>
<td class="r table_radio">
<div class="list-ratio">
<div class="li-ratio">
<label class="instanceof_text" style="margin-right: 10px;">流水分成设定:</label>
<span class="iconfont-btn iconfont-btn-add" title="添加流水比例"><i class="iconfont-style iconfont-selected iconfont iconjiahao1"></i></span>
<span class="iconfont-btn iconfont-btn-del" title="删除流水比例"><i class="iconfont-style iconfont-unselected iconfont iconjianhao"></i></span>
</div>
</div>
<span class="notice-text" style="width: auto;"></span>
</td>
</tr>
<tr>
<td class="l noticeinfo">文档管理</td>
<td class="r table_radio">
<div class="coin-detail" data-url="{:U('PromoteCompany/addfile')}" style="margin:0px;background: #fff;color: #333;font-weight: 400;border: 1px solid #777;">
添加
</div>
</td>
</tr>
</tbody>
</table>
<table border="1" style="width: 600px;text-align: center;" cellspacing="0" cellpadding="0" id="docShow">
@ -307,6 +454,25 @@
PROMOTE.juicerFun();
// window.parent.addFile(info);
}
$("input[type=radio][name=has_server_fee]").on('change', function (e) {
    var v = $(this).val();
if(v == 1){
$("#server_fee_input").show();
}else{
$("#server_fee_input").hide();
}
  });
$("input[type=radio][name=has_ratio]").on('change', function (e) {
    var v = $(this).val();
if(v == 1){
$("#turnover_ratio").show();
}else{
$("#turnover_ratio").hide();
}
  });
$('#contact_begin').datetimepicker({
format: 'yyyy-mm-dd',
language: "zh-CN",
@ -334,6 +500,38 @@
return false;
});
$('.time3').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView: "month",
autoclose:true
}).change(function(){
var start = new Date($(this).val()).getTime();
var end = new Date($('.time4').val()).getTime();
if(isNaN(end)) {return false;}
if(start>=end) {layer.msg('开始时间必须小于结束时间');return false;}
return false;
});
$('.time4').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView: "month",
autoclose:true
}).change(function(){
var end = new Date($(this).val()).getTime();
var start = new Date($('.time3').val()).getTime();
if(isNaN(start)) {return false;}
if(start>=end) {layer.msg('开始时间必须小于结束时间');return false;}
return false;
});
$(".coin-detail").click(function () {
var url = $(this).data('url');
var title = '文档添加';
@ -347,6 +545,7 @@
});
});
$("#submit").on("click",function(){
var flag = true;
var obj = {
"company_name":["required",false,"推广公司名称不允许为空"],
"fax_ratio":["number",true,"开票税率必须是数字如果无此项请填0"],
@ -359,9 +558,31 @@
if(doc.length > 0){
senddata.push({"name":"resources", "value":JSON.stringify(doc)});
}
var hasratio = $("input[type=radio][name=has_ratio]:checked").val();
if(hasratio == 1){
$(".error-message").each(function(index,elm){
var t = $(elm).css("display");
if(t == 'block' || t == 'inline'){
flag = false;
layer.msg("请先处理错误的比例配置", {icon: 2});
return false;
}
})
$(".turnover_money").each(function(index,elm){
var t = $(elm).val();
if(t == ''){
flag = false;
layer.msg("流水及比例不允许为空,如不需要请删除", {icon: 2});
return false;
}
})
}
if(!flag) return false;
console.log(senddata);
//添加
$.ajax({
url:"{:U('PromoteCompany/add')}",
url:"{:U('add')}",
type:"post",
data:senddata,
dataType:"json",
@ -380,6 +601,121 @@
});
})
$('.iconfont-btn-add').click(function (e) {
var delBtn = $('.iconfont-btn-del');
var html = '';
html += '<div class="li-ratio">';
html += '<label class="instanceof_text">月流水:</label>';
html += '<select name="instanceof[]" style="width: 50px;margin-right: 10px;">';
html += '<option value="1"></option>';
html += '<option value="2">></option>';
html += '</select>';
html += '<div class="turnover">';
html += '<input type="text" class="txt turnover_money" name="turnover[]" value="" placeholder="请输入金额" onKeyUp="value=value.replace(/[^\\w\\.\\/]/ig, \'\')" style="width: 100px;margin-right: 10px;">';
html += '<span class="error-message"></span>';
html += '</div>';
html += '<label>分成比例:</label>';
html += '<div class="turnover-ratio">';
html += '<input type="text" class="txt turnover_ratio" name="turnover_ratio[]" value="" placeholder="请输入比例" onKeyUp="value=value.replace(/[^\\w\\.\\/]/ig, \'\')" style="width: 60px;">';
html += '<span class="form_unit" style="margin-right: 10px;">%</span>';
html += '<span class="error-message"></span>';
html += '</div>';
html += '</div>';
$('.list-ratio').append(html);
// subevn();
if ($('.list-ratio').children().length > 1 && delBtn.children('i').hasClass('iconfont-unselected')) {
delBtn.children('i').removeClass('iconfont-unselected');
delBtn.children('i').addClass('iconfont-selected');
}
$('.list-ratio').children(':last-child').children('.turnover').children('input').change(function (e) {
turnoverChangeHandle();
});
$('.list-ratio').children(':last-child').children('.turnover-ratio').children('input').change(function (e) {
turnoverRatioChangeHandle();
});
});
$('.list-ratio').children('.li-ratio').children('.turnover').children('input').change(function (e) {
turnoverChangeHandle();
});
$('.list-ratio').children('.li-ratio').children('.turnover-ratio').children('input').change(function (e) {
turnoverRatioChangeHandle();
});
function turnoverChangeHandle()
{
$('.list-ratio').children('.li-ratio').children('.turnover').children('input').each(function () {
var that = $(this);
var thatLiRatio = that.parent().parent();
var thatLiRatioIndex = thatLiRatio.index();
var prevTurnover = 0;
var prev = thatLiRatio.prev().children().children('input');
var thatTurnover = parseFloat(that.val());
if (thatLiRatioIndex > 0) {
prevTurnover = parseFloat(prev.val());
prevTurnoverHandle(thatTurnover, prevTurnover, that);
}
});
}
function turnoverRatioChangeHandle() {
var ratio = parseFloat($('#ratio').val());
$('.list-ratio').children('.li-ratio').children('.turnover-ratio').children('input').each(function () {
var that = $(this);
var thatLiRatio = that.parent().parent();
var thatLiRatioIndex = thatLiRatio.index();
var thatTurnoverRatio = parseFloat(that.val());
if (thatLiRatioIndex === 1) {
prevTurnoverRatio = ratio;
prevTurnoverRatioHandle(thatTurnoverRatio, prevTurnoverRatio, that, true);
} else {
var prev = thatLiRatio.prev().children('.turnover-ratio').children('input');
var prevTurnoverRatio = parseFloat(prev.val());
prevTurnoverRatioHandle(thatTurnoverRatio, prevTurnoverRatio, that);
}
});
}
function prevTurnoverHandle(thatTurnover, prevTurnover, that)
{
if (thatTurnover <= prevTurnover) {
that.parent().children('span').text('月流水必须大于上一个月流水');
that.parent().children('span').show();
} else {
that.parent().children('span').hide();
}
return true;
}
function prevTurnoverRatioHandle(thatTurnoverRatio, prevTurnoverRatio, that, isDefault = false)
{
// if (thatTurnoverRatio <= prevTurnoverRatio) {
// var msg = isDefault ? '月流水分成比例必须大于默认分成比例' : '月流水分成比例必须大于上一个月流水分成比例';
// that.parent().children('.error-message').text(msg);
// that.parent().children('.error-message').show();
// } else {
// that.parent().children('.error-message').hide();
// }
return true;
}
$('.iconfont-btn-del').click(function (e) {
var that = $(this);
if ($('.list-ratio').children().length > 1) {
$('.list-ratio').children(':last-child').remove();
if ($('.list-ratio').children().length === 1) {
that.children('i').removeClass('iconfont-selected');
that.children('i').addClass('iconfont-unselected');
}
}
});
var PROMOTE = {
juicerFun(){
var tpl =$("#doctpl").html();

@ -42,7 +42,7 @@
<div class="tab-content tabcon1711">
<!-- 表单 -->
<form id="form">
<form id="form" autocomplete="off">
<!-- 基础 -->
<div id="tab1" class="tab-pane in tab1 ">
<table border="0" cellspacing="0" cellpadding="0">
@ -74,11 +74,25 @@
</div>
</td>
</tr>
<tr>
<td class="l">结算生效期限:</td>
<td class="r">
<input type="text" class="txt time time3" name="validity_start_time" value="" placeholder="生效开始时间">
&nbsp;-&nbsp;<input type="text" class="txt time time4" name="validity_end_time" value="" placeholder="生效结束时间">
</td>
</tr>
<tr>
<td class="l">开票税点:</td>
<td class="r" >
<input type="number" class="txt" name="fax_ratio" value="{$data.fax_ratio}" placeholder="请输入开票税点">
<span>%</span>
<span style="margin-left: 3px;padding-top: 5px">%</span>
</td>
</tr>
<tr>
<td class="l">税费费率:</td>
<td class="r" >
<input type="text" class="txt " name="taxation_rate" value="{$data.taxation_rate}" placeholder="税费费率(最多三位小数)"><span style="margin-left: 3px;padding-top: 5px">%</span>
</td>
</tr>
<tr>
@ -149,6 +163,20 @@
<input type="text" class="txt " name="contact_phone" value="{$data.contact_phone}" placeholder="请输入联系电话">
</td>
</tr>
<tr>
<td class="l">注册地址:</td>
<td class="r" >
<input type="text" class="txt " name="reg_address" value="{$data.reg_address}" placeholder="请输入注册地址">
</td>
</tr>
<tr>
<td class="l">注册电话:</td>
<td class="r" >
<input type="text" class="txt " name="reg_phone" value="{$data.reg_phone}" placeholder="请输入注册电话">
</td>
</tr>
<tr>
<td class="l">所在地址:</td>
<td class="r" >
@ -404,6 +432,21 @@
if(start>=end) {layer.msg('开始时间必须小于结束时间');$("#contact_end").val('');return false;}
return false;
});
$('.time3').datetimepicker({
format: 'yyyy-mm-dd',
language:"zh-CN",
minView: "month",
autoclose:true
}).change(function(){
var start = new Date($(this).val()).getTime();
var end = new Date($('.time4').val()).getTime();
if(isNaN(end)) {return false;}
if(start>=end) {layer.msg('开始时间必须小于结束时间');return false;}
return false;
});
$(".coin-detail").click(function () {

@ -130,12 +130,12 @@
<th>银行账号</th>
<th>是否签署合同</th>
<th>备注</th>
<!--
<th>会长账号</th>
<th>结算周期</th>
<th>产品类型</th>
<th>游戏名称</th>
<th colspan="2">合作方分成比例</th> -->
<th colspan="2">合作方分成比例</th>
</tr>
</thead>
@ -155,7 +155,7 @@
</if>
</td>
<td rowspan="{$data.row}">{$data.company_name}</td>
<td><a class="ajax-view" data-id="{$data.id}">查看</a></td>
<td rowspan="{$data.row}"><a class="ajax-view" data-id="{$data.id}">查看</a></td>
<td rowspan="{$data.row}">{$data.platform_name}</td>
<td rowspan="{$data.row}">{$data.company_type}</td>
<td rowspan="{$data.row}">{$data.company_belong}</td>
@ -247,7 +247,7 @@
</tr>
</volist>
<tr class="data_summary">
<td style="text-align: center;">汇总:</td>
<td style="text-align: center;" colspan="3">汇总:</td>
<td colspan="16">
累计推广公司数量:{$count}&#12288;&#12288;会长数量:{$promotecount}
</td>

@ -2095,7 +2095,7 @@ ADD COLUMN `change_status` tinyint(1) NOT NULL DEFAULT 0 COMMENT '推广员充
--CP cz
ALTER TABLE `tab_partner`
ADD COLUMN `taxation_rate` decimal(5,2) NOT NULL DEFAULT '0.00' COMMENT '税费费率' AFTER `cooperation_status`;
ADD COLUMN `taxation_rate` decimal(5,3) NOT NULL DEFAULT '0.00' COMMENT '税费费率' AFTER `cooperation_status`;
CREATE TABLE `tab_partner_verify` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
@ -2111,7 +2111,7 @@ CREATE TABLE `tab_partner_verify` (
KEY `verify_status` (`verify_status`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
-- 新增推广公司字段及审核
ALTER TABLE `tab_promote_company`
ADD COLUMN `validity_start_time` int(11) NOT NULL DEFAULT 0 COMMENT '生效开始时间' AFTER `company_type`,
ADD COLUMN `validity_end_time` int(11) NOT NULL DEFAULT 0 COMMENT '生效结算时间' AFTER `validity_start_time`,
@ -2123,4 +2123,12 @@ ADD COLUMN `has_server_fee` tinyint(1) NOT NULL DEFAULT 0 COMMENT '承担服务
ADD COLUMN `server_fee` decimal(10,2) NOT NULL DEFAULT 0.00 COMMENT '服务器费用' AFTER `has_server_fee`,
ADD COLUMN `cooperation_status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '合作关系1合作中 0暂停合作' AFTER `server_fee`;
ALTER TABLE `tab_promote_company`
ADD COLUMN `taxation_rate` decimal(5,3) NOT NULL DEFAULT '0' COMMENT '税费费率' AFTER `cooperation_status`;
ALTER TABLE `tab_promote_company`
ADD COLUMN `channel_rate` decimal(5,2) NOT NULL DEFAULT '0' COMMENT '渠道费率' AFTER `taxation_rate`;
ALTER TABLE `tab_promote_company`
MODIFY COLUMN `contact_phone` varchar(24) NOT NULL DEFAULT '' COMMENT '联系电话' AFTER `settlement_contact`;
Loading…
Cancel
Save