diff --git a/pom.xml b/pom.xml
index 428b562..e2c38d8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -113,6 +113,12 @@
spring-boot-testcontainers
test
+
+ org.springframework.boot
+ spring-boot-devtools
+ true
+
+
org.mybatis.spring.boot
mybatis-spring-boot-starter-test
diff --git a/src/main/java/org/cmh/backend/UserManagement/controller/TenantManagementController.java b/src/main/java/org/cmh/backend/UserManagement/controller/TenantManagementController.java
new file mode 100644
index 0000000..f31a1f9
--- /dev/null
+++ b/src/main/java/org/cmh/backend/UserManagement/controller/TenantManagementController.java
@@ -0,0 +1,48 @@
+package org.cmh.backend.UserManagement.controller;
+
+import jakarta.transaction.Transactional;
+import org.cmh.backend.UserManagement.model.Tenant;
+import org.cmh.backend.UserManagement.service.TenantManagementService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
+@RestController
+public class TenantManagementController {
+ @Autowired
+ private TenantManagementService tenantManagementService;
+
+ @CrossOrigin(origins = "http://localhost:5173")
+ @PostMapping("/addTenant")
+ public Tenant addTenant(@RequestBody Tenant tenant) {
+ Tenant tenant1=tenantManagementService.registerTenant(tenant);
+ System.out.println(tenant.toString());
+ return tenant1;
+ }
+
+ @CrossOrigin(origins = "http://localhost:5173")
+ @GetMapping("/getAllTenant")
+ public List getAll() {
+ List tenantList=tenantManagementService.findAll();
+ return tenantList;
+ }
+
+ @CrossOrigin(origins = "http://localhost:5173")
+ @PostMapping("/updateTenant")
+ public Tenant update(@RequestBody Tenant tenant) {
+ System.out.println(tenant);
+ tenantManagementService.update(tenant);
+ return tenant;
+ }
+
+ @CrossOrigin(origins = "http://localhost:5173")
+ @PostMapping("/deleteTenant")
+ @Transactional
+ public boolean delete(@RequestBody Tenant tenant) {
+ System.out.println(tenant);
+ tenantManagementService.delete(tenant.getName());
+ return true;
+ }
+
+}
+
diff --git a/src/main/java/org/cmh/backend/UserManagement/controller/UserManagementController.java b/src/main/java/org/cmh/backend/UserManagement/controller/UserManagementController.java
new file mode 100644
index 0000000..9365a34
--- /dev/null
+++ b/src/main/java/org/cmh/backend/UserManagement/controller/UserManagementController.java
@@ -0,0 +1,52 @@
+package org.cmh.backend.UserManagement.controller;
+
+import jakarta.transaction.Transactional;
+import org.cmh.backend.UserManagement.service.UserManagementService;
+import org.cmh.backend.authentication.model.User;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
+@RestController
+public class UserManagementController {
+ @Autowired
+ private UserManagementService userManagementService;
+
+ @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;
+ }else{
+ return null;
+ }
+ }
+
+ @CrossOrigin(origins = "http://localhost:5173")
+ @GetMapping("/getAll")
+ public List getAll() {
+ List userList=userManagementService.findAll();
+ return userList;
+ }
+
+ @CrossOrigin(origins = "http://localhost:5173")
+ @PostMapping("/update")
+ public User update(@RequestBody User user) {
+ System.out.println(user);
+ userManagementService.update(user);
+ return user;
+ }
+
+ @CrossOrigin(origins = "http://localhost:5173")
+ @PostMapping("/delete")
+ @Transactional
+ public boolean delete(@RequestBody User user) {
+ System.out.println(user);
+ userManagementService.delete(user.getAccount());
+ return true;
+ }
+
+}
+
diff --git a/src/main/java/org/cmh/backend/UserManagement/model/Tenant.java b/src/main/java/org/cmh/backend/UserManagement/model/Tenant.java
new file mode 100644
index 0000000..8782fa0
--- /dev/null
+++ b/src/main/java/org/cmh/backend/UserManagement/model/Tenant.java
@@ -0,0 +1,33 @@
+package org.cmh.backend.UserManagement.model;
+
+
+import jakarta.persistence.*;
+import lombok.Getter;
+import lombok.Setter;
+
+@Table(name="tenant")
+@Entity
+public class Tenant {
+ @Id
+ @Getter
+ @Setter
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ private Long id;
+
+ @Getter
+ @Setter
+ private String contact;
+ @Getter
+ @Setter
+ private String phone;
+ @Getter
+ @Setter
+ private String name;
+ @Getter
+ @Setter
+ private String manager;
+ @Getter
+ @Setter
+ private String symbol;
+
+}
diff --git a/src/main/java/org/cmh/backend/UserManagement/repository/TenantManagementRepository.java b/src/main/java/org/cmh/backend/UserManagement/repository/TenantManagementRepository.java
new file mode 100644
index 0000000..3fd6117
--- /dev/null
+++ b/src/main/java/org/cmh/backend/UserManagement/repository/TenantManagementRepository.java
@@ -0,0 +1,16 @@
+package org.cmh.backend.UserManagement.repository;
+import org.cmh.backend.UserManagement.model.Tenant;
+import org.cmh.backend.authentication.model.User;
+import org.springframework.data.jpa.repository.JpaRepository;
+
+import java.util.List;
+public interface TenantManagementRepository extends JpaRepository{
+ Tenant findByName(String name);
+ Tenant save(Tenant tenant);
+
+ List findAll();
+
+ Tenant findTenantById(Long id);
+
+ Tenant deleteByName(String Name);
+}
diff --git a/src/main/java/org/cmh/backend/UserManagement/repository/UserManagementRepository.java b/src/main/java/org/cmh/backend/UserManagement/repository/UserManagementRepository.java
new file mode 100644
index 0000000..c87d4a3
--- /dev/null
+++ b/src/main/java/org/cmh/backend/UserManagement/repository/UserManagementRepository.java
@@ -0,0 +1,25 @@
+package org.cmh.backend.UserManagement.repository;
+
+
+import org.cmh.backend.authentication.model.User;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Modifying;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Repository
+public interface UserManagementRepository extends JpaRepository {
+ User findByName(String name);
+ User findByAccountAndPassword(String name,String password);
+ User save(User user);
+
+ List findAll();
+
+ User findUserById(Long id);
+
+ User deleteByAccount(String account);
+
+}
diff --git a/src/main/java/org/cmh/backend/UserManagement/service/TenantManagementService.java b/src/main/java/org/cmh/backend/UserManagement/service/TenantManagementService.java
new file mode 100644
index 0000000..ba77df5
--- /dev/null
+++ b/src/main/java/org/cmh/backend/UserManagement/service/TenantManagementService.java
@@ -0,0 +1,27 @@
+package org.cmh.backend.UserManagement.service;
+
+import org.cmh.backend.UserManagement.model.Tenant;
+import org.cmh.backend.UserManagement.repository.TenantManagementRepository;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.List;
+
+@Service
+public class TenantManagementService {
+
+ @Autowired
+ private TenantManagementRepository tenantManagementRepository;
+
+ public Tenant registerTenant(Tenant tenant) {
+ Tenant savedTenant = tenantManagementRepository.save(tenant);
+ return savedTenant;
+ }
+
+ public List findAll(){
+ return tenantManagementRepository.findAll();
+ }
+
+ public Tenant update(Tenant tenant){return tenantManagementRepository.save(tenant);}
+
+ public Tenant delete(String name){return tenantManagementRepository.deleteByName(name);}
+}
diff --git a/src/main/java/org/cmh/backend/UserManagement/service/UserManagementService.java b/src/main/java/org/cmh/backend/UserManagement/service/UserManagementService.java
new file mode 100644
index 0000000..ec5a454
--- /dev/null
+++ b/src/main/java/org/cmh/backend/UserManagement/service/UserManagementService.java
@@ -0,0 +1,31 @@
+package org.cmh.backend.UserManagement.service;
+
+import org.cmh.backend.UserManagement.repository.UserManagementRepository;
+import org.cmh.backend.authentication.model.User;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.List;
+
+@Service
+public class UserManagementService {
+
+ @Autowired
+ private UserManagementRepository userManagementRepository;
+
+
+ public User registerUser(User user) {
+ User savedUser = userManagementRepository.save(user);
+ return savedUser;
+ }
+
+ public List findAll(){
+ return userManagementRepository.findAll();
+ }
+
+ public User findUserById(Long id){return userManagementRepository.findUserById(id);}
+
+ public User update(User user){return userManagementRepository.save(user);}
+
+ public User delete(String account){return userManagementRepository.deleteByAccount(account);}
+
+}
diff --git a/src/main/java/org/cmh/backend/authentication/controller/UserController.java b/src/main/java/org/cmh/backend/authentication/controller/UserController.java
index f4e6aae..63a9c38 100644
--- a/src/main/java/org/cmh/backend/authentication/controller/UserController.java
+++ b/src/main/java/org/cmh/backend/authentication/controller/UserController.java
@@ -4,20 +4,37 @@ import org.cmh.backend.authentication.model.User;
import org.cmh.backend.authentication.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Map;
+
+import static org.springframework.http.ResponseEntity.ok;
@RestController
-@RequestMapping("/users")
public class UserController {
- @Autowired
- private UserService userService;
- @GetMapping("/{username}")
- public ResponseEntity getUser(@PathVariable String username) {
- User user = userService.getUserByUsername(username);
- return ResponseEntity.ok(user);
+ @Autowired
+ private UserService userService;
+ @CrossOrigin(origins = "http://localhost:5173")
+ @PostMapping("/checkLogin")
+ public ResponseEntity login(@RequestBody Map credentials) {
+ String account = credentials.get("account");
+ String password = credentials.get("password");
+
+ User user = userService.getUserByAccountAndPassword(account, password);
+ return ok(user);
+
}
+ @CrossOrigin(origins = "http://localhost:5173")
+ @PostMapping("/checkRegister")
+ public String register(@RequestBody User user) {
+
+ if(userService.registerUser(user) != null){
+ return "注册成功";
+ }else
+ return "注册错误";
+ }
+
+
}
+
diff --git a/src/main/java/org/cmh/backend/authentication/model/User.java b/src/main/java/org/cmh/backend/authentication/model/User.java
index ba9aa53..98d2ab7 100644
--- a/src/main/java/org/cmh/backend/authentication/model/User.java
+++ b/src/main/java/org/cmh/backend/authentication/model/User.java
@@ -4,36 +4,65 @@ import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
+import lombok.Getter;
+import lombok.Setter;
@Entity
public class User {
+ @Setter
+ @Getter
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
- private String username;
+ @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() {
- public Long getId() {
- return id;
}
- public void setId(Long id) {
- this.id = id;
- }
-
- public String getUsername() {
- return username;
- }
-
- public void setUsername(String username) {
- this.username = username;
- }
-
- public String getPassword() {
- return password;
- }
-
- public void setPassword(String password) {
+ public User(String account, String password, String name, String organization, String gender, String email, String phone) {
+ this.account = account;
this.password = password;
+ this.name = name;
+ this.organization = organization;
+ this.gender = gender;
+ this.email = email;
+ this.phone = phone;
+
}
+
+ @Override
+ public String toString() {
+ return "User{" +
+ "id=" + id +
+ ", account='" + account + '\'' +
+ ", password='" + password + '\'' +
+ ", name='" + name + '\'' +
+ ", organization='" + organization + '\'' +
+ ", gender='" + gender + '\'' +
+ ", email='" + email + '\'' +
+ ", phone='" + phone + '\'' +
+ '}';
+ }
+
}
\ No newline at end of file
diff --git a/src/main/java/org/cmh/backend/authentication/repository/UserRepository.java b/src/main/java/org/cmh/backend/authentication/repository/UserRepository.java
index 2c5116e..492004a 100644
--- a/src/main/java/org/cmh/backend/authentication/repository/UserRepository.java
+++ b/src/main/java/org/cmh/backend/authentication/repository/UserRepository.java
@@ -2,7 +2,12 @@ package org.cmh.backend.authentication.repository;
import org.cmh.backend.authentication.model.User;
import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+@Repository
public interface UserRepository extends JpaRepository {
- User findByUsername(String username);
+ User findByName(String name);
+ User findByAccountAndPassword(String name,String password);
+ User save(User user);
+
}
diff --git a/src/main/java/org/cmh/backend/authentication/service/UserService.java b/src/main/java/org/cmh/backend/authentication/service/UserService.java
index 30e5134..ee8a2c6 100644
--- a/src/main/java/org/cmh/backend/authentication/service/UserService.java
+++ b/src/main/java/org/cmh/backend/authentication/service/UserService.java
@@ -3,6 +3,7 @@ package org.cmh.backend.authentication.service;
import org.cmh.backend.authentication.model.User;
import org.cmh.backend.authentication.repository.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
@Service
@@ -11,6 +12,14 @@ public class UserService {
private UserRepository userRepository;
public User getUserByUsername(String username) {
- return userRepository.findByUsername(username);
+ return userRepository.findByName(username);
}
+ public User getUserByAccountAndPassword(String name,String password){return userRepository.findByAccountAndPassword(name,password);}
+
+ public User registerUser(User user) {
+ User savedUser = userRepository.save(user);
+ return savedUser;
+ }
+
+
}