Commit 06211dbd 06211dbdda144910688a41aefe29d3724bbd4c40 by mengfan.xie

release

1 parent 01cd8cf4
......@@ -17,11 +17,12 @@ class Response
* @param array $data
* @return \Illuminate\Http\JsonResponse
*/
public static function success($data = [])
public static function success($data = [], string $msg = '请求成功')
{
return response()->json([
'code' => ErrorCode::SERVER_OK,
'data' => $data instanceof LengthAwarePaginator ? self::paginator($data) : $data
'data' => $data instanceof LengthAwarePaginator ? self::paginator($data) : $data,
'msg' => $msg
]);
}
......
......@@ -64,7 +64,7 @@ class BaseController extends Controller
$heaers['appId'] = $this->appId;
$heaers['accessToken'] = $accessToken;
$heaers['timestamp'] = (string)date('YmdHis');
$heaers['traceId'] = (string)'1';
$heaers['traceId'] = 'hk_'.(string)time();
$heaers['signMethod'] = 'md5';
$heaers['sign'] = $this->getSign($heaers,$params);
return $heaers;
......@@ -81,13 +81,12 @@ class BaseController extends Controller
if ($isLocal) {
$data_file = database_path('Release/'.last(explode("/",$uri)).'.query.php');
$params = include("$data_file");
$params['tmeBrandId'] = 105737;
if (last(explode("/",$uri)) == 'upload'){
$params['md5'] = md5($params['url']);
}
} else {
$params = $reqData;
}
$params['tmeBrandId'] = (int)env('TME_BRANDID',8888888);
var_dump(json_encode($params,JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES));
exit();
$headers = $this->parseHeaders($params);
switch (strtoupper($method)) {
case 'GET':
......@@ -99,12 +98,11 @@ class BaseController extends Controller
break;
}
$respArr = json_decode($response->getBody()->getContents(), true);
return $respArr;
Log::channel('api')->info(__METHOD__, $respArr);
if (0 !== (int)$respArr['code']) {
return Response::error(-1,$respArr['msg'] ?? '操作失败');
} else {
$response_file = database_path('release/' . $uri . '.resp');
file_put_contents($response_file, var_export($respArr['data'],true));
return Response::success($respArr['data']);
}
} catch (\Exception $e) {
......@@ -121,16 +119,17 @@ class BaseController extends Controller
protected function getSign($heaers,$params)
{
$common_params = array_merge($params,$heaers);
ksort($common_params);
$params = '';
foreach ($common_params as $k=>$v)
{
if ('' === $v || null === $v || [] === $v) {
continue;
}
if (is_array($v)) {
ksort($v);
$params .= $k . json_encode($this->handleSubArrayNumber($v));
$params .= $k . json_encode($this->handleSubArrayNumber($v), JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES);
} else {
$params .= $k . $v;
}
......@@ -147,11 +146,10 @@ class BaseController extends Controller
{
foreach ($array as $k=>$v) {
if (is_array($v)) {
// ksort($v);
$array[$k] = $this->handleSubArrayNumber($v);
} else {
if (is_numeric($v) && is_int($v)) {
$array[$k] = (string)$v;
}
$array[$k] = $v;
}
}
return $array;
......
......@@ -15,23 +15,23 @@ class WorkController extends BaseController
public function Upload(Request $request)
{
// dd(basename($request->getRequestUri()));
return $this->doApi('content/upload',$request->all());
return $this->doApi('/invests/content/upload',$request->all());
}
/**
/** 提交专辑
* @param Request $request
*/
public function albumOnline(Request $request)
{
return $this->doApi('content/commitContent',$request->all());
return $this->doApi('/invests/content/commitContent',$request->all());
}
/**
/**搜索歌手
* @param Request $request
*/
public function singerQuery(Request $request)
{
return $this->doApi('content/searchSinger',$request->all());
return $this->doApi('/invests/content/searchSinger',$request->all());
}
/**
......@@ -42,20 +42,20 @@ class WorkController extends BaseController
return $this->doApi('content/createSinger',$request->all());
}
/**
/** 原始版权方
* @param Request $request
*/
public function originalCompanyQuery(Request $request)
{
return $this->doApi('content/queryOriginalCopyrightCompanyList',$request->all());
return $this->doApi('/invests/content/queryOriginalCopyrightCompanyList',$request->all());
}
/**
/**查询发行的歌曲id接口
* @param Request $request
*/
public function releasedAlbumQuery(Request $request)
{
return $this->doApi('content/queryComitResult',$request->all());
return $this->doApi('/invests/content/queryComitResult',$request->all());
}
......
<?php
<?php //空值不能填null,会造成签名错误,填空字符串
return [
'cmsAlbumId'=>null, //接入系统的专辑id
'albumName'=>'测试专辑', //专辑名称
'version'=>'dj', //专辑版本
'translationName'=>'', //专辑翻译名称
'albumPic'=>'url', //专辑封面
'albumPicName'=>'封面.jpg', //专辑封面名称
'albumSingers'=>[ //专辑所属艺人
// 'cmsAlbumId'=>123, //接入系统的专辑id
// 'albumId'=>0, //专辑名称
'albumName'=>'测试专辑', //专辑名称 string 必填
'version'=>'0', //专辑版本 string
'translationName'=>'', //专辑翻译名称 string
'albumPic'=>'/operations/imgs/cos_8f4730c6-88c0-4d94-a6fc-6695dfef134eimg.jpg', //专辑封面 string 必填
'albumPicName'=>'封面.jpg', //专辑封面名称 string 必填
'albumSingers'=>[ //专辑所属艺人 多个数组
[
'centralSingerId'=>'', //曲库歌手id
'singerName'=>'', //歌手名
'orderIndex'=>'', //顺序
'centralSingerId'=>16357449, //曲库歌手id int 必填
'orderIndex'=>0, //顺序 int 必填
'singerName'=>'赵聪', //歌手名 string 必填
],
[
'centralSingerId'=>186470, //曲库歌手id
'singerName'=>'王琪', //歌手名
'orderIndex'=>1, //顺序
]
],
'albumType'=>'album', //专辑类型
'albumArea'=>'', //专辑地区
'language'=>'普通话,英语', //专辑语言
'firstGenre'=>'2', //一级流派
'secondGenre'=>'201', //二级流派
'albumUpc'=>'', //专辑upc
'brandShowName'=>'', //外显厂牌公司名称
'brandId'=>105737, //厂牌ID
'brandName'=>'冰曲文化', //版权公司名称
'outShowBrandName'=>'北京冰曲文化有限公司', //外显版权公司名称
'issuedTime'=>'2023-02-11 18:00:00', //发行时间
'onlineTime'=>'2023-02-11 18:00:00', //上线时间
'digitalAlbumFlag'=>'', //数字专辑标识
'digitalAlbum'=>[ //数字专辑信息,如果是发布的是数字专辑,则该对象不为空
'preSaleTime'=>'', //预售时间
'saleBeginTime'=>'', //售卖开始时间
'saleEndTime'=>'', //售卖结束时间
'salePrice'=>'', //售卖价格
'authFileId'=>'', //授权文件地址id
],
'introduction'=>'', //专辑简介
'brandIdOut'=>1, //外显厂牌公司id
'centralSingerId'=>1, //第一个歌手id
'centralSingerName'=>'', //第一个歌手名称
'authFiles'=>[ //授权文件列表
'albumType'=>'10', //专辑类型 string 必填 【0:album(6首及以上选此,伴奏不计数),10:Single(1首歌曲选此,伴奏不计数),11:EP(2-5首歌选此,伴奏不计数)】
'albumArea'=>'1', //专辑地区 string 必填 【0港台,1内地,2日韩,3欧美,4其他,5东南亚,6未知】
'language'=>'0', //专辑语言 string 必填 【见参考文档】
'firstGenre'=>'2', //一级流派 string 必填 【见参考文档】
'secondGenre'=>'201', //二级流派 string 必填 【见参考文档】
'albumUpc'=>'', //专辑upc string
'brandIdOut'=>10086, //外显厂牌公司id int
'brandShowName'=>'外显公司', //外显厂牌公司名称 string
'brandId'=>105737, //版权公司、厂牌ID int 必填
'brandName'=>'冰曲文化', //版权公司名称 string 必填
'issuedTime'=>'2023-02-11 18:00:00', //发行时间 string 必填
'onlineTime'=>'2023-02-11 18:00:00', //上线时间 string 必填
'introduction'=>'专辑简介', //专辑简介 string
'authFiles'=>[ //授权文件列表 必填
[
'materialName'=>'', //物料名称
'materialUrl'=>'', //物料地址
'materialType'=>'', //物料类型
'materialId'=>1, //物料id
'fileType'=>'', //文件类型
'fileMD5'=>'', //歌曲文件MD5值
'materialName'=>'pdf.pdf', //物料名称
'materialUrl'=>'/operations/imgs/cos_ea2db81e-bbc0-4cbe-bc53-5fe375b19827pdf.pdf', //物料播放地址
'materialType'=>'1', //物料类型
]
],
'tracks'=>[ //歌曲信息列表
[
'cmsTrackId'=>1, //接入系统歌曲id
'trackId'=>'1', //生态平台歌曲ID,新增时可以为空,修改时填值
'trackName'=>'', //歌曲名
'version'=>'', //歌曲版本
'trackTitle'=>'', //歌曲标题
'translationName'=>'', //歌曲翻译名称
'trackSingers'=>[ //演唱者歌手
// 'cmsTrackId'=>'HK00123', //接入系统歌曲id
// 'trackId'=>0, //生态平台歌曲ID,新增时可以为空,修改时填值
'trackName'=>'新歌', //歌曲名 string 必填
'version'=>'0', //歌曲版本 string 非必填
'trackTitle'=>'歌曲副标题', //歌曲副标题 string
'translationName'=>'歌曲翻译名称', //歌曲翻译名称 string
'trackSingers'=>[ //演唱者歌手 必填
[
'centralSingerId'=>16357449, //曲库歌手id
'singerName'=>'赵聪', //歌手名
'orderIndex'=>1, //顺序
],
[
'centralSingerId'=>12, //曲库歌手id
'singerName'=>'', //歌手名
'trackId'=>12, //歌曲id
'orderIndex'=>1, //顺序
'centralSingerId'=>186470, //曲库歌手id
'singerName'=>'王琪', //歌手名
'orderIndex'=>2, //顺序
]
],
'cdNo'=>'0', //cd索引
'language'=>'普通话', //专辑语言
'firstGenre'=>'2', //一级流派
'secondGenre'=>'201', //二级流派
'trackExtend'=>[ //歌曲扩展信息
'lyricsText'=>'', //作词人文本,多个作词人通过竖线分隔
'cdNo'=>'0', //cd索引 string
'language'=>'0', //歌曲语言 string 必填 【见参考文档】
'firstGenre'=>'2', //一级流派 string 必填 【见参考文档】
'secondGenre'=>'201', //二级流派 string 必填 【见参考文档】
'trackExtend'=>[ //歌曲扩展信息 非必填
'lyricsText'=>'张三', //作词人文本,多个作词人通过竖线分隔
'lyricsIds'=>[ //作词id,通过竖线分隔
[
'centralSingerId'=>1, //歌手id
'singerName'=>'', //歌手名称
'singerName'=>'张三', //歌手名称
]
],
'composingText'=>'', //作曲人文本,多个作曲人通过竖线分隔
'composingText'=>'张三|王五', //作曲人文本,多个作曲人通过竖线分隔
'composingIds'=>[ //作曲人id列表
[
'centralSingerId'=>1, //歌手id
'singerName'=>'', //歌手名称
]
// [
// 'centralSingerId'=>1, //歌手id
// 'singerName'=>'', //歌手名称
// ]
],
'arrangementText'=>'', //编曲人文本,多个编曲人通过竖线分隔
'arrangementIds'=>[ //编曲人歌手ids
[
'centralSingerId'=>1, //歌手id
'singerName'=>'', //歌手名称
]
// [
// 'centralSingerId'=>1, //歌手id
// 'singerName'=>'', //歌手名称
// ]
],
'producerText'=>'', //制作人文本,多个制作人通过竖线分隔
'producerIds'=>[ //制作人id列表
[
'centralSingerId'=>1, //歌手id
'singerName'=>'', //歌手名称
]
// [
// 'centralSingerId'=>1, //歌手id
// 'singerName'=>'', //歌手名称
// ]
],
],
'recordingCopyright'=>[ //录音版权信息
'originalCopyrightId'=>1, //原始版权方id
'originalCopyrightName'=>'', //原始版权方名称
'copyrightStartTime'=>'', //版权开始时间
'copyrightEndTime'=>'', //版权结束时间
'copyrightSource'=>'', //版权来源
'abroadProxyFlag'=>'', //是否海外总代理
'authArea'=>'', //授权区域
'authAreaList'=>[ //授权区域集合
],
'authForm'=>'', //录音授权形式
'authRelationship'=>'', //版权类型
'firstPeriod'=>'', //首发期限
'lyricsShare'=>1, //词曲版权份额
'lyricsRightsFlag'=>'', //词曲可维权标识
'copyrightLawsuit'=>'', //词曲是否可诉讼
'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权
'contractType'=>'', //签约类型
'wyyCopyrightEndTime'=>'', //网易云版权到期日期
'copyrightStatus'=>'', //版权状态
'recordingCopyright'=>[ //录音版权信息 必填
'originalCopyrightId'=>5874, //原始版权方id int
'originalCopyrightName'=>'武汉海酝文化有限公司', //原始版权方名称
'originalContractNo'=>'', //原始版权合同号
'copyrightStartTime'=>'2022-05-01 00:00:00', //版权开始时间
'copyrightEndTime'=>'2023-05-01 00:00:00', //版权结束时间
'authArea'=>'0', //授权区域 必填
'authAreaList'=>['0','5'], //授权区域集合,支持多选 必填
'authForm'=>'2', //录音授权形式 必填 【1重点版权,2首发版权,3普通版权】
'authRelationship'=>'1', //版权类型 必填 【1自有,2代理】
'lyricsRightsFlag'=>'1', //词曲可维权标识 【重点版权必须可维权,1可,2不可】
'firstPeriod'=>'2021-05-01 00:00:00', //首发时间 【首发版权必填】
'wyyCopyrightEndTime'=>'', //网易云版权到期日期 【普通版权选填】
'copyrightFileList'=>[ //上游版权材料文件
[
'materialName'=>'', //物料名称
'materialUrl'=>'', //物料播放地址
'materialType'=>'', //物料类型
'materialId'=>'', //物料id
'materialsType'=>'', //物料类型
'fileMD5'=>'', //歌曲文件MD5值
'materialName'=>'pdf.pdf', //物料名称
'materialUrl'=>'/operations/imgs/cos_ea2db81e-bbc0-4cbe-bc53-5fe375b19827pdf.pdf', //物料播放地址
'materialType'=>'1', //物料类型
]
],
'canCover'=>1, //是否可以翻唱
'originalContractNo'=>'', //原始版权合同号
'contractNo'=>'', //合同号
'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
],
'lyricsCopyright'=>[ //词版权
'trackId'=>null, //关联作品 id
'originalCopyrightId'=>1, //原始版权方id
'originalCopyrightId'=>0, //原始版权方id
'originalCopyrightName'=>'', //原始版权方名称
'copyrightStartTime'=>'', //版权开始时间
'copyrightEndTime'=>'', //版权结束时间
'copyrightSource'=>'', //版权来源
'abroadProxyFlag'=>'', //是否海外总代理
'authArea'=>'', //授权区域
'authAreaList'=>[
], //授权区域集合
'authForm'=>'', //录音授权形式
'authRelationship'=>'', //版权类型
'firstPeriod'=>'', //首发期限
'lyricsShare'=>'', //词曲版权份额
'lyricsRightsFlag'=>'', //词曲可维权标识
'copyrightLawsuit'=>'', //词曲是否可诉讼
'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权
'contractType'=>'', //签约类型
'originalContractNo'=>'', //原始版权合同号
'copyrightStartTime'=>'2022-05-01 00:00:00', //版权开始时间
'copyrightEndTime'=>'2023-05-01 00:00:00', //版权结束时间
'authArea'=>'0', //授权区域
'authAreaList'=>['0'], //授权区域集合
'authForm'=>'1', //授权形式 必填 【1重点版权,3普通版权】
'authRelationship'=>'2', //版权类型
'lyricsShare'=>100, //词曲版权份额
'lyricsRightsFlag'=>'1', //词曲可维权标识 【重点版权必须可维权,1可,2不可】
'wyyCopyrightEndTime'=>'', //网易云版权到期日期
'copyrightStatus'=>'', //版权状态
'copyrightFileList'=>[ //上游版权材料文件
[
'materialName'=>'', //物料名称
'materialUrl'=>'', //物料播放地址
'materialType'=>'', //物料类型
'materialId'=>'', //物料id
'materialsType'=>'', //物料类型
'fileMD5'=>'', //歌曲文件MD5值
'materialName'=>'pdf.pdf', //物料名称
'materialUrl'=>'/operations/imgs/cos_ea2db81e-bbc0-4cbe-bc53-5fe375b19827pdf.pdf', //物料播放地址
'materialType'=>'1', //物料类型
]
],
'centralSingerId'=>1, //曲库的歌手id
'canCover'=>1, //是否可以翻唱
'originalContractNo'=>'', //原始版权合同号
'contractNo'=>'', //合同号
'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
'canCover'=>2, //是否可以翻唱
'canCoverConditions'=>0, //翻唱条件1需要沟通2无需沟通
],
'composingCopyright'=> //曲版权
[
'trackId'=>1, //关联作品 id
'originalCopyrightId'=>'', //原始版权方id
'originalCopyrightName'=>'', //原始版权方名称
'copyrightStartTime'=>'', //版权开始时间
'copyrightEndTime'=>'', //版权结束时间
'copyrightSource'=>'', //版权来源
'abroadProxyFlag'=>'', //是否海外总代理
'authArea'=>'', //授权区域
'authAreaList'=>[ //授权区域集合
],
'authForm'=>'', //录音授权形式
'authRelationship'=>'', //版权类型
'firstPeriod'=>'', //首发期限
'lyricsShare'=>'', //词曲版权份额
'lyricsRightsFlag'=>'', //词曲可维权标识
'copyrightLawsuit'=>'', //词曲是否可诉讼
'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权
'contractType'=>'', //签约类型
'wyyCopyrightEndTime'=>'', //网易云版权到期日期
'copyrightStatus'=>'', //版权状态
'copyrightFileList'=>[ //上游版权材料文件
[
'materialName'=>'', //物料名称
'materialUrl'=>'', //物料播放地址
'materialType'=>'', //物料封面图片地址,图片地址
'materialId'=>'', //物料id
'materialsType'=>'', //物料类型
'fileMD5'=>'', //歌曲文件MD5值
]
],
'canCover'=>1, //是否可以翻唱
'originalContractNo'=>'', //原始版权合同号
'contractNo'=>'', //合同号
'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
// 'originalCopyrightId'=>0, //原始版权方id
// 'originalCopyrightName'=>'', //原始版权方名称
// 'originalContractNo'=>'', //原始版权合同号
// 'copyrightStartTime'=>'2022-05-01 00:00:00', //版权开始时间
// 'copyrightEndTime'=>'2023-05-01 00:00:00', //版权结束时间
// 'authArea'=>'0', //授权区域
// 'authAreaList'=>['0','1'], //授权区域集合
// 'authForm'=>'3', //授权形式 必填 【1重点版权,3普通版权】
// 'authRelationship'=>'2', //版权类型
// 'lyricsShare'=>100, //词曲版权份额
// 'lyricsRightsFlag'=>'2', //词曲可维权标识 【重点版权必须可维权,1可,2不可】
// 'wyyCopyrightEndTime'=>'', //网易云版权到期日期
// 'copyrightFileList'=>[ //上游版权材料文件
// [
// 'materialName'=>'pdf.pdf', //物料名称
// 'materialUrl'=>'/operations/imgs/cos_ea2db81e-bbc0-4cbe-bc53-5fe375b19827pdf.pdf', //物料播放地址
// 'materialType'=>'1', //物料类型
// ]
// ],
// 'canCover'=>1, //是否可以翻唱
// 'canCoverConditions'=>2, //翻唱条件1需要沟通2无需沟通
],
'instruments'=>[ //歌曲乐器信息
'id'=>1, //主键ID
'instrumentMap'=>[ //擅长乐器
'key'=>'', //
'centralSingerId'=>1, //歌手id
'trackId'=>1, //歌曲id
'instrumentCode'=>'', //乐器编码
'instrumentName'=>'', //乐器名称
],
'instruments'=>[], //歌曲乐器信息
'trackMedia'=>[ //歌曲文件 必填
'materialName'=>'audio.wav', //物料名称
'materialUrl'=>'/operations/imgs/cos_187ad3c9-531b-4dc9-bc1d-4e300061b499audio.wav', //物料播放地址
'materialType'=>'2', //物料类型
],
'trackMedia'=>[ //歌曲文件
'materialName'=>'', //物料名称
'materialUrl'=>'', //物料播放地址
'materialitype'=>'', //物料类型,区分音频、图片、封面
'materialId'=>'', //物料id
'fileType'=>'', //文件类型
'fileMD5'=>'', //歌曲文件MD5值
],
'centralSingerId'=>'', //歌手id
'centralSingerName'=>'', //歌手名称
'payPattern'=>'', //付费模式
'isrc'=>'', //ISRC
'iswc'=>'', //ISWC
'lyricsRights'=>'', //词曲是否可维权
'issuedTime'=>'', //发布时间
'onlineTime'=>'', //上线时间
'adFlag'=>1, //加入互选广告标识
'lyric'=>'', //歌词
'haveLyric'=>1, //有无歌词1有2无
'lyricHead'=>'', //歌词头
'dynamicLyricsFlag'=>'', //是否动态歌词
'orderIndex'=>1, //排序
'payMode'=>'', //付费模式
'issuedTime'=>'2022-05-12 10:35:18', //发布时间
'onlineTime'=>'2022-05-12 10:35:18', //上线时间
'haveLyric'=>true, //有无歌词1有2无 必填
'lyric'=>'----歌词内容--', //歌词
'lyricHead'=>'歌词头', //歌词头 必填
'dynamicLyricsFlag'=>false, //是否动态歌词 必填
'orderIndex'=>0, //排序 必填
// 'payMode'=>'2', //付费模式 必填
'payPattern'=>'2', //付费模式 必填 【0免费,1付费1.0,2付费2.0,3付费3.0】
'adFlag'=>2, //是否加入互选广告标识 【1加入,2不加入】
]
],
];
......
<?php
return [
'originalCompayName' => '一寸光年',//艺人名
'originalCompanyName' => '',//艺人名
];
......
<?php
return [
'url' => '海葵测试艺人02',
'type' => 0, //文件类型: 0:图片 1:授权文件 2:音频 3:歌词 4:视频
'fileName' => '文件名称',
'fileUrl' => 'https://legal-1305250541.cos.ap-shanghai.myqcloud.com/material_test/tme/pdf.pdf?q-sign-algorithm=sha1&q-ak=AKIDsWu1tUr7JI1TlqgFXaNt87pFOGtFK8gx&q-sign-time=1652769055%3B1652812315&q-key-time=1652769055%3B1652812315&q-header-list=&q-url-param-list=&q-signature=06f94750474880cb5ae8d8a2728791a30639863e',
'type' => '1', //文件类型: 0:图片 1:授权文件 2:音频 3:歌词 4:视频
'fileName' => 'pdf.pdf',
];
# 图1 material_test/tme/img.jpg
# 文件2 material_test/tme/pdf.pdf
# 音频 material_test/tme/audio.wav
# txt material_test/tme/lyric.txt
# MP4 material_test/tme/video.mp4
......