[fix][M]:完善新增用户与更新用户 用户组的相关操作

master
Romesum 5 years ago
parent 3ebcb84fdb
commit 4c269d4610

@ -90,12 +90,13 @@ public class UserController {
//创建用户
@PostMapping(value = "/addUser", consumes = "application/json")
public ResultVO addUser(@RequestBody Map<String,Object> map) {
// 0.转换对象
UserBean user = (UserBean) Map2Object.map2Object(map,UserBean.class);
// 1.查重
if (userService.findByUserame(user.getUsername()) != null)
return ResultVOUtil.error(-1,"该工号已存在!");
// 2.插入
userService.add(user);
userService.add(user,(Integer)map.get("position"));
return ResultVOUtil.success();
}
@ -149,13 +150,15 @@ public class UserController {
/**
*
* @param user
* @param map
* @param request
* @return
*/
@PostMapping(value = "/updateUser", consumes = "application/json")
public ResultVO updateUser(@RequestBody UserBean user,
public ResultVO updateUser(@RequestBody Map<String,Object> map,
HttpServletRequest request){
// 转换对象
UserBean user = (UserBean) Map2Object.map2Object(map,UserBean.class);
if (user.getUId() == null){
return ResultVOUtil.error(-1,"未找到该用户ID");
}
@ -163,7 +166,7 @@ public class UserController {
user.setUId(user.getUId());
user.setPassword(old.getPassword());
user.setUsername(old.getUsername());
userService.update(user);
userService.update(user,(Integer) map.get("position"));
return ResultVOUtil.success();
}

@ -7,14 +7,7 @@ import lombok.NoArgsConstructor;
import javax.persistence.*;
@Data
@NoArgsConstructor
@AllArgsConstructor
@Entity
@Table(name = "tb_user")
public class UserDTO {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
// 用户ID
private Integer uId;
@ -32,4 +25,7 @@ public class UserDTO {
//办公室地点
private String office;
//职位
private Integer position;
}

@ -16,7 +16,7 @@ public interface UserService {
* @param user
* @return
*/
UserBean add(UserBean user);
UserBean add(UserBean user,Integer groupId);
// 查找所有用户
List<UserBean> findAll();
@ -37,6 +37,7 @@ public interface UserService {
* @param user
* @return
*/
UserBean update(UserBean user,Integer groupId);
UserBean update(UserBean user);
/**

@ -4,11 +4,18 @@ import com.hzu.bookingsystem.converter.UserBean2UserDTO;
import com.hzu.bookingsystem.dto.UserDTO;
import com.hzu.bookingsystem.bean.UserBean;
import com.hzu.bookingsystem.repository.UserRepository;
import com.hzu.bookingsystem.service.UserAuthService;
import com.hzu.bookingsystem.service.UserService;
import com.hzu.bookingsystem.utils.MD5Util;
import org.hibernate.SQLQuery;
import org.hibernate.transform.Transformers;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import javax.transaction.Transactional;
import java.util.List;
/**
@ -16,16 +23,26 @@ import java.util.List;
*/
@Service
public class UserServiceImpl implements UserService {
@Resource
@Autowired
private UserRepository userRepository;
@Autowired
private UserAuthService userAuthService;
@PersistenceContext
private EntityManager entityManager;
@Override
public UserBean add(UserBean user) {
@Transactional
public UserBean add(UserBean user,Integer groupId) {
// 1.保证ID为空
user.setUId(null);
// 2.加密密码
user.setPassword(MD5Util.md5Encrypt32Upper(user.getPassword()));
return userRepository.save(user);
UserBean userBean = userRepository.save(user);
userAuthService.add(userBean.getUId(),groupId);
return userBean;
}
@Override
@ -43,6 +60,12 @@ public class UserServiceImpl implements UserService {
return userRepository.findByUsername(username);
}
@Override
public UserBean update(UserBean user,Integer groupId) {
userAuthService.update(user.getUId(),groupId);
return userRepository.save(user);
}
@Override
public UserBean update(UserBean user) {
return userRepository.save(user);
@ -64,7 +87,21 @@ public class UserServiceImpl implements UserService {
@Override
public List<UserDTO> findAllUserInfo() {
List<UserBean> userBeanList = userRepository.findAll();
return UserBean2UserDTO.convert(userBeanList);
String sql = "SELECT tb_user.u_id as uId," +
"tb_user.nickname," +
"tb_user.tel," +
"tb_user.email," +
"tb_user.username," +
"tb_user.office," +
"tb_auth_group_access.group_id as position " +
"FROM " +
"tb_auth_group_access," +
"tb_user " +
"WHERE " +
"tb_auth_group_access.u_id = tb_user.u_id";
Query query = entityManager.createNativeQuery(sql);
query.unwrap(SQLQuery.class).setResultTransformer(Transformers.aliasToBean(UserDTO.class));
List<UserDTO> userDTOList = query.getResultList();
return userDTOList;
}
}

Loading…
Cancel
Save