diff --git a/IDEA/src/main/java/com/example/api/repository/CodeRepository.java b/IDEA/src/main/java/com/example/api/repository/CodeRepository.java new file mode 100644 index 00000000..8f9a0fe2 --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/CodeRepository.java @@ -0,0 +1,22 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Code; // 导入Code实体类 +import org.springframework.data.jpa.repository.JpaRepository; // 继承JPA仓库接口 +import org.springframework.stereotype.Repository; // 标识这是一个Repository组件 + +/** + * 验证码仓库接口,用于数据库操作。 + */ +// 使用@Repository注解标识这是一个Spring组件,通常用于数据访问层 +@Repository +public interface CodeRepository extends JpaRepository { + + /** + * 根据邮箱和值查找验证码。 + * @param email 用户的邮箱 + * @param value 验证码的值 + * @return 匹配的验证码对象,如果没有找到则返回null + */ + Code findByEmailAndValue(String email, String value); + +} diff --git a/IDEA/src/main/java/com/example/api/repository/CommodityRepository.java b/IDEA/src/main/java/com/example/api/repository/CommodityRepository.java new file mode 100644 index 00000000..be260209 --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/CommodityRepository.java @@ -0,0 +1,30 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Commodity; // 导入Commodity实体类 +import org.springframework.data.jpa.repository.JpaRepository; // 继承JPA仓库接口 +import org.springframework.stereotype.Repository; // 标识这是一个Repository组件 + +import java.util.List; // 导入List类,用于返回多个结果 + +/** + * 商品仓库接口,用于数据库操作。 + */ +// 使用@Repository注解标识这是一个Spring组件,通常用于数据访问层 +@Repository +public interface CommodityRepository extends JpaRepository { + + /** + * 根据商品名称精确查找商品。 + * @param name 商品的名称 + * @return 匹配的商品对象,如果没有找到则返回null + */ + Commodity findByName(String name); + + /** + * 根据商品名称模糊查找商品。 + * @param name 商品名称的模糊匹配字符串 + * @return 匹配的所有商品对象列表 + */ + List findByNameLike(String name); + +} \ No newline at end of file diff --git a/IDEA/src/main/java/com/example/api/repository/DistributionRepository.java b/IDEA/src/main/java/com/example/api/repository/DistributionRepository.java new file mode 100644 index 00000000..fc28e95e --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/DistributionRepository.java @@ -0,0 +1,9 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Distribution; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface DistributionRepository extends JpaRepository { +} diff --git a/IDEA/src/main/java/com/example/api/repository/DriverRepository.java b/IDEA/src/main/java/com/example/api/repository/DriverRepository.java new file mode 100644 index 00000000..65f33d73 --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/DriverRepository.java @@ -0,0 +1,36 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Driver; // 导入Driver实体类 +import org.springframework.data.jpa.repository.JpaRepository; // 继承JPA仓库接口 +import org.springframework.data.jpa.repository.Modifying; // 注解,用于标识修改数据库的操作 +import org.springframework.data.jpa.repository.Query; // 注解,用于执行自定义的JPQL或SQL查询 +import org.springframework.stereotype.Repository; // 标识这是一个Repository组件 +import org.springframework.transaction.annotation.Transactional; // 注解,用于声明事务性方法 + +import java.util.List; // 导入List类,用于返回多个结果 + +/** + * 驾驶员仓库接口,用于数据库操作。 + */ +// 使用@Repository注解标识这是一个Spring组件,通常用于数据访问层 +@Repository +public interface DriverRepository extends JpaRepository { + + /** + * 更新指定驾驶员的驾驶状态。 + * @param driving 新的驾驶状态 + * @param id 驾驶员的ID + */ + @Modifying // 标识这是一个修改操作 + @Transactional // 标识这是一个事务性方法 + @Query("update Driver d set d.driving = ?1 where d.id = ?2") // JPQL查询,用于更新操作 + void updateDriving(boolean driving, String id); + + /** + * 查找所有驾驶状态为指定值的驾驶员。 + * @param driving 驾驶状态 + * @return 匹配的驾驶员列表 + */ + List findAllByDriving(boolean driving); + +} diff --git a/IDEA/src/main/java/com/example/api/repository/EmployeeRepository.java b/IDEA/src/main/java/com/example/api/repository/EmployeeRepository.java new file mode 100644 index 00000000..89f4ae65 --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/EmployeeRepository.java @@ -0,0 +1,9 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Employee; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface EmployeeRepository extends JpaRepository { +} diff --git a/IDEA/src/main/java/com/example/api/repository/InventoryRecordRepository.java b/IDEA/src/main/java/com/example/api/repository/InventoryRecordRepository.java new file mode 100644 index 00000000..936a3f7d --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/InventoryRecordRepository.java @@ -0,0 +1,37 @@ +package com.example.api.repository; + +import com.example.api.model.entity.InventoryRecord; // 导入InventoryRecord实体类 +import org.springframework.data.jpa.repository.JpaRepository; // 继承JPA仓库接口 +import org.springframework.stereotype.Repository; // 标识这是一个Repository组件 + +import java.util.List; // 导入List类,用于返回多个结果 + +/** + * 库存记录仓库接口,用于数据库操作。 + */ +// 使用@Repository注解标识这是一个Spring组件,通常用于数据访问层 +@Repository +public interface InventoryRecordRepository extends JpaRepository { + + /** + * 根据仓库ID查找所有库存记录。 + * @param wid 仓库ID + * @return 与指定仓库ID相关的所有库存记录列表 + */ + List findAllByWid(String wid); + + /** + * 根据库存记录类型查找所有库存记录。 + * @param type 库存记录类型(例如:-1表示出库,+1表示入库) + * @return 与指定类型相关的所有库存记录列表 + */ + List findAllByType(Integer type); + + /** + * 根据商品信息ID查找所有库存记录。 + * @param cid 商品信息ID + * @return 与指定商品信息ID相关的所有库存记录列表 + */ + List findAllByCid(String cid); + +} diff --git a/IDEA/src/main/java/com/example/api/repository/InventoryRepository.java b/IDEA/src/main/java/com/example/api/repository/InventoryRepository.java new file mode 100644 index 00000000..e9c06253 --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/InventoryRepository.java @@ -0,0 +1,38 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Inventory; // 导入Inventory实体类 +import org.springframework.data.jpa.repository.JpaRepository; // 继承JPA仓库接口 +import org.springframework.stereotype.Repository; // 标识这是一个Repository组件 + +import java.util.List; // 导入List类,用于返回多个结果 + +/** + * 库存仓库接口,用于数据库操作。 + */ +// 使用@Repository注解标识这是一个Spring组件,通常用于数据访问层 +@Repository +public interface InventoryRepository extends JpaRepository { + + /** + * 根据仓库ID和商品信息ID查找库存。 + * @param wid 仓库ID + * @param cid 商品信息ID + * @return 匹配的库存对象,如果没有找到则返回null + */ + Inventory findByWidAndCid(String wid, String cid); + + /** + * 根据商品信息ID查找所有库存记录。 + * @param cid 商品信息ID + * @return 与指定商品信息ID相关的所有库存记录列表 + */ + List findAllByCid(String cid); + + /** + * 根据仓库ID查找所有库存记录。 + * @param wid 仓库ID + * @return 与指定仓库ID相关的所有库存记录列表 + */ + List findAllByWid(String wid); + +} diff --git a/IDEA/src/main/java/com/example/api/repository/LoginLogRepository.java b/IDEA/src/main/java/com/example/api/repository/LoginLogRepository.java new file mode 100644 index 00000000..7b161267 --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/LoginLogRepository.java @@ -0,0 +1,9 @@ +package com.example.api.repository; + +import com.example.api.model.entity.LoginLog; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface LoginLogRepository extends JpaRepository { +} diff --git a/IDEA/src/main/java/com/example/api/repository/SaleRepository.java b/IDEA/src/main/java/com/example/api/repository/SaleRepository.java new file mode 100644 index 00000000..010721c6 --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/SaleRepository.java @@ -0,0 +1,18 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Sale; // 导入Sale实体类 +import org.springframework.data.jpa.repository.JpaRepository; // 导入Spring Data JPA的JpaRepository接口 +import org.springframework.stereotype.Repository; // 导入Spring的@Repository注解,用于声明这是一个Repository + +import java.util.List; // 导入List接口,用于返回列表类型的数据 + +// 使用@Repository注解声明这是一个Repository,通常用于数据库操作 +@Repository +// 声明这是一个SaleRepository接口,它继承了JpaRepository接口 +public interface SaleRepository extends JpaRepository { + + // 定义一个方法findAllByCompanyLike,用于根据公司名称模糊查询销售记录 + // 这个方法会根据传入的参数name,查询company字段中包含name字符串的所有Sale记录 + List findAllByCompanyLike(String name); + +} diff --git a/IDEA/src/main/java/com/example/api/repository/SystemLogRepository.java b/IDEA/src/main/java/com/example/api/repository/SystemLogRepository.java new file mode 100644 index 00000000..f847ba94 --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/SystemLogRepository.java @@ -0,0 +1,14 @@ +package com.example.api.repository; + +import com.example.api.model.entity.SystemLog; +import org.springframework.data.jpa.domain.Specification; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.JpaSpecificationExecutor; +import org.springframework.data.jpa.repository.Query; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository +public interface SystemLogRepository extends JpaRepository, JpaSpecificationExecutor { +} diff --git a/IDEA/src/main/java/com/example/api/repository/UserRepository.java b/IDEA/src/main/java/com/example/api/repository/UserRepository.java new file mode 100644 index 00000000..2942c52c --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/UserRepository.java @@ -0,0 +1,9 @@ +package com.example.api.repository; + +import com.example.api.model.entity.User; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface UserRepository extends JpaRepository { +} diff --git a/IDEA/src/main/java/com/example/api/repository/VehicleRepository.java b/IDEA/src/main/java/com/example/api/repository/VehicleRepository.java new file mode 100644 index 00000000..3b67432e --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/VehicleRepository.java @@ -0,0 +1,36 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Vehicle; // 导入Vehicle实体类 +import org.springframework.data.jpa.repository.JpaRepository; // 继承JPA仓库接口 +import org.springframework.data.jpa.repository.Modifying; // 注解,用于标识修改数据库的操作 +import org.springframework.data.jpa.repository.Query; // 注解,用于执行自定义的JPQL或SQL查询 +import org.springframework.stereotype.Repository; // 标识这是一个Repository组件 +import org.springframework.transaction.annotation.Transactional; // 注解,用于声明事务性方法 + +import java.util.List; // 导入List类,用于返回多个结果 + +/** + * 车辆仓库接口,用于数据库操作。 + */ +// 使用@Repository注解标识这是一个Spring组件,通常用于数据访问层 +@Repository +public interface VehicleRepository extends JpaRepository { + + /** + * 更新指定车辆的驾驶状态。 + * @param driving 新的驾驶状态,true表示正在驾驶,false表示未在驾驶 + * @param id 车辆的ID + */ + @Modifying // 标识这是一个修改操作 + @Transactional // 标识这是一个事务性方法 + @Query("update Vehicle v set v.driving = ?1 where v.id = ?2") // JPQL查询,用于更新操作 + void updateDriving(boolean driving, String id); + + /** + * 查找所有驾驶状态为指定值的车辆。 + * @param driving 驾驶状态,true表示正在驾驶,false表示未在驾驶 + * @return 匹配的 vehicles 列表 + */ + List findAllByDriving(boolean driving); + +} diff --git a/IDEA/src/main/java/com/example/api/repository/WareHouseRepository.java b/IDEA/src/main/java/com/example/api/repository/WareHouseRepository.java new file mode 100644 index 00000000..4e938dde --- /dev/null +++ b/IDEA/src/main/java/com/example/api/repository/WareHouseRepository.java @@ -0,0 +1,9 @@ +package com.example.api.repository; + +import com.example.api.model.entity.Warehouse; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +@Repository +public interface WareHouseRepository extends JpaRepository { +}