[''], 'allow'=>['index','delete','recover'] ]; Hook::listen('check_auth',$action); $request = Request::instance(); $a = strtolower($request->action()); if (!in_array($a, $action['permission'])) { parent::_initialize(); } } /** * 回收站列表 * @author yykun * @return */ public function index() { $param = $this->param; $userInfo = $this->userInfo; $where = []; $where['ishidden'] = 1; $taskModel = new \app\work\model\Task(); $adminTypes = adminGroupTypes($userInfo['id']); if (!in_array(1,$adminTypes) && !in_array(7,$adminTypes)) { $str = ','.$userInfo['id'].','; $where['whereStr'] = ' ( task.create_user_id ='.$userInfo['id'].' or ( task.owner_user_id like "%'.$str.'%") or ( task.main_user_id = '.$userInfo['id'].' ) )'; } $data = $taskModel->getTaskList($where); return resultArray(['data' =>$data]); } /** * 回收站删除 * @author yykun * @return */ public function delete() { $param = $this->param; if (!$param['task_id']) return resultArray(['error'=>'参数错误']); # 权限判断 $workId = Db::name('task')->where(['ishidden' => 1,'task_id' => $param['task_id']])->value('work_id'); if (!empty($workId) && !$this->checkWorkOperationAuth('cleanTask', $workId, $this->userInfo['id'])) { header('Content-Type:application/json; charset=utf-8'); exit(json_encode(['code' => 102, 'error' => '无权操作!'])); } $flag = Db::name('Task')->where(['ishidden' => 1,'task_id' => $param['task_id']])->delete(); if ($flag) { // 删除附件 # 删除活动记录 Db::name('crm_activity')->where(['activity_type' => 11, 'activity_type_id' => $param['task_id']])->delete(); return resultArray(['data'=>'删除成功']); } else { return resultArray(['error'=>'删除失败']); } } /** * 恢复任务 * * @return \think\response\Json * @throws \think\Exception * @throws \think\exception\PDOException */ public function recover() { $param = $this->param; if (!$param['task_id']) return resultArray(['error'=>'参数错误']); # 权限判断 $workId = Db::name('task')->where(['ishidden' => 1,'task_id' => $param['task_id']])->value('work_id'); if (!empty($workId) && !$this->checkWorkOperationAuth('restoreTask', $workId, $this->userInfo['id'])) { header('Content-Type:application/json; charset=utf-8'); exit(json_encode(['code' => 102, 'error' => '无权操作!'])); } $updateData = []; $updateData['ishidden'] = 0; # $updateData['class_id'] = 0; $ret = Db::name('Task')->where(['ishidden' => 1,'task_id' => $param['task_id']])->update($updateData); if ($ret) { return resultArray(['data'=>'操作成功']); } else { return resultArray(['error'=>$model->getError()]); } } }