Commit baf3ea27 authored by xiaozhe.chen's avatar xiaozhe.chen

添加修改手机号后台管理接口

parent abe54262
package cn.quantgroup.customer.common.adapter;
import com.google.gson.*;
import java.lang.reflect.Type;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class LocalDateTypeAdapter implements JsonSerializer<LocalDate>, JsonDeserializer<LocalDate> {
private final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
@Override
public JsonElement serialize(LocalDate src, Type typeOfSrc, JsonSerializationContext context) {
return null == src ? null : new JsonPrimitive(formatter.format(src));
}
@Override
public LocalDate deserialize(JsonElement json, Type typeOfTar, JsonDeserializationContext context) throws JsonParseException {
return null == json ? null : LocalDate.parse(json.getAsString(), formatter);
}
}
package cn.quantgroup.customer.config.container;
import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
import org.springframework.boot.web.servlet.ErrorPage;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpStatus;
@Configuration
public class ContainerConfig {
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return container -> {
container.addErrorPages(new ErrorPage(HttpStatus.FORBIDDEN, "/error/403"));
container.addErrorPages(new ErrorPage(HttpStatus.BAD_REQUEST, "/error/400"));
container.addErrorPages(new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/error/500"));
};
}
}
......@@ -30,7 +30,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
String allowedRoutes = "/test/**";
String allowedRoutes = "/test/**,/error/**";
String[] allowedRoutesArr = allowedRoutes.split(",");
http
.authorizeRequests()
......
......@@ -3,7 +3,7 @@ package cn.quantgroup.customer.enums;
public enum ErrorCodeEnum {
NET_ERROR(6001L, "网络通讯异常"),
RETURN_ERROR(5001L, "返回值异常");
RETURN_ERROR(7001L, "返回值异常");
public String getMessage() {
......
......@@ -3,6 +3,7 @@ package cn.quantgroup.customer.rest;
import cn.quantgroup.customer.constant.Constant;
import cn.quantgroup.customer.enums.ErrorCodeEnum;
import cn.quantgroup.customer.exception.NetCommunicationException;
import cn.quantgroup.customer.rest.vo.JsonResult;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.security.authentication.BadCredentialsException;
......@@ -11,7 +12,7 @@ import org.springframework.web.bind.annotation.*;
@Slf4j
@ControllerAdvice(annotations = {RestController.class, Controller.class})
public class RestAdvice {
public class AdviceRest {
@ExceptionHandler({BadCredentialsException.class})
@ResponseBody
......
package cn.quantgroup.customer.rest;
import cn.quantgroup.customer.rest.vo.JsonResult;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import static org.springframework.http.HttpStatus.*;
@Slf4j
@RestController
@RequestMapping("/error")
public class ErrorRest {
@RequestMapping("/500")
public JsonResult internalServerError() {
return JsonResult.buildErrorStateResult(INTERNAL_SERVER_ERROR.getReasonPhrase(), Long.valueOf(INTERNAL_SERVER_ERROR.toString()));
}
@RequestMapping("/403")
public JsonResult forbidden() {
return JsonResult.buildErrorStateResult(FORBIDDEN.getReasonPhrase(), Long.valueOf(FORBIDDEN.toString()));
}
@RequestMapping("/400")
public JsonResult badRequest() {
return JsonResult.buildErrorStateResult(BAD_REQUEST.getReasonPhrase(), Long.valueOf(BAD_REQUEST.toString()));
}
}
package cn.quantgroup.customer.rest;
import cn.quantgroup.customer.rest.vo.JsonResult;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
......
......@@ -6,6 +6,7 @@ import cn.quantgroup.customer.rest.param.ModifyPhoneAudit;
import cn.quantgroup.customer.rest.param.ModifyPhoneFeedback;
import cn.quantgroup.customer.rest.param.ModifyPhoneQuery;
import cn.quantgroup.customer.rest.vo.AuthUserVo;
import cn.quantgroup.customer.rest.vo.JsonResult;
import cn.quantgroup.customer.service.IUserService;
import cn.quantgroup.riskcontrol.model.AuthenticationUserDetail;
import lombok.extern.slf4j.Slf4j;
......
package cn.quantgroup.customer.rest.enums.user;
public enum ModifyPhoneApplyStatus {
INIT("处理中"),
DONE("修改完成"),
NO_ALLOW("不允许修改"),
;
public String getMessage() {
return message;
}
private String message;
ModifyPhoneApplyStatus(String message) {
this.message = message;
}
}
package cn.quantgroup.customer.rest.enums.user;
public enum ModifyPhoneProcessingStatus {
INIT("待人工处理"),
WAIT_4_USER_FEEDBACK("待用户反馈结果"),
DONE("已反馈"),
;
public String getMessage() {
return message;
}
private String message;
ModifyPhoneProcessingStatus(String message) {
this.message = message;
}
}
package cn.quantgroup.customer.rest.param;
import cn.quantgroup.customer.rest.enums.user.ModifyPhoneApplyStatus;
import lombok.Data;
import lombok.ToString;
......@@ -9,7 +10,7 @@ import javax.validation.constraints.NotNull;
@ToString
public class ModifyPhoneAudit {
@NotNull(message = "审核状态不能为空")
private String applyStatus;
private ModifyPhoneApplyStatus applyStatus;
private String applyStatusReason;
@NotNull(message = "id不能为空")
private String id;
......
package cn.quantgroup.customer.rest.param;
import cn.quantgroup.customer.rest.enums.user.ModifyPhoneApplyStatus;
import cn.quantgroup.customer.rest.enums.user.ModifyPhoneProcessingStatus;
import lombok.Data;
import lombok.ToString;
......@@ -8,12 +10,11 @@ import java.time.LocalDate;
@Data
@ToString
public class ModifyPhoneQuery {
private String name;
private String idCard;
private String phoneNo;
private LocalDate startAt;
private LocalDate endAt;
private String applyStatus;
private String processingStatus;
private Integer page;
private Integer size;
private ModifyPhoneApplyStatus applyStatus;
private ModifyPhoneProcessingStatus processingStatus;
private String page;
private String size;
}
package cn.quantgroup.customer.rest;
package cn.quantgroup.customer.rest.vo;
import lombok.Getter;
import lombok.Setter;
......
package cn.quantgroup.customer.service.impl;
import cn.quantgroup.customer.common.adapter.LocalDateTypeAdapter;
import cn.quantgroup.customer.entity.User;
import cn.quantgroup.customer.enums.ErrorCodeEnum;
import cn.quantgroup.customer.exception.NetCommunicationException;
......@@ -11,6 +12,8 @@ import cn.quantgroup.customer.service.IUserService;
import cn.quantgroup.customer.service.http.IHttpService;
import cn.quantgroup.riskcontrol.model.AuthenticationUserDetail;
import com.google.common.collect.Maps;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.exception.ExceptionUtils;
......@@ -20,6 +23,7 @@ import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.util.Map;
import static cn.quantgroup.customer.constant.Constant.GSON;
......@@ -53,15 +57,18 @@ public class UserServiceImpl implements IUserService {
@Override
public String modifyPhoneQuery(ModifyPhoneQuery modifyPhoneQuery) {
String url = userSysUrl + "/v1/user/modify/phone_no";
Map param = GSON.fromJson(GSON.toJson(modifyPhoneQuery), Map.class);
Gson gson = new GsonBuilder()
.registerTypeAdapter(LocalDate.class, new LocalDateTypeAdapter())
.create();
Map param = gson.fromJson(gson.toJson(modifyPhoneQuery), Map.class);
try {
String response = httpService.get(url, param);
if (StringUtils.isEmpty(response)) {
log.error("[user][query modify phone list] 请求业务系统返回值为空,queryModifyPhone:{}", modifyPhoneQuery);
log.error("[user][query modify phone list] 请求业务系统返回值为空,modifyPhoneQuery:{}", modifyPhoneQuery);
}
return response;
} catch (Exception e) {
log.error("[user][query modify phone list] 网络通讯异常,queryModifyPhone:{},ex:{}", modifyPhoneQuery, ExceptionUtils.getStackTrace(e));
log.error("[user][query modify phone list] 网络通讯异常,modifyPhoneQuery:{},ex:{}", modifyPhoneQuery, ExceptionUtils.getStackTrace(e));
throw new NetCommunicationException(ErrorCodeEnum.NET_ERROR.getMessage());
}
}
......@@ -84,8 +91,8 @@ public class UserServiceImpl implements IUserService {
@Override
public String modifyPhoneFeedback(ModifyPhoneFeedback modifyPhoneFeedback) {
//String url = "http://127.0.0.1:7067/test/modify/{id}/feedback";
String url = userSysUrl + "/v1/user/modify/phone_no/{id}/feedback";
String url = "http://127.0.0.1:7067/test/modify/{id}/feedback";
//String url = userSysUrl + "/v1/user/modify/phone_no/{id}/feedback";
try {
String id = modifyPhoneFeedback.getId();
url = url.replace("{id}", id);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment