request->post(); $user_info = $this->user_obj->where("account",$data['username'])->find(); $journalIds = $this->reviewer_to_journal_obj->where('reviewer_id',$user_info['user_id'])->where('state',0)->column('journal_id'); $list = $this->journal_obj->where('journal_id',"not in",$journalIds)->where('state',0)->select(); $re['journals'] = $list; return jsonSuccess($re); } /** * @title 获取审稿人所属期刊列表 * @description 获取审稿人所属期刊列表 * @author wangjinlei * @url /api/Journal/getJournalInReviewer * @method POST * * @param name:username type:string require:1 desc:用户名 * * @return journals:期刊列表# */ public function getJournalInReviewer(){ $data = $this->request->post(); $user_info = $this->user_obj->where('account',$data['username'])->where('state',0)->find(); $list = $this->reviewer_to_journal_obj ->field("t_journal.*") ->join('t_journal',"t_journal.journal_id = t_reviewer_to_journal.journal_id","left") ->where('t_reviewer_to_journal.reviewer_id',$user_info['user_id']) ->where('t_reviewer_to_journal.state',0) ->select(); $re['journals'] = $list; return jsonSuccess($re); } public function getAllJournal(){ $list = $this->journal_obj->where('state',0)->select(); $re['journals'] = $list; return jsonSuccess($re); } /**获取连续出刊的当年分期信息 * @return void */ public function getJournalStageLX(){ $data = $this->request->post(); $rule = new Validate([ "journal_id"=>"require" ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $journal_info = $this->journal_obj->where("journal_id",$data['journal_id'])->find(); $url = "http://journalapi.tmrjournals.com/public/index.php/master/Journal/getJournalStageLXForSubmission"; $program['issn'] = $journal_info['issn']; $res = object_to_array(json_decode(myPost($url,$program))); $list = $res['data']['detail']; $re['detail'] = $list; return jsonSuccess($re); } public function creatJournalStage(){ $data = $this->request->post(); $rule = new Validate([ "issn"=>"require", "stage_year"=>"require", "stage_vol"=>"require", "stage_no"=>"require", "stage_page"=>"require", "issue_date"=>"require", "stage_icon"=>"require" ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $url = "http://journalapi.tmrjournals.com/public/index.php/master/Journal/addStageForTG"; $program['issn'] = $data['issn']; $program['stage_year'] = $data['stage_year']; $program['stage_vol'] = $data['stage_vol']; $program['stage_no'] = $data['stage_no']; $program['stage_pagename'] = "No."; $program['stage_page'] = $data['stage_page']; $program['issue_date'] = $data['issue_date']; $program['stage_icon'] = $data['stage_icon']; object_to_array(json_decode(myPost($url,$program))); return jsonSuccess($program); } public function delJournalStage(){ $data = $this->request->post(); $rule = new Validate([ "journal_stage_id"=>"require" ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $url = "http://journalapi.tmrjournals.com/public/index.php/master/Journal/delStage"; $program['journal_stage_id'] = $data['journal_stage_id']; $res = object_to_array(json_decode(myPost($url,$program))); if($res['code']==0){ return jsonSuccess($res); }else{ return jsonError($res['msg']); } } public function getJournalStageArticles(){ $data = $this->request->post(); $rule = new Validate([ "journal_id" => "require" ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $journal_info = $this->journal_obj->where("journal_id",$data['journal_id'])->find(); $url = "http://journalapi.tmrjournals.com/public/index.php/master/Journal/getJournalStageArticlesForSubmission"; $program['issn'] = $journal_info['issn']; $res = object_to_array(json_decode(myPost($url,$program))); $list = $res['data']['list']; $re['list'] = $list; return jsonSuccess($re); } public function pushArticleToPublic(){ $data = $this->request->post(); $rule = new Validate([ "article_id"=>"require" ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } //推送数据到数据库 $uu = "http://journalapi.tmrjournals.com/public/index.php/master/Datebase/dataPushForLx"; $program['article_id'] = $data['article_id']; $res = object_to_array(json_decode(myPost($uu,$program))); //更改文章状态 $url = "http://journalapi.tmrjournals.com/public/index.php/master/Journal/publishArticleForSubmission"; $program['article_id'] = $data['article_id']; $res = object_to_array(json_decode(myPost($url,$program))); return jsonSuccess([]); } public function editJournalLeftZc(){ $data = $this->request->post(); $rule = new Validate([ "journal_id"=>"require", "ethics"=>"require" ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $this->journal_obj->where("journal_id",$data['journal_id'])->update(["ethics"=>$data['ethics']]); return jsonSuccess([]); } /** * 获取期刊列表 */ public function getJournalByeditor() { $user_id = $this->request->post('user_id'); $list = $this->journal_obj->where('editor_id',$user_id)->where("state",0)->select(); $re['journals'] = $list; return jsonSuccess($re); } /** * 获取可申请审稿人的期刊 */ public function getJournalsForReviewerInEditor(){ $data = $this->request->post(); $rule = new Validate([ 'editor_id' => 'require', 'reviewer_id' => 'require' ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $editor_info = $this->user_obj->where('user_id',$data['editor_id'])->find(); $journalIds = []; if($editor_info['type']==2){//责任编辑 $journalIds = $this->journal_obj->where('editor_id',$editor_info['user_id'])->column('journal_id'); }else{//客座编辑 $guests = $this->user_to_special_obj->where('user_id',$data['reviewer_id'])->where('uts_state',0)->select(); $usercontroller = new usercontroller(); foreach($guests as $v){ $c_res = $usercontroller->getSpecialDetailById($v['special_id']); $journalIds[] = $this->journal_obj->where('issn',$c_res['journal_issn'])->value('journal_id'); } } $njournalIds = $this->reviewer_to_journal_obj->where('reviewer_id',$data['reviewer_id'])->where('state',0)->column('journal_id'); $list = $this->journal_obj->where('journal_id',"not in",$njournalIds)->where('journal_id',"in",$journalIds)->where('state',0)->select(); $re['journals'] = $list; return jsonSuccess($re); } public function editJournal(){ $data = $this->request->post(); $rule = new Validate([ 'journal_id'=>'require', 'level'=>'require', 'email'=>'require', 'epassword'=>'require', "kfen"=>"require" ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $journal_info = $this->journal_obj->where("journal_id",$data['journal_id'])->find(); $url = "http://journalapi.tmrjournals.com/public/index.php/master/Journal/editJournalEmailPasswordForSubmission"; $program['issn'] = $journal_info['issn']; $program['epassword'] = $data['epassword']; $res = object_to_array(json_decode(myPost($url,$program))); $update['level'] = $data['level']; $update['email'] = $data['email']; $update['epassword'] = $data['epassword']; $update['kfen'] = $data['kfen']; if(isset($data['fee'])&&$data['fee']!=0){ $update['fee'] = $data['fee']; } $update['scope'] = isset($data['scope'])?trim($data['scope']):""; $this->journal_obj->where('journal_id',$data['journal_id'])->update($update); return jsonSuccess([]); } /** * 获取期刊详情 */ public function getJournalDetail(){ $data = $this->request->post(); $rule = new Validate([ 'journal_id'=>'require' ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $info = $this->journal_obj->where('journal_id',$data['journal_id'])->find(); $re['journal'] = $info; return jsonSuccess($re); } /** * 获取期刊详情通过文章id */ public function getJournalDetailByArticleId(){ $data = $this->request->post(); $rule = new Validate([ 'article_id'=>'require' ]); if(!$rule->check($data)){ return jsonError($rule->getError()); } $article_info = $this->article_obj->where('article_id',$data['article_id'])->find(); $info = $this->journal_obj->where('journal_id',$article_info['journal_id'])->find(); $re['journal'] = $info; return jsonSuccess($re); } }