[''], 'allow' => ['dataRecord', 'systemRecord', 'loginRecord','excelImport'] ]; Hook::listen('check_auth',$action); $request = Request::instance(); $a = strtolower($request->action()); if (!in_array($a, $action['permission'])) { parent::_initialize(); } } /** * 数据操作日志 * * @param LogLogic $logLogic * @return \think\response\Json * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\ModelNotFoundException * @throws \think\exception\DbException */ public function dataRecord(LogLogic $logLogic) { $this->param['startTime']= !empty($this->param['startTime'])?$this->param['startTime'].' 00:00:00':''; $this->param['endTime']= !empty($this->param['endTime'])?$this->param['endTime'].' 23:59:59':''; if(!empty($this->param['subModelLabels'])){ $this->param['modules']=$this->param['subModelLabels']; }else{ switch ($this->param['model']){ case 'crm': //客户管理 $this->param['modules']=array( 'crm_leads' , 'crm_customer', 'crm_pool' , 'crm_contacts' , 'crm_product' , 'crm_business' , 'crm_contract' , 'crm_receivables' , 'crm_visit' , 'crm_invoice' , 'crm_activity' ); break; case 'oa' : //办公管理 $this->param['modules']=array( 'oa_log' , 'oa_event', ); break; case 'work' ://项目管理 $this->param['modules']=array( 'work_task' , 'work', ); break; default : $this->param['modules']=array( 'crm_leads' , 'crm_customer', 'crm_pool' , 'crm_contacts' , 'crm_product' , 'crm_business' , 'crm_contract' , 'crm_receivables' , 'crm_visit' , 'crm_invoice' , 'crm_activity', 'oa_log' , 'oa_event', 'work_task' , 'work', ); break; } } $data['list'] = $logLogic->getRecordLogs($this->param); $data['count'] = $logLogic->getRecordLogCount($this->param); $data['modules'] = $logLogic->recordModules; return resultArray(['data' => $data]); } /** * 系统操作日志 * * @param LogLogic $logLogic * @return \think\response\Json * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\ModelNotFoundException * @throws \think\exception\DbException */ public function systemRecord(LogLogic $logLogic) { $this->param['startTime']= !empty($this->param['startTime'])?$this->param['startTime'].' 00:00:00':''; $this->param['endTime']= !empty($this->param['endTime'])?$this->param['endTime'].' 23:59:59':''; if(!empty($this->param['subModelLabels'])){ $this->param['modules']=$this->param['subModelLabels']; } $data['list'] = $logLogic->getSystemLogs($this->param); $data['count'] = $logLogic->getSystemLogCount($this->param); $data['modules'] = $logLogic->systemModules; return resultArray(['data' => $data]); } /** * 登录日志 * * @param LogLogic $logLogic * @return \think\response\Json * @throws \think\exception\DbException */ public function loginRecord(LogLogic $logLogic) { $this->param['startTime']= !empty($this->param['startTime'])?$this->param['startTime'].' 00:00:00':''; $this->param['endTime']= !empty($this->param['endTime'])?$this->param['endTime'].' 23:59:59':''; $data = $logLogic->getLoginRecord($this->param); return resultArray(['data' => $data]); } /** * 日志导出 * * @param LogLogic $logLogic * @author alvin guogaobo * @version 1.0 版本号 * @since 2021/4/8 0008 16:36 */ public function excelImport() { $logLogic =new LogLogic; $data = $logLogic->downExcel($this->param); return $data; } }