UploadImageForm.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. /**
  3. * 重庆赤晓店信息科技有限公司
  4. * https://www.chixiaodian.com
  5. * Copyright (c) 2023 赤店商城 All rights reserved.
  6. */
  7. namespace app\modules\admin\models\imageSearch;
  8. use app\jobs\CreatedUploadImageJob;
  9. use app\models\Goods;
  10. use app\models\Option;
  11. use app\models\StoreImageSearchSetting;
  12. use app\models\UploadGoodsImage;
  13. use app\utils\TiiaHelper;
  14. use yii\base\Model;
  15. class UploadImageForm extends Model
  16. {
  17. // 查询未上传的商品主图
  18. public function uploadImage(){
  19. $res = queue_push(new CreatedUploadImageJob(['store_id' => get_store_id()]), 5, 1);
  20. \Yii::error(json_encode($res));
  21. return true;
  22. }
  23. public function updateGoodsImage($goodsId){
  24. // 要判断是否开启以图搜图 以及 是否创建图库
  25. $imageSearchStatus = Option::get('tencent_image_setting_status',get_store_id(),'saas', 0)['value'];
  26. if($imageSearchStatus == 0){
  27. return false;
  28. }
  29. debug_log("走到这里准备删除更新腾讯云图片");
  30. $goodsInfo = Goods::find()->where(['id'=>$goodsId])->select('id,cover_pic,name,store_id')->asArray()->one();
  31. $storeSetting = StoreImageSearchSetting::findOne(['store_id' => get_store_id()]);
  32. $oldImage = UploadGoodsImage::find()->where(['goods_id'=>$goodsInfo['id'],'is_delete'=>0,'status'=>1])->all();
  33. $tiia = new TiiaHelper();
  34. foreach ($oldImage as &$item){
  35. // 执行删除
  36. $delImageResult = $tiia::deleteImages($storeSetting->group_id,$item['goods_id'],$item['image_name']);
  37. if($delImageResult['code'] == 0){
  38. $item['is_delete'] = 1;
  39. $item->save();
  40. }
  41. }
  42. $uploadRes = $tiia::createImage($storeSetting->group_id,$goodsInfo['id'],$goodsInfo['id'].'-'.$goodsInfo['name'],$goodsInfo['cover_pic']);
  43. if($uploadRes['code'] == 0){
  44. // 生成一条记录
  45. $newUploadGoodsImage = new UploadGoodsImage();
  46. $newUploadGoodsImage->store_id = $goodsInfo['store_id'];
  47. $newUploadGoodsImage->goods_id = $goodsInfo['id'];
  48. $newUploadGoodsImage->pic_url = $goodsInfo['cover_pic'];
  49. $newUploadGoodsImage->status = 1;
  50. $newUploadGoodsImage->is_delete = 0;
  51. $newUploadGoodsImage->created_at = time();
  52. $newUploadGoodsImage->updated_at = time();
  53. $newUploadGoodsImage->image_name = $goodsInfo['id'].'-'.$goodsInfo['name'];
  54. $newUploadGoodsImage->save();
  55. }
  56. }
  57. }