新增分成优化

master
chenzhi 5 years ago
parent 0237e0ff63
commit 5a962e1b73

@ -61,6 +61,12 @@ class CompanyRelationController extends AdminController
$params = I('get.');
$page = $params['p'] ? intval($params['p']) : 1;
$row = $params['row'] ? intval($params['row']) : 10;
//权限分配
if(!IS_ROOT){
$this->OpAuthList= getModuleControllerAuth();
}
$where['_string'] = '1 = 1';
if(isset($params['company_type'])){
$where['_string'] .= " AND (first_company_type='{$params['company_type']}' OR second_company_type='{$params['company_type']}')";
@ -83,7 +89,6 @@ class CompanyRelationController extends AdminController
$where['is_payment'] = $params['is_payment'];
}
// $this->checkListOrCountAuthRestMap($where);//导出权限
$dbres = $this->DBModel->where($where)->order("id desc");;
if(isset($params['export'])){
$dbres = $dbres->select();
@ -97,6 +102,7 @@ class CompanyRelationController extends AdminController
$v['invoice_type'] =$this->InvoiceType[$v['invoice_type']];
$v['is_payment'] =$this->IsPayment[$v['is_payment']];
$v['collection'] =$this->Collection[$v['collection']];
$v['oplist'] = $this->listOpAuth($v);
}
if(isset($_REQUEST['export'])){
@ -127,6 +133,7 @@ class CompanyRelationController extends AdminController
$this->assign('CompanyType',$this->CompanyType);
$this->assign('InvoiceType',$this->InvoiceType);
$this->assign('IsPayment',$this->IsPayment);
$this->assign('menubtn',$this->listMenuAuth());
$this->display();
}
//审核列表
@ -364,7 +371,19 @@ class CompanyRelationController extends AdminController
}
$params['remark'] = $params['remark'] ?? '';
$params['status'] = 0;
$params['verify_log']=json_encode(["create_user"=>$this->admininfo["username"],"create_time"=>date("Y-m-d H:i:s")]);
$verify_log = [
"create_user"=>$this->admininfo["username"],
"create_time"=>date("Y-m-d H:i:s")
];
if($params['first_company_type'] == 1 || $params['second_company_type'] == 1){
//上游公司
$verify_log['market_user']= "AUTO";
$verify_log['market_time']= date("Y-m-d H:i:s");
$params['status'] = 1;
}
$params['verify_log']=json_encode($verify_log);
//判断已有未审核
$where = "
(
@ -378,14 +397,22 @@ class CompanyRelationController extends AdminController
OR
(second_company_type ='{$params['second_company_type']}' and second_company_id = '{$params['second_company_id']}')
)
AND
status < 2
";
$hasdb = $this->DBlogModel->field("count(id) count")->where($where)->find()['count'];
if($hasdb > 0){
$this->error('当前甲乙双方已有审批单,请直接搜索后修改');
$r_res = $this->DBModel->where($where)->find();
if(!empty($r_res)){
$this->error('当前甲乙双方已有绑定关系');
}
$hasdb = $this->DBlogModel->where($where)->find();
if(!empty($hasdb)){
//覆盖
$params['id'] = $hasdb['id'];
$this->DBlogModel->save($params);
$id = $hasdb['id'];
}else{
//新增
$id = $this->DBlogModel->add($params);
}
$id = $this->DBlogModel->add($params);
addOperationLog(['op_type'=>0,'key'=>$id,'op_name'=>'新增','url'=>U('lists')]);
$this->ajaxReturn(["msg"=>"添加成功","code"=>1,"url"=>U("lists")]);
@ -396,7 +423,40 @@ class CompanyRelationController extends AdminController
$this->display();
}
}
public function editRelation()
// public function editRelation()
// {
// if ($_POST) {
// $p= I('post.');
// if(!isset($p['id'])){
// $this->error('参数错误');
// }
// //查询
// $y = $this->DBlogModel->where("id='{$p['id']}'")->find();
// $p['remark'] = $p['remark'] ?? '';
// if($y['settlement_type'] != $p['settlement_type'] || $y['invoice_type'] != $p['invoice_type'] || $y['invoice_content'] != $p['invoice_content'] || $y['is_payment'] != $p['is_payment'] || $y['collection'] != $p['collection']){
// $p['status'] = 0;
// $p['verify_log'] = json_encode(["create_user"=>$this->admininfo["username"],"create_time"=>date("Y-m-d H:i:s")]);
// }
// $this->DBlogModel->save($p);
// addOperationLog(['op_type'=>1,'key'=>$p['id'],'op_name'=>'修改','url'=>U('lists')]);
// $this->ajaxReturn(["msg"=>"修改成功","code"=>1,"url"=>U("lists")]);
// } else {
// $params = I('get.');
// $id = $params['id'] ?? 0;
// $id = intval($id);
// $map['id'] = $id;
// $dbres = $this->DBlogModel->where($map)->find();
// $this->assign('first_company_info',$this->getCompanyInfo($dbres['first_company_type'],$dbres['first_company_id']));
// $this->assign('second_company_info',$this->getCompanyInfo($dbres['second_company_type'],$dbres['second_company_id']));
// $dbres['first_company_type'] =$this->CompanyType[$dbres['first_company_type']];
// $dbres['second_company_type'] =$this->CompanyType[$dbres['second_company_type']];
// $this->assign('data', $dbres);
// $this->display();
// }
// }
public function edit()
{
if ($_POST) {
$p= I('post.');
@ -404,21 +464,55 @@ class CompanyRelationController extends AdminController
$this->error('参数错误');
}
//查询
$y = $this->DBlogModel->where("id='{$p['id']}'")->find();
$p['remark'] = $p['remark'] ?? '';
$y = $this->DBModel->where("id='{$p['id']}'")->find();
if($y['settlement_type'] != $p['settlement_type'] || $y['invoice_type'] != $p['invoice_type'] || $y['invoice_content'] != $p['invoice_content'] || $y['is_payment'] != $p['is_payment'] || $y['collection'] != $p['collection']){
//修改了进行审核
$p['status'] = 0;
$p['verify_log'] = json_encode(["create_user"=>$this->admininfo["username"],"create_time"=>date("Y-m-d H:i:s")]);
$verify_log = [
"create_user"=>$this->admininfo["username"],
"create_time"=>date("Y-m-d H:i:s")
];
if($p['first_company_type'] == 1 || $p['second_company_type'] == 1){
//上游公司
$verify_log['market_user']= "AUTO";
$verify_log['market_time']= date("Y-m-d H:i:s");
$p['status'] = 1;
}
$p['verify_log'] = json_encode($verify_log);
}
$where = "
(
(first_company_type ='{$p['first_company_type']}' and first_company_id = '{$p['first_company_id']}')
OR
(first_company_type ='{$p['second_company_type']}' and first_company_id = '{$p['second_company_id']}')
)
AND
(
(second_company_type ='{$p['first_company_type']}' and second_company_id = '{$p['first_company_id']}')
OR
(second_company_type ='{$p['second_company_type']}' and second_company_id = '{$p['second_company_id']}')
)
";
$hasdb = $this->DBlogModel->where($where)->find();
if(!empty($hasdb)){
//覆盖
$p['id'] = $hasdb['id'];
$this->DBlogModel->save($p);
$id = $hasdb['id'];
}else{
//新增
$id = $this->DBlogModel->add($p);
}
$this->DBlogModel->save($p);
addOperationLog(['op_type'=>1,'key'=>$p['id'],'op_name'=>'修改','url'=>U('lists')]);
$this->ajaxReturn(["msg"=>"修改成功","code"=>1,"url"=>U("lists")]);
} else {
$params = I('get.');
$id = $params['id'] ?? 0;
$id = intval($id);
$map['id'] = $id;
$dbres = $this->DBlogModel->where($map)->find();
$dbres = $this->DBModel->where($map)->find();
$this->assign('first_company_info',$this->getCompanyInfo($dbres['first_company_type'],$dbres['first_company_id']));
$this->assign('second_company_info',$this->getCompanyInfo($dbres['second_company_type'],$dbres['second_company_id']));
@ -500,11 +594,50 @@ class CompanyRelationController extends AdminController
}
return $companyInfo;
}
public function menuAuth()
{
protected function listMenuAuth(){
$addurl = U("addRelation");
$mentBtn = [
"addRelation"=>"<a class='butn' href='{$addurl}'>新增公司绑定</a>",
"addRelation"=>"<a class='butn' href='{$addurl}'>新增公司绑定</a>"
];
$resarr = [];
foreach ($mentBtn as $k => $v) {
if(IS_ROOT){
$resarr[] = $v;
}else{
if(in_array($k,$this->OpAuthList)){
$resarr[] = $v;
}
}
}
return $resarr;
}
protected function listOpAuth($info){
$id = $info['id'];
//原始列表
$opBtn = [
"edit"=>"<a class='confirm edit' data-id='{$id}'>编辑</a>",
"del"=>"<a class='confirm del' data-id='{$id}' style='color: red;'>删除</a>",
];
//操作对应菜单
$optist = ["edit","del"];
$resarr = [];
foreach ($optist as $k => $v) {
if(IS_ROOT){
$resarr[] = $opBtn[$v];
}else{
if(in_array($v,$this->OpAuthList)){
$resarr[] = $opBtn[$v];
}
}
}
return $resarr;
}
protected function menuAuth()
{
$mentBtn = [
"marketAgree"=>"<a class='butn' id='marketAgree'>市场部审批通过</a>",
"marketRefuse"=>"<a class='butn' id='marketRefuse' style='background-color: red;'>市场部审核拒绝</a>",
"adminAgree"=>"<a class='butn' id='adminAgree'>管理员审核通过</a>",
@ -522,7 +655,7 @@ class CompanyRelationController extends AdminController
}
return $resarr;
}
public function OpAuth($info)
protected function OpAuth($info)
{
$id = $info['id'];
//原始列表
@ -551,7 +684,7 @@ class CompanyRelationController extends AdminController
return $resarr;
}
public function error($data)
protected function error($data)
{
header('Content-Type:application/json; charset=utf-8');
$data =json_encode(['msg'=>$data,"code"=>4000],JSON_UNESCAPED_UNICODE);

@ -0,0 +1,302 @@
<extend name="Public/base" />
<block name="body">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="__CSS__/admin_table.css" media="all">
<link href="__STATIC__/icons_alibaba/iconfont.css" rel="stylesheet">
<script type="text/javascript" src="__STATIC__/uploadify/jquery.uploadify.min.js"></script>
<script type="text/javascript" src="__STATIC__/provincecityarea/AreaData_min.js"></script>
<script src="__STATIC__/layer/layer.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<style>
.tabcon1711 input.time {
width: 150px;
}
#form .txt_area {
width: 300px;
height: 150px;
}
.tabcon1711 .form_unit {
margin-left: 2px;
}
.tabcon1711 .mustmark {
margin-left:-7px;
}
.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;
}
input[type=number]{
padding: 4px 6px;
font-size: 12px;
line-height: 20px;
color: #555;
vertical-align: middle;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
background-color: #fff;
border: 1px solid #ccc;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
-webkit-transition: border linear .2s, box-shadow linear .2s;
-moz-transition: border linear .2s, box-shadow linear .2s;
-o-transition: border linear .2s, box-shadow linear .2s;
transition: border linear .2s, box-shadow linear .2s;
}
</style>
<div class="cf main-place top_nav_list navtab_list">
<h3 class="page_title">编辑公司绑定</h3>
<p class="description_text" style="color: red;">说明:修改后需要走审批流程,通过后才会覆盖。如需调换甲乙公司,请删除后重新添加</p>
</div>
<!-- 标签页导航 -->
<div class="tab-wrap">
<div class="tab-content tabcon1711" >
<!-- 表单 -->
<form id="form" action="{:U('edit')}" method="post" class="form-horizontal" >
<div style="display: flex;">
<!-- 基础文档模型 -->
<div id="tab1" class="tab-pane in tab1">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">甲方公司类型:</td>
<td class="r table_radio">
<span class="form_radio table_btn">{$data.first_company_type}</span>
</td>
</tr>
<tr>
<td class="l">甲方公司:</td>
<td class="r table_radio">
<span class="form_radio table_btn">{$data.first_company_name}</span>
</td>
</tr>
<tbody id="first_company_info">
</tbody>
</tbody>
</table>
</div>
<div id="tab2" class="tab-pane in tab2">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l">乙方公司类型:</td>
<td class="r table_radio">
<span class="form_radio table_btn">{$data.second_company_type}</span>
</td>
</tr>
<tr>
<td class="l">乙方公司:</td>
<td class="r table_radio">
<span class="form_radio table_btn">{$data.second_company_name}</span>
</td>
</tr>
<tbody id="second_company_info">
</tbody>
</tbody>
</table>
</div>
</div>
<div style="width: 80%;height: 1px;border-bottom: 1px solid #e6e6e6;margin: 10px;"></div>
<div id="tab3" class="tab-pane in tab3">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="l"><i class="mustmark">*</i>结算周期:</td>
<td class="r">
<select name="settlement_type" id="settlement_type" class="select_gallery">
<option value="0" <if condition="$data['settlement_type'] eq 0">selected</if>>无</option>
<option value="1" <if condition="$data['settlement_type'] eq 1">selected</if>>周结</option>
<option value="2" <if condition="$data['settlement_type'] eq 2">selected</if>>月结</option>
</select>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l"><i class="mustmark">*</i>开票类型:</td>
<td class="r">
<select name="invoice_type" id="invoice_type" class="select_gallery">
<option value="0" <if condition="$data['invoice_type'] eq 0">selected</if>>无</option>
<option value="1" <if condition="$data['invoice_type'] eq 1">selected</if>>专票</option>
<option value="2" <if condition="$data['invoice_type'] eq 2">selected</if>>普票</option>
</select>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l">开票内容:</td>
<td class="r table_radio">
<input type="text" name="invoice_content" id="invoice_content" class="input" value="{$data['invoice_content']}"></textarea>
</td>
</tr>
<tr>
<td class="l">是否有打款流程:</td>
<td class="r table_radio">
<span class="form_radio table_btn">
<label>
<input type="radio" value="1" name="is_payment" <if condition="$data['is_payment'] eq 1">checked="checked"</if>> 是
</label>
<label>
<input type="radio" value="2" name="is_payment" <if condition="$data['is_payment'] eq 2">checked="checked"</if>> 否
</label>
</span>
<span class="notice-text">选择否将不能进行线上打款</span>
</td>
</tr>
<tr>
<td class="l"><i class="mustmark">*</i>收款方:</td>
<td class="r">
<select name="collection" id="collection" class="select_gallery">
<option value="1" <if condition="$data['collection'] eq 1">selected</if>>甲方</option>
<option value="2" <if condition="$data['collection'] eq 2">selected</if>>乙方</option>
</select>
<span class="notice-text"></span>
</td>
</tr>
<tr>
<td class="l">备注:</td>
<td class="r table_radio">
<textarea type="text" name="remark" id="remark" class="txt_area">{$data['remark']}</textarea>
<span class="notice-text"></span>
</td>
</tr>
</tbody>
</table>
</div>
<input type="hidden" name="id" id="id" value="{$data['id']|default=''}" />
<div class="form-item cf">
<button class="submit_btn mlspacing" id="submit" type="submit" target-form="form-horizontal">
保存
</button>
<a class="submit_btn " alt="返回上一页" title="返回上一页" href="javascript:window.history.back();" >
返回
</a>
</div>
</form>
</div>
</div>
</block>
<block name="script">
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<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__/czinputcheck.js?v=1.29" type="text/javascript"></script>
<script type="text/javascript">
//导航高亮
highlight_subnav("{:U('index')}");
$(".select_gallery").select2();
var first_company={$first_company_info|json_encode=###,JSON_UNESCAPED_UNICODE};
var second_company={$second_company_info|json_encode=###,JSON_UNESCAPED_UNICODE};
$(function(){
//
$('#submit').click(function (e) {
//查看是否报错
var target = $('form').get(0).action;
var query = $('form').serialize();
var that = this;
$(that).addClass('disabled').attr('autocomplete','off').prop('disabled',true);
$.post(target,query).success(function(data){
if(layer) {layer.closeAll('loading');}
if (data.code==1) {
if (data.url) {
updateAlert(data.msg + ' 页面即将自动跳转~');
}else{
updateAlert(data.msg);
}
setTimeout(function(){
$(that).removeClass('disabled').prop('disabled',false);
if (data.url) {
location.href=data.url;
}else if( $(that).hasClass('no-refresh')){
$('#tip').find('.tipclose').click();
}else{
location.reload();
}
},1500);
}else{
$(that).removeClass('disabled').prop('disabled',false);
layer.msg(data.msg,{icon: 2});
}
});
});
$("#first_company_info").html(setCompanyInfo(first_company));
$("#second_company_info").html(setCompanyInfo(second_company));
function setCompanyInfo(companyinfo){
var companyinfostr = '';
if("company_belong" in companyinfo){
companyinfostr += '<tr><td class="l">内外团:</td><td class="r table_radio"><span class="form_radio table_btn">'+companyinfo.company_belong+'</span></td></tr>';
}
if("company_type" in companyinfo){
companyinfostr += '<tr><td class="l">公司性质:</td><td class="r table_radio"><span class="form_radio table_btn">'+companyinfo.company_type+'</span></td></tr>';
}
if("company_relation" in companyinfo){
companyinfostr += '<tr><td class="l">开发类型:</td><td class="r table_radio"><span class="form_radio table_btn">'+companyinfo.company_relation+'</span></td></tr>';
}
if("link_man" in companyinfo){
companyinfostr += '<tr><td class="l">联系人:</td><td class="r table_radio"><span class="form_radio table_btn">'+companyinfo.link_man+'</span></td></tr>';
}
if("link_phone" in companyinfo){
companyinfostr += '<tr><td class="l">联系电话:</td><td class="r table_radio"><span class="form_radio table_btn">'+companyinfo.link_phone+'</span></td></tr>';
}
return companyinfostr;
}
});
</script>
</block>

@ -109,6 +109,13 @@
</div>
</div>
<div class="butnbox" style="margin-bottom: 10px;">
<div class="butnlist jscheckbutn" style="margin-left: 2px">
<foreach name="menubtn" item="vo" >
{$vo}
</foreach>
</div>
</div>
<!-- 数据列表 -->
<div class="data_list">
<div class="">
@ -125,6 +132,7 @@
<th>开票内容</th>
<th>打款流程</th>
<th>收款方</th>
<th>操作</th>
</tr>
</thead>
@ -146,6 +154,12 @@
<td>{$data.invoice_content}</td>
<td>{$data.is_payment}</td>
<td>{$data.collection}</td>
<td>
<foreach name="data.oplist" item="vo" >
{$vo}
</foreach>
</td>
</tr>
</volist>
</if>
</tbody>
@ -193,6 +207,11 @@ $(function(){
$("#search").click();
}
});
$(".edit").on("click",function(){
var id = $(this).data("id");
var url = "{:U('edit')}"+"&id="+id;
window.location.href = url;
})
var loop = 1;
var company_id = "{$_GET['company_id']??0}";

Loading…
Cancel
Save