Merge remote-tracking branch 'origin/master'
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -617,10 +617,29 @@ class Base extends Controller
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// public function blueIntegerChange($string){
|
||||||
|
// return preg_replace_callback('/\[(\d+)\]/', function($matches) {
|
||||||
|
// var_dump($matches);
|
||||||
|
// return '<blue>[' . $matches[1] . ']</blue>';
|
||||||
|
// }, $string);
|
||||||
|
// }
|
||||||
|
|
||||||
public function blueIntegerChange($string){
|
public function blueIntegerChange($string){
|
||||||
return preg_replace_callback('/\[(\d+)\]/', function($matches) {
|
|
||||||
return '<blue>[' . $matches[1] . ']</blue>';
|
$pattern = '/\[(\d+)-(\d+)\]/';
|
||||||
}, $string);
|
$replacement = '[\1–\2]'; // 使用反向引用 \1 和 \2 来保持数字不变,只替换中间的短横线
|
||||||
|
$result = preg_replace($pattern, $replacement, $string);
|
||||||
|
|
||||||
|
$result = preg_replace_callback('/<blue>\[-?\d+(?:,|,\s*\d+)?(?:–|\s*–\s*\d+)?\]<\/blue>/', function($matches) {
|
||||||
|
// if(!empty($matches[1])){
|
||||||
|
// return '['.$matches[1].']';
|
||||||
|
// }
|
||||||
|
return strip_tags($matches[0]);
|
||||||
|
}, $result);
|
||||||
|
$pattern = '/\[-?\d+(?:,|,\s*\d+)?(?:–|\s*–\s*\d+)?\]/';
|
||||||
|
$replacement = '<blue>$0</blue>';
|
||||||
|
$result = preg_replace($pattern, $replacement, $result);
|
||||||
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getBoardsForJournal($journal_id, $aar = false)
|
public function getBoardsForJournal($journal_id, $aar = false)
|
||||||
|
|||||||
@@ -13,6 +13,8 @@ use app\api\controller\User as usercontroller;
|
|||||||
class Journal extends Base {
|
class Journal extends Base {
|
||||||
|
|
||||||
|
|
||||||
|
protected $sJournalUrl = 'http://journalapi.tmrjournals.com/public/index.php/';//'http://zmzm.journal.dev.com/';
|
||||||
|
|
||||||
public function __construct(\think\Request $request = null) {
|
public function __construct(\think\Request $request = null) {
|
||||||
parent::__construct($request);
|
parent::__construct($request);
|
||||||
}
|
}
|
||||||
@@ -65,6 +67,11 @@ class Journal extends Base {
|
|||||||
|
|
||||||
public function getAllJournal(){
|
public function getAllJournal(){
|
||||||
$list = $this->journal_obj->where('state',0)->select();
|
$list = $this->journal_obj->where('state',0)->select();
|
||||||
|
//接口请求获取journal_topic 和 abstract_chinese chengxiaoling 20250514 start
|
||||||
|
if(!empty($list)){
|
||||||
|
$list = $this->_getJournalForApi($list);
|
||||||
|
}
|
||||||
|
//接口请求获取journal_topic 和 abstract_chinese chengxiaoling 20250514 end
|
||||||
$re['journals'] = $list;
|
$re['journals'] = $list;
|
||||||
return jsonSuccess($re);
|
return jsonSuccess($re);
|
||||||
}
|
}
|
||||||
@@ -197,11 +204,17 @@ class Journal extends Base {
|
|||||||
{
|
{
|
||||||
$user_id = $this->request->post('user_id');
|
$user_id = $this->request->post('user_id');
|
||||||
$list = $this->journal_obj->where('editor_id',$user_id)->where("state",0)->select();
|
$list = $this->journal_obj->where('editor_id',$user_id)->where("state",0)->select();
|
||||||
|
|
||||||
|
//接口请求获取journal_topic 和 abstract_chinese chengxiaoling 20250514 start
|
||||||
|
if(!empty($list)){
|
||||||
|
$list = $this->_getJournalForApi($list);
|
||||||
|
}
|
||||||
|
//接口请求获取journal_topic 和 abstract_chinese chengxiaoling 20250514 end
|
||||||
|
|
||||||
$re['journals'] = $list;
|
$re['journals'] = $list;
|
||||||
return jsonSuccess($re);
|
return jsonSuccess($re);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取可申请审稿人的期刊
|
* 获取可申请审稿人的期刊
|
||||||
*/
|
*/
|
||||||
@@ -257,13 +270,35 @@ class Journal extends Base {
|
|||||||
$update['epassword'] = $data['epassword'];
|
$update['epassword'] = $data['epassword'];
|
||||||
$update['kfen'] = $data['kfen'];
|
$update['kfen'] = $data['kfen'];
|
||||||
|
|
||||||
//新增字段期刊涵盖主题多个逗号分隔 chengxiaoling 20250507 start
|
//新增字段期刊涵盖主题多个逗号分隔\中文简介\发布作者\编辑二维码 chengxiaoling 20250507 start
|
||||||
if(isset($data['journal_topic'])){
|
if(isset($data['journal_topic'])){
|
||||||
if(is_array($data['journal_topic'])){
|
if(is_array($data['journal_topic'])){
|
||||||
$update['journal_topic'] = implode(',', $data['journal_topic']);
|
$update['journal_topic'] = implode(',', $data['journal_topic']);
|
||||||
}else{
|
}else{
|
||||||
$update['journal_topic'] = $data['journal_topic'];
|
$update['journal_topic'] = $data['journal_topic'];
|
||||||
}
|
}
|
||||||
|
$aJournalUpdate['journal_topic'] = $update['journal_topic'];
|
||||||
|
}
|
||||||
|
if(isset($data['abstract_chinese'])){
|
||||||
|
$update['abstract_chinese'] = $data['abstract_chinese'];
|
||||||
|
$aJournalUpdate['abstract_chinese'] = $update['abstract_chinese'];
|
||||||
|
}
|
||||||
|
if(isset($data['publish_author'])){
|
||||||
|
$update['publish_author'] = $data['publish_author'];
|
||||||
|
$aJournalUpdate['publish_author'] = $update['publish_author'];
|
||||||
|
}
|
||||||
|
if(isset($data['editor_qrcode'])){
|
||||||
|
$update['editor_qrcode'] = $data['editor_qrcode'];
|
||||||
|
$aJournalUpdate['editor_qrcode'] = $update['editor_qrcode'];
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!empty($aJournalUpdate)){
|
||||||
|
$aJournalUpdate['issn'] = $journal_info['issn'];
|
||||||
|
$sUrl = $this->sJournalUrl."wechat/Article/updateJournal";
|
||||||
|
$program['issn'] = $journal_info['issn'];
|
||||||
|
$res = object_to_array(json_decode(myPost($sUrl,$aJournalUpdate)));
|
||||||
|
var_dump($res);exit;
|
||||||
|
|
||||||
}
|
}
|
||||||
//新增字段期刊涵盖主题多个逗号分隔 chengxiaoling 20250507 end
|
//新增字段期刊涵盖主题多个逗号分隔 chengxiaoling 20250507 end
|
||||||
if(isset($data['fee'])&&$data['fee']!=0){
|
if(isset($data['fee'])&&$data['fee']!=0){
|
||||||
@@ -311,4 +346,45 @@ class Journal extends Base {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 接口请求获取Journal数据库里的期刊话题及中文简介
|
||||||
|
*/
|
||||||
|
private function _getJournalForApi($list = []){
|
||||||
|
if(empty($list)){
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
$aIssn = array_column($list, 'issn');
|
||||||
|
$sUrl = $this->sJournalUrl."master/Journal/getJournals";
|
||||||
|
$aParam['issn'] = $aIssn;
|
||||||
|
$aResult = object_to_array(json_decode(myPost1($sUrl,$aParam)));
|
||||||
|
$aData = empty($aResult['data']) ? [] : $aResult['data'];
|
||||||
|
$aJournal = empty($aData['journals']) ? [] : array_column($aData['journals'],null,'issn');
|
||||||
|
foreach ($list as $key => $value) {
|
||||||
|
$aJournalInfo = empty($aJournal[$value['issn']]) ? [] : $aJournal[$value['issn']];
|
||||||
|
|
||||||
|
$list[$key]['journal_topic'] = empty($aJournalInfo['journal_topic']) ? '' : $aJournalInfo['journal_topic'];
|
||||||
|
$list[$key]['abstract_chinese'] = empty($aJournalInfo['abstract_chinese']) ? '' : $aJournalInfo['abstract_chinese'];
|
||||||
|
$list[$key]['publish_author'] = empty($aJournalInfo['publish_author']) ? '' : $aJournalInfo['publish_author'];
|
||||||
|
$list[$key]['editor_qrcode'] = empty($aJournalInfo['editor_qrcode']) ? '' : $aJournalInfo['editor_qrcode'];
|
||||||
|
}
|
||||||
|
return $list;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 上传期刊编辑的二维码
|
||||||
|
*/
|
||||||
|
public function uploadEditorQrcode()
|
||||||
|
{
|
||||||
|
$file = request()->file('qrcode_url');
|
||||||
|
if ($file) {
|
||||||
|
$info = $file->move(ROOT_PATH . 'public' . DS . 'journaleditorqrcode');
|
||||||
|
if ($info) {
|
||||||
|
return json(['code' => 0, 'upurl' => str_replace("\\", "/", $info->getSaveName())]);
|
||||||
|
} else {
|
||||||
|
return json(['code' => 1, 'msg' => $file->getError()]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user