|
@@ -12,12 +12,16 @@ declare(strict_types=1);
|
|
namespace app\sys\controller;
|
|
namespace app\sys\controller;
|
|
|
|
|
|
// 引入框架内置类
|
|
// 引入框架内置类
|
|
-use think\facade\View;
|
|
|
|
|
|
+use think\Exception;
|
|
|
|
+use think\facade\Db;
|
|
use think\facade\Config;
|
|
use think\facade\Config;
|
|
|
|
+use think\facade\View;
|
|
|
|
+
|
|
|
|
|
|
use app\common\model\Category as CategoryModel;
|
|
use app\common\model\Category as CategoryModel;
|
|
use app\common\model\Article as ArticleModel;
|
|
use app\common\model\Article as ArticleModel;
|
|
use app\common\facade\FileUtils;
|
|
use app\common\facade\FileUtils;
|
|
|
|
+use app\common\utils\ReUtils;
|
|
use app\common\model\FileManager as FileManagerModel;
|
|
use app\common\model\FileManager as FileManagerModel;
|
|
|
|
|
|
class Article extends Base
|
|
class Article extends Base
|
|
@@ -60,7 +64,7 @@ class Article extends Base
|
|
$params['content'] = isset($params['content']) ? $params['content'] : '';
|
|
$params['content'] = isset($params['content']) ? $params['content'] : '';
|
|
if ($content_type == 0) {
|
|
if ($content_type == 0) {
|
|
$username = $this->getSysUser()->username;
|
|
$username = $this->getSysUser()->username;
|
|
- $params['content'] = $this->saveRomteImage($params['content'],(int)$params['id'],(int) $params['cjid'], $username);
|
|
|
|
|
|
+ $params['content'] = $this->saveRomteImage($params['content'], (int)$params['id'], (int) $params['cjid'], $username);
|
|
}
|
|
}
|
|
|
|
|
|
$params['keywords'] = trim($params['keywords']);
|
|
$params['keywords'] = trim($params['keywords']);
|
|
@@ -101,27 +105,27 @@ class Article extends Base
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- protected function saveRomteImage($content, $infoid=0, $cjid=0, $username='system')
|
|
|
|
|
|
+ protected function saveRomteImage($content, $infoid = 0, $cjid = 0, $username = 'system')
|
|
{
|
|
{
|
|
- $content = stripslashes ($content);
|
|
|
|
|
|
+ $content = stripslashes($content);
|
|
$img_array = [];
|
|
$img_array = [];
|
|
// 匹配所有远程图片
|
|
// 匹配所有远程图片
|
|
$pattern = '/src="(http[s]:\/\/.*)"/isU';
|
|
$pattern = '/src="(http[s]:\/\/.*)"/isU';
|
|
- preg_match_all ($pattern,$content,$img_array);
|
|
|
|
-
|
|
|
|
|
|
+ preg_match_all($pattern, $content, $img_array);
|
|
|
|
+
|
|
// 删除重复 url
|
|
// 删除重复 url
|
|
- $img_arrays = array_unique ($img_array[1]);
|
|
|
|
|
|
+ $img_arrays = array_unique($img_array[1]);
|
|
|
|
|
|
foreach ($img_arrays as $value) {
|
|
foreach ($img_arrays as $value) {
|
|
$file = FileUtils::downloadUrlImg($value);
|
|
$file = FileUtils::downloadUrlImg($value);
|
|
-
|
|
|
|
|
|
+
|
|
$savename = \think\facade\Filesystem::disk('public')->putFile('/', $file);
|
|
$savename = \think\facade\Filesystem::disk('public')->putFile('/', $file);
|
|
|
|
|
|
FileManagerModel::saveFileInfo($file, $savename, $file->getOriginalName, $infoid, $cjid, $username);
|
|
FileManagerModel::saveFileInfo($file, $savename, $file->getOriginalName, $infoid, $cjid, $username);
|
|
|
|
|
|
// 删除临时文件
|
|
// 删除临时文件
|
|
@unlink($file->getRealPath());
|
|
@unlink($file->getRealPath());
|
|
-
|
|
|
|
|
|
+
|
|
$filename = Config::get('filesystem.disks.public.url') . '/' . str_replace('\\', '/', $savename);
|
|
$filename = Config::get('filesystem.disks.public.url') . '/' . str_replace('\\', '/', $savename);
|
|
|
|
|
|
// dump($filename);
|
|
// dump($filename);
|
|
@@ -130,4 +134,24 @@ class Article extends Base
|
|
|
|
|
|
return $content;
|
|
return $content;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ public function move()
|
|
|
|
+ {
|
|
|
|
+ $ids = $this->request->param('ids');
|
|
|
|
+ $cid = $this->request->param('cid');
|
|
|
|
+
|
|
|
|
+ $tablename = ArticleModel::getTable();
|
|
|
|
+
|
|
|
|
+ $idss = implode(',', $ids);
|
|
|
|
+
|
|
|
|
+ $sql = "update " . $tablename . " set cid=". $cid ." where id IN (" . $idss . ");";
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ Db::execute($sql);
|
|
|
|
+ } catch (Exception $e) {
|
|
|
|
+ return ReUtils::error();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return ReUtils::success();
|
|
|
|
+ }
|
|
}
|
|
}
|