初始化代码
This commit is contained in:
103
application/admin/model/Agora.php
Normal file
103
application/admin/model/Agora.php
Normal file
@@ -0,0 +1,103 @@
|
||||
<?php
|
||||
|
||||
namespace app\admin\model;
|
||||
|
||||
use think\Db;
|
||||
use think\Model;
|
||||
|
||||
class Agora extends Model
|
||||
{
|
||||
protected $insert = [
|
||||
'add_time',
|
||||
];
|
||||
protected $update = ['update_time'];
|
||||
|
||||
|
||||
protected function setAddTimeAttr()
|
||||
{
|
||||
return time();
|
||||
}
|
||||
|
||||
protected function setUpdateTimeAttr()
|
||||
{
|
||||
return time();
|
||||
}
|
||||
|
||||
|
||||
//获取房间音乐列表
|
||||
public function agora_song_list($aid, $song_name, $singer, $order, $sort, $page = 1, $limit = 20)
|
||||
{
|
||||
$map = [];
|
||||
if (!empty($aid)) {
|
||||
$map[] = ['aid', '=', $aid];
|
||||
}
|
||||
if (!empty($song_name)) {
|
||||
$map[] = ['song_name', 'like', '%' . $song_name . '%'];
|
||||
}
|
||||
if (!empty($singer)) {
|
||||
$map[] = ['singer', 'like', '%' . $singer . '%'];
|
||||
}
|
||||
|
||||
$map[] = ['is_delete', '=', 1];
|
||||
$song_list = db::name('agora_song')->where($map)->order($order, $sort)->page($page, $limit)->select();
|
||||
$data = [];
|
||||
$data['count'] = db::name('agora_song')->where($map)->count();
|
||||
$data['list'] = $song_list;
|
||||
return ['code' => 200, 'msg' => '获取成功', 'data' => $data];
|
||||
}
|
||||
|
||||
//同步歌曲
|
||||
public function synchro_song(){
|
||||
//查看当前数据库存留歌曲
|
||||
$song = db::name('agora_song')->where('is_delete',1)->order('aid desc')->limit(1)->find();
|
||||
if(empty($song)){
|
||||
$datas = model('api/Agora')->agora_song_list(0, 1000, 0);
|
||||
}else{
|
||||
$datas = model('api/Agora')->agora_song_list(0, 1000, $song['song_code']);
|
||||
}
|
||||
if(empty($datas['data']['list'])){
|
||||
return ['code' => 201, 'msg' => '暂无更多歌曲', 'data' => null];
|
||||
}
|
||||
|
||||
$data = [];
|
||||
$data_array = [];
|
||||
foreach ($datas['data']['list'] as $k => $v){
|
||||
$data['song_code'] = $v['songCode'];
|
||||
$data['song_name'] = $v['name'];
|
||||
$data['singer'] = $v['singer'];
|
||||
$data['poster'] = $v['poster'];
|
||||
$data['duration'] = $v['duration'];
|
||||
$data['type'] = $v['type'];
|
||||
$data['release_time'] = strtotime($v['releaseTime']);
|
||||
$data['status'] = $v['status'];
|
||||
$data['add_time'] = time();
|
||||
if(!empty($v['mv'])){
|
||||
$data['mv'] = json_encode($v['mv'],true);
|
||||
}
|
||||
$data_array[] = $data;
|
||||
}
|
||||
// dump($data_array);exit;
|
||||
$result = db::name('agora_song')->insertAll($data_array);
|
||||
if($result){
|
||||
return ['code' => 200, 'msg' => '更新成功', 'data' => null];
|
||||
}else{
|
||||
return ['code' => 201, 'msg' => '更新失败', 'data' => null];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//增量歌曲
|
||||
public function increment_song(){
|
||||
//查看当前数据库存留歌曲
|
||||
$song = db::name('agora_song')->where('is_delete', 1)->order('aid desc')->limit(1)->find();
|
||||
if(empty($song)){
|
||||
return ['code' => 201, 'msg' => '请先去同步歌曲', 'data' => null];
|
||||
}else{
|
||||
$datas = model('api/Agora')->agora_new_song_list(1, 1000, $song['add_time']);
|
||||
}
|
||||
|
||||
dump($datas);exit;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user