diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/MusicCollectController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/MusicCollectController.java new file mode 100644 index 0000000..3b63e29 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/MusicCollectController.java @@ -0,0 +1,98 @@ +package com.ruoyi.web.controller.client; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.MusicCollect; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.system.service.IMusicCollectService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 【请填写功能名称】Controller + * + * @author ruoyi + * @date 2025-07-18 + */ +@RestController +@RequestMapping("/system/collect") +public class MusicCollectController extends BaseController +{ + @Autowired + private IMusicCollectService musicCollectService; + + /** + * 查询【请填写功能名称】列表 + */ + @PreAuthorize("@ss.hasPermi('system:collect:list')") + @GetMapping("/list") + public TableDataInfo list(MusicCollect musicCollect) + { + startPage(); + List list = musicCollectService.selectMusicCollectList(musicCollect); + return getDataTable(list); + } + + /** + * 导出【请填写功能名称】列表 + */ + @PreAuthorize("@ss.hasPermi('system:collect:export')") + @Log(title = "【请填写功能名称】", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, MusicCollect musicCollect) + { + List list = musicCollectService.selectMusicCollectList(musicCollect); + ExcelUtil util = new ExcelUtil(MusicCollect.class); + util.exportExcel(response, list, "【请填写功能名称】数据"); + } + + /** + * 获取【请填写功能名称】详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:collect:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) + { + return success(musicCollectService.selectMusicCollectById(id)); + } + + /** + * 新增【请填写功能名称】 + */ + @PreAuthorize("@ss.hasPermi('system:collect:add')") + @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody MusicCollect musicCollect) + { + return toAjax(musicCollectService.insertMusicCollect(musicCollect)); + } + + /** + * 修改【请填写功能名称】 + */ + @PreAuthorize("@ss.hasPermi('system:collect:edit')") + @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody MusicCollect musicCollect) + { + return toAjax(musicCollectService.updateMusicCollect(musicCollect)); + } + + /** + * 删除【请填写功能名称】 + */ + @PreAuthorize("@ss.hasPermi('system:collect:remove')") + @Log(title = "【请填写功能名称】", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) + { + return toAjax(musicCollectService.deleteMusicCollectByIds(ids)); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/MusicController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/MusicController.java index 6fe61f9..da8e70d 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/MusicController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/MusicController.java @@ -1,16 +1,24 @@ package com.ruoyi.web.controller.client; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.CategoryInfo; +import com.ruoyi.common.core.domain.entity.MusicInfo; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.service.IMusicInfoService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + @RequestMapping("/client/music") @RestController -public class MusicController { +public class MusicController extends BaseController { @Autowired private IMusicInfoService musicService; @@ -21,4 +29,56 @@ public class MusicController { musicService.findMusicByCate(categoryInfo); } + + // 创建歌单 + @RequestMapping("/collect/music/{collectId}") + public TableDataInfo createPlaylist(@PathVariable String collectId){ + startPage(); + List list = musicService.findMusicByCollectId(collectId); + //musicService.createPlaylist(); + return getDataTable(list); + } + + + // 添加我喜欢的音乐 + @RequestMapping("/like/music/{musicId}") + public AjaxResult addLikeMusic(@PathVariable String musicId){ + musicService.addLikeMusic(musicId); + return AjaxResult.success(); + } + + // 获取我喜欢的音乐 + @RequestMapping("/like/music") + public TableDataInfo likeMusic(){ + startPage(); + Long userId = SecurityUtils.getUserId(); + List list = musicService.findLikeMusicByUser(userId); + //musicService.createPlaylist(); + return getDataTable(list); + } + // 删除我喜欢的音乐 cancel/like + @RequestMapping("/cancel/like/{musicId}") + public AjaxResult cancelLikeMusic(@PathVariable String musicId){ + musicService.cancelLikeMusic(musicId); + return AjaxResult.success(); + } + +// // 新增历史 +// @RequestMapping("/history/add/{musicId}") +// public AjaxResult addHistory(@PathVariable String musicId){ +// musicService.addHistoryMusic(musicId); +// return AjaxResult.success(); +// } + + // 查询历史 + @RequestMapping("/history/music") + public TableDataInfo historyMusic(){ + startPage(); + Long userId = SecurityUtils.getUserId(); + List list = musicService.findHistoryMusicByUser(userId); + //musicService.createPlaylist(); + return getDataTable(list); + } + + } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/ShareInfoController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/ShareInfoController.java new file mode 100644 index 0000000..e81b0f1 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/ShareInfoController.java @@ -0,0 +1,96 @@ +package com.ruoyi.web.controller.client; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.ShareInfo; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.system.service.IShareInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 【请填写功能名称】Controller + * + * @author ruoyi + * @date 2025-07-19 + */ +@RestController +@RequestMapping("/client/share") +public class ShareInfoController extends BaseController +{ + @Autowired + private IShareInfoService shareInfoService; + + /** + * 查询【请填写功能名称】列表 + */ + @GetMapping("/list") + public TableDataInfo list(ShareInfo shareInfo) + { + startPage(); + List list = shareInfoService.findShareInfoListPage(shareInfo); + return getDataTable(list); + } + + /** + * 导出【请填写功能名称】列表 + */ + @PostMapping("/export") + public void export(HttpServletResponse response, ShareInfo shareInfo) + { + List list = shareInfoService.selectShareInfoList(shareInfo); + ExcelUtil util = new ExcelUtil(ShareInfo.class); + util.exportExcel(response, list, "【请填写功能名称】数据"); + } + + /** + * 获取【请填写功能名称】详细信息 + */ + @PreAuthorize("@ss.hasPermi('system:info:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) + { + return success(shareInfoService.selectShareInfoById(id)); + } + + /** + * 新增【请填写功能名称】 + */ + @PostMapping("/add") + public AjaxResult add(@RequestBody ShareInfo shareInfo) + { + Long userId = SecurityUtils.getUserId(); + shareInfo.setUserId(userId); + return toAjax(shareInfoService.insertShareInfo(shareInfo)); + } + + /** + * 修改【请填写功能名称】 + */ + @PreAuthorize("@ss.hasPermi('system:info:edit')") + @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ShareInfo shareInfo) + { + return toAjax(shareInfoService.updateShareInfo(shareInfo)); + } + + /** + * 删除【请填写功能名称】 + */ + @PreAuthorize("@ss.hasPermi('system:info:remove')") + @Log(title = "【请填写功能名称】", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) + { + return toAjax(shareInfoService.deleteShareInfoByIds(ids)); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/back/UserCollectController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/UserCollectController.java similarity index 67% rename from ruoyi-admin/src/main/java/com/ruoyi/web/controller/back/UserCollectController.java rename to ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/UserCollectController.java index 2b1e73a..c0be7b2 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/back/UserCollectController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/UserCollectController.java @@ -1,16 +1,20 @@ -package com.ruoyi.web.controller.back; +package com.ruoyi.web.controller.client; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.entity.MusicCollect; import com.ruoyi.common.core.domain.entity.UserCollect; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.system.service.IMusicCollectService; import com.ruoyi.system.service.IUserCollectService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; +import oshi.util.platform.mac.SysctlUtil; import javax.servlet.http.HttpServletResponse; import java.util.List; @@ -22,20 +26,23 @@ import java.util.List; * @date 2025-07-15 */ @RestController -@RequestMapping("/back/collect") +@RequestMapping("/client/collect") public class UserCollectController extends BaseController { @Autowired private IUserCollectService userCollectService; + @Autowired + private IMusicCollectService musicCollectService; /** * 查询用户收藏音乐列表 */ - @PreAuthorize("@ss.hasPermi('system:collect:list')") @GetMapping("/list") public TableDataInfo list(UserCollect userCollect) { startPage(); + Long userId = SecurityUtils.getUserId(); + userCollect.setUserId(userId); List list = userCollectService.selectUserCollectList(userCollect); return getDataTable(list); } @@ -66,14 +73,49 @@ public class UserCollectController extends BaseController /** * 新增用户收藏音乐 */ - @PreAuthorize("@ss.hasPermi('system:collect:add')") - @Log(title = "用户收藏音乐", businessType = BusinessType.INSERT) - @PostMapping + @PostMapping("/create") public AjaxResult add(@RequestBody UserCollect userCollect) { - return toAjax(userCollectService.insertUserCollect(userCollect)); + userCollectService.insertUserCollect(userCollect); + return AjaxResult.success(); } + + /** + * 新增用户收藏音乐 + */ + @PostMapping("/bind") + public AjaxResult bind(@RequestBody MusicCollect musicCollect) + { + musicCollectService.insertMusicCollect(musicCollect); + return AjaxResult.success(); + } + + + /** + * 删除歌单 + */ + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + int del = userCollectService.deleteUserCollectByIds(ids); + return AjaxResult.success(); + } + + + /** + * 取消收藏歌单 + */ + @PostMapping("/cancel/bind") + public AjaxResult cancel(@RequestBody MusicCollect musicCollect) + { + userCollectService.cancelBindMusic(musicCollect); + return AjaxResult.success(); + } + + + + /** * 修改用户收藏音乐 */ @@ -85,14 +127,5 @@ public class UserCollectController extends BaseController return toAjax(userCollectService.updateUserCollect(userCollect)); } - /** - * 删除用户收藏音乐 - */ - @PreAuthorize("@ss.hasPermi('system:collect:remove')") - @Log(title = "用户收藏音乐", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(userCollectService.deleteUserCollectByIds(ids)); - } + } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/back/UserHistoryController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/UserHistoryController.java similarity index 79% rename from ruoyi-admin/src/main/java/com/ruoyi/web/controller/back/UserHistoryController.java rename to ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/UserHistoryController.java index 42eb995..82c1fac 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/back/UserHistoryController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/client/UserHistoryController.java @@ -1,4 +1,4 @@ -package com.ruoyi.web.controller.back; +package com.ruoyi.web.controller.client; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; @@ -6,6 +6,7 @@ import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.UserHistory; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.system.service.IUserHistoryService; import org.springframework.beans.factory.annotation.Autowired; @@ -22,7 +23,7 @@ import java.util.List; * @date 2025-07-15 */ @RestController -@RequestMapping("/back/history") +@RequestMapping("/client/history") public class UserHistoryController extends BaseController { @Autowired @@ -31,7 +32,6 @@ public class UserHistoryController extends BaseController /** * 查询用户播放历史列表 */ - @PreAuthorize("@ss.hasPermi('system:history:list')") @GetMapping("/list") public TableDataInfo list(UserHistory userHistory) { @@ -63,17 +63,6 @@ public class UserHistoryController extends BaseController return success(userHistoryService.selectUserHistoryById(id)); } - /** - * 新增用户播放历史 - */ - @PreAuthorize("@ss.hasPermi('system:history:add')") - @Log(title = "用户播放历史", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody UserHistory userHistory) - { - return toAjax(userHistoryService.insertUserHistory(userHistory)); - } - /** * 修改用户播放历史 */ @@ -85,11 +74,32 @@ public class UserHistoryController extends BaseController return toAjax(userHistoryService.updateUserHistory(userHistory)); } + /** + * 新增用户播放历史 + */ + @GetMapping("/add/{musicId}") + public AjaxResult add(@PathVariable String musicId) + { + Long userId = SecurityUtils.getUserId(); + UserHistory userHistory = new UserHistory(); + userHistory.setMusicId(Long.parseLong(musicId)); + userHistory.setUserId(userId); + return toAjax(userHistoryService.insertUserHistory(userHistory)); + } + + /** + * 删除用户播放历史 + */ + @DeleteMapping("/del/history/{musicId}") + public AjaxResult removeHistory(@PathVariable String[] musicId) + { + userHistoryService.deleteUserHistoryByMusicId(musicId); + return AjaxResult.success(); + } + /** * 删除用户播放历史 */ - @PreAuthorize("@ss.hasPermi('system:history:remove')") - @Log(title = "用户播放历史", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable String[] ids) { diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/MusicCollect.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/MusicCollect.java new file mode 100644 index 0000000..b7ec8b3 --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/MusicCollect.java @@ -0,0 +1,67 @@ +package com.ruoyi.common.core.domain.entity; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 【请填写功能名称】对象 music_collect + * + * @author ruoyi + * @date 2025-07-18 + */ +public class MusicCollect extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private String id; + + /** 音乐ID */ + @Excel(name = "音乐ID") + private Long musicId; + + /** 收藏id */ + @Excel(name = "收藏id") + private Long collectId; + + public void setId(String id) + { + this.id = id; + } + + public String getId() + { + return id; + } + + public void setMusicId(Long musicId) + { + this.musicId = musicId; + } + + public Long getMusicId() + { + return musicId; + } + + public void setCollectId(Long collectId) + { + this.collectId = collectId; + } + + public Long getCollectId() + { + return collectId; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("musicId", getMusicId()) + .append("collectId", getCollectId()) + .toString(); + } +} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShareInfo.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShareInfo.java new file mode 100644 index 0000000..3e9130f --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShareInfo.java @@ -0,0 +1,63 @@ +package com.ruoyi.common.core.domain.entity; + +import lombok.Data; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 【请填写功能名称】对象 share_info + * + * @date 2025-07-19 + */ +@Data +public class ShareInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private String id; + + /** 用户id */ + @Excel(name = "用户id") + private Long userId; + + /** 分享描述 */ + @Excel(name = "分享描述") + private String shareDecs; + + /** 分享音乐 */ + @Excel(name = "分享音乐") + private Long musicId; + + /** 分享地址 */ + @Excel(name = "分享地址") + private String shareAddr; + + /** 分享平台 */ + @Excel(name = "分享平台") + private String sharePlat; + + /** 1 删除 */ + @Excel(name = "1 删除") + private Long isDel; + + /** 1 审核 */ + @Excel(name = "1 审核") + private Long review; + + + private String username; + + private String nickname; + + private String headImg; + + private String musicName; + + private String musicImgAddr; + + private String musicAuthor; + +} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShopUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShopUser.java index f0e873e..3ad5187 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShopUser.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShopUser.java @@ -79,4 +79,10 @@ public class ShopUser { /** 1 删除 */ @Excel(name = "1 删除") private Long isDel; + + private String deviceType; + + private String deviceId; + + private String headImg; } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShopUserResq.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShopUserResq.java index 2e2af81..42fc94e 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShopUserResq.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/ShopUserResq.java @@ -22,4 +22,8 @@ public class ShopUserResq { private String uMtoken; private String code; + + private String deviceType; + + private String deviceId; } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/UserCollect.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/UserCollect.java index f2e5c80..703c9a3 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/UserCollect.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/UserCollect.java @@ -1,5 +1,6 @@ package com.ruoyi.common.core.domain.entity; +import lombok.Data; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; @@ -11,6 +12,7 @@ import com.ruoyi.common.core.domain.BaseEntity; * @author ruoyi * @date 2025-07-15 */ +@Data public class UserCollect extends BaseEntity { private static final long serialVersionUID = 1L; @@ -24,7 +26,7 @@ public class UserCollect extends BaseEntity /** 音乐id */ @Excel(name = "音乐id") - private Long musicId; + private Long collectId; /** 收藏名称 */ @Excel(name = "收藏名称") @@ -34,66 +36,5 @@ public class UserCollect extends BaseEntity @Excel(name = "歌单类型 音乐类型 ordinary 混音mixing") private String collectType; - public void setId(Long id) - { - this.id = id; - } - public Long getId() - { - return id; - } - - public void setUserId(Long userId) - { - this.userId = userId; - } - - public Long getUserId() - { - return userId; - } - - public void setMusicId(Long musicId) - { - this.musicId = musicId; - } - - public Long getMusicId() - { - return musicId; - } - - public void setCollectName(String collectName) - { - this.collectName = collectName; - } - - public String getCollectName() - { - return collectName; - } - - public void setCollectType(String collectType) - { - this.collectType = collectType; - } - - public String getCollectType() - { - return collectType; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("userId", getUserId()) - .append("musicId", getMusicId()) - .append("collectName", getCollectName()) - .append("createTime", getCreateTime()) - .append("updateTime", getUpdateTime()) - .append("collectType", getCollectType()) - .toString(); - } } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java index 3f3b707..fb44b94 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java @@ -112,7 +112,12 @@ public class LoginUser implements UserDetails public Long getUserId() { - return userId; + if (userId != null){ + return userId; + }else if(shopUser != null){ + return shopUser.getUserId(); + } + return null; } public void setUserId(Long userId) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/config/AliConfig.java b/ruoyi-system/src/main/java/com/ruoyi/system/config/AliConfig.java index 33b8cc0..dc610d9 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/config/AliConfig.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/config/AliConfig.java @@ -63,12 +63,12 @@ public class AliConfig { //String templateParam = "{\"name\":\"" + shopUser.getUsername() + "\",\"number\":\""+ shopUser.getPhone() +"\"}"; - String templateParam = "您的验证码为:"+ shopUser.getCode() +",请勿泄露于他人!"; + String templateParam = "{'code':"+ code + "}"; // 构造API请求对象,请替换请求参数值 SendSmsRequest sendSmsRequest = new SendSmsRequest() .setPhoneNumbers(shopUser.getPhone()) - .setSignName("阿里云短信测试") + .setSignName("北京盛兴平商贸") .setTemplateCode("SMS_323405385") .setTemplateParam(templateParam); // TemplateParam为序列化后的JSON字符串。 diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/config/UmengConfig.java b/ruoyi-system/src/main/java/com/ruoyi/system/config/UmengConfig.java index e507e88..32f662b 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/config/UmengConfig.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/config/UmengConfig.java @@ -10,12 +10,12 @@ import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; -import org.springframework.beans.factory.annotation.Autowired; +import org.apache.http.util.EntityUtils; import org.springframework.stereotype.Component; -import org.springframework.web.client.RestTemplate; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; +import java.io.IOException; import java.nio.charset.StandardCharsets; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; @@ -25,10 +25,10 @@ import java.util.Map; @Component public class UmengConfig { - public CloseableHttpResponse send(String token){ - String umAppkey = "xxxx"; - String appKey = "5df88f83570df3b8d40012337"; - String appSecret = "xxxx"; + public static CloseableHttpResponse send(String token){ + String umAppkey = "5df88f83570df3b8d40012337"; + String appKey = "LTAI5tDWWzwqxumUXTFnkQFd"; + String appSecret = "KOD3y6OxbHJ23wxAf68NFpUQXCQEPX"; // 下面的url要和阿里云云市场购买的商品对应 String url = "https://verify5.market.alicloudapi.com/api/v1/mobile/info?appkey=" + umAppkey; HttpPost httpPost = new HttpPost(url); @@ -85,8 +85,11 @@ public class UmengConfig { - public static void main(String[] args) throws InvalidKeyException, NoSuchAlgorithmException { - + public static void main(String[] args) throws IOException { + CloseableHttpResponse sss = send("1234"); + String reponseContent = EntityUtils.toString(sss.getEntity()); + System.out.println(reponseContent); + System.out.println(sss.getStatusLine().getReasonPhrase()); } private static String getSignString(HttpPost httpPost) { diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/MusicCollectMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/MusicCollectMapper.java new file mode 100644 index 0000000..a7ce8b1 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/MusicCollectMapper.java @@ -0,0 +1,64 @@ +package com.ruoyi.system.mapper; + +import com.ruoyi.common.core.domain.entity.MusicCollect; + +import java.util.List; + +/** + * 【请填写功能名称】Mapper接口 + * + * @author ruoyi + * @date 2025-07-18 + */ +public interface MusicCollectMapper +{ + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + public MusicCollect selectMusicCollectById(String id); + + /** + * 查询【请填写功能名称】列表 + * + * @param musicCollect 【请填写功能名称】 + * @return 【请填写功能名称】集合 + */ + public List selectMusicCollectList(MusicCollect musicCollect); + + /** + * 新增【请填写功能名称】 + * + * @param musicCollect 【请填写功能名称】 + * @return 结果 + */ + public int insertMusicCollect(MusicCollect musicCollect); + + /** + * 修改【请填写功能名称】 + * + * @param musicCollect 【请填写功能名称】 + * @return 结果 + */ + public int updateMusicCollect(MusicCollect musicCollect); + + /** + * 删除【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + public int deleteMusicCollectById(String id); + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteMusicCollectByIds(String[] ids); + + int delBindMusic(MusicCollect musicCollect); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/MusicInfoMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/MusicInfoMapper.java index bf4877d..ce3c0ef 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/MusicInfoMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/MusicInfoMapper.java @@ -2,6 +2,7 @@ package com.ruoyi.system.mapper; import com.ruoyi.common.core.domain.entity.CategoryInfo; import com.ruoyi.common.core.domain.entity.MusicInfo; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -68,4 +69,16 @@ public interface MusicInfoMapper List selectMusicInfoByIds(List musicIdList); List selectRecommendMusic(); + + List selectMusicByCollectId(String collectId); + + int insertLikeMusic(@Param("userId") Long userId,@Param("musicId") String musicId); + + List selectLikeMusicByUser(Long userId); + + int delLikeMusic(@Param("userId") Long userId,@Param("musicId") String musicId); + + int insertHistory(@Param("userId") Long userId,@Param("musicId") String musicId); + + List selectHistoryMusicByUser(Long userId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/ShareInfoMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/ShareInfoMapper.java new file mode 100644 index 0000000..a1872fb --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/ShareInfoMapper.java @@ -0,0 +1,64 @@ +package com.ruoyi.system.mapper; + +import com.ruoyi.common.core.domain.entity.ShareInfo; + +import java.util.List; + +/** + * 【请填写功能名称】Mapper接口 + * + * @author ruoyi + * @date 2025-07-19 + */ +public interface ShareInfoMapper +{ + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + public ShareInfo selectShareInfoById(String id); + + /** + * 查询【请填写功能名称】列表 + * + * @param shareInfo 【请填写功能名称】 + * @return 【请填写功能名称】集合 + */ + public List selectShareInfoList(ShareInfo shareInfo); + + + public List selectShareInfoListPage(ShareInfo shareInfo); + /** + * 新增【请填写功能名称】 + * + * @param shareInfo 【请填写功能名称】 + * @return 结果 + */ + public int insertShareInfo(ShareInfo shareInfo); + + /** + * 修改【请填写功能名称】 + * + * @param shareInfo 【请填写功能名称】 + * @return 结果 + */ + public int updateShareInfo(ShareInfo shareInfo); + + /** + * 删除【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + public int deleteShareInfoById(String id); + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteShareInfoByIds(String[] ids); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserHistoryMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserHistoryMapper.java index 6d9de59..9a252d3 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserHistoryMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserHistoryMapper.java @@ -1,6 +1,7 @@ package com.ruoyi.system.mapper; import com.ruoyi.common.core.domain.entity.UserHistory; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -59,4 +60,6 @@ public interface UserHistoryMapper * @return 结果 */ public int deleteUserHistoryByIds(String[] ids); + + int deleteUserHistoryByMusicId(@Param("musicIds") String[] musicIds,@Param("userId") Long userId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/IMusicCollectService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/IMusicCollectService.java new file mode 100644 index 0000000..3fc3d56 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/IMusicCollectService.java @@ -0,0 +1,62 @@ +package com.ruoyi.system.service; + +import com.ruoyi.common.core.domain.entity.MusicCollect; + +import java.util.List; + +/** + * 【请填写功能名称】Service接口 + * + * @author ruoyi + * @date 2025-07-18 + */ +public interface IMusicCollectService +{ + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + public MusicCollect selectMusicCollectById(String id); + + /** + * 查询【请填写功能名称】列表 + * + * @param musicCollect 【请填写功能名称】 + * @return 【请填写功能名称】集合 + */ + public List selectMusicCollectList(MusicCollect musicCollect); + + /** + * 新增【请填写功能名称】 + * + * @param musicCollect 【请填写功能名称】 + * @return 结果 + */ + public int insertMusicCollect(MusicCollect musicCollect); + + /** + * 修改【请填写功能名称】 + * + * @param musicCollect 【请填写功能名称】 + * @return 结果 + */ + public int updateMusicCollect(MusicCollect musicCollect); + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的【请填写功能名称】主键集合 + * @return 结果 + */ + public int deleteMusicCollectByIds(String[] ids); + + /** + * 删除【请填写功能名称】信息 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + public int deleteMusicCollectById(String id); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/IMusicInfoService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/IMusicInfoService.java index 1fa8e48..d482170 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/IMusicInfoService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/IMusicInfoService.java @@ -65,4 +65,16 @@ public interface IMusicInfoService List findMusicByCate(CategoryInfo categoryInfo); List selectMusicInfoByCid(String categoryId); + + List findMusicByCollectId(String collectId); + + int addLikeMusic(String musicId); + + List findLikeMusicByUser(Long userId); + + int cancelLikeMusic(String musicId); + + int addHistoryMusic(String musicId); + + List findHistoryMusicByUser(Long userId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/IShareInfoService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/IShareInfoService.java new file mode 100644 index 0000000..4c041dd --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/IShareInfoService.java @@ -0,0 +1,64 @@ +package com.ruoyi.system.service; + +import com.ruoyi.common.core.domain.entity.ShareInfo; + +import java.util.List; + +/** + * 【请填写功能名称】Service接口 + * + * @author ruoyi + * @date 2025-07-19 + */ +public interface IShareInfoService +{ + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + public ShareInfo selectShareInfoById(String id); + + /** + * 查询【请填写功能名称】列表 + * + * @param shareInfo 【请填写功能名称】 + * @return 【请填写功能名称】集合 + */ + public List selectShareInfoList(ShareInfo shareInfo); + + /** + * 新增【请填写功能名称】 + * + * @param shareInfo 【请填写功能名称】 + * @return 结果 + */ + public int insertShareInfo(ShareInfo shareInfo); + + /** + * 修改【请填写功能名称】 + * + * @param shareInfo 【请填写功能名称】 + * @return 结果 + */ + public int updateShareInfo(ShareInfo shareInfo); + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的【请填写功能名称】主键集合 + * @return 结果 + */ + public int deleteShareInfoByIds(String[] ids); + + /** + * 删除【请填写功能名称】信息 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + public int deleteShareInfoById(String id); + + List findShareInfoListPage(ShareInfo shareInfo); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/IUserCollectService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/IUserCollectService.java index bd2e42d..cd723f4 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/IUserCollectService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/IUserCollectService.java @@ -1,5 +1,6 @@ package com.ruoyi.system.service; +import com.ruoyi.common.core.domain.entity.MusicCollect; import com.ruoyi.common.core.domain.entity.UserCollect; import java.util.List; @@ -59,4 +60,6 @@ public interface IUserCollectService * @return 结果 */ public int deleteUserCollectById(Long id); + + int cancelBindMusic(MusicCollect musicCollect); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/IUserHistoryService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/IUserHistoryService.java index 213f8ef..0c14c72 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/IUserHistoryService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/IUserHistoryService.java @@ -59,4 +59,8 @@ public interface IUserHistoryService * @return 结果 */ public int deleteUserHistoryById(String id); + + int insertHistory(Long userId, String musicId); + + int deleteUserHistoryByMusicId(String[] musicId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CShopUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CShopUserServiceImpl.java index c2bd6b8..3ec2874 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CShopUserServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CShopUserServiceImpl.java @@ -39,7 +39,7 @@ public class CShopUserServiceImpl implements ShopUserService { } case "2": // 验证码 - String code = redisCache.getCacheObject(shopUser.getPhone()); + String code = redisCache.getCacheObject("sms_code:"+shopUser.getPhone()); String reqCode = shopUser.getCode(); if (code.equals(reqCode)){ // 登录 @@ -68,6 +68,9 @@ public class CShopUserServiceImpl implements ShopUserService { member.setPhone(shopUser.getPhone()); member.setPassword(IdUtil.fastUUID()); member.setUsername(shopUser.getUsername()); + member.setDeviceId(shopUser.getDeviceId()); + member.setDeviceType(shopUser.getDeviceType()); + member.setHeadImg("/file/download/user/head.jpg"); int insertCount = shopUserMapper.insert(member); if (insertCount > 0){ return member; diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MusicCollectServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MusicCollectServiceImpl.java new file mode 100644 index 0000000..85feb80 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MusicCollectServiceImpl.java @@ -0,0 +1,94 @@ +package com.ruoyi.system.service.impl; + +import com.ruoyi.common.core.domain.entity.MusicCollect; +import com.ruoyi.system.mapper.MusicCollectMapper; +import com.ruoyi.system.service.IMusicCollectService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 【请填写功能名称】Service业务层处理 + * + * @author ruoyi + * @date 2025-07-18 + */ +@Service +public class MusicCollectServiceImpl implements IMusicCollectService +{ + @Autowired + private MusicCollectMapper musicCollectMapper; + + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + @Override + public MusicCollect selectMusicCollectById(String id) + { + return musicCollectMapper.selectMusicCollectById(id); + } + + /** + * 查询【请填写功能名称】列表 + * + * @param musicCollect 【请填写功能名称】 + * @return 【请填写功能名称】 + */ + @Override + public List selectMusicCollectList(MusicCollect musicCollect) + { + return musicCollectMapper.selectMusicCollectList(musicCollect); + } + + /** + * 新增【请填写功能名称】 + * + * @param musicCollect 【请填写功能名称】 + * @return 结果 + */ + @Override + public int insertMusicCollect(MusicCollect musicCollect) + { + return musicCollectMapper.insertMusicCollect(musicCollect); + } + + /** + * 修改【请填写功能名称】 + * + * @param musicCollect 【请填写功能名称】 + * @return 结果 + */ + @Override + public int updateMusicCollect(MusicCollect musicCollect) + { + return musicCollectMapper.updateMusicCollect(musicCollect); + } + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的【请填写功能名称】主键 + * @return 结果 + */ + @Override + public int deleteMusicCollectByIds(String[] ids) + { + return musicCollectMapper.deleteMusicCollectByIds(ids); + } + + /** + * 删除【请填写功能名称】信息 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + @Override + public int deleteMusicCollectById(String id) + { + return musicCollectMapper.deleteMusicCollectById(id); + } +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MusicInfoServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MusicInfoServiceImpl.java index e01e75e..00e6970 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MusicInfoServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MusicInfoServiceImpl.java @@ -10,6 +10,7 @@ import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.config.AliConfig; import com.ruoyi.system.mapper.MusicInfoMapper; import com.ruoyi.system.service.IMusicInfoService; +import com.ruoyi.system.service.IUserHistoryService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; @@ -29,6 +30,7 @@ public class MusicInfoServiceImpl implements IMusicInfoService @Autowired private MusicInfoMapper musicInfoMapper; + /** * 查询音乐信息 * @@ -126,5 +128,36 @@ public class MusicInfoServiceImpl implements IMusicInfoService return musicInfoMapper.selectMusicInfoByCid(categoryId); } + @Override + public List findMusicByCollectId(String collectId) { + return musicInfoMapper.selectMusicByCollectId(collectId); + } + @Override + public int addLikeMusic(String musicId) { + Long userId = SecurityUtils.getUserId(); + return musicInfoMapper.insertLikeMusic(userId,musicId); + } + + @Override + public List findLikeMusicByUser(Long userId) { + return musicInfoMapper.selectLikeMusicByUser(userId); + } + + @Override + public int cancelLikeMusic(String musicId) { + Long userId = SecurityUtils.getUserId(); + return musicInfoMapper.delLikeMusic(userId,musicId); + } + + @Override + public int addHistoryMusic(String musicId) { + Long userId = SecurityUtils.getUserId(); + return musicInfoMapper.insertHistory(userId,musicId); + } + + @Override + public List findHistoryMusicByUser(Long userId) { + return musicInfoMapper.selectHistoryMusicByUser(userId); + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ShareInfoServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ShareInfoServiceImpl.java new file mode 100644 index 0000000..4c5fd50 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/ShareInfoServiceImpl.java @@ -0,0 +1,102 @@ +package com.ruoyi.system.service.impl; + +import com.ruoyi.common.core.domain.entity.ShareInfo; +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.system.mapper.ShareInfoMapper; +import com.ruoyi.system.service.IShareInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 【请填写功能名称】Service业务层处理 + * + * @author ruoyi + * @date 2025-07-19 + */ +@Service +public class ShareInfoServiceImpl implements IShareInfoService +{ + @Autowired + private ShareInfoMapper shareInfoMapper; + + /** + * 查询【请填写功能名称】 + * + * @param id 【请填写功能名称】主键 + * @return 【请填写功能名称】 + */ + @Override + public ShareInfo selectShareInfoById(String id) + { + return shareInfoMapper.selectShareInfoById(id); + } + + /** + * 查询【请填写功能名称】列表 + * + * @param shareInfo 【请填写功能名称】 + * @return 【请填写功能名称】 + */ + @Override + public List selectShareInfoList(ShareInfo shareInfo) + { + return shareInfoMapper.selectShareInfoList(shareInfo); + } + + /** + * 新增【请填写功能名称】 + * + * @param shareInfo 【请填写功能名称】 + * @return 结果 + */ + @Override + public int insertShareInfo(ShareInfo shareInfo) + { + shareInfo.setCreateTime(DateUtils.getNowDate()); + return shareInfoMapper.insertShareInfo(shareInfo); + } + + /** + * 修改【请填写功能名称】 + * + * @param shareInfo 【请填写功能名称】 + * @return 结果 + */ + @Override + public int updateShareInfo(ShareInfo shareInfo) + { + shareInfo.setUpdateTime(DateUtils.getNowDate()); + return shareInfoMapper.updateShareInfo(shareInfo); + } + + /** + * 批量删除【请填写功能名称】 + * + * @param ids 需要删除的【请填写功能名称】主键 + * @return 结果 + */ + @Override + public int deleteShareInfoByIds(String[] ids) + { + return shareInfoMapper.deleteShareInfoByIds(ids); + } + + /** + * 删除【请填写功能名称】信息 + * + * @param id 【请填写功能名称】主键 + * @return 结果 + */ + @Override + public int deleteShareInfoById(String id) + { + return shareInfoMapper.deleteShareInfoById(id); + } + + @Override + public List findShareInfoListPage(ShareInfo shareInfo) { + return shareInfoMapper.selectShareInfoListPage(shareInfo); + } +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserCollectServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserCollectServiceImpl.java index b49e895..30012ec 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserCollectServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserCollectServiceImpl.java @@ -1,7 +1,11 @@ package com.ruoyi.system.service.impl; +import cn.hutool.core.util.IdUtil; +import com.ruoyi.common.core.domain.entity.MusicCollect; import com.ruoyi.common.core.domain.entity.UserCollect; import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.system.mapper.MusicCollectMapper; import com.ruoyi.system.mapper.UserCollectMapper; import com.ruoyi.system.service.IUserCollectService; import org.springframework.beans.factory.annotation.Autowired; @@ -20,6 +24,8 @@ public class UserCollectServiceImpl implements IUserCollectService { @Autowired private UserCollectMapper userCollectMapper; + @Autowired + private MusicCollectMapper musicCollectMapper; /** * 查询用户收藏音乐 @@ -54,6 +60,9 @@ public class UserCollectServiceImpl implements IUserCollectService @Override public int insertUserCollect(UserCollect userCollect) { + Long userId = SecurityUtils.getUserId(); + userCollect.setCollectId(IdUtil.getSnowflakeNextId()); + userCollect.setUserId(userId); userCollect.setCreateTime(DateUtils.getNowDate()); return userCollectMapper.insertUserCollect(userCollect); } @@ -94,4 +103,9 @@ public class UserCollectServiceImpl implements IUserCollectService { return userCollectMapper.deleteUserCollectById(id); } + + @Override + public int cancelBindMusic(MusicCollect musicCollect) { + return musicCollectMapper.delBindMusic(musicCollect); + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserHistoryServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserHistoryServiceImpl.java index 3acd768..ee48e60 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserHistoryServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserHistoryServiceImpl.java @@ -1,6 +1,7 @@ package com.ruoyi.system.service.impl; import com.ruoyi.common.core.domain.entity.UserHistory; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.mapper.UserHistoryMapper; import com.ruoyi.system.service.IUserHistoryService; import org.springframework.beans.factory.annotation.Autowired; @@ -91,4 +92,15 @@ public class UserHistoryServiceImpl implements IUserHistoryService { return userHistoryMapper.deleteUserHistoryById(id); } + + @Override + public int insertHistory(Long userId, String musicId) { + return 0; + } + + @Override + public int deleteUserHistoryByMusicId(String[] musicIds) { + Long userId = SecurityUtils.getUserId(); + return userHistoryMapper.deleteUserHistoryByMusicId(musicIds,userId); + } } diff --git a/ruoyi-system/src/main/resources/mapper/system/MusicCollectMapper.xml b/ruoyi-system/src/main/resources/mapper/system/MusicCollectMapper.xml new file mode 100644 index 0000000..047e83b --- /dev/null +++ b/ruoyi-system/src/main/resources/mapper/system/MusicCollectMapper.xml @@ -0,0 +1,65 @@ + + + + + + + + + + + + select id, music_id, collect_id from music_collect + + + + + + + + insert into music_collect + + music_id, + collect_id, + + + #{musicId}, + #{collectId}, + + + + + update music_collect + + music_id = #{musicId}, + collect_id = #{collectId}, + + where id = #{id} + + + + delete from music_collect where id = #{id} + + + + delete from music_collect where id in + + #{id} + + + + + delete from music_collect where music_id= #{musicId} and collect_id=#{collectId} + + \ No newline at end of file diff --git a/ruoyi-system/src/main/resources/mapper/system/MusicInfoMapper.xml b/ruoyi-system/src/main/resources/mapper/system/MusicInfoMapper.xml index d8deb42..f2fb43e 100644 --- a/ruoyi-system/src/main/resources/mapper/system/MusicInfoMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/MusicInfoMapper.xml @@ -135,4 +135,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + INSERT INTO user_like_music(music_id, user_id) values (#{musicId},#{userId}) + + + + + + DELETE FROM user_like_music where music_id=#{musicId} and user_id=#{userId} + + + + INSERT INTO user_history(user_id, music_id) value (#{userId},#{musicId}) + + + \ No newline at end of file diff --git a/ruoyi-system/src/main/resources/mapper/system/ShareInfoMapper.xml b/ruoyi-system/src/main/resources/mapper/system/ShareInfoMapper.xml new file mode 100644 index 0000000..246f8ff --- /dev/null +++ b/ruoyi-system/src/main/resources/mapper/system/ShareInfoMapper.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + select id, user_id, share_decs, music_id, share_addr, share_plat, create_time, update_time, is_del, review from share_info + + + + + + + + insert into share_info + + user_id, + share_decs, + music_id, + share_addr, + share_plat, + create_time, + update_time, + is_del, + review, + + + #{userId}, + #{shareDecs}, + #{musicId}, + #{shareAddr}, + #{sharePlat}, + #{createTime}, + #{updateTime}, + #{isDel}, + #{review}, + + + + + update share_info + + user_id = #{userId}, + share_decs = #{shareDecs}, + music_id = #{musicId}, + share_addr = #{shareAddr}, + share_plat = #{sharePlat}, + create_time = #{createTime}, + update_time = #{updateTime}, + is_del = #{isDel}, + review = #{review}, + + where id = #{id} + + + + delete from share_info where id = #{id} + + + + delete from share_info where id in + + #{id} + + + + + \ No newline at end of file diff --git a/ruoyi-system/src/main/resources/mapper/system/ShopUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/ShopUserMapper.xml index fbcbd3e..6528c0f 100644 --- a/ruoyi-system/src/main/resources/mapper/system/ShopUserMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/ShopUserMapper.xml @@ -2,17 +2,6 @@ - - - - - @@ -30,6 +19,9 @@ status, vip, online, + device_id, + device_type, + head_img, #{userId}, @@ -44,6 +36,9 @@ #{status}, #{vip}, #{online}, + #{deviceId}, + #{deviceType}, + #{headImg}, @@ -61,13 +56,16 @@ + + + - select id, user_id, username, password, phone, nickname, sex, birthday, addr, register_time, status, vip, online, create_time, update_time, is_del from shop_user + select id, user_id, username, password,device_type,device_id, phone, nickname, sex, birthday, addr, register_time, status, vip, online, create_time, update_time, is_del,head_img from shop_user + + + + + + + + and user_id = #{userId} - and music_id = #{musicId} + and collect_id = #{collectId} and collect_name like concat('%', #{collectName}, '%') and collect_type = #{collectType} @@ -38,7 +38,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" id, user_id, - music_id, + collect_id, collect_name, create_time, update_time, @@ -47,7 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{id}, #{userId}, - #{musicId}, + #{collectId}, #{collectName}, #{createTime}, #{updateTime}, @@ -59,7 +59,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update user_collect user_id = #{userId}, - music_id = #{musicId}, + collect_id = #{collectId}, collect_name = #{collectName}, create_time = #{createTime}, update_time = #{updateTime}, diff --git a/ruoyi-system/src/main/resources/mapper/system/UserHistoryMapper.xml b/ruoyi-system/src/main/resources/mapper/system/UserHistoryMapper.xml index 575ecb0..94cfa3e 100644 --- a/ruoyi-system/src/main/resources/mapper/system/UserHistoryMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/UserHistoryMapper.xml @@ -58,4 +58,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{id} + + + delete from user_history where user_history.music_id in + + #{id} + + and user_id=#{userId} + \ No newline at end of file