bug
This commit is contained in:
@@ -63,6 +63,9 @@ public class MusicController extends BaseController {
|
|||||||
startPage();
|
startPage();
|
||||||
Long userId = SecurityUtils.getUserId();
|
Long userId = SecurityUtils.getUserId();
|
||||||
List<MusicInfo> list = musicService.findLikeMusicByUser(userId);
|
List<MusicInfo> list = musicService.findLikeMusicByUser(userId);
|
||||||
|
for (MusicInfo musicInfo : list) {
|
||||||
|
musicInfo.setLike(true);
|
||||||
|
}
|
||||||
//musicService.createPlaylist();
|
//musicService.createPlaylist();
|
||||||
return getDataTableData(list);
|
return getDataTableData(list);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -73,7 +73,6 @@ public class UserCollectController extends BaseController
|
|||||||
/**
|
/**
|
||||||
* 获取用户收藏音乐详细信息
|
* 获取用户收藏音乐详细信息
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('system:collect:query')")
|
|
||||||
@GetMapping(value = "/{id}")
|
@GetMapping(value = "/{id}")
|
||||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
public AjaxResult getInfo(@PathVariable("id") Long id)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -13,5 +13,7 @@ public class MusicMaxReq extends MusicInfo{
|
|||||||
|
|
||||||
private String sourceMusicId;
|
private String sourceMusicId;
|
||||||
|
|
||||||
|
private String collectId;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
:show-file-list="false"
|
:show-file-list="false"
|
||||||
:on-success="handleBannerSuccess"
|
:on-success="handleBannerSuccess"
|
||||||
:before-upload="beforeUpload">
|
:before-upload="beforeUpload">
|
||||||
<img v-if="form.bannerImg" :src="form.bannerImg" class="avatar">
|
<img v-if="form.bannerImg" :src="getBannerImageUrl(form.bannerImg)" class="avatar">
|
||||||
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
<div class="el-upload__tip">建议上传尺寸: 750px × 400px,大小不超过2MB</div>
|
<div class="el-upload__tip">建议上传尺寸: 750px × 400px,大小不超过2MB</div>
|
||||||
@@ -135,7 +135,7 @@ export default {
|
|||||||
this.rotaFileList = rotaImages.map((url, index) => {
|
this.rotaFileList = rotaImages.map((url, index) => {
|
||||||
return {
|
return {
|
||||||
name: `轮播图${index + 1}`,
|
name: `轮播图${index + 1}`,
|
||||||
url: url
|
url: this.getImageUrl(url)
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -174,9 +174,9 @@ export default {
|
|||||||
// 封面图片上传成功处理
|
// 封面图片上传成功处理
|
||||||
handleBannerSuccess(res, file) {
|
handleBannerSuccess(res, file) {
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
// 直接使用返回的URL路径
|
// 只保存接口返回的原始数据,不添加访问路径
|
||||||
this.form.bannerImg = process.env.VUE_APP_BASE_API + res.data;
|
this.form.bannerImg = res.data;
|
||||||
console.log('封面图片URL:', this.form.bannerImg);
|
console.log('封面图片原始路径:', this.form.bannerImg);
|
||||||
} else {
|
} else {
|
||||||
this.$message.error('上传失败');
|
this.$message.error('上传失败');
|
||||||
}
|
}
|
||||||
@@ -187,28 +187,32 @@ export default {
|
|||||||
// 打印上传响应,帮助调试
|
// 打印上传响应,帮助调试
|
||||||
console.log('上传响应:', res);
|
console.log('上传响应:', res);
|
||||||
|
|
||||||
// 直接使用返回的URL路径
|
// 只在展示时添加访问路径,这里为了预览需要添加完整URL
|
||||||
const fileUrl = process.env.VUE_APP_BASE_API + res.data;
|
const fileUrl = process.env.VUE_APP_BASE_API + res.data;
|
||||||
|
|
||||||
// 更新当前上传的文件URL
|
// 更新当前上传的文件URL(用于预览)
|
||||||
file.url = fileUrl;
|
file.url = fileUrl;
|
||||||
|
|
||||||
this.rotaFileList = fileList;
|
this.rotaFileList = fileList;
|
||||||
|
|
||||||
// 更新表单中的轮播图片数据
|
// 更新表单中的轮播图片数据 - 只保存原始路径
|
||||||
this.form.rotaImg = fileList.map(item => {
|
this.form.rotaImg = fileList.map(item => {
|
||||||
// 如果是新上传的文件,使用返回的URL
|
// 如果是新上传的文件,只保存原始路径
|
||||||
if (item.response && item.response.data) {
|
if (item.response && item.response.data) {
|
||||||
return process.env.VUE_APP_BASE_API + item.response.data;
|
return item.response.data;
|
||||||
}
|
}
|
||||||
// 如果已经有URL,直接使用
|
// 如果已经有URL,需要去掉前缀保存原始路径
|
||||||
else if (item.url && !item.url.startsWith('blob:')) {
|
else if (item.url && !item.url.startsWith('blob:')) {
|
||||||
|
// 如果URL包含API前缀,去掉前缀
|
||||||
|
if (item.url.startsWith(process.env.VUE_APP_BASE_API)) {
|
||||||
|
return item.url.replace(process.env.VUE_APP_BASE_API, '');
|
||||||
|
}
|
||||||
return item.url;
|
return item.url;
|
||||||
}
|
}
|
||||||
return '';
|
return '';
|
||||||
}).filter(url => url).join(',');
|
}).filter(url => url).join(',');
|
||||||
|
|
||||||
console.log('最终保存的轮播图片URL:', this.form.rotaImg);
|
console.log('最终保存的轮播图片原始路径:', this.form.rotaImg);
|
||||||
} else {
|
} else {
|
||||||
this.$message.error('上传失败');
|
this.$message.error('上传失败');
|
||||||
}
|
}
|
||||||
@@ -236,6 +240,26 @@ export default {
|
|||||||
handlePictureCardPreview(file) {
|
handlePictureCardPreview(file) {
|
||||||
this.dialogImageUrl = file.url || file.response.url;
|
this.dialogImageUrl = file.url || file.response.url;
|
||||||
this.dialogVisible = true;
|
this.dialogVisible = true;
|
||||||
|
},
|
||||||
|
// 获取封面图片完整URL
|
||||||
|
getBannerImageUrl(imagePath) {
|
||||||
|
if (!imagePath) return '';
|
||||||
|
// 如果已经是完整URL,直接返回
|
||||||
|
if (imagePath.startsWith('http')) {
|
||||||
|
return imagePath;
|
||||||
|
}
|
||||||
|
// 否则添加API前缀
|
||||||
|
return process.env.VUE_APP_BASE_API + imagePath;
|
||||||
|
},
|
||||||
|
// 获取图片完整URL
|
||||||
|
getImageUrl(imagePath) {
|
||||||
|
if (!imagePath) return '';
|
||||||
|
// 如果已经是完整URL,直接返回
|
||||||
|
if (imagePath.startsWith('http')) {
|
||||||
|
return imagePath;
|
||||||
|
}
|
||||||
|
// 否则添加API前缀
|
||||||
|
return process.env.VUE_APP_BASE_API + imagePath;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
:show-file-list="false"
|
:show-file-list="false"
|
||||||
:on-success="handleBannerSuccess"
|
:on-success="handleBannerSuccess"
|
||||||
:before-upload="beforeUpload">
|
:before-upload="beforeUpload">
|
||||||
<img v-if="form.bannerImg" :src="form.bannerImg" class="avatar">
|
<img v-if="form.bannerImg" :src="getBannerImageUrl(form.bannerImg)" class="avatar">
|
||||||
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
<div class="el-upload__tip">建议上传尺寸: 750px × 400px,大小不超过2MB</div>
|
<div class="el-upload__tip">建议上传尺寸: 750px × 400px,大小不超过2MB</div>
|
||||||
@@ -128,7 +128,7 @@ export default {
|
|||||||
this.rotaFileList = rotaImages.map((url, index) => {
|
this.rotaFileList = rotaImages.map((url, index) => {
|
||||||
return {
|
return {
|
||||||
name: `轮播图${index + 1}`,
|
name: `轮播图${index + 1}`,
|
||||||
url: url
|
url: this.getImageUrl(url)
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -160,9 +160,9 @@ export default {
|
|||||||
// 封面图片上传成功处理
|
// 封面图片上传成功处理
|
||||||
handleBannerSuccess(res, file) {
|
handleBannerSuccess(res, file) {
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
// 直接使用返回的URL路径
|
// 只保存接口返回的原始数据,不添加访问路径
|
||||||
this.form.bannerImg = process.env.VUE_APP_BASE_API + res.data;
|
this.form.bannerImg = res.data;
|
||||||
console.log('封面图片URL:', this.form.bannerImg);
|
console.log('封面图片原始路径:', this.form.bannerImg);
|
||||||
} else {
|
} else {
|
||||||
this.$message.error('上传失败');
|
this.$message.error('上传失败');
|
||||||
}
|
}
|
||||||
@@ -173,28 +173,32 @@ export default {
|
|||||||
// 打印上传响应,帮助调试
|
// 打印上传响应,帮助调试
|
||||||
console.log('上传响应:', res);
|
console.log('上传响应:', res);
|
||||||
|
|
||||||
// 直接使用返回的URL路径
|
// 只在展示时添加访问路径,这里为了预览需要添加完整URL
|
||||||
const fileUrl = process.env.VUE_APP_BASE_API + res.data;
|
const fileUrl = process.env.VUE_APP_BASE_API + res.data;
|
||||||
|
|
||||||
// 更新当前上传的文件URL
|
// 更新当前上传的文件URL(用于预览)
|
||||||
file.url = fileUrl;
|
file.url = fileUrl;
|
||||||
|
|
||||||
this.rotaFileList = fileList;
|
this.rotaFileList = fileList;
|
||||||
|
|
||||||
// 更新表单中的轮播图片数据
|
// 更新表单中的轮播图片数据 - 只保存原始路径
|
||||||
this.form.rotaImg = fileList.map(item => {
|
this.form.rotaImg = fileList.map(item => {
|
||||||
// 如果是新上传的文件,使用返回的URL
|
// 如果是新上传的文件,只保存原始路径
|
||||||
if (item.response && item.response.data) {
|
if (item.response && item.response.data) {
|
||||||
return process.env.VUE_APP_BASE_API + item.response.data;
|
return item.response.data;
|
||||||
}
|
}
|
||||||
// 如果已经有URL,直接使用
|
// 如果已经有URL,需要去掉前缀保存原始路径
|
||||||
else if (item.url && !item.url.startsWith('blob:')) {
|
else if (item.url && !item.url.startsWith('blob:')) {
|
||||||
|
// 如果URL包含API前缀,去掉前缀
|
||||||
|
if (item.url.startsWith(process.env.VUE_APP_BASE_API)) {
|
||||||
|
return item.url.replace(process.env.VUE_APP_BASE_API, '');
|
||||||
|
}
|
||||||
return item.url;
|
return item.url;
|
||||||
}
|
}
|
||||||
return '';
|
return '';
|
||||||
}).filter(url => url).join(',');
|
}).filter(url => url).join(',');
|
||||||
|
|
||||||
console.log('最终保存的轮播图片URL:', this.form.rotaImg);
|
console.log('最终保存的轮播图片原始路径:', this.form.rotaImg);
|
||||||
} else {
|
} else {
|
||||||
this.$message.error('上传失败');
|
this.$message.error('上传失败');
|
||||||
}
|
}
|
||||||
@@ -222,6 +226,26 @@ export default {
|
|||||||
handlePictureCardPreview(file) {
|
handlePictureCardPreview(file) {
|
||||||
this.dialogImageUrl = file.url || file.response.url;
|
this.dialogImageUrl = file.url || file.response.url;
|
||||||
this.dialogVisible = true;
|
this.dialogVisible = true;
|
||||||
|
},
|
||||||
|
// 获取封面图片完整URL
|
||||||
|
getBannerImageUrl(imagePath) {
|
||||||
|
if (!imagePath) return '';
|
||||||
|
// 如果已经是完整URL,直接返回
|
||||||
|
if (imagePath.startsWith('http')) {
|
||||||
|
return imagePath;
|
||||||
|
}
|
||||||
|
// 否则添加API前缀
|
||||||
|
return process.env.VUE_APP_BASE_API + imagePath;
|
||||||
|
},
|
||||||
|
// 获取图片完整URL
|
||||||
|
getImageUrl(imagePath) {
|
||||||
|
if (!imagePath) return '';
|
||||||
|
// 如果已经是完整URL,直接返回
|
||||||
|
if (imagePath.startsWith('http')) {
|
||||||
|
return imagePath;
|
||||||
|
}
|
||||||
|
// 否则添加API前缀
|
||||||
|
return process.env.VUE_APP_BASE_API + imagePath;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -85,8 +85,8 @@
|
|||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-image
|
<el-image
|
||||||
style="width: 80px; height: 50px"
|
style="width: 80px; height: 50px"
|
||||||
:src="scope.row.bannerImg"
|
:src="getImageUrl(scope.row.bannerImg)"
|
||||||
:preview-src-list="[scope.row.bannerImg]">
|
:preview-src-list="[getImageUrl(scope.row.bannerImg)]">
|
||||||
</el-image>
|
</el-image>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -237,6 +237,16 @@ export default {
|
|||||||
this.download('system/info/export', {
|
this.download('system/info/export', {
|
||||||
...this.queryParams
|
...this.queryParams
|
||||||
}, `info_${new Date().getTime()}.xlsx`)
|
}, `info_${new Date().getTime()}.xlsx`)
|
||||||
|
},
|
||||||
|
// 获取图片完整URL
|
||||||
|
getImageUrl(imagePath) {
|
||||||
|
if (!imagePath) return '';
|
||||||
|
// 如果已经是完整URL,直接返回
|
||||||
|
if (imagePath.startsWith('http')) {
|
||||||
|
return imagePath;
|
||||||
|
}
|
||||||
|
// 否则添加API前缀
|
||||||
|
return process.env.VUE_APP_BASE_API + imagePath;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user