作者 赵彬吉
... ... @@ -62,18 +62,26 @@ class Demo extends Command
protected $description = 'demo';
public function handle(){
$projectModel = new Project();
$list = $projectModel->list(['is_upgrade'=>0,'delete_status'=>0]);
$keywordVideoModel = new KeywordVideoTask();
$list = $keywordVideoModel->list();
foreach ($list as $v){
echo date('Y-m-d H:i:s') . 'project_id:'.$v['id'] . PHP_EOL;
ProjectServer::useProject($v['id']);
// $this->getProduct();
$this->copyProduct();
echo date('Y-m-d H:i:s') . 'project_id:'.$v['project_id'] . PHP_EOL;
ProjectServer::useProject($v['project_id']);
if($v['project_id'] == 23){
$this->getProduct();
}
DB::disconnect('custom_mysql');
}
echo date('Y-m-d H:i:s') . 'end' . PHP_EOL;
}
/**
* @remark :更新产品
* @name :getProduct
* @author :lyh
* @method :post
* @time :2024/11/27 15:40
*/
public function getProduct(){
$productModel = new Product();
$lists = $productModel->list(['status'=>['!=',3]]);
... ... @@ -82,18 +90,19 @@ class Demo extends Command
if(!empty($v['keyword_id'])){
echo date('Y-m-d H:i:s') . 'id :'.$v['id'] . PHP_EOL;
$keyword_arr = [];
$keyword_video_arr = [];
$count = count($v['keyword_id']);
if($count > 7){
foreach ($v['keyword_id'] as $key => $val){
if($key > 6){
break;
$keyword_video_arr[] = $val;
}else{
$keyword_arr[] = $val;
}
$keyword_arr[] = $val;
}
$keyword_str = explode(',',$keyword_arr);
$productModel->edit(['keyword_id'=>$keyword_str],['id'=>$v['id']]);
$keywordRelatedModel = new KeywordRelated();
$keywordRelatedModel->edit(['type'=>2],['keyword_id'=>$val,'product_id'=>$v['id']]);
$keyword_str = !empty($keyword_arr) ? ','.explode(',',$keyword_arr).',' : '';
$keyword_video_str = !empty($keyword_video_arr) ? ','.explode(',',$keyword_video_arr).',' : '';
$productModel->edit(['keyword_id'=>$keyword_str,'keyword_video_id'=>$keyword_video_str],['id'=>$v['id']]);
}
}
}
... ... @@ -102,9 +111,9 @@ class Demo extends Command
public function copyProduct(){
$tableName = 'gl_product';
$copyTableName = $tableName . '_c';
if (Schema::hasTable($copyTableName)) {
DB::statement("DROP TABLE {$copyTableName}");
$copyTableName = 'gl_product_c';
if (Schema::connection('custom_mysql')->hasTable($copyTableName)) {
DB::connection('custom_mysql')->statement("DROP TABLE {$copyTableName}");
}
// 创建新表并复制数据
DB::connection('custom_mysql')->statement("CREATE TABLE {$copyTableName} LIKE {$tableName}");
... ...