123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- <?php
- /**
- * @copyright Copyright (c) 2021 勾股工作室
- * @license https://opensource.org/licenses/GPL-3.0
- * @link https://www.gougucms.com
- */
- /**
- ======================
- *模块数据获取公共文件
- ======================
- */
- use think\facade\Db;
- //是否是合同管理员权限
- function contract_auth($uid)
- {
- if($uid == 1){
- return 1;
- }
- $map = [];
- $map[] = ['name', '=', 'contract_admin'];
- $map[] = ['', 'exp', Db::raw("FIND_IN_SET('{$uid}',uids)")];
- $count = Db::name('DataAuth')->where($map)->count();
- return $count;
- }
- //读取分类列表
- function contract_cate()
- {
- $cate = Db::name('ContractCate')->where(['status' => 1])->order('id desc')->select()->toArray();
- return $cate;
- }
- //读取签约主体
- function contract_subject()
- {
- $subject = Db::name('InvoiceSubject')->where(['status' => 1])->order('id desc')->select()->toArray();
- return $subject;
- }
- //读取部门列表
- function get_department()
- {
- $department = Db::name('Department')->order('sort desc,id asc')->where(['status' => 1])->select()->toArray();
- return $department;
- }
- //写入日志
- function to_log($uid,$new,$old)
- {
- $log_data = [];
- $key_array = ['id', 'create_time', 'update_time', 'sign_did'];
- foreach ($new as $key => $value) {
- if (!in_array($key, $key_array)) {
- if(isset($old[$key]) && ($old[$key]!=$value)){
- $log_data[] = array(
- 'field' => $key,
- 'contract_id' => $new['id'],
- 'admin_id' => $uid,
- 'old_content' => $old[$key],
- 'new_content' => $value,
- 'create_time' => time(),
- );
- }
- }
- }
- Db::name('ContractLog')->strict(false)->field(true)->insertAll($log_data);
- }
- /**
- * 管理员操作日志
- * @param string $type 操作类型 login add edit view delete
- * @param int $param_id 操作类型
- * @param array $param 提交的参数
- * @param subject $param 操作主题
- */
- function add_log($type, $param_id = '', $param = [],$subject='')
- {
- $action = '未知操作';
- $type_action = get_config('log.admin_action');
- if($type_action[$type]){
- $action = $type_action[$type];
- }
- if ($type == 'login') {
- $login_admin = Db::name('Admin')->where(array('id' => $param_id))->find();
- } else {
- $session_admin = get_config('app.session_admin');
- $login_admin = \think\facade\Session::get($session_admin);
- }
- $data = [];
- $data['title'] = '';
- $data['uid'] = $login_admin['id'];
- $data['nickname'] = $login_admin['nickname'];
- $data['type'] = $type;
- $data['action'] = $action;
- $data['param_id'] = $param_id;
- $data['param'] = json_encode($param);
- $data['module'] = strtolower(app('http')->getName());
- $data['controller'] = uncamelize(app('request')->controller());
- $data['function'] = strtolower(app('request')->action());
- $parameter = $data['module'] . '/' . $data['controller'] . '/' . $data['function'];
- $rule_menu = Db::name('AdminRule')->where(array('src' => $parameter))->find();
- if($rule_menu){
- $data['title'] = $rule_menu['title'];
- $data['subject'] = $rule_menu['name'];
- }
- else{
- if(empty($subject)){
- $data['subject'] = '系统';
- }else{
- $data['subject'] = $subject;
- }
- }
- $content = $login_admin['nickname'] . '在' . date('Y-m-d H:i:s') . $data['action'] . '了' . $data['subject'];
- $data['content'] = $content;
- $data['ip'] = app('request')->ip();
- $data['create_time'] = time();
- Db::name('AdminLog')->strict(false)->field(true)->insert($data);
- }
|