1.update login token response to string;2.add auth check on music

main
Gary 10 months ago
parent 6c4df54f35
commit 6ff77ebbcc

@ -1,19 +1,31 @@
package com.luoo.music.controller;
import api.Result;
import api.StatusCode;
import exception.BizException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
/**
*
*/
@Slf4j
@ControllerAdvice
public class BaseExceptionHandler {
@ExceptionHandler(value = Exception.class)
@ResponseBody
public Result<Void> error(Exception e) {
e.printStackTrace();
log.error("执行出错", e);
return Result.failed(StatusCode.MUSIC_COMMON_FAILED);
}
@ExceptionHandler(value = BizException.class)
@ResponseBody
public Result<String> error(BizException e) {
log.info("业务错误:{}", e.getMessage());
return Result.failed(StatusCode.MUSIC_COMMON_FAILED, e.getMessage());
}
}

@ -36,7 +36,7 @@ public class JournalController {
@ApiOperation(value = "1.查询期刊信息")
@GetMapping("/list")
//@GlobalInterceptor(checkLogin = true)
@GlobalInterceptor(checkLogin = true)
public Result<PageResult<JournalRespDTO>> page(@RequestHeader(value = "token", required = false) String token,
JournalQueryReq queryReq){
Page<Article> pageList = articleService.queryPage(queryReq);

@ -1,10 +1,11 @@
package com.luoo.music.controller;
import com.luoo.music.dto.response.SongRespDTO;
import com.luoo.music.pojo.Article;
import com.luoo.music.pojo.Song;
import com.luoo.music.service.SongService;
import annotation.GlobalInterceptor;
import api.PageResult;
import api.Result;
import constants.Constants;
@ -30,20 +31,36 @@ public class SongController {
/**
*
*
* @return
*/
@GetMapping
public Result<List<Song>> findAll() {
return Result.success(songService.findAll());
}
@ApiOperation(value = "1.根据期刊号查询歌曲信息")
@GetMapping("/getByJournalNo/{journalNo}")
public Result<List<SongRespDTO>> getByJournalNo(@PathVariable String journalNo){
@GlobalInterceptor(checkLogin = true)
public Result<List<SongRespDTO>> getByJournalNo(@RequestHeader(value = "token", required = false) String token,
@PathVariable String journalNo) {
List<Song> songs = songService.findByVolid(journalNo);
List<SongRespDTO> results = songs.stream().map(s -> getSongRespDTO(s)).collect(Collectors.toList());
return Result.success(results);
}
/*
* @ApiOperation(value = "2.随机播放歌曲",notes="雀乐FM")
*
* @GetMapping("/random/{limit}")
*
* @GlobalInterceptor(checkLogin = true) public Result<List<SongRespDTO>>
* getByJournalNo(@RequestHeader(value = "token", required = false) String
* token) { List<Song> songs = songService.random(); List<SongRespDTO> results =
* songs.stream().map(s -> getSongRespDTO(s)).collect(Collectors.toList());
* return Result.success(results); }
*/
private SongRespDTO getSongRespDTO(Song song) {
SongRespDTO songRespDTO = new SongRespDTO();
songRespDTO.setJournalNo(song.getVolid());
@ -57,8 +74,10 @@ public class SongController {
songRespDTO.setSongNo(song.getSongno());
return songRespDTO;
}
/**
* ID
*
* @param id ID
* @return
*/
@ -67,21 +86,21 @@ public class SongController {
return Result.success(songService.findById(id));
}
/**
* +
*
* @param searchMap
* @param page
* @param size
* @return
*/
@PostMapping("/search/{page}/{size}")
public Result<PageResult<Song>> findSearch(@RequestBody Map searchMap , @PathVariable int page, @PathVariable int size){
public Result<PageResult<Song>> findSearch(@RequestBody Map searchMap, @PathVariable int page,
@PathVariable int size) {
Page<Song> pageList = songService.findSearch(searchMap, page, size);
return Result.success(new PageResult<Song>(pageList.getTotalElements(), pageList.getContent()));
}
@PostMapping("/init")
public Result<Void> init(@RequestBody Map map) {
List<Map> data = (List) map.get("data");
@ -91,8 +110,7 @@ public class SongController {
int temp = 0;
int num = 0;
for (Map dataMap :data
) {
for (Map dataMap : data) {
Article article = new Article();
article.setVolid(dataMap.get("id") + "");
article.setTitle(dataMap.get("title") + "");
@ -129,6 +147,7 @@ public class SongController {
/**
*
*
* @param searchMap
* @return
*/
@ -137,9 +156,9 @@ public class SongController {
return Result.success(songService.findSearch(searchMap));
}
/**
*
*
* @param song
*/
@PostMapping
@ -150,6 +169,7 @@ public class SongController {
/**
*
*
* @param song
*/
@PutMapping("/{id}")
@ -161,6 +181,7 @@ public class SongController {
/**
*
*
* @param id
*/
@DeleteMapping("/{id}")

@ -8,12 +8,16 @@ import lombok.Setter;
@Setter
public class SongRespDTO {
private String id;
@ApiModelProperty(value = "歌曲名")
private String title;
@ApiModelProperty(value = "歌手/乐队名")
private String artist;
@ApiModelProperty(value = "专辑")
@ApiModelProperty(value = "专辑")
private String album;
private String src;
@ApiModelProperty(value = "歌曲专辑封面")
private String pic;
@ApiModelProperty(value = "歌词")
private String lrc;
@ApiModelProperty(value = "剘刊号")
private String journalNo;

@ -104,12 +104,8 @@ public class UserController {
return Result.failed(StatusCode.USER_MOBILE_VERIFICATION_CODE_MISMATCH);
}
User user = userService.loginOrRegister(mobile);
String token = jwtUtil.createJWT(user.getId(),user.getNickname(),Constants.TOKEN_ROLE_APP_USER);
Map<String,String> map = new HashMap<>();
map.put("token", token);
return Result.success(map);
return Result.success(token);
}finally {
redisTemplate.delete(redisMobileCheckCodeKey);
}
@ -118,12 +114,10 @@ public class UserController {
@ApiOperation(value = "3.游客登录返回token", notes = "token中的subject和roles均为tourist")
@GetMapping("/touristLogin")
public Result<Map<String,String>> touristLogin() {
public Result<String> touristLogin() {
String nickName="游客-"+NickNameUtil.getRandomNickName();
String token = jwtUtil.createJWT(String.valueOf(idWorker.nextId()),nickName,Constants.TOKEN_ROLE_TOURIST);
Map<String,String> map=new HashMap<>();
map.put("token", token);
return Result.success(map);
return Result.success(token);
}
/**
@ -143,10 +137,8 @@ public class UserController {
@ApiOperation(value = "5.token续期", notes = "有效期7天")
@PostMapping("/autoLogin")
@GlobalInterceptor
public Result<Map<String, String>> autoLogin(@RequestHeader(value = "token", required = false) String token) {
Map<String,String> map=new HashMap<>();
map.put("token", userService.autoLogin(token));
return Result.success(map);
public Result<String> autoLogin(@RequestHeader(value = "token", required = false) String token) {
return Result.success(userService.autoLogin(token));
}
/**

Loading…
Cancel
Save