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){
|
||||
return preg_replace_callback('/\[(\d+)\]/', function($matches) {
|
||||
return '<blue>[' . $matches[1] . ']</blue>';
|
||||
}, $string);
|
||||
|
||||
$pattern = '/\[(\d+)-(\d+)\]/';
|
||||
$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)
|
||||
|
||||
@@ -13,6 +13,8 @@ use app\api\controller\User as usercontroller;
|
||||
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) {
|
||||
parent::__construct($request);
|
||||
}
|
||||
@@ -65,6 +67,11 @@ class Journal extends Base {
|
||||
|
||||
public function getAllJournal(){
|
||||
$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;
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
@@ -197,11 +204,17 @@ class Journal extends Base {
|
||||
{
|
||||
$user_id = $this->request->post('user_id');
|
||||
$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;
|
||||
return jsonSuccess($re);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取可申请审稿人的期刊
|
||||
*/
|
||||
@@ -257,13 +270,35 @@ class Journal extends Base {
|
||||
$update['epassword'] = $data['epassword'];
|
||||
$update['kfen'] = $data['kfen'];
|
||||
|
||||
//新增字段期刊涵盖主题多个逗号分隔 chengxiaoling 20250507 start
|
||||
//新增字段期刊涵盖主题多个逗号分隔\中文简介\发布作者\编辑二维码 chengxiaoling 20250507 start
|
||||
if(isset($data['journal_topic'])){
|
||||
if(is_array($data['journal_topic'])){
|
||||
$update['journal_topic'] = implode(',', $data['journal_topic']);
|
||||
}else{
|
||||
$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
|
||||
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