信呼OA版本v2.3.8
This commit is contained in:
32
webmain/main/yingyong/menuAction.php
Normal file
32
webmain/main/yingyong/menuAction.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
class menuClassAction extends Action
|
||||
{
|
||||
|
||||
public function dataAjax()
|
||||
{
|
||||
$this->rows = array();
|
||||
$where = $this->rock->covexec($this->post('where'));
|
||||
$this->getmenu(0, 1, $where);
|
||||
|
||||
echo json_encode(array(
|
||||
'totalCount'=> 0,
|
||||
'rows' => $this->rows
|
||||
));
|
||||
}
|
||||
|
||||
private function getmenu($pid, $oi, $wh='')
|
||||
{
|
||||
$db = m('menu');
|
||||
$menu = $db->getall("`pid`='$pid' $wh order by `sort`",'*');
|
||||
foreach($menu as $k=>$rs){
|
||||
$sid = $rs['id'];
|
||||
$rs['level'] = $oi;
|
||||
$rs['stotal'] = $db->rows("`pid`='$sid' $wh ");
|
||||
$this->rows[] = $rs;
|
||||
|
||||
$this->getmenu($sid, $oi+1, $wh);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
96
webmain/main/yingyong/rock_yingyong.php
Normal file
96
webmain/main/yingyong/rock_yingyong.php
Normal file
@@ -0,0 +1,96 @@
|
||||
<?php if(!defined('HOST'))die('not access');?>
|
||||
<script >
|
||||
$(document).ready(function(){
|
||||
var a = $('#view_{rand}').bootstable({
|
||||
tablename:'im_group',where:'and type=2',celleditor:true,
|
||||
modenum:'yingyong',storeafteraction:'yingyongafter',storebeforeaction:'yingyongbefore',modedir:'{mode}:{dir}',
|
||||
columns:[{
|
||||
text:'图标',dataIndex:'face',align:'left',renderer:function(v,d){
|
||||
var s='';
|
||||
s='<div>';
|
||||
s+='<img src="'+v+'" align="absmiddle" width="24" height="24">';
|
||||
s+=' '+d.name+'';
|
||||
s+='</div>';
|
||||
return s;
|
||||
}
|
||||
},{
|
||||
text:'分类',dataIndex:'types',editor:true,sortable:true
|
||||
},{
|
||||
text:'图标颜色',dataIndex:'iconcolor',editor:true
|
||||
},{
|
||||
text:'编号',dataIndex:'num'
|
||||
},{
|
||||
text:'排序号',dataIndex:'sort',editor:true,sortable:true
|
||||
},{
|
||||
text:'地址',dataIndex:'url'
|
||||
},{
|
||||
text:'状态',dataIndex:'valid',type:'checkbox',editor:true,sortable:true
|
||||
},{
|
||||
text:'可用人员',dataIndex:'recename',renderer:function(v){
|
||||
if(!v)v='全体人员';
|
||||
return v;
|
||||
}
|
||||
},{
|
||||
text:'类型',dataIndex:'yylx',renderer:function(v){
|
||||
var as=['全部','仅桌面版','仅手机'];
|
||||
return as[v];
|
||||
}
|
||||
},{
|
||||
text:'操作',dataIndex:'opt',align:'left',renderer:function(v,d){
|
||||
var s='<a href="javascript:;" onclick="yingyongedit('+d.id+',\''+d.name+'\')">编辑</a>';
|
||||
if(d.num)s+=' <a href="javascript:;" onclick="yingyongmenu('+d.id+',\''+d.name+'\')">菜单</a>';
|
||||
return s;
|
||||
}
|
||||
},{
|
||||
text:'ID',dataIndex:'id'
|
||||
}],
|
||||
itemclick:function(){
|
||||
btn(false);
|
||||
}
|
||||
});
|
||||
|
||||
function btn(bo){
|
||||
get('del_{rand}').disabled = bo;
|
||||
if(!bo && a.changedata.leave!=1)bo=true;
|
||||
//get('adds_{rand}').disabled = bo;
|
||||
}
|
||||
|
||||
var c = {
|
||||
clickwin:function(o1,lx){
|
||||
var pid=0;
|
||||
listyingyongobj = a;
|
||||
addtabs({num:'yingyongedit0',url:'main,yingyong,edit,id=0,pid='+pid+'',name:'新增应用'});
|
||||
},
|
||||
del:function(){
|
||||
a.del({check:function(lx){if(lx=='yes')btn(true)}});
|
||||
},
|
||||
reload:function(){
|
||||
a.reload();
|
||||
}
|
||||
}
|
||||
|
||||
yingyongedit=function(id,name){
|
||||
listyingyongobj = a;
|
||||
addtabs({num:'yingyongedit'+id+'',url:'main,yingyong,edit,id='+id+'',name:'应用['+name+']'});
|
||||
}
|
||||
yingyongmenu=function(id,name){
|
||||
addtabs({num:'yingyongmenu'+id+'',url:'main,yingyong,menu,mid='+id+'',name:'应用['+name+']菜单'});
|
||||
}
|
||||
|
||||
js.initbtn(c);
|
||||
});
|
||||
</script>
|
||||
<div>
|
||||
<ul class="floats">
|
||||
<li class="floats50">
|
||||
<button class="btn btn-primary" click="clickwin,0" type="button"><i class="icon-plus"></i> 新增应用</button>
|
||||
</li>
|
||||
<li class="floats50" style="text-align:right">
|
||||
|
||||
<button class="btn btn-default" click="reload" type="button">刷新</button>
|
||||
<button class="btn btn-danger" id="del_{rand}" click="del" disabled type="button"><i class="icon-trash"></i> 删除</button>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="blank10"></div>
|
||||
<div id="view_{rand}"></div>
|
||||
77
webmain/main/yingyong/rock_yingyong_bar.php
Normal file
77
webmain/main/yingyong/rock_yingyong_bar.php
Normal file
@@ -0,0 +1,77 @@
|
||||
<?php if(!defined('HOST'))die('not access');?>
|
||||
<script >
|
||||
$(document).ready(function(){
|
||||
var arr=[];
|
||||
var c={
|
||||
loadlist:function(){
|
||||
js.setmsg('加载中...','','showlistyingyong');
|
||||
js.ajax(js.getajaxurl('getdata','{mode}','{dir}'),{}, function(a){
|
||||
js.setmsg('nont');
|
||||
arr = a;
|
||||
arr.push({
|
||||
'name':'添加应用',
|
||||
'face':'images/jia.png',
|
||||
'num' :'add',
|
||||
'id' : 0
|
||||
});
|
||||
$('#showlistyingyong').html('');
|
||||
$('#showlistyingyongtt').html('');
|
||||
c.showlist();
|
||||
},'get,json');
|
||||
},
|
||||
showlist:function(){
|
||||
var i=0,len=arr.length,s='',hd,s1='';
|
||||
for(i=0;i<len;i++){
|
||||
hd=1;
|
||||
if(arr[i].valid==0)hd='0.3';
|
||||
s='';
|
||||
s+='<li style="opacity:'+hd+'" onclick="yingyongedit('+i+',0)">';
|
||||
s+='<div><img width="50" height="50" src="'+arr[i].face+'"></div>';
|
||||
s+='<div>'+arr[i].name+'</div>';
|
||||
if(arr[i].id>0)s+='<div style="font-size:10px"><a href="javascript:;" onclick="yingyongedit('+i+',1)">编辑</a> <a href="javascript:;" onclick="yingyongmenu('+i+')">菜单</a></div>';
|
||||
s+='</li>';
|
||||
if(arr[i].valid==0){
|
||||
$('#showlistyingyongtt').append(s);
|
||||
}else{
|
||||
$('#showlistyingyong').append(s);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
},
|
||||
reload:function(){
|
||||
c.loadlist();
|
||||
}
|
||||
}
|
||||
|
||||
yingyongedit=function(i, lx){
|
||||
var a=arr[i];
|
||||
if(lx==0&&a.id>0)return;
|
||||
listyingyongobj = c;
|
||||
addtabs({num:'yingyongedit'+a.id+'',url:'main,yingyong,edit,id='+a.id+'',name:'应用['+a.name+']'});
|
||||
}
|
||||
yingyongmenu=function(i){
|
||||
var a=arr[i];
|
||||
addtabs({num:'yingyongmenu'+a.id+'',url:'main,yingyong,menu,mid='+a.id+'',name:'应用['+a.name+']菜单'});
|
||||
}
|
||||
|
||||
c.loadlist();
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
.divlisssa li{float:left;padding:10px;text-align:center;width:100px;overflow:hidden;cursor:pointer}
|
||||
.divlisssa li:hover{ background-color:#f1f1f1}
|
||||
.divlisssa ul,.divlisssa{display:inline-block;width:100%}
|
||||
</style>
|
||||
<div style="padding:0px 10px">
|
||||
<h3>已有应用</h3>
|
||||
<div class="blank1"></div>
|
||||
<div class="divlisssa" style="padding:10px"><ul id="showlistyingyong"></ul></div>
|
||||
|
||||
<h3>已停用</h3>
|
||||
<div class="blank1"></div>
|
||||
<div class="divlisssa" style="padding:10px"><ul id="showlistyingyongtt"></ul></div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
175
webmain/main/yingyong/rock_yingyong_edit.php
Normal file
175
webmain/main/yingyong/rock_yingyong_edit.php
Normal file
@@ -0,0 +1,175 @@
|
||||
<?php if(!defined('HOST'))die('not access');?>
|
||||
<script >
|
||||
$(document).ready(function(){
|
||||
{params};
|
||||
var id = params.id,pid=params.pid;
|
||||
if(!id)id = 0;
|
||||
if(!pid)pid = '0';
|
||||
var h = $.bootsform({
|
||||
window:false,rand:'{rand}',tablename:'im_group',
|
||||
url:publicsave('{mode}','{dir}'),beforesaveaction:'beforesave',
|
||||
params:{int_filestype:'sort,yylx',otherfields:'type=2'},
|
||||
submitfields:'sort,name,recename,types,iconcolor,receid,url,face,valid,num,pid,yylx,urlpc,urlm',
|
||||
requiredfields:'name,num,types',
|
||||
success:function(){
|
||||
closenowtabs();
|
||||
try{listyingyongobj.reload();}catch(e){}
|
||||
},
|
||||
load:function(a, o){
|
||||
if(a.data){
|
||||
get('yingyong{rand}').src=a.data.face;
|
||||
}
|
||||
},
|
||||
loadafter:function(){
|
||||
c.urlchange();
|
||||
}
|
||||
});
|
||||
h.forminit();
|
||||
|
||||
h.load(js.getajaxurl('loaddata','{mode}','{dir}',{id:id}));
|
||||
|
||||
|
||||
var c = {
|
||||
getdist:function(o1, lx){
|
||||
var cans = {
|
||||
nameobj:h.form.recename,
|
||||
idobj:h.form.receid,
|
||||
type:'deptusercheck',
|
||||
title:'选择人员'
|
||||
};
|
||||
js.getuser(cans);
|
||||
},
|
||||
allqt:function(){
|
||||
h.form.recename.value='全体人员';
|
||||
h.form.receid.value='all';
|
||||
},
|
||||
removes:function(){
|
||||
h.form.recename.value='';
|
||||
h.form.receid.value='';
|
||||
},
|
||||
changeface:function(){
|
||||
get('yingyong{rand}').src=this.value;
|
||||
},
|
||||
urlchange:function(){
|
||||
var v = h.form.url.value;
|
||||
if(v=='link'||v=='linko'){
|
||||
$('#tdurlpc_{rand}').show();
|
||||
$('#tdurlm_{rand}').show();
|
||||
}else{
|
||||
$('#tdurlpc_{rand}').hide();
|
||||
$('#tdurlm_{rand}').hide();
|
||||
}
|
||||
}
|
||||
};
|
||||
js.initbtn(c);
|
||||
$(h.form.face).change(c.changeface);
|
||||
$(h.form.url).change(c.urlchange);
|
||||
});
|
||||
</script>
|
||||
|
||||
<div align="center">
|
||||
<div style="padding:10px;width:700px">
|
||||
|
||||
|
||||
<form name="form_{rand}">
|
||||
|
||||
<input name="id" value="0" type="hidden" />
|
||||
<input name="setid" value="0" type="hidden" />
|
||||
<input name="pid" value="0" type="hidden">
|
||||
|
||||
<table cellspacing="0" border="0" width="100%" align="center" cellpadding="0">
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="tdinput" colspan="4">
|
||||
<div align="center"><img id="yingyong{rand}" src="images/noface.png" height="60" width="60"></div>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td width="15%" align="right"><font color=red>*</font> 编号:</td>
|
||||
<td width="35%" class="tdinput"><input name="num" placeholder="一般跟模块的编号一致" class="form-control"></td>
|
||||
|
||||
<td width="15%" align="right" nowrap><font color=red>*</font> 名称:</td>
|
||||
<td width="35%"class="tdinput"><input name="name" class="form-control"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
|
||||
|
||||
<td align="right" >链接地址:</td>
|
||||
<td class="tdinput"><select name="url" class="form-control"><option value="auto">自动</option><option value="buin">内部页面</option><option value="link">链接页面</option></select></td>
|
||||
|
||||
<td align="right" nowrap><font color=red>*</font> 分类:</td>
|
||||
<td class="tdinput"><input name="types" class="form-control"></td>
|
||||
</tr>
|
||||
|
||||
<tr style="display:none" id="tdurlpc_{rand}">
|
||||
<td align="right" nowrap>PC端地址:</td>
|
||||
<td class="tdinput" colspan="3"><input name="urlpc" placeholder="可以写对应[系统→菜单管理]对应菜单编号,也可以正规Url地址" class="form-control"></td>
|
||||
</tr>
|
||||
|
||||
<tr style="display:none" id="tdurlm_{rand}">
|
||||
<td align="right" nowrap>手机端地址:</td>
|
||||
<td class="tdinput" colspan="3"><input name="urlm" placeholder="格式:http://url/?a=1 需要带参数才可以" class="form-control"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td align="right" >应用类型:</td>
|
||||
<td class="tdinput"><select name="yylx" class="form-control"><option value="0">全部</option><option value="1">仅桌面版显示</option><option value="2">仅手机端显示</option></select></td>
|
||||
|
||||
<td align="right" >图标地址:</td>
|
||||
<td class="tdinput"><input name="face" placeholder="相对于系统目录" class="form-control"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
|
||||
<td align="right" >图标颜色:</td>
|
||||
<td class="tdinput"><input name="iconcolor" maxlength="20" placeholder="没有可不用填" class="form-control"></td>
|
||||
|
||||
<td align="right">排序号:</td>
|
||||
<td class="tdinput"><input name="sort" value="0" maxlength="3" type="number" onfocus="js.focusval=this.value" onblur="js.number(this)" class="form-control"></td>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" >可用人员:</td>
|
||||
<td colspan="3" class="tdinput">
|
||||
<div style="width:100%" class="input-group">
|
||||
<input readonly class="form-control" placeholder="不选默认全部人员可用" name="recename" >
|
||||
<input type="hidden" name="receid" >
|
||||
<span class="input-group-btn">
|
||||
<button class="btn btn-default" click="removes" type="button"><i class="icon-remove"></i></button>
|
||||
<button class="btn btn-default" click="getdist,1" type="button"><i class="icon-search"></i></button>
|
||||
</span>
|
||||
</div>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
|
||||
<tr>
|
||||
<td align="right">说明:</td>
|
||||
<td class="tdinput" colspan="3"><textarea name="explain" style="height:40px;" class="form-control"></textarea></td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<tr>
|
||||
<td align="right"></td>
|
||||
<td class="tdinput"><label><input type="checkbox" checked name="valid" value="1">启用</label></td>
|
||||
|
||||
|
||||
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td align="right"></td>
|
||||
<td style="padding:15px 0px" colspan="3" align="left"><button disabled class="btn btn-success" id="save_{rand}" type="button"><i class="icon-save"></i> 保存</button> <span id="msgview_{rand}"></span>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
123
webmain/main/yingyong/rock_yingyong_menu.php
Normal file
123
webmain/main/yingyong/rock_yingyong_menu.php
Normal file
@@ -0,0 +1,123 @@
|
||||
<?php if(!defined('HOST'))die('not access');?>
|
||||
<script >
|
||||
$(document).ready(function(){
|
||||
{params}
|
||||
var mid = params.mid,wherearr=[];
|
||||
var a = $('#menu_{rand}').bootstable({
|
||||
tablename:'im_menu',modenum:'yymenu',
|
||||
url:js.getajaxurl('menudata','{mode}','{dir}',{mid:mid}),
|
||||
tree:true,celleditor:true,
|
||||
columns:[{
|
||||
text:'名称',dataIndex:'name',align:'left',renderer:function(v,a){
|
||||
return '<font color="'+a.color+'">'+v+'</font>';
|
||||
}
|
||||
},{
|
||||
text:'编号',dataIndex:'num',editor:true
|
||||
},{
|
||||
text:'URL/条件编号',dataIndex:'url',editor:true
|
||||
},{
|
||||
text:'类型',dataIndex:'type',renderer:function(v){
|
||||
var s='条件编号';
|
||||
if(v==1)s='URL';
|
||||
return s;
|
||||
}
|
||||
},{
|
||||
text:'排序号',dataIndex:'sort',editor:true
|
||||
},{
|
||||
text:'PID',dataIndex:'pid'
|
||||
},{
|
||||
text:'颜色',dataIndex:'color',editor:true
|
||||
},{
|
||||
text:'可使用人员',dataIndex:'recename'
|
||||
},{
|
||||
text:'ID',dataIndex:'id'
|
||||
}],
|
||||
itemclick:function(){
|
||||
btn(false);
|
||||
},
|
||||
load:function(d){
|
||||
wherearr=d.wherearr;
|
||||
}
|
||||
});
|
||||
|
||||
function btn(bo){
|
||||
get('del_{rand}').disabled = bo;
|
||||
get('edit_{rand}').disabled = bo;
|
||||
get('down_{rand}').disabled = bo;
|
||||
}
|
||||
|
||||
var c = {
|
||||
del:function(){
|
||||
a.del({check:function(lx){if(lx=='yes')btn(true)}});
|
||||
},
|
||||
reload:function(){
|
||||
a.reload();
|
||||
},
|
||||
clickwin:function(o1,lx){
|
||||
var h = $.bootsform({
|
||||
title:'应用菜单',height:300,width:400,
|
||||
tablename:'im_menu',isedit:lx,
|
||||
params:{int_filestype:'sort,type,mid,pid'},
|
||||
submitfields:'num,name,url,sort,type,mid,pid,color,recename,receid',
|
||||
items:[{
|
||||
labelText:'编号',name:'num'
|
||||
},{
|
||||
labelText:'菜单名称',name:'name',required:true
|
||||
},{
|
||||
labelText:'类型',name:'type',type:'select',store:[{id:'0',name:'条件编号'},{id:'1',name:'URL'}],valuefields:'id',displayfields:'name'
|
||||
},{
|
||||
labelText:'条件编号',name:'typesele',type:'select',store:wherearr,valuefields:'num',displayfields:'name'
|
||||
},{
|
||||
labelText:'URL/条件编号',name:'url'
|
||||
},{
|
||||
labelText:'上级ID',name:'pid',required:true,value:'0',type:'number'
|
||||
},{
|
||||
labelText:'序号',name:'sort',type:'number',value:'0'
|
||||
},{
|
||||
labelText:'颜色',name:'color'
|
||||
},{
|
||||
labelText:'mid',name:'mid',type:'hidden',value:'0'
|
||||
},{
|
||||
labelText:'可使用人员',name:'recename',type:'changeuser',changeuser:{
|
||||
type:'deptusercheck',idname:'receid',title:'选择人员'
|
||||
},clearbool:true,blankText:'默认全部人都可用'
|
||||
},{
|
||||
name:'receid',type:'hidden'
|
||||
}],
|
||||
success:function(){
|
||||
a.reload();
|
||||
}
|
||||
});
|
||||
if(lx==1)h.setValues(a.changedata);
|
||||
h.getField('name').focus();
|
||||
if(lx==2)h.setValue('pid', a.changedata.id);
|
||||
h.setValue('mid',mid);
|
||||
$(h.form.type).change(function(){
|
||||
h.form.typesele.disabled=(this.value!='0');
|
||||
});
|
||||
$(h.form.typesele).change(function(){
|
||||
h.form.url.value = this.value;
|
||||
});
|
||||
}
|
||||
};
|
||||
js.initbtn(c);
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
<div>
|
||||
<ul class="floats">
|
||||
<li class="floats50">
|
||||
<button class="btn btn-primary" click="clickwin,0" type="button"><i class="icon-plus"></i> 新增顶级</button>
|
||||
<button class="btn btn-success" click="clickwin,2" id="down_{rand}" disabled type="button"><i class="icon-plus"></i> 新增下级</button>
|
||||
<button class="btn btn-default" click="reload" type="button">刷新</button>
|
||||
</li>
|
||||
<li class="floats50" style="text-align:right">
|
||||
<button class="btn btn-danger" id="del_{rand}" click="del" disabled type="button"><i class="icon-trash"></i> 删除</button>
|
||||
<button class="btn btn-info" id="edit_{rand}" click="clickwin,1" disabled type="button"><i class="icon-edit"></i> 编辑 </button>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="blank10"></div>
|
||||
<div id="menu_{rand}"></div>
|
||||
<div style="padding:5px;color:#888888">顶级菜单最多只能3个,多建将不会显示,条件编号是在[流程模块条件]下设置的编号,用于读取数据条件过滤的。</div>
|
||||
97
webmain/main/yingyong/yingyongAction.php
Normal file
97
webmain/main/yingyong/yingyongAction.php
Normal file
@@ -0,0 +1,97 @@
|
||||
<?php
|
||||
class yingyongClassAction extends Action
|
||||
{
|
||||
public function yingyongdataAjax()
|
||||
{
|
||||
$rows = m('im_group')->getall('`type`=2','*','`sort`');
|
||||
$arrs = array();
|
||||
/*
|
||||
foreach($rows as $k=>$rs){
|
||||
$sub = m('im_group')->getall('`type`=2 and pid='.$rs['id'].'','*','`sort`');
|
||||
$rs['leave'] = 1;
|
||||
$arrs[] = $rs;
|
||||
foreach($sub as $k1=>$rs1){
|
||||
$rs1['leave'] = 2;
|
||||
$arrs[] = $rs1;
|
||||
}
|
||||
}*/
|
||||
echo json_encode(array('rows'=>$rows));
|
||||
}
|
||||
|
||||
public function getdataAjax()
|
||||
{
|
||||
$rows = m('im_group')->getall('`type`=2','id,name,face,num,valid','`sort`');
|
||||
echo json_encode($rows);
|
||||
}
|
||||
|
||||
public function loaddataAjax()
|
||||
{
|
||||
$id = (int)$this->get('id');
|
||||
$arr['data'] = m('im_group')->getone($id);
|
||||
echo json_encode($arr);
|
||||
}
|
||||
|
||||
public function beforesave($table, $cans, $id)
|
||||
{
|
||||
$msg = '';
|
||||
$num = $cans['num'];
|
||||
if(m($table)->rows("`num`='$num' and `id`<>$id")>0)$msg='编号['.$num.']已存在';
|
||||
return array('msg'=>$msg);
|
||||
}
|
||||
|
||||
|
||||
public function menudataAjax()
|
||||
{
|
||||
$this->rows = array();
|
||||
$mid = (int)$this->get('mid');
|
||||
$agentnum = m('im_group')->getmou('num',$mid);
|
||||
$where = "and `mid`='$mid'";
|
||||
$this->getmenu(0, 1, $where);
|
||||
$modeid = (int)m('flow_set')->getmou('id',"`num`='$agentnum'");
|
||||
$wherearr = m('flow_where')->getrows("setid='$modeid' and `num` is not null and `status`=1",'`name`,`num`','`pnum`,`sort`');
|
||||
$barr[] = array('num'=>'','name'=>'-选择-');
|
||||
foreach($wherearr as $k=>$rs){
|
||||
$wherearr[$k]['name'] = ''.$rs['num'].'.'.$rs['name'].'';
|
||||
$barr[] = $wherearr[$k];
|
||||
}
|
||||
|
||||
echo json_encode(array(
|
||||
'totalCount'=> 0,
|
||||
'rows' => $this->rows,
|
||||
'agentnum' => $agentnum,
|
||||
'modeid' => $modeid,
|
||||
'wherearr' => $barr,
|
||||
));
|
||||
}
|
||||
|
||||
private function getmenu($pid, $oi, $wh='')
|
||||
{
|
||||
$db = m('im_menu');
|
||||
$menu = $db->getall("`pid`='$pid' $wh order by `sort`",'*');
|
||||
foreach($menu as $k=>$rs){
|
||||
$sid = $rs['id'];
|
||||
$rs['level'] = $oi;
|
||||
$rs['stotal'] = $db->rows("`pid`='$sid' $wh ");
|
||||
$this->rows[] = $rs;
|
||||
|
||||
$this->getmenu($sid, $oi+1, $wh);
|
||||
}
|
||||
}
|
||||
|
||||
public function yingyongbefore($table)
|
||||
{
|
||||
return array(
|
||||
'order' => '`valid` desc,`sort` asc'
|
||||
);
|
||||
}
|
||||
|
||||
public function yingyongafter($table, $rows)
|
||||
{
|
||||
foreach($rows as $k=>$rs){
|
||||
if($rs['valid']=='0')$rows[$k]['status']=0;
|
||||
}
|
||||
return array(
|
||||
'rows' => $rows
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user