227 lines
7.3 KiB
C#
227 lines
7.3 KiB
C#
using HuanMeng.DotNetCore.Base;
|
||
using HuanMeng.MiaoYu.Code.Cache;
|
||
using HuanMeng.MiaoYu.Code.Cache.Special;
|
||
using HuanMeng.MiaoYu.Code.Music;
|
||
using HuanMeng.MiaoYu.Code.Users;
|
||
using HuanMeng.MiaoYu.Model.DbSqlServer.Db_MiaoYu;
|
||
using HuanMeng.MiaoYu.Model.Dto.Character;
|
||
using HuanMeng.MiaoYu.Model.Dto.Music;
|
||
using HuanMeng.MiaoYu.Model.Dto.Shop;
|
||
using HuanMeng.MiaoYu.Model.EnumModel.Product;
|
||
using HuanMeng.MiaoYu.Model.EnumModel.User;
|
||
using HuanMeng.MiaoYu.WebApi.Base;
|
||
|
||
using Microsoft.AspNetCore.Authorization;
|
||
using Microsoft.AspNetCore.Http;
|
||
using Microsoft.AspNetCore.Mvc;
|
||
using Microsoft.EntityFrameworkCore;
|
||
|
||
namespace HuanMeng.MiaoYu.WebApi.Controllers
|
||
{
|
||
[Route("api/[controller]/[action]")]
|
||
[ApiController]
|
||
[Authorize]
|
||
public class MusicController : MiaoYuControllerBase
|
||
{
|
||
public MusicController(IServiceProvider _serviceProvider) : base(_serviceProvider)
|
||
{
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取音乐分类
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[HttpGet]
|
||
[AllowAnonymous]
|
||
public async Task<BaseResponse<List<MusicGenresDto>>> GetMusicGenresList()
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetMusicGenresList();
|
||
}
|
||
/// <summary>
|
||
/// 分类下详情列表,每次只显示50个
|
||
/// </summary>
|
||
/// <param name="genresId"></param>
|
||
/// <returns></returns>
|
||
[HttpGet]
|
||
[AllowAnonymous]
|
||
public async Task<BaseResponse<List<MusicSongInfoDto>>> GetMusicGenresInfo(int genresId)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetMusicGenresInfo(genresId);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 创作页面音乐标签
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[HttpGet]
|
||
[AllowAnonymous]
|
||
public async Task<BaseResponse<List<MusicUserGenresDto>>> GetUserMusicGenresList()
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetUserMusicGenresList();
|
||
}
|
||
/// <summary>
|
||
/// 创建我的音乐风格
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[HttpPost]
|
||
public async Task<BaseResponse<bool>> CreateUserMusicGenres([FromBody] MusicUserGenresRequest musicUserGenresRequest)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.CreateUserMusicGenres(musicUserGenresRequest.GenreName);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 创作音乐
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[HttpPost]
|
||
public async Task<BaseResponse<int>> CreateMusic([FromBody] MusicCreateRequest musicCreateRequest)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.CreateMusic(musicCreateRequest);
|
||
}
|
||
/// <summary>
|
||
/// 删除音乐
|
||
/// </summary>
|
||
/// <param name="musicReviewRequest"></param>
|
||
/// <returns></returns>
|
||
[HttpPost]
|
||
public async Task<BaseResponse<bool>> DelMusic([FromBody] MusicReviewRequest musicReviewRequest)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.DelMusic(musicReviewRequest.Id);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取音乐生成进度
|
||
/// </summary>
|
||
/// <param name="id">创作音乐选出的Id</param>
|
||
/// <returns></returns>
|
||
[HttpGet]
|
||
public async Task<BaseResponse<bool>> GetMusicSchedule(int id)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetMusicSchedule(id);
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 我的音乐列表
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[HttpGet]
|
||
public async Task<BaseResponse<List<MusicSongInfoDto>>> GetMyMusicList()
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetMyMusicList();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取用户信息
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[HttpGet]
|
||
public async Task<BaseResponse<MusicUserDto>> GetUserInfo()
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetUserInfo();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 歌曲审核
|
||
/// </summary>
|
||
/// <param name="id"></param>
|
||
/// <returns></returns>
|
||
[HttpPost]
|
||
public async Task<BaseResponse<bool>> MusicSongsReview([FromBody] MusicReviewRequest musicReviewRequest)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.MusicSongsReview(musicReviewRequest.Id);
|
||
}
|
||
/// <summary>
|
||
/// 取消审核
|
||
/// </summary>
|
||
/// <param name="id"></param>
|
||
/// <returns></returns>
|
||
/// <exception cref="Exception"></exception>
|
||
[HttpPost]
|
||
|
||
public async Task<BaseResponse<bool>> MusicCancelSongsReview([FromBody] MusicReviewRequest musicReviewRequest)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.MusicCancelSongsReview(musicReviewRequest.Id);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 点赞和取消点赞
|
||
/// </summary>
|
||
/// <param name="musicReviewRequest"></param>
|
||
/// <returns></returns>
|
||
[HttpPost]
|
||
|
||
public async Task<BaseResponse<bool>> MusicSongLike([FromBody] MusicReviewRequest musicReviewRequest)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.MusicSongLike(musicReviewRequest.Id);
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// 收藏和取消收藏
|
||
/// </summary>
|
||
/// <param name="musicReviewRequest"></param>
|
||
/// <returns></returns>
|
||
[HttpPost]
|
||
public async Task<BaseResponse<bool>> MusicSongFavorites([FromBody] MusicReviewRequest musicReviewRequest)
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.MusicSongFavorites(musicReviewRequest.Id);
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// 商城
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
[HttpGet]
|
||
[AllowAnonymous]
|
||
public async Task<BaseResponse<MShopInfoDto>> GetShopInfoList()
|
||
{
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetShopInfoList();
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 获取我的收藏
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
/// <exception cref="Exception"></exception>
|
||
[HttpGet]
|
||
public async Task<BaseResponse<List<MusicSongInfoDto>>> GetMusicSongFavorites()
|
||
{
|
||
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetMusicSongFavorites();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取我的点赞
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
/// <exception cref="Exception"></exception>
|
||
[HttpGet]
|
||
public async Task<BaseResponse<List<MusicSongInfoDto>>> GetMusicSongLikes()
|
||
{
|
||
|
||
MusicBLL musicBLL = new MusicBLL(ServiceProvider);
|
||
return await musicBLL.GetMusicSongLikes();
|
||
}
|
||
|
||
|
||
}
|
||
}
|