开源可定制房产ERP

电脑端+手机端+微信端=数据同步管理

免费咨询热线:199-6578-3436

权限该如何写程序-房产软件-开单大师


发布时间:2020-05-06 栏目:新闻资讯 作者:开单大师

很多程序在写的时候涉及到权限的设计,今天就以开单大师为例来谈谈当程序中含有多个部门、岗位、层级的时候,我们如何去进行相关的函数设计(一)

权限函数开始:

function bumen_option($selected,$node_id){

$x = $node_id ? _rbac_lists_where($node_id,0) : "null";

$tree = new \Org\Util\Tree();

$parentid = $selected;

$result = M('bumen')->order(array("sort" => "ASC"))->select();

foreach ($result as $key => $r) {

$r['selected'] = $r['id'] == $parentid ? 'selected' : '';

if ($x && $x != "all" && $x != "me" && $x != "null") {

$b = explode(",",$x);

if (in_array($r['id'],$b)) {

$array[] = $r;

}

}elseif($x == 'me' || $x == false){

$array = "";

}elseif($x == 'all' || $x == 'null'){

$array[] = $r;

}

}

$a = 0;

$l = 999;

if ($x && $x != "all" && $x != "me" && $x != "null") {

foreach ($array as $key => $value) {

if ($value['level']

$a = $value['parentid'];

$l = $value['level'];

}

}

}

$str = "\$spacer \$bmming";

$tree->init($array);

$select_categorys = $tree->get_tree($a, $str);

return $select_categorys;

}

/**

* 二维数组排序

* @param $arr

* @param $keys

* @param string $type

* @return array

*/

function array_sort($arr, $keys, $type = 'desc') {

$key_value = $new_array = array();

foreach ($arr as $k => $v) {

$key_value[$k] = $v[$keys];

}

if ($type == 'asc') {

asort($key_value);

} else {

arsort($key_value);

}

reset($key_value);

foreach ($key_value as $k => $v) {

$new_array[$k] = $arr[$k];

}

return $new_array;

}

 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。