Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

<groupId>io.github.talelin</groupId>
<artifactId>merak</artifactId>
<version>0.0.1-RC6</version>
<version>0.1.0-RELEASE</version>
<name>merak</name>
<description>Demo project for lin cms</description>

Expand Down Expand Up @@ -46,7 +46,7 @@
<dependency>
<groupId>io.github.talelin</groupId>
<artifactId>lin-cms-spring-boot-starter</artifactId>
<version>0.0.1-RC6</version>
<version>0.1.0-RELEASE</version>
</dependency>

<dependency>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public void doAfterReturning(Object ret) throws Throwable {
UnifyResponseVO result = (UnifyResponseVO) ret;
int code = result.getCode();
String message = CodeMessageConfiguration.getMessage(code);
if (StrUtil.isNotBlank(message)) {
if (StrUtil.isNotBlank(message) && StrUtil.isBlank((CharSequence) result.getMessage())) {
result.setMessage(message);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,11 @@ public UnifyResponseVO processException(HttpException exception, HttpServletRequ
UnifyResponseVO unifyResponse = new UnifyResponseVO();
unifyResponse.setRequest(getSimpleRequest(request));
int code = exception.getCode();
boolean messageOnly = exception.isMessageOnly();
unifyResponse.setCode(code);
response.setStatus(exception.getHttpCode());
String errorMessage = CodeMessageConfiguration.getMessage(code);
if (StrUtil.isBlank(errorMessage)) {
if (StrUtil.isBlank(errorMessage) || messageOnly) {
unifyResponse.setMessage(exception.getMessage());
} else {
unifyResponse.setMessage(errorMessage);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import io.github.talelin.core.token.DoubleJWT;
import org.apache.logging.log4j.util.Strings;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;
Expand All @@ -42,6 +43,12 @@ public class AuthorizeVerifyResolverImpl implements AuthorizeVerifyResolver {
@Autowired
private GroupService groupService;

@Value("${lin.cms.file.domain}")
private String domain;

@Value("${lin.cms.file.serve-path:assets/**}")
private String servePath;


public boolean handleLogin(HttpServletRequest request, HttpServletResponse response, MetaInfo meta) {
String tokenStr = verifyHeader(request, response);
Expand Down Expand Up @@ -114,6 +121,13 @@ private boolean getClaim(Map<String, Claim> claims) {
if (user == null) {
throw new NotFoundException("user is not found", 10021);
}
String avatarUrl;
if (user.getAvatar().startsWith("http")) {
avatarUrl = user.getAvatar();
} else {
avatarUrl = domain + servePath.split("/")[0] + "/" + user.getAvatar();
}
user.setAvatar(avatarUrl);
LocalUser.setLocalUser(user);
return true;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,21 +67,21 @@ public PageResponseVO getUsers(
@AdminMeta(permission = "修改用户密码", module = "管理员")
public UnifyResponseVO changeUserPassword(@PathVariable @Positive(message = "{id}") Long id, @RequestBody @Validated ResetPasswordDTO validator) {
adminService.changeUserPassword(id, validator);
return ResponseUtil.generateUnifyResponse(2);
return ResponseUtil.generateUnifyResponse(4);
}

@DeleteMapping("/user/{id}")
@AdminMeta(permission = "删除用户", module = "管理员")
public UnifyResponseVO deleteUser(@PathVariable @Positive(message = "{id}") Long id) {
adminService.deleteUser(id);
return ResponseUtil.generateUnifyResponse(3);
return ResponseUtil.generateUnifyResponse(5);
}

@PutMapping("/user/{id}")
@AdminMeta(permission = "管理员更新用户信息", module = "管理员")
public UnifyResponseVO updateUser(@PathVariable @Positive(message = "{id}") Long id, @RequestBody @Validated UpdateUserInfoDTO validator) {
adminService.updateUserInfo(id, validator);
return ResponseUtil.generateUnifyResponse(4);
return ResponseUtil.generateUnifyResponse(6);
}

@GetMapping("/group")
Expand Down Expand Up @@ -113,43 +113,43 @@ public GroupPermissionBO getGroup(@PathVariable @Positive(message = "{id}") Long
@AdminMeta(permission = "新建权限组", module = "管理员")
public UnifyResponseVO createGroup(@RequestBody @Validated NewGroupDTO validator) {
adminService.createGroup(validator);
return ResponseUtil.generateUnifyResponse(13);
return ResponseUtil.generateUnifyResponse(15);
}

@PutMapping("/group/{id}")
@AdminMeta(permission = "更新一个权限组", module = "管理员")
public UnifyResponseVO updateGroup(@PathVariable @Positive(message = "{id}") Long id,
@RequestBody @Validated UpdateGroupDTO validator) {
adminService.updateGroup(id, validator);
return ResponseUtil.generateUnifyResponse(5);
return ResponseUtil.generateUnifyResponse(7);
}

@DeleteMapping("/group/{id}")
@AdminMeta(permission = "删除一个权限组", module = "管理员")
public UnifyResponseVO deleteGroup(@PathVariable @Positive(message = "{id}") Long id) {
adminService.deleteGroup(id);
return ResponseUtil.generateUnifyResponse(6);
return ResponseUtil.generateUnifyResponse(8);
}

@PostMapping("/permission/dispatch")
@AdminMeta(permission = "分配单个权限", module = "管理员")
public UnifyResponseVO dispatchPermission(@RequestBody @Validated DispatchPermissionDTO validator) {
adminService.dispatchPermission(validator);
return ResponseUtil.generateUnifyResponse(7);
return ResponseUtil.generateUnifyResponse(9);
}

@PostMapping("/permission/dispatch/batch")
@AdminMeta(permission = "分配多个权限", module = "管理员")
public UnifyResponseVO dispatchPermissions(@RequestBody @Validated DispatchPermissionsDTO validator) {
adminService.dispatchPermissions(validator);
return ResponseUtil.generateUnifyResponse(7);
return ResponseUtil.generateUnifyResponse(9);
}

@PostMapping("/permission/remove")
@AdminMeta(permission = "删除多个权限", module = "管理员")
public UnifyResponseVO removePermissions(@RequestBody @Validated RemovePermissionsDTO validator) {
adminService.removePermissions(validator);
return ResponseUtil.generateUnifyResponse(8);
return ResponseUtil.generateUnifyResponse(10);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ public class UserController {
@AdminRequired
public UnifyResponseVO<String> register(@RequestBody @Validated RegisterDTO validator) {
userService.createUser(validator);
return ResponseUtil.generateUnifyResponse(9);
return ResponseUtil.generateUnifyResponse(11);
}

/**
Expand Down Expand Up @@ -83,7 +83,7 @@ public Tokens login(@RequestBody @Validated LoginDTO validator) {
@LoginRequired
public UnifyResponseVO update(@RequestBody @Validated UpdateInfoDTO validator) {
userService.updateUserInfo(validator);
return ResponseUtil.generateUnifyResponse(4);
return ResponseUtil.generateUnifyResponse(6);
}

/**
Expand All @@ -93,7 +93,7 @@ public UnifyResponseVO update(@RequestBody @Validated UpdateInfoDTO validator) {
@LoginRequired
public UnifyResponseVO updatePassword(@RequestBody @Validated ChangePasswordDTO validator) {
userService.changeUserPassword(validator);
return ResponseUtil.generateUnifyResponse(2);
return ResponseUtil.generateUnifyResponse(4);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ public List<BookDO> searchBook(@RequestParam(value = "q", required = false, defa
@PostMapping("")
public UnifyResponseVO createBook(@RequestBody @Validated CreateOrUpdateBookDTO validator) {
bookService.createBook(validator);
return ResponseUtil.generateUnifyResponse(10);
return ResponseUtil.generateUnifyResponse(12);
}


Expand All @@ -59,7 +59,7 @@ public UnifyResponseVO updateBook(@PathVariable("id") @Positive(message = "{id}"
throw new NotFoundException("book not found", 10022);
}
bookService.updateBook(book, validator);
return ResponseUtil.generateUnifyResponse(11);
return ResponseUtil.generateUnifyResponse(13);
}


Expand All @@ -71,7 +71,7 @@ public UnifyResponseVO deleteBook(@PathVariable("id") @Positive(message = "{id}"
throw new NotFoundException("book not found", 10022);
}
bookService.deleteById(book.getId());
return ResponseUtil.generateUnifyResponse(12);
return ResponseUtil.generateUnifyResponse(14);
}


Expand Down
29 changes: 29 additions & 0 deletions src/main/java/io/github/talelin/merak/vo/CreatedVO.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package io.github.talelin.merak.vo;

import io.github.talelin.autoconfigure.bean.Code;
import io.github.talelin.merak.common.util.ResponseUtil;
import org.springframework.http.HttpStatus;

public class CreatedVO<T> extends UnifyResponseVO {

public CreatedVO() {
super(Code.CREATED.getCode());
ResponseUtil.setCurrentResponseHttpStatus(HttpStatus.CREATED.value());
}

public CreatedVO(int code) {
super(code);
ResponseUtil.setCurrentResponseHttpStatus(HttpStatus.CREATED.value());
}

public CreatedVO(T message) {
super(message);
ResponseUtil.setCurrentResponseHttpStatus(HttpStatus.CREATED.value());
}

public CreatedVO(int code, T message) {
super(code, message);
ResponseUtil.setCurrentResponseHttpStatus(HttpStatus.CREATED.value());
}

}
23 changes: 23 additions & 0 deletions src/main/java/io/github/talelin/merak/vo/DeletedVO.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package io.github.talelin.merak.vo;

import io.github.talelin.autoconfigure.bean.Code;

public class DeletedVO<T> extends UnifyResponseVO {

public DeletedVO() {
super(Code.DELETED.getCode());
}

public DeletedVO(int code) {
super(code);
}

public DeletedVO(T message) {
super(message);
}

public DeletedVO(int code, T message) {
super(code, message);
}

}
57 changes: 55 additions & 2 deletions src/main/java/io/github/talelin/merak/vo/UnifyResponseVO.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
package io.github.talelin.merak.vo;

import io.github.talelin.autoconfigure.bean.Code;
import io.github.talelin.autoconfigure.util.RequestUtil;
import io.github.talelin.merak.common.util.ResponseUtil;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.http.HttpStatus;


/**
Expand All @@ -12,12 +15,62 @@
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class UnifyResponseVO<T> {

private int code;

private T message;

private String request;

public UnifyResponseVO() {
this.code = Code.SUCCESS.getCode();
this.request = RequestUtil.getSimpleRequest();
}

public UnifyResponseVO(int code) {
this.code = code;
this.request = RequestUtil.getSimpleRequest();
}

public UnifyResponseVO(T message) {
this.code = Code.SUCCESS.getCode();
this.message = message;
this.request = RequestUtil.getSimpleRequest();
}

public UnifyResponseVO(HttpStatus httpStatus) {
this.code = Code.SUCCESS.getCode();
this.message = (T) Code.SUCCESS.getDescription();
this.request = RequestUtil.getSimpleRequest();
ResponseUtil.setCurrentResponseHttpStatus(httpStatus.value());
}

public UnifyResponseVO(int code, T message) {
this.code = code;
this.message = message;
this.request = RequestUtil.getSimpleRequest();
}

public UnifyResponseVO(int code, HttpStatus httpStatus) {
this.code = code;
this.message = (T) Code.SUCCESS.getDescription();
this.request = RequestUtil.getSimpleRequest();
ResponseUtil.setCurrentResponseHttpStatus(httpStatus.value());
}

public UnifyResponseVO(T message, HttpStatus httpStatus) {
this.code = Code.SUCCESS.getCode();
this.message = message;
this.request = RequestUtil.getSimpleRequest();
ResponseUtil.setCurrentResponseHttpStatus(httpStatus.value());
}

public UnifyResponseVO(int code, T message, HttpStatus httpStatus) {
this.code = code;
this.message = message;
this.request = RequestUtil.getSimpleRequest();
ResponseUtil.setCurrentResponseHttpStatus(httpStatus.value());
}

}
23 changes: 23 additions & 0 deletions src/main/java/io/github/talelin/merak/vo/UpdatedVO.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package io.github.talelin.merak.vo;

import io.github.talelin.autoconfigure.bean.Code;

public class UpdatedVO<T> extends UnifyResponseVO {

public UpdatedVO() {
super(Code.UPDATED.getCode());
}

public UpdatedVO(int code) {
super(code);
}

public UpdatedVO(T message) {
super(message);
}

public UpdatedVO(int code, T message) {
super(code, message);
}

}
Loading