Commit 5f5368cb by shenjunjie

Merge branch 'release' into 'master'

Release

See merge request !332
parents a196b04a b854b4ca
......@@ -4,9 +4,7 @@ import com.zhiwei.brandkbs2.auth.Auth;
import com.zhiwei.brandkbs2.controller.BaseController;
import com.zhiwei.brandkbs2.enmus.RoleEnum;
import com.zhiwei.brandkbs2.model.ResponseResult;
import com.zhiwei.brandkbs2.pojo.Behavior;
import com.zhiwei.brandkbs2.pojo.dto.UserDTO;
import com.zhiwei.brandkbs2.service.BehaviorService;
import com.zhiwei.brandkbs2.service.UserService;
import com.zhiwei.middleware.auth.pojo.CenterUser;
import io.swagger.annotations.Api;
......@@ -33,11 +31,6 @@ public class UserController extends BaseController {
@Resource(name = "userServiceImpl")
private UserService userService;
@Resource(name = "behaviorServiceImpl")
private BehaviorService behaviorService;
private static final Behavior.Operation OPERATION = new Behavior.Operation("用户管理", true);
@Autowired
private com.zhiwei.middleware.auth.core.UserInfoClient userInfoClient;
......@@ -47,15 +40,17 @@ public class UserController extends BaseController {
@ApiImplicitParam(name = "size", value = "每页记录数", required = false, defaultValue = "10", paramType = "query", dataType = "int"),
@ApiImplicitParam(name = "keyword", value = "搜索关键字", required = false, defaultValue = "", paramType = "query", dataType = "string"),
@ApiImplicitParam(name = "pid", value = "搜索项目ID", required = true, paramType = "query", dataType = "string"),
@ApiImplicitParam(name = "role", value = "角色类型", required = false, defaultValue = "-1", paramType = "query", dataType = "string")
@ApiImplicitParam(name = "role", value = "角色类型", required = false, defaultValue = "-1", paramType = "query", dataType = "string"),
@ApiImplicitParam(name = "sorter", defaultValue = "{\"cTime\":\"descend\"}", value = "排序字段", paramType = "query", dataType = "string")
})
@GetMapping("/list")
public ResponseResult findList(@RequestParam(value = "page", defaultValue = "1") int page,
@RequestParam(value = "size", defaultValue = "10") int size,
@RequestParam(value = "keyword", defaultValue = "") String keyword,
@RequestParam(value = "pid") String pid,
@RequestParam(value = "role", defaultValue = "-1") int role) {
return ResponseResult.success(userService.findUserList(page, size, keyword, pid, role));
@RequestParam(value = "role", defaultValue = "-1") int role,
@RequestParam(value = "sorter", defaultValue = "{\"cTime\":\"descend\"}") String sorter) {
return ResponseResult.success(userService.findUserList(page, size, keyword, pid, role, sorter));
}
@ApiOperation("根据手机号搜索用户信息")
......
......@@ -76,12 +76,14 @@ public class MobileEventController extends BaseController {
@ApiOperation("移动端事件详情-事件基础信息")
@GetMapping("/detail/baseInfo")
@Auth(role = RoleEnum.NO_AUTHORISE)
public ResponseResult eventBaseInfo(@RequestParam(value = "eventId") String eventId){
return ResponseResult.success(eventService.eventBaseInfo(eventId));
}
@ApiOperation("移动端事件详情-传播趋势图")
@GetMapping("/detail/dissemination-trends")
@Auth(role = RoleEnum.NO_AUTHORISE)
public ResponseResult eventDisseminationTrends(@RequestParam(value = "eventId") String eventId,
@RequestParam(value = "type", defaultValue = "小时") String type){
return ResponseResult.success(eventService.eventDisseminationTrends(eventId, type));
......@@ -89,6 +91,7 @@ public class MobileEventController extends BaseController {
@ApiOperation("移动端事件详情-渠道发声")
@GetMapping("/detail/channel-voices")
@Auth(role = RoleEnum.NO_AUTHORISE)
public ResponseResult eventChannelVoices(@RequestParam(value = "eventId") String eventId,
@RequestParam(value = "type", defaultValue = "重要渠道") String type,
@RequestParam(value = "page", defaultValue = "1") int page,
......@@ -100,6 +103,7 @@ public class MobileEventController extends BaseController {
@ApiOperation("移动端事件详情-热门文章分析")
@GetMapping("/detail/top-articles-analysis")
@Auth(role = RoleEnum.NO_AUTHORISE)
public ResponseResult eventTopArticlesAnalysis(@RequestParam(value = "eventId") String eventId,
@RequestParam(value = "type", defaultValue = "按时间") String type,
@RequestParam(value = "emotion", defaultValue = "全部") String emotion,
......@@ -109,6 +113,7 @@ public class MobileEventController extends BaseController {
@ApiOperation("移动端事件详情-热门渠道发声、上榜热搜、词云")
@GetMapping("/detail/additional-info")
@Auth(role = RoleEnum.NO_AUTHORISE)
public ResponseResult eventDetailAdditionalInfo(@RequestParam(value = "eventId") String eventId){
return ResponseResult.success(eventService.eventDetailAdditionalInfo(eventId));
}
......
package com.zhiwei.brandkbs2.pojo;
import com.zhiwei.brandkbs2.enmus.RoleEnum;
import com.zhiwei.brandkbs2.pojo.dto.UserDTO;
import com.zhiwei.middleware.auth.pojo.CenterUser;
import lombok.Getter;
import lombok.Setter;
......@@ -70,15 +72,41 @@ public class User extends AbstractBaseMongo {
*/
private String subscriptionAccountOpenId;
public static User createFromCenterUser(CenterUser centerUser) {
/**
* 操作人
*/
private String submitter;
private User(){
}
public static User createFromUserDTO(UserDTO userDTO, String submitter) {
User user = new User();
user.setId(userDTO.getId());
user.setNickname(userDTO.getNickname());
user.setCTime(System.currentTimeMillis());
user.setUsername(userDTO.getUsername());
user.setPhoneNumber(userDTO.getPhoneNumber());
if (RoleEnum.SUPER_ADMIN.getState() == userDTO.getRoleId()) {
user.setSuperAdmin(true);
} else {
user.setRoles(Collections.singletonList(UserRole.createFromUserDto(userDTO)));
user.setSuperAdmin(false);
}
user.setSubmitter(submitter);
return user;
}
public static User createFromCenterUser(CenterUser centerUser, String submitter) {
User user = new User();
user.setId(String.valueOf(centerUser.getId()));
user.setNickname(centerUser.getNickName());
user.setCTime(System.currentTimeMillis());
user.setUsername(centerUser.getName());
user.setPhoneNumber(Long.parseLong(centerUser.getPhone()));
user.setAvatarUrl(centerUser.getAvatarUrl());
user.setCTime(new Date().getTime());
user.setRoles(new ArrayList<>());
user.setSubmitter(submitter);
return user;
}
......
......@@ -49,9 +49,10 @@ public interface UserService {
* @param keyword 关键字
* @param pid 项目ID
* @param role 角色
* @param sorter 排序
* @return 所有用户
*/
PageVO<JSONObject> findUserList(int page, int size, String keyword, String pid, int role);
PageVO<JSONObject> findUserList(int page, int size, String keyword, String pid, int role, String sorter);
/**
* 添加用户
......
......@@ -133,13 +133,13 @@ public class UserServiceImpl implements UserService {
}
@Override
public PageVO<JSONObject> findUserList(int page, int size, String keyword, String pid, int role) {
public PageVO<JSONObject> findUserList(int page, int size, String keyword, String pid, int role,String sorter) {
Criteria criteria = Criteria.where("roles.projectId").is(pid).and("superAdmin").is(false);
if (-1 != role) {
criteria = criteria.andOperator(Criteria.where("roles.key").is(Tools.concat(pid, role)));
// criteria = criteria.andOperator(Criteria.where("roles.roleId").is(role));
}
return findList(page, size, keyword, pid, new Query(criteria));
return findList(page, size, keyword, pid, new Query(criteria),sorter);
}
@Override
......@@ -149,6 +149,7 @@ public class UserServiceImpl implements UserService {
ExceptionCast.cast(CommonCodeEnum.UN_AUTHORISE);
}
int roleId = UserThreadLocal.getRoleId();
String nickname = UserThreadLocal.getNickname();
// 只有超管能设置管理员
if (roleId != RoleEnum.SUPER_ADMIN.getState() && userDTO.getRoleId() <= RoleEnum.ADMIN.getState()) {
ExceptionCast.cast(CommonCodeEnum.UN_AUTHORISE);
......@@ -166,12 +167,12 @@ public class UserServiceImpl implements UserService {
User newUser;
// 优先使用用户中心信息
if (null != centerUser) {
newUser = User.createFromCenterUser(centerUser);
newUser = User.createFromCenterUser(centerUser, nickname);
newUser.setNickname(userDTO.getNickname());
newUser.setRoles(Collections.singletonList(UserRole.createFromUserDto(userDTO)));
newUser.setSuperAdmin(false);
} else {
newUser = createNewUser(userDTO);
newUser = User.createFromUserDTO(userDTO, nickname);
}
userDao.insertOne(newUser);
userCenterService.addProduct(newUser.getId());
......@@ -230,7 +231,7 @@ public class UserServiceImpl implements UserService {
@Override
public PageVO<JSONObject> findSuperAdminList(int page, int size, String keyword) {
Query query = new Query().addCriteria(Criteria.where("superAdmin").is(true));
return findList(page, size, keyword, null, query);
return findList(page, size, keyword, null, query, null);
}
@Override
......@@ -242,6 +243,7 @@ public class UserServiceImpl implements UserService {
return ResponseResult.failure("用户中心注册账号失败");
}
}
String nickname = UserThreadLocal.getNickname();
User user = userDao.findOneById(userDTO.getId());
// 老用户
if (null != user) {
......@@ -257,11 +259,11 @@ public class UserServiceImpl implements UserService {
User newUser;
// 优先使用用户中心信息
if (null != centerUser) {
newUser = User.createFromCenterUser(centerUser);
newUser = User.createFromCenterUser(centerUser, nickname);
newUser.setNickname(userDTO.getNickname());
newUser.setSuperAdmin(true);
} else {
newUser = createNewUser(userDTO);
newUser = User.createFromUserDTO(userDTO, nickname);
}
userDao.insertOne(newUser);
userCenterService.addProduct(newUser.getId());
......@@ -275,6 +277,7 @@ public class UserServiceImpl implements UserService {
@Override
public List<JSONObject> bindUser(String username, String password) {
String nickname = UserThreadLocal.getNickname();
UserOldDaoImpl.UserOld userOld = userOldDao.findOneByUsernameAndPassword(username, password);
if (null == userOld) {
ExceptionCast.cast(LoginCodeEnum.LOGIN_USERNAME_OR_PASSWORD_ERROR);
......@@ -286,7 +289,7 @@ public class UserServiceImpl implements UserService {
if (null == user) {
// 通过用户中心查询
CenterUser centerUser = userInfoClient.getUserById(Integer.parseInt(UserThreadLocal.getUserId()));
user = User.createFromCenterUser(centerUser);
user = User.createFromCenterUser(centerUser,nickname);
}
// 超级管理员
if (userOld.isSuperAdmin()) {
......@@ -330,7 +333,7 @@ public class UserServiceImpl implements UserService {
@Override
public List<JSONObject> skipBindUser() {
CenterUser centerUser = userInfoClient.getUserById(Integer.parseInt(UserThreadLocal.getUserId()));
User user = User.createFromCenterUser(centerUser).defaultRoleUser();
User user = User.createFromCenterUser(centerUser, "admin").defaultRoleUser();
userDao.insertOne(user);
return projectServiceImpl.getProjectListByUser(user, true);
}
......@@ -414,25 +417,13 @@ public class UserServiceImpl implements UserService {
return queryUserInfo(UserThreadLocal.getUserId(), UserThreadLocal.getProjectId()).toMap();
}
private User createNewUser(UserDTO userDTO) {
User user = new User();
user.setId(userDTO.getId());
user.setNickname(userDTO.getNickname());
user.setCTime(System.currentTimeMillis());
user.setUsername(userDTO.getUsername());
user.setPhoneNumber(userDTO.getPhoneNumber());
if (RoleEnum.SUPER_ADMIN.getState() == userDTO.getRoleId()) {
user.setSuperAdmin(true);
} else {
user.setRoles(Collections.singletonList(UserRole.createFromUserDto(userDTO)));
user.setSuperAdmin(false);
}
return user;
}
private PageVO<JSONObject> findList(int page, int size, String keyword, String pid, Query query) {
private PageVO<JSONObject> findList(int page, int size, String keyword, String pid, Query query,String sorter) {
userDao.addKeywordFuzz(query, keyword, "nickname");
if (null == sorter) {
userDao.addSort(query, "{\"cTime\":\"descend\"}");
} else {
userDao.addSort(query, sorter);
}
long count = userDao.count(query);
mongoUtil.start(page, size, query);
List<User> userList = userDao.findList(query);
......
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