Commit 5b44ba73 5b44ba730df7430fe46265f9b222b454a10cb3c5 by lemon

上架记录

1 parent 43caf7a6
......@@ -48,4 +48,13 @@ class IssueController extends Controller
return $this->issueService->subCompany();
}
/**
* 最新发行记录
* @return \Illuminate\Http\JsonResponse
*/
public function latestRecord()
{
return $this->issueService->latestRecord();
}
}
......
<?php
namespace App\Models\Legal;
use App\Models\BaseModel;
use Illuminate\Database\Eloquent\SoftDeletes;
class SongsApply extends BaseModel
{
use SoftDeletes;
/**
* @var string
*/
protected $table = 'songs_apply';
/**
* @var array
*/
public $guarded = [];
/**
* @var string[]
*/
public $hidden = ['album_id'];
/**
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
*/
public function songs_album()
{
return $this->belongsTo(SongsIssueAlbum::class, 'album_id', 'id')->select('id', 'album_name','ver','singer','submit_at','operator');
}
}
<?php
namespace App\Models\Legal;
use App\Models\BaseModel;
use Illuminate\Database\Eloquent\SoftDeletes;
class SongsIssueAlbum extends BaseModel
{
use SoftDeletes;
protected $table = 'songs_issue_album';
public $guarded = [];
/**
* 关联封面
* @return \Illuminate\Database\Eloquent\Relations\HasOne
*/
public function cover()
{
return $this->hasOne(FileMap::class, 'id','cover_map_id');
}
}
......@@ -3,8 +3,10 @@
namespace App\Services;
use App\Helper\AesEncrypt;
use App\Helper\CosHelper;
use App\Helper\ErrorCode;
use App\Helper\Response;
use App\Models\Legal\SongsApply;
use App\Models\Legal\Stakeholder;
use App\Models\Legal\Subject;
use Illuminate\Support\Facades\Log;
......@@ -69,7 +71,27 @@ class IssueService extends Service
->get(['no as value', 'name']);
return Response::success($subject);
}
/**
* 发行(上架成功记录)
* @return \Illuminate\Http\JsonResponse
*/
public function latestRecord()
{
$res = SongsApply::query()->where(['from'=>1, 'user_id'=>$this->request->get('identifier')->company_id])
->whereNotNull('qy_url')->with('songs_album.cover:link_id,key')
->select(['name','album_id','singer','issue_time','qy_url'])->paginate($this->pageSize);
$cos = new CosHelper(env('MATERIAL_BUCKET'));
foreach ($res as &$item) {
if (!empty($item->songs_album)) {
$item->cover = $cos->getPreviewUrl($item->songs_album->cover->key);
}
}
return Response::success($res);
}
......