尝试修改User

This commit is contained in:
MiLla 2024-07-05 23:35:45 +08:00
parent 1a42273465
commit 722fb47302
4 changed files with 103 additions and 32 deletions

View File

@ -0,0 +1,19 @@
package org.cmh.backend.UserManagement.adpter;
import org.cmh.backend.UserManagement.model.User;
import org.cmh.backend.authentication.model.UserHS;
public class User2UserHS {
public static UserHS convert(User user) {
UserHS userHS = new UserHS();
userHS.setUsername(user.getAccount());
userHS.setPassword(user.getPassword());
userHS.setNickname(user.getName());
userHS.setDepartment(user.getOrganization());
userHS.setGender(user.getGender());
userHS.setEmail(user.getEmail());
userHS.setPhoneNumber(user.getPhone());
return userHS;
}
}

View File

@ -0,0 +1,26 @@
package org.cmh.backend.UserManagement.adpter;
import org.cmh.backend.UserManagement.model.User;
import org.cmh.backend.authentication.model.UserHS;
import java.util.List;
import java.util.stream.Collectors;
public class UserHS2User {
public static User convert(UserHS userHS) {
User user = new User();
user.setAccount(userHS.getUsername());
user.setPassword(userHS.getPassword());
user.setName(userHS.getNickname());
user.setOrganization(userHS.getDepartment());
user.setGender(userHS.getGender());
user.setEmail(userHS.getEmail());
user.setPhone(userHS.getPhoneNumber());
return user;
}
public static List<User> convertList(List<UserHS> userHSList) {
return userHSList.stream()
.map(UserHS2User::convert)
.collect(Collectors.toList());
}
}

View File

@ -1,49 +1,89 @@
package org.cmh.backend.UserManagement.controller;
import jakarta.transaction.Transactional;
import org.cmh.backend.OrganizationManagement.service.OrganizationService;
import org.cmh.backend.UserManagement.adpter.User2UserHS;
import org.cmh.backend.UserManagement.adpter.UserHS2User;
import org.cmh.backend.UserManagement.service.UserManagementService;
import org.cmh.backend.UserManagement.model.User;
import org.cmh.backend.authentication.dto.UserProfileResponse;
import org.cmh.backend.authentication.model.UserHS;
import org.cmh.backend.authentication.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/user")
public class UserManagementController {
@Autowired
private UserManagementService userManagementService;
@Autowired
private OrganizationService organizationService;
@Autowired
private UserService userService;
@CrossOrigin(origins = "http://localhost:5173")
@PostMapping("/addUser")
public User addUser(@RequestBody User user) {
User user1=userManagementService.registerUser(user);
if(user1 != null){
System.out.println(user1);
return user1;
public ResponseEntity<UserProfileResponse> addUser(@RequestBody User user) {
UserHS newuser = User2UserHS.convert(user);
UserProfileResponse response = new UserProfileResponse(
newuser.getUsername(),
newuser.getNickname(),
newuser.getGender(),
newuser.getPhoneNumber(),
newuser.getEmail(),
newuser.getDepartment(),
newuser.getRole(),
newuser.getCreatedAt()
);
if(organizationService.getByName(newuser.getDepartment()) != null){
userService.addUser(newuser);
return new ResponseEntity<>(response, HttpStatus.OK);
}else{
return null;
}
}
@CrossOrigin(origins = "http://localhost:5173")
@GetMapping("/getAll")
public List<User> getAll() {
List<User> userList=userManagementService.findAll();
return userList;
List<UserHS> userHSList = userService.getAll();
return UserHS2User.convertList(userHSList);;
}
@CrossOrigin(origins = "http://localhost:5173")
@PostMapping("/update")
public User update(@RequestBody User user) {
System.out.println(user);
userManagementService.update(user);
return user;
public ResponseEntity<UserProfileResponse> update(@RequestBody User user) {
UserHS newuser = User2UserHS.convert(user);
UserProfileResponse response = new UserProfileResponse(
newuser.getUsername(),
newuser.getNickname(),
newuser.getGender(),
newuser.getPhoneNumber(),
newuser.getEmail(),
newuser.getDepartment(),
newuser.getRole(),
newuser.getCreatedAt()
);
if(organizationService.getByName(newuser.getDepartment()) != null){
userService.addUser(newuser);
return new ResponseEntity<>(response, HttpStatus.OK);
}else{
return null;
}
}
@CrossOrigin(origins = "http://localhost:5173")
@PostMapping("/delete")
@Transactional
public void delete(@RequestBody User user) {
System.out.println(user);
UserHS userHS = userService.getUserByUsername(user.getName());
if(userHS != null){
userService.deleteUser(userHS.getUsername());
}
userManagementService.delete(user.getId());
}

View File

@ -8,32 +8,18 @@ import lombok.Getter;
import lombok.Setter;
@Entity
@Setter
@Getter
public class User {
@Setter
@Getter
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Setter
@Getter
private String account;
@Setter
@Getter
private String password;
@Setter
@Getter
private String name;
@Getter
@Setter
private String organization;
@Setter
@Getter
private String gender;
@Setter
@Getter
private String email;
@Getter
@Setter
private String phone;
public User() {