发表于: 2017-10-24 22:32:03
0 746
今天完成的事情:
1.用户管理模块,实名认证相关接口,相关代码如下
/**
* 查看某个实名认证用户详情
*
* @param request
* @param response
* @param model
* @param uid
* @return
*/
@RequestMapping(value = "/a/user/identify/{uid}/detail", method = RequestMethod.GET)
public String getUserIdentifyJson(HttpServletRequest request, HttpServletResponse response,
ModelMap model, @PathVariable Long uid) {
log.info("method getUserIdentifyJson() begin...");
log.info("user identify detail uid = " + uid);
try {
User user = userService.getObjectById(uid);
if (DataUtils.isNullOrEmpty(user)) {
model.addAttribute("code", -5003);
return "/data/json";
}
model.addAttribute("code", 0);
model.addAttribute("user", user);
}
catch (Throwable t) {
log.error("getUserIdentifyJson error");
log.error(t.getMessage(), t);
model.addAttribute("code", -1);
}
log.info("method getUserIdentifyJson() end...");
return "/playboy-invest-service/user/json/userDetailJson2";
}
/**
* 取消某个用户的实名认证
*
* @param request
* @param response
* @param model
* @param uid
* @return
*/
@RequestMapping(value = "/a/u/cancel/{uid}/identify", method = RequestMethod.PUT)
public String cancelUserIdentifyJson(HttpServletRequest request, HttpServletResponse response,
ModelMap model, @PathVariable Long uid) {
log.info("cancel user " + uid + " identify status ");
try {
User user = userService.getObjectById(uid);
if (DataUtils.isNullOrEmpty(user)) {
log.error("user does not exist");
model.addAttribute("code", -5003);
return "/data/json";
}
/* 取消实名,只能对已经实名认证通过的取消,其他的都是非法情况 */
if (!User.ALREADY_IDENTIFY.equals(user.getIdentifyStatus())) {
log.error("cancel identify, illegal identify status");
model.addAttribute("code", -5023);
return "/data/json";
}
user.setName(null);
user.setIdNo(null);
user.setIdFront(null);
user.setIdBack(null);
user.setIdentifyAt(null);
user.setRefuseReason(null);
user.setHasSendIdentifyMsg(false);
user.setIdentifyStatus(User.CANCEL_IDENTIFY);
userService.update(user);
log.info(" update user identify status success");
model.addAttribute("code", 0);
}
catch (Throwable t) {
log.error("cancelUserIdentifyJson error");
log.error(t.getMessage(), t);
model.addAttribute("code", -1);
}
return "/data/json";
}
/**
* 审核实名认证拒绝
*
* @param request
* @param response
* @param model
* @param uid
* @param refuseReason
* @return
*/
@RequestMapping(value = "/a/u/refuse/{uid}/identify", method = RequestMethod.PUT)
public String refuseUserIdentifyJson(HttpServletRequest request, HttpServletResponse response,
ModelMap model, @PathVariable Long uid,
String refuseReason) {
log.info("refuse user " + uid + " identify status ");
log.info("arguments: uid is:" + uid + ", refuseReason is: " + refuseReason);
try {
User user = userService.getObjectById(uid);
if (DataUtils.isNullOrEmpty(user)) {
log.error("user does not exist");
model.addAttribute("code", -5003);
return "/data/json";
}
/* 只有 未认证 状态,才能审核 */
if (!User.NOT_IDENTIFY.equals(user.getIdentifyStatus())) {
log.info("refuse identify, illegal identify status");
model.addAttribute("code", -5024);
return "/data/json";
}
user.setName(null);
user.setIdNo(null);
user.setIdFront(null);
user.setIdBack(null);
user.setIdentifyAt(null);
user.setHasSendIdentifyMsg(false);
user.setRefuseReason(refuseReason);
user.setIdentifyStatus(User.REFUSE_IDENTIFY);
userService.update(user);
log.info("update user identify status success");
/* 认证通过之后发推送 */
String title = "实名认证被拒绝";
String content = "您的实名认证资料有待核实,请在账户设置中重新提交";
pushMsg(uid, title, content);
log.info("push msg success");
model.addAttribute("code", 0);
}
catch (Throwable t) {
log.error("refuseUserIdentifyJson error");
log.error(t.getMessage(), t);
model.addAttribute("code", -1);
}
return "/data/json";
}
2.解决BUG
原来的写的feedback自己手误一个标点符号没注意,写成了下面这样,后面的mobile一直在报红,原来是系统默认主题,一时半会又看不出来,搞了老半天,找到之后立马换了一个主题,现在这个还是不太好用,师姐有推荐的主题么。
@RequestMapping(value = "/a/u/feedback/search", method = RequestMethod.GET)
public String getFeedbackJsonList(HttpServletRequest request,
HttpServletResponse response,ModelMap model, Integer page,
Integer size. String mobile, String name,
String email, Long startAt, Long endAt) throws Exception{
log.info("get feedback list page = "+page+" size = "+size+" mobile = "+mobile+" name ="+name
+" email ="+email+" startAt = "+startAt+" endAt ="+endAt );
明天计划的事情:完成用户管理的剩余接口
遇到的问题:以上
收获:熟悉实名认证的业务逻辑,考虑实际情况只有认证通过之后的用户才能取消认证,审核只有对未认证的才能审核,以及注意细节,不要在一些小的标点符号上在跟头
评论