From c24dec2e55d997b03356896a54d89f617d92a0bd Mon Sep 17 00:00:00 2001 From: chengxl Date: Thu, 26 Feb 2026 16:50:55 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=92=E7=89=88=E7=9B=B8=E5=85=B3=E7=9A=84?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/controller/Production.php | 48 +++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/application/api/controller/Production.php b/application/api/controller/Production.php index 82fdf4c..a94eba8 100644 --- a/application/api/controller/Production.php +++ b/application/api/controller/Production.php @@ -518,6 +518,12 @@ class Production extends Base $p_info = $this->production_article_obj->where('p_article_id', $data['p_article_id'])->find(); $journal_info = $this->journal_obj->where('journal_id', $p_info['journal_id'])->find(); + //是否显示图文摘要图片1是2否3默认 20260206 start + $is_graphical_abstract = empty($data['is_graphical_abstract']) ? 3 : $data['is_graphical_abstract']; + if(!in_array($is_graphical_abstract, [1,2])){ + return jsonError('Please select whether the uploaded picture should be shown as graphic abstract on the PDF title page'); + } + //是否显示图文摘要图片1是2否3默认 20260206 end $update['title'] = trim($data['title']); $update['journal_stage_id'] = $data['journal_stage_id']; @@ -537,6 +543,10 @@ class Production extends Base // $update['pub_date'] = trim($data['pub_date']); $update['npp'] = isset($data['npp']) ? $data['npp'] : ''; + //是否显示图文摘要图片1是2否3默认 20260206 start + $update['is_graphical_abstract'] = $is_graphical_abstract; + //是否显示图文摘要图片1是2否3默认 20260206 end + //生成doi号 // $doi = ''; // if ($p_info['doi'] == '') { @@ -1709,6 +1719,11 @@ class Production extends Base } //判断邮箱是否重复 chengxiaoling 20250926 end + //判断是否是通讯作者 通讯地址必填 20260206 start + if(isset($data['is_report']) && $data['is_report'] == 1 && empty($data['mailing_address'])){ + return jsonError("Please enter your mailing address"); + } + //判断是否是通讯作者 通讯地址必填 20260206 end $article_info = $this->article_obj->where('article_id', $old_article_author_info['article_id'])->find(); $updata['author_name'] = $article_info['journal_id'] == 21 ? trim($data['last_name']) . trim($data['first_name']) : trim($data['first_name']) . ' ' . trim($data['last_name']); $updata['first_name'] = trim($data['first_name']); @@ -1718,6 +1733,11 @@ class Production extends Base $updata['is_first'] = $data['is_first']; $updata['is_report'] = $data['is_report']; $updata['email'] = isset($data['email']) ? trim($data['email']) : ''; + + //通信地址 20260206 start + $updata['mailing_address'] = isset($data['mailing_address']) ? trim($data['mailing_address']) : ''; + //通信地址 20260206 end + $this->production_article_author_obj->where('p_article_author_id', $data['p_article_author_id'])->update($updata); if (is_array($data['organs'])) { $has_ids = []; @@ -1811,6 +1831,12 @@ class Production extends Base } //判断邮箱是否重复 chengxiaoling 20250926 end + //判断是否是通讯作者 通讯地址必填 20260206 start + if(isset($data['is_report']) && $data['is_report'] == 1 && empty($data['mailing_address'])){ + return jsonError("Please enter your mailing address"); + } + //判断是否是通讯作者 通讯地址必填 20260206 end + $insert['p_article_id'] = $data['p_article_id']; $insert['article_id'] = $p_info['article_id']; $insert['author_name'] = $article_info['journal_id'] == 21 ? trim($data['last_name']) . trim($data['first_name']) : trim($data['first_name']) . ' ' . trim($data['last_name']); @@ -1822,6 +1848,10 @@ class Production extends Base $insert['is_report'] = $data['is_report']; $insert['email'] = isset($data['email']) ? trim($data['email']) : ''; + //通信地址 20260206 start + $insert['mailing_address'] = isset($data['mailing_address']) ? trim($data['mailing_address']) : ''; + //通信地址 20260206 end + Db::startTrans(); $pa_id = $this->production_article_author_obj->insertGetId($insert); $or_res = true; @@ -2637,6 +2667,9 @@ class Production extends Base $style['color'] = $this->colorMap['r']; break; // tr标签已被移除,无需处理 + case 'myh3': + $style['h3'] = true; + break; } } @@ -2678,6 +2711,11 @@ class Production extends Base $content = '$_{{'.$content.'}}$'; } + // 处理h3标签 + if (isset($style['h3']) && $style['h3']) { + $content = "\\textbf{{$content}}"; + } + return $content; } @@ -3273,6 +3311,16 @@ class Production extends Base $article_info = $this->article_obj->where('article_id', $p_info['article_id'])->find(); $journal_info = $this->journal_obj->where('journal_id', $article_info['journal_id'])->find(); $user_info = $this->user_obj->where('user_id', $article_info['user_id'])->find(); + + //查询文章是否有Accept记录 20260210 start + $article_info_id = empty($article_info['article_id']) ? 0 : $article_info['article_id']; + $aMsgWhere = ['article_id' => $article_info_id,'state_to' => 5]; + $aArticleMsg = Db::name('article_msg')->field('msg_id')->where($aMsgWhere)->find(); + if(empty($aArticleMsg)){ + return jsonError("Please set the paper as Accept before asking the author to confirm"); + } + //查询文章是否有Accept记录 20260210 end + $this->pdfAddProof($p_info['article_id']); if ($p_info['file_pdf'] == '') { return jsonError('To the editor: PROOF is the final form before the article goes online. The PROOF link step not be opened if you have not completed the previous steps.');