Files
nursing-home/backend/src/main/java/com/nursinghome/service/UserService.java
王子琦 cc7d8f30ff add
2026-01-20 11:32:46 +08:00

57 lines
1.5 KiB
Java

package com.nursinghome.service;
import com.nursinghome.common.ApiException;
import com.nursinghome.entity.User;
import com.nursinghome.mapper.UserMapper;
import com.nursinghome.util.PasswordUtil;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserService {
private final UserMapper userMapper;
public UserService(UserMapper userMapper) {
this.userMapper = userMapper;
}
public User findByUsername(String username) {
return userMapper.findByUsername(username);
}
public User findById(Long id) {
return userMapper.findById(id);
}
public List<User> listByRole(String role) {
return userMapper.listByRole(role);
}
public User createUser(User user, boolean hashPassword) {
if (userMapper.findByUsername(user.getUsername()) != null) {
throw new ApiException("username already exists");
}
if (hashPassword) {
user.setPassword(PasswordUtil.hash(user.getPassword()));
}
if (user.getStatus() == null) {
user.setStatus(1);
}
userMapper.insert(user);
return user;
}
public void updateUser(User user) {
userMapper.update(user);
}
public void updateStatus(Long id, Integer status) {
userMapper.updateStatus(id, status);
}
public void updatePassword(Long id, String password) {
userMapper.updatePassword(id, password);
}
}