上传素材调整

This commit is contained in:
chengxl
2025-05-29 13:50:19 +08:00
parent 4758357eb0
commit bbcbf590c1

View File

@@ -39,11 +39,11 @@ class Material
* @param aJournal 期刊信息
*/
public function createJournalQrCode($aJournal = []){
$iJournalId = empty($aJournal['journal_id']) ? 0 : $aJournal['journal_id'];
$iJournalStageId = empty($aJournal['journal_stage_id']) ? 0 : $aJournal['journal_stage_id'];
//生成图片地址
$sImagePath = 'journal/'.$iJournalId.'.jpg';
$sImagePath = 'journal/'.$iJournalId.'_'.$iJournalStageId.'.jpg';
$sQrCodeUrl = ROOT_PATH.$this->sQrCodeUrl.$sImagePath;
//地址
@@ -56,15 +56,15 @@ class Material
$sImg = QrCodeImage::generate($sUrl,500,$sQrCodeUrl);
}else{
$sLogo = trim($this->sJournalUsx,'/').$this->sJournalIcon.$sLogo;
$aImageInfo = json_decode($this->getImage($sLogo,$iJournalId,'journal'),true);
if(empty($aImageInfo['data'])){
$aImageInfo = json_decode($this->getImage($sLogo,$iJournalId.'_'.$iJournalStageId,'journal'),true);
// if(empty($aImageInfo['data'])){
$sImg = QrCodeImage::generate($sUrl,500,$sQrCodeUrl);
}
$sImg = QrCodeImage::withLogo($sUrl,$aImageInfo['data'],500,100, $sQrCodeUrl);
// }
// $sImg = QrCodeImage::withLogo($sUrl,$aImageInfo['data'],500,100, $sQrCodeUrl);
}
//插入字段
$aInsertParam = ['journal_id' => $iJournalId,'qrcode_url' => $sImagePath,'create_time' => time(),'update_time' => time()];
$aInsertParam = ['journal_id' => $iJournalId,'journal_stage_id' => $iJournalStageId,'qrcode_url' => $sImagePath,'create_time' => time(),'update_time' => time()];
$sStartSql = 'INSERT INTO t_ai_journal_qrcode ('.implode(',', array_keys($aInsertParam)).') VALUES (';
$sEndSql = ') ON DUPLICATE KEY UPDATE update_time = VALUES(update_time)';
@@ -100,10 +100,10 @@ class Material
}else{
$sLogo = trim($this->sJournalUsx,'/').$this->sArticleIcon.$sLogo;
$aImageInfo = json_decode($this->getImage($sLogo,$iArticleId,'article'),true);
if(empty($aImageInfo['data'])){
// if(empty($aImageInfo['data'])){
$sImg = QrCodeImage::generate($sUrl,500,$sQrCodeUrl);
}
$sImg = QrCodeImage::withLogo($sUrl,$aImageInfo['data'],500,100, $sQrCodeUrl);
// }
// $sImg = QrCodeImage::withLogo($sUrl,$aImageInfo['data'],500,100, $sQrCodeUrl);
}
//插入字段
@@ -230,6 +230,9 @@ class Material
//期刊ID
$iJournalId = empty($aParam['journal_id']) ? '' : $aParam['journal_id'];
//子期刊ID
$iJournalStageId = empty($aParam['journal_stage_id']) ? 0 : $aParam['journal_stage_id'];
//期刊图片
$sIcon = empty($aParam['icon']) ? '' : $aParam['icon'];
if(empty($iJournalId) || empty($sIcon)){
@@ -239,10 +242,10 @@ class Material
$aImageInfo = pathinfo($sIcon);
//图片后缀名
$sExtension = empty($aImageInfo['extension']) ? 'jpg' : $aImageInfo['extension'];
$sImagePath = 'journal/imgae_'.$iJournalId.'.'.$sExtension;
$sImagePath = 'journal/imgae_'.$iJournalId.'_'.$iJournalStageId.'.'.$sExtension;
$sImagePath = ROOT_PATH.$this->sQrCodeUrl.$sImagePath;
if (!file_exists($sImagePath)) {//下载图片
$aImageInfo = json_decode($this->getImage($sIcon,$iJournalId,'journal'),true);
$aImageInfo = json_decode($this->getImage($sIcon,$iJournalId.'_'.$iJournalStageId,'journal'),true);
if(empty($aImageInfo['data'])){
return json_encode(['status' => 3,'msg' => 'Image download failed']);
}
@@ -266,7 +269,7 @@ class Material
$iTime = empty($aUploadResult['created_at']) ? time() : $aUploadResult['created_at'];
//入库数据组装
$aInsert = ['type' => 'image','media_id' => $sMediaId,'create_time' => $iTime,'journal_id' => $iJournalId,'media_url' => $sMediaUrl,'update_time' => $iTime];
$aInsert = ['type' => 'image','media_id' => $sMediaId,'create_time' => $iTime,'journal_id' => $iJournalId,'media_url' => $sMediaUrl,'update_time' => $iTime,'journal_stage_id' => $iJournalStageId];
$sStartSql = 'INSERT INTO t_ai_journal_material ('.implode(',', array_keys($aInsert)).') VALUES (';
$sEndSql = ') ON DUPLICATE KEY UPDATE update_time = VALUES(update_time),media_id = VALUES(media_id),media_url = VALUES(media_url)';
@@ -286,13 +289,18 @@ class Material
//期刊ID
$iJournalId = empty($aParam['journal_id']) ? '' : $aParam['journal_id'];
//子期刊ID
$iJournalStageId = empty($aParam['journal_stage_id']) ? 0 : $aParam['journal_stage_id'];
if(empty($iJournalId)){
return json_encode(['status' => 2,'msg' => 'journal_id or image is empty']);
}
//查询是否生成二维码
$aWhere = ['journal_id' => $iJournalId,'is_delete' => 2];
$aMaterial = Db::name('ai_journal_qrcode')->field('qrcode_url,media_id,media_url')->where($aWhere)->find();
if(!empty($iJournalStageId)){
$aWhere['journal_stage_id'] = $iJournalStageId;
}
$aMaterial = Db::name('ai_journal_qrcode')->field('id,qrcode_url,media_id,media_url')->where($aWhere)->find();
if(empty($aMaterial)){
return json_encode(['status' => 3,'msg' => 'data is null']);
}
@@ -315,7 +323,7 @@ class Material
$sMediaUrl = empty($aData['url']) ? [] : $aData['url'];
$iTime = empty($aUploadResult['created_at']) ? time() : $aUploadResult['created_at'];
$aUpdate = ['media_id' => $sMediaId,'media_url' => $sMediaUrl,'update_time' => $iTime];
$response = Db::name('ai_journal_qrcode')->where('journal_id',$iJournalId)->limit(1)->update($aUpdate);
$response = Db::name('ai_journal_qrcode')->where('id',$aMaterial['id'])->limit(1)->update($aUpdate);
if($response === false){
return json_encode(['status' => 3,'msg' => 'fail']);
}
@@ -581,7 +589,7 @@ class Material
//获取期刊信息
$aJournal = empty($aParam['journal_info']) ? [] : $aParam['journal_info'];
//上传期刊素材相关参数组装
$aJournalParam = ['journal_id' => $iJournalId,'icon' => empty($aJournal['icon']) ? '' : $aJournal['icon'],'editor_qrcode' => empty($aJournal['editor_qrcode']) ? '' : $aJournal['editor_qrcode']];
$aJournalParam = ['journal_id' => $iJournalId,'icon' => empty($aJournal['icon']) ? '' : $aJournal['icon'],'editor_qrcode' => empty($aJournal['editor_qrcode']) ? '' : $aJournal['editor_qrcode'],'journal_stage_id' => empty($aJournal['journal_stage_id']) ? 0 : $aJournal['journal_stage_id']];
$aJournalParam += $aWechatParam;
//上传期刊图片
if(!empty($aJournalParam['icon']) && $sStepName == 'addJournalMaterial'){