Commit bd9a6283 bd9a628343d7cdf0fc236e68b397bca886a7a86a by mengfan.xie

release

1 parent e18171c1
...@@ -9,6 +9,7 @@ use GuzzleHttp\Client; ...@@ -9,6 +9,7 @@ use GuzzleHttp\Client;
9 use Illuminate\Support\Facades\Cache; 9 use Illuminate\Support\Facades\Cache;
10 use Illuminate\Support\Facades\Log; 10 use Illuminate\Support\Facades\Log;
11 11
12
12 class BaseController extends Controller 13 class BaseController extends Controller
13 { 14 {
14 /** 15 /**
...@@ -28,7 +29,6 @@ class BaseController extends Controller ...@@ -28,7 +29,6 @@ class BaseController extends Controller
28 } 29 }
29 30
30 /**获取accessToken 31 /**获取accessToken
31 *
32 */ 32 */
33 function getToken() 33 function getToken()
34 { 34 {
...@@ -50,17 +50,13 @@ class BaseController extends Controller ...@@ -50,17 +50,13 @@ class BaseController extends Controller
50 Log::channel('api')->error(__METHOD__, ['msg'=>$e->getMessage()]); 50 Log::channel('api')->error(__METHOD__, ['msg'=>$e->getMessage()]);
51 return null; 51 return null;
52 } 52 }
53
54 } 53 }
55 54
56 /** 55 /**
57 * 重组请求数据,返回headers和json 56 * 重组请求数据,返回headers
58 * @param string $uri
59 * @param array $reqData
60 * @param bool $isLocal
61 * @return array 57 * @return array
62 */ 58 */
63 private function parseData(string $uri, array $params) 59 private function parseHeaders(array $params)
64 { 60 {
65 if (!$accessToken = Cache::get(CacheKeyTools::tmeAccessToken())) { 61 if (!$accessToken = Cache::get(CacheKeyTools::tmeAccessToken())) {
66 $accessToken = $this->getToken(); 62 $accessToken = $this->getToken();
...@@ -69,8 +65,8 @@ class BaseController extends Controller ...@@ -69,8 +65,8 @@ class BaseController extends Controller
69 $heaers['accessToken'] = $accessToken; 65 $heaers['accessToken'] = $accessToken;
70 $heaers['timestamp'] = (string)date('YmdHis'); 66 $heaers['timestamp'] = (string)date('YmdHis');
71 $heaers['traceId'] = (string)'1'; 67 $heaers['traceId'] = (string)'1';
72 $heaers['sign'] = $this->getSign($heaers,$params);
73 $heaers['signMethod'] = 'md5'; 68 $heaers['signMethod'] = 'md5';
69 $heaers['sign'] = $this->getSign($heaers,$params);
74 return $heaers; 70 return $heaers;
75 } 71 }
76 72
...@@ -89,7 +85,7 @@ class BaseController extends Controller ...@@ -89,7 +85,7 @@ class BaseController extends Controller
89 } else { 85 } else {
90 $params = $reqData; 86 $params = $reqData;
91 } 87 }
92 $headers = $this->parseData($uri, $params); 88 $headers = $this->parseHeaders($params);
93 switch (strtoupper($method)) { 89 switch (strtoupper($method)) {
94 case 'GET': 90 case 'GET':
95 $response = $this->client->request('GET', $url, ['query' => $params,'headers'=>$headers]); 91 $response = $this->client->request('GET', $url, ['query' => $params,'headers'=>$headers]);
...@@ -118,24 +114,9 @@ class BaseController extends Controller ...@@ -118,24 +114,9 @@ class BaseController extends Controller
118 /** 114 /**
119 * 获取签名和去空的参数 115 * 获取签名和去空的参数
120 * @param array $array 116 * @param array $array
121 * @return array
122 */ 117 */
123 protected function getSign($heaers,$params) 118 protected function getSign($heaers,$params)
124 { 119 {
125 $params = [
126 "batchId" => "8934234012312323235",
127 "phone" => "130****0815",
128 "templateId" => "M000198",
129 "bizType"=> 1,
130 "templateVariable"=> [
131 "titleMap"=> ["k"=>"v"],
132 "contentMap"=> ["k"=>"v"],
133 ],
134 "waterId"=> "8934234012312323234",
135 "platformType"=>"musician",
136 "tenant"=>"musician",
137 "accountId"=>6793497
138 ];
139 $common_params = array_merge($params,$heaers); 120 $common_params = array_merge($params,$heaers);
140 ksort($common_params); 121 ksort($common_params);
141 $params = ''; 122 $params = '';
...@@ -145,24 +126,13 @@ class BaseController extends Controller ...@@ -145,24 +126,13 @@ class BaseController extends Controller
145 continue; 126 continue;
146 } 127 }
147 if (is_array($v)) { 128 if (is_array($v)) {
129 ksort($v);
148 $params .= $k . json_encode($this->handleSubArrayNumber($v)); 130 $params .= $k . json_encode($this->handleSubArrayNumber($v));
149 } else { 131 } else {
150 $params .= $k . $v; 132 $params .= $k . $v;
151 } 133 }
152 } 134 }
153 $result = $this->str_to_utf8('appSecret' .$this->appSecret. $params); 135 return strtoupper(md5($this->appSecret . $params . $this->appSecret));
154 echo '拼装好的utf8字符串:'.$result;
155
156 $result = md5($result);
157 echo '摘要后的sign结果(16位):' . substr(md5($result), 8, 16);
158 dd($result);
159 return $result;
160 }
161
162 function str_to_utf8($str = '') {
163 $current_encode = mb_detect_encoding($str, array("ASCII","GB2312","GBK",'BIG5','UTF-8'));
164 $encoded_str = mb_convert_encoding($str, 'UTF-8', $current_encode);
165 return $encoded_str;
166 } 136 }
167 137
168 /** 138 /**
......
...@@ -34,8 +34,6 @@ return [ ...@@ -34,8 +34,6 @@ return [
34 'authFileId'=>'', //授权文件地址id 34 'authFileId'=>'', //授权文件地址id
35 ], 35 ],
36 'introduction'=>'', //专辑简介 36 'introduction'=>'', //专辑简介
37 'brandId'=>1, //厂牌id
38 'brandName'=>'', //厂牌名称
39 'brandIdOut'=>1, //外显厂牌公司id 37 'brandIdOut'=>1, //外显厂牌公司id
40 'centralSingerId'=>1, //第一个歌手id 38 'centralSingerId'=>1, //第一个歌手id
41 'centralSingerName'=>'', //第一个歌手名称 39 'centralSingerName'=>'', //第一个歌手名称
...@@ -58,202 +56,203 @@ return [ ...@@ -58,202 +56,203 @@ return [
58 'version'=>'', //歌曲版本 56 'version'=>'', //歌曲版本
59 'trackTitle'=>'', //歌曲标题 57 'trackTitle'=>'', //歌曲标题
60 'translationName'=>'', //歌曲翻译名称 58 'translationName'=>'', //歌曲翻译名称
61 ] 59 'trackSingers'=>[ //演唱者歌手
62 ], 60 [
61 'centralSingerId'=>12, //曲库歌手id
62 'singerName'=>'', //歌手名
63 'trackId'=>12, //歌曲id
64 'orderIndex'=>1, //顺序
65 ]
66 ],
67 'cdNo'=>'', //cd索引
68 'language'=>'', //专辑语言
69 'firstGenre'=>'', //一级流派
70 'secondGenre'=>'', //二级流派
71 'trackExtend'=>[ //歌曲扩展信息
72 'lyricsText'=>'', //作词人文本,多个作词人通过竖线分隔
73 'lyricsIds'=>[ //作词id,通过竖线分隔
74 [
75 'centralSingerId'=>'', //歌手id
76 'singerName'=>'', //歌手名称
77 ]
78 ],
79 'composingText'=>'', //作曲人文本,多个作曲人通过竖线分隔
80 'composingIds'=>[ //作曲人id列表
81 [
82 'centralSingerId'=>1, //歌手id
83 'singerName'=>'', //歌手名称
84 ]
85 ],
63 86
64 'trackSingers'=>[ //演唱者歌手 87 'arrangementText'=>'', //编曲人文本,多个编曲人通过竖线分隔
65 [ 88 'arrangementIds'=>[ //编曲人歌手ids
66 'centralSingerId'=>12, //曲库歌手id 89 [
67 'singerName'=>'', //歌手名 90 'centralSingerId'=>1, //歌手id
68 'trackId'=>12, //歌曲id 91 'singerName'=>'', //歌手名称
69 'orderIndex'=>1, //顺序 92 ]
70 ] 93 ],
71 ], 94 'producerText'=>'', //制作人文本,多个制作人通过竖线分隔
72 'cdNo'=>'', //cd索引 95 'producerIds'=>[ //制作人id列表
73 'language'=>'', //专辑语言 96 [
74 'firstGenre'=>'', //一级流派 97 'centralSingerId'=>1, //歌手id
75 'secondGenre'=>'', //二级流派 98 'singerName'=>'', //歌手名称
76 'trackExtend'=>[ //歌曲扩展信息 99 ]
77 'lyricsText'=>'', //作词人文本,多个作词人通过竖线分隔 100 ],
78 'lyricsIds'=>[ //作词id,通过竖线分隔
79 [
80 'centralSingerId'=>'', //歌手id
81 'singerName'=>'', //歌手名称
82 ]
83 ],
84 'composingText'=>'', //作曲人文本,多个作曲人通过竖线分隔
85 'composingIds'=>[ //作曲人id列表
86 [
87 'centralSingerId'=>1, //歌手id
88 'singerName'=>'', //歌手名称
89 ]
90 ],
91 101
92 'arrangementText'=>'', //编曲人文本,多个编曲人通过竖线分隔 102 ],
93 'arrangementIds'=>[ //编曲人歌手ids 103 'recordingCopyright'=>[ //录音版权信息
94 [ 104 'originalCopyrightId'=>1, //原始版权方id
95 'centralSingerId'=>1, //歌手id 105 'originalCopyrightName'=>'', //原始版权方名称
96 'singerName'=>'', //歌手名称 106 'copyrightStartTime'=>'', //版权开始时间
97 ] 107 'copyrightEndTime'=>'', //版权结束时间
98 ], 108 'copyrightSource'=>'', //版权来源
99 'producerText'=>'', //制作人文本,多个制作人通过竖线分隔 109 'abroadProxyFlag'=>'', //是否海外总代理
100 'producerIds'=>[ //制作人id列表 110 'authArea'=>'', //授权区域
101 [ 111 'authAreaList'=>[ //授权区域集合
102 'centralSingerId'=>1, //歌手id
103 'singerName'=>'', //歌手名称
104 ]
105 ],
106 112
107 ], 113 ],
108 'recordingCopyright'=>[ //录音版权信息 114 'authForm'=>'', //录音授权形式
109 'originalCopyrightId'=>1, //原始版权方id 115 'authRelationship'=>'', //版权类型
110 'originalCopyrightName'=>'', //原始版权方名称 116 'firstPeriod'=>'', //首发期限
111 'copyrightStartTime'=>'', //版权开始时间 117 'lyricsShare'=>1, //词曲版权份额
112 'copyrightEndTime'=>'', //版权结束时间 118 'lyricsRightsFlag'=>'', //词曲可维权标识
113 'copyrightSource'=>'', //版权来源 119 'copyrightLawsuit'=>'', //词曲是否可诉讼
114 'abroadProxyFlag'=>'', //是否海外总代理 120 'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权
115 'authArea'=>'', //授权区域 121 'contractType'=>'', //签约类型
116 'authAreaList'=>[ //授权区域集合 122 'wyyCopyrightEndTime'=>'', //网易云版权到期日期
123 'copyrightStatus'=>'', //版权状态
124 'copyrightFileList'=>[ //上游版权材料文件
125 [
126 'materialName'=>'', //物料名称
127 'materialUrl'=>'', //物料播放地址
128 'centralSingerId'=>1, //曲库的歌手id
129 'materialId'=>1, //物料id
130 'materialsType'=>'', //物料类型
131 'fileMD5'=>'', //歌曲文件MD5值
132 ]
133 ],
134 'canCover'=>1, //是否可以翻唱
135 'originalContractNo'=>'', //原始版权合同号
136 'contractNo'=>'', //合同号
137 'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
138 ],
117 139
118 ],
119 'authForm'=>'', //录音授权形式
120 'authRelationship'=>'', //版权类型
121 'firstPeriod'=>'', //首发期限
122 'lyricsShare'=>1, //词曲版权份额
123 'lyricsRightsFlag'=>'', //词曲可维权标识
124 'copyrightLawsuit'=>'', //词曲是否可诉讼
125 'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权
126 'contractType'=>'', //签约类型
127 'wyyCopyrightEndTime'=>'', //网易云版权到期日期
128 'copyrightStatus'=>'', //版权状态
129 'copyrightFileList'=>[ //上游版权材料文件
130 [
131 'materialName'=>'', //物料名称
132 'materialUrl'=>'', //物料播放地址
133 'centralSingerId'=>1, //曲库的歌手id
134 'materialId'=>1, //物料id
135 'materialsType'=>'', //物料类型
136 'fileMD5'=>'', //歌曲文件MD5值
137 ]
138 ],
139 'canCover'=>1, //是否可以翻唱
140 'originalContractNo'=>'', //原始版权合同号
141 'contractNo'=>'', //合同号
142 'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
143 ],
144 140
141 'lyricsCopyright'=>[ //词版权
142 'trackId'=>1, //关联作品 id
143 'originalCopyrightId'=>1, //原始版权方id
144 'originalCopyrightName'=>'', //原始版权方名称
145 'copyrightStartTime'=>'', //版权开始时间
146 'copyrightEndTime'=>'', //版权结束时间
147 'copyrightSource'=>'', //版权来源
148 'abroadProxyFlag'=>'', //是否海外总代理
149 'authArea'=>'', //授权区域
150 'authAreaList'=>[
145 151
146 'lyricsCopyright'=>[ //词版权 152 ], //授权区域集合
147 'trackId'=>1, //关联作品 id 153 'authForm'=>'', //录音授权形式
148 'originalCopyrightId'=>1, //原始版权方id 154 'authRelationship'=>'', //版权类型
149 'originalCopyrightName'=>'', //原始版权方名称 155 'firstPeriod'=>'', //首发期限
150 'copyrightStartTime'=>'', //版权开始时间 156 'lyricsShare'=>'', //词曲版权份额
151 'copyrightEndTime'=>'', //版权结束时间 157 'lyricsRightsFlag'=>'', //词曲可维权标识
152 'copyrightSource'=>'', //版权来源 158 'copyrightLawsuit'=>'', //词曲是否可诉讼
153 'abroadProxyFlag'=>'', //是否海外总代理 159 'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权
154 'authArea'=>'', //授权区域 160 'contractType'=>'', //签约类型
155 'authAreaList'=>[ 161 'wyyCopyrightEndTime'=>'', //网易云版权到期日期
162 'copyrightStatus'=>'', //版权状态
163 'copyrightFileList'=>[ //上游版权材料文件
164 [
165 'materialName'=>'', //物料名称
166 'materialUrl'=>'', //物料播放地址
167 'materialType'=>'', //物料类型
168 'materialId'=>'', //物料id
169 'materialsType'=>'', //物料类型
170 'fileMD5'=>'', //歌曲文件MD5值
171 ]
172 ],
173 'centralSingerId'=>1, //曲库的歌手id
174 'canCover'=>1, //是否可以翻唱
175 'originalContractNo'=>'', //原始版权合同号
176 'contractNo'=>'', //合同号
177 'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
178 ],
156 179
157 ], //授权区域集合 180 'composingCopyright'=>[ //曲版权
158 'authForm'=>'', //录音授权形式 181 'trackId'=>1, //关联作品 id
159 'authRelationship'=>'', //版权类型 182 'originalCopyrightId'=>'', //原始版权方id
160 'firstPeriod'=>'', //首发期限 183 'originalCopyrightName'=>'', //原始版权方名称
161 'lyricsShare'=>'', //词曲版权份额 184 'copyrightStartTime'=>'', //版权开始时间
162 'lyricsRightsFlag'=>'', //词曲可维权标识 185 'copyrightEndTime'=>'', //版权结束时间
163 'copyrightLawsuit'=>'', //词曲是否可诉讼 186 'copyrightSource'=>'', //版权来源
164 'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权 187 'abroadProxyFlag'=>'', //是否海外总代理
165 'contractType'=>'', //签约类型 188 'authArea'=>'', //授权区域
166 'wyyCopyrightEndTime'=>'', //网易云版权到期日期 189 'authAreaList'=>[ //授权区域集合
167 'copyrightStatus'=>'', //版权状态
168 'copyrightFileList'=>[ //上游版权材料文件
169 [
170 'materialName'=>'', //物料名称
171 'materialUrl'=>'', //物料播放地址
172 'materialType'=>'', //物料类型
173 'materialId'=>'', //物料id
174 'materialsType'=>'', //物料类型
175 'fileMD5'=>'', //歌曲文件MD5值
176 ]
177 ],
178 'centralSingerId'=>1, //曲库的歌手id
179 'canCover'=>1, //是否可以翻唱
180 'originalContractNo'=>'', //原始版权合同号
181 'contractNo'=>'', //合同号
182 'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
183 ],
184 190
185 'composingCopyright'=>[ //曲版权 191 ],
186 'trackId'=>1, //关联作品 id 192 'authForm'=>'', //录音授权形式
187 'originalCopyrightId'=>'', //原始版权方id 193 'authRelationship'=>'', //版权类型
188 'originalCopyrightName'=>'', //原始版权方名称 194 'firstPeriod'=>'', //首发期限
189 'copyrightStartTime'=>'', //版权开始时间 195 'lyricsShare'=>'', //词曲版权份额
190 'copyrightEndTime'=>'', //版权结束时间 196 'lyricsRightsFlag'=>'', //词曲可维权标识
191 'copyrightSource'=>'', //版权来源 197 'copyrightLawsuit'=>'', //词曲是否可诉讼
192 'abroadProxyFlag'=>'', //是否海外总代理 198 'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权
193 'authArea'=>'', //授权区域 199 'contractType'=>'', //签约类型
194 'authAreaList'=>[ //授权区域集合 200 'wyyCopyrightEndTime'=>'', //网易云版权到期日期
201 'copyrightStatus'=>'', //版权状态
202 'copyrightFileList'=>[ //上游版权材料文件
203 [
204 'materialName'=>'', //物料名称
205 'materialUrl'=>'', //物料播放地址
206 'materialType'=>'', //物料封面图片地址,图片地址
207 'materialId'=>'', //物料id
208 'materialsType'=>'', //物料类型
209 'fileMD5'=>'', //歌曲文件MD5值
210 ]
211 ],
212 'canCover'=>1, //是否可以翻唱
213 'originalContractNo'=>'', //原始版权合同号
214 'contractNo'=>'', //合同号
215 'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
216 ],
195 217
196 ], 218 'instruments'=>[ //歌曲乐器信息
197 'authForm'=>'', //录音授权形式 219 'id'=>1, //主键ID
198 'authRelationship'=>'', //版权类型 220 'instrumentMap'=>[ //擅长乐器
199 'firstPeriod'=>'', //首发期限 221 'key'=>'', //
200 'lyricsShare'=>'', //词曲版权份额 222 'centralSingerId'=>1, //歌手id
201 'lyricsRightsFlag'=>'', //词曲可维权标识 223 'trackId'=>1, //歌曲id
202 'copyrightLawsuit'=>'', //词曲是否可诉讼 224 'instrumentCode'=>'', //乐器编码
203 'rightsType'=>'', //权限类型,区分录音版权、词版权、曲版权 225 'instrumentName'=>'', //乐器名称
204 'contractType'=>'', //签约类型 226 ],
205 'wyyCopyrightEndTime'=>'', //网易云版权到期日期 227 ],
206 'copyrightStatus'=>'', //版权状态
207 'copyrightFileList'=>[ //上游版权材料文件
208 [
209 'materialName'=>'', //物料名称
210 'materialUrl'=>'', //物料播放地址
211 'materialType'=>'', //物料封面图片地址,图片地址
212 'materialId'=>'', //物料id
213 'materialsType'=>'', //物料类型
214 'fileMD5'=>'', //歌曲文件MD5值
215 ]
216 ],
217 'canCover'=>1, //是否可以翻唱
218 'originalContractNo'=>'', //原始版权合同号
219 'contractNo'=>'', //合同号
220 'canCoverConditions'=>1, //翻唱条件1需要沟通2无需沟通
221 ],
222 228
223 'instruments'=>[ //歌曲乐器信息 229 'trackMedia'=>[ //歌曲文件
224 'id'=>1, //主键ID 230 'materialName'=>'', //物料名称
225 'instrumentMap'=>[ //擅长乐器 231 'materialUrl'=>'', //物料播放地址
226 'key'=>'', // 232 'materialitype'=>'', //物料类型,区分音频、图片、封面
227 'centralSingerId'=>1, //歌手id 233 'materialId'=>'', //物料id
228 'trackId'=>1, //歌曲id 234 'fileType'=>'', //文件类型
229 'instrumentCode'=>'', //乐器编码 235 'fileMD5'=>'', //歌曲文件MD5值
230 'instrumentName'=>'', //乐器名称 236 ],
231 ], 237 'centralSingerId'=>'', //歌手id
238 'centralSingerName'=>'', //歌手名称
239 'payPattern'=>'', //付费模式
240 'isrc'=>'', //ISRC
241 'iswc'=>'', //ISWC
242 'lyricsRights'=>'', //词曲是否可维权
243 'issuedTime'=>'', //发布时间
244 'onlineTime'=>'', //上线时间
245 'adFlag'=>1, //加入互选广告标识
246 'lyric'=>'', //歌词
247 'haveLyric'=>1, //有无歌词1有2无
248 'lyricHead'=>'', //歌词头
249 'dynamicLyricsFlag'=>'', //是否动态歌词
250 'orderIndex'=>1, //排序
251 'payMode'=>'', //付费模式
252 ]
232 ], 253 ],
233 254
234 'trackMedia'=>[ //歌曲文件 255
235 'materialName'=>'', //物料名称
236 'materialUrl'=>'', //物料播放地址
237 'materialitype'=>'', //物料类型,区分音频、图片、封面
238 'materialId'=>'', //物料id
239 'fileType'=>'', //文件类型
240 'fileMD5'=>'', //歌曲文件MD5值
241 ],
242 'centralSingerId'=>'', //歌手id
243 'centralSingerName'=>'', //歌手名称
244 'payPattern'=>'', //付费模式
245 'isrc'=>'', //ISRC
246 'iswc'=>'', //ISWC
247 'lyricsRights'=>'', //词曲是否可维权
248 'issuedTime'=>'', //发布时间
249 'onlineTime'=>'', //上线时间
250 'adFlag'=>1, //加入互选广告标识
251 'lyric'=>'', //歌词
252 'haveLyric'=>1, //有无歌词1有2无
253 'lyricHead'=>'', //歌词头
254 'dynamicLyricsFlag'=>'', //是否动态歌词
255 'orderIndex'=>1, //排序
256 'payMode'=>'', //付费模式
257 256
258 257
259 ]; 258 ];
......