勾股OA在线文档

勾股OA5.0常用助手函数集(待发布)

一、系统相关

1、设置缓存

set_cache($key='', $value='', $date = 86400);

2、读取缓存

get_cache($key='');

3、清空缓存

clear_cache($key='');

4、读取文件配置

get_config($key);

5、读取系统配置

get_system_config($name='', $key = '');

6、设置系统配置

set_system_config($name, $key, $value='');

7、获取url参数,$key为空时返回所有参数数组

get_params($key = "");

8、判断系统是否已安装

is_installed();

9、判断系统是否存在模板

isTemplate($url='');

10、判断模块是否禁用

isModule($name);

11、是否有某模块的数据权限,>1即有权限,$name模块名称

isAuth($uid,$name);

12、菜单节点权限判断

check_auth($rule, $uid);

13、返回json数据,用于接口

to_assign($code = 0, $msg = "操作成功", $data = [], $action = '', $url = '', $httpCode = 200, $header = [], $options = []);

14、适配layui的table数据列表的返回数据方法,用于接口

table_assign($code = 0, $msg = '请求成功', $data = [], $httpCode = 200, $header = [], $options = []);

15、写入操作日

add_log($type, $param_id = '', $param = [] ,$subject='');

16、发送站内信

send_message($user_id, $template, $data=[]);

17、消息链接信息转换

get_message_link($template,$action_id);

18、发送邮件

send_email($to, $subject = '', $content = '');

二、员工相关

1、获取指定用户的信息

get_admin($uid);

2、获取指定部门所有的员工信息($son=1,包含子部门)

get_department_admin($did=0,$son=0);

三、部门相关

1、获取部门列表

get_department();

2、获取某部门的子部门ids,($is_self=1,包含自己)

get_department_son($did = 0, $is_self = 1);

3、获取某员工所在主部门的负责人(pid=1,上一级部门负责人)

function get_department_leader($uid=0,$pid=0);

4、获取某负责人所负责的部门的数据集(ids)【包括部门负责人所在的部门+其子部门】

//传入部门负责人id,由于部门支持设置多个负责人,所以输出的是部门ids数组,如:['1,2,3,1,5']
get_department_role($uid = 0);

四、常规数据获取

1、读取基础数据,$table=数据表名(不要加表前缀)

get_base_data($table);

2、读取模块基础数据,$table=数据表名(不要加表前缀),$type=类型(,,2,3…)

get_base_type_data($table,$type);

3、读取所属地区名称

get_region_name($id);

4、根据附件表的id返回附件的url地址

get_file($id);

五、工具函数

1、生成一个不会重复的字符串

make_token()

2、随机字符串,默认长度10

set_salt($num = 10);

3、密码加密

set_password($pwd, $salt);

4、去除空格

trim_space($str='');

5、隐藏电话号码(邮箱)中间4位

hidetel($phone);

6、间隔时间段格式化,$time 时间戳,$format 格式 【d:显示到天 i显示到分钟 s显示到秒】

time_trans($time='', $format = 'd');

7、计算按相差天数

count_days($a=0, $b = 0);

8、人民币转大写

cny($amount);

9、金额展示,规则:超过1万时以万为单位,低于1万时以千为单位,低于1千时以元为单位

format_money($money);

六、校验相关

1、判断是否是手机浏览器

is_mobile();

2、验证输入的邮件地址是否合法

is_email($user_email);