package dell_Fence;
|
import databases.DBConnector;
|
import targets.Fence;
|
import java.sql.ResultSet;
|
import java.sql.SQLException;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
// ΧÀ¸Êý¾Ý²Ù×÷Àà
|
public class Dell_Fence {
|
static List<Fence> fences=null;
|
// »ñÈ¡ËùÓÐΧÀ¸ÐÅÏ¢
|
public static List<Fence> getAllFences() throws SQLException {
|
fences = new ArrayList<>();
|
// ²éѯΧÀ¸±íÊý¾Ý
|
ResultSet rs = DBConnector.queryTableData("fence");
|
|
while (rs.next()) {
|
Fence fence = new Fence();
|
// ÉèÖÃΧÀ¸ÊôÐÔ
|
fence.setId(rs.getString("id"));
|
fence.setFenceType(rs.getString("fence_type"));
|
fence.setFenceName(rs.getString("fence_name"));
|
fence.setRelatedDepartment(rs.getString("related_department"));
|
fence.setShape(rs.getString("shape"));
|
fence.setValidRangeXy(rs.getString("valid_range_xy"));
|
fence.setValidRangeCoordinates(rs.getString("valid_range_coordinates"));
|
fence.setEffectiveTime(rs.getString("effective_time"));
|
fence.setLayer(rs.getString("layer"));
|
fence.setExpirationTime(rs.getString("expiration_time"));
|
fence.setColor(rs.getString("color"));
|
fence.setIsEnabled(rs.getString("is_enabled"));
|
fence.setBottomHeight(rs.getString("bottom_height"));
|
fence.setTopHeight(rs.getString("top_height"));
|
fence.setGatheringRadius(rs.getString("gathering_radius"));
|
fence.setGatheringTime(rs.getString("gathering_time"));
|
fence.setMaxPeople(rs.getString("max_people"));
|
fence.setMinPeople(rs.getString("min_people"));
|
fence.setHazardousMaterial(rs.getString("hazardous_material"));
|
fence.setMaxDuration(rs.getString("max_duration"));
|
fence.setMinDuration(rs.getString("min_duration"));
|
fence.setLatestInspectionTime(rs.getString("latest_inspection_time"));
|
fence.setInspectionOrder(rs.getString("inspection_order"));
|
fence.setInspectionCount(rs.getString("inspection_count"));
|
fence.setSides(rs.getString("sides"));
|
fence.setCanEnter(rs.getString("can_enter"));
|
fence.setCanExit(rs.getString("can_exit"));
|
fence.setConstraintType(rs.getString("constraint_type"));
|
fence.setConstraintDescription(rs.getString("constraint_description"));
|
fence.setCameraNumber(rs.getString("camera_number"));
|
fence.setAddedTime(rs.getString("added_time"));
|
fence.setCompany(rs.getString("company"));
|
fence.setReserved1(rs.getString("reserved1"));
|
fence.setReserved2(rs.getString("reserved2"));
|
fence.setReserved3(rs.getString("reserved3"));
|
fence.setReserved4(rs.getString("reserved4"));
|
fence.setReserved5(rs.getString("reserved5"));
|
fence.setReserved6(rs.getString("reserved6"));
|
fence.setReserved7(rs.getString("reserved7"));
|
fence.setReserved8(rs.getString("reserved8"));
|
fence.setReserved9(rs.getString("reserved9"));
|
fence.setReserved10(rs.getString("reserved10"));
|
|
fences.add(fence);
|
}
|
return fences;
|
}
|
|
// Ð޸ĺóµÄinsertFence·½·¨
|
public static void insertFence(Fence fence) throws SQLException {
|
String sql = "INSERT INTO fence ("
|
+ "fence_type, fence_name, related_department, shape, valid_range_xy, "
|
+ "valid_range_coordinates, effective_time, layer, expiration_time, color, "
|
+ "is_enabled, bottom_height, top_height, gathering_radius, gathering_time, "
|
+ "max_people, min_people, hazardous_material, max_duration, min_duration, "
|
+ "latest_inspection_time, inspection_order, inspection_count, sides, can_enter, "
|
+ "can_exit, constraint_type, constraint_description, camera_number, added_time, "
|
+ "company, reserved1, reserved2, reserved3, reserved4, reserved5, reserved6, "
|
+ "reserved7, reserved8, reserved9, reserved10"
|
+ ") VALUES ("
|
+ "?, ?, ?, ?, ?, ?, ?, ?, ?, ?, "
|
+ "?, ?, ?, ?, ?, ?, ?, ?, ?, ?, "
|
+ "?, ?, ?, ?, ?, ?, ?, ?, ?, ?, "
|
+ "?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; // Ð޸Ĵ˴¦£ºÔö¼ÓÒ»¸öÎʺÅ
|
|
DBConnector.executeUpdate(sql,
|
fence.getFenceType(),
|
fence.getFenceName(),
|
fence.getRelatedDepartment(),
|
fence.getShape(),
|
fence.getValidRangeXy(),
|
fence.getValidRangeCoordinates(),
|
fence.getEffectiveTime(),
|
fence.getLayer(),
|
fence.getExpirationTime(),
|
fence.getColor(),
|
fence.getIsEnabled(),
|
fence.getBottomHeight(),
|
fence.getTopHeight(),
|
fence.getGatheringRadius(),
|
fence.getGatheringTime(),
|
fence.getMaxPeople(),
|
fence.getMinPeople(),
|
fence.getHazardousMaterial(),
|
fence.getMaxDuration(),
|
fence.getMinDuration(),
|
fence.getLatestInspectionTime(),
|
fence.getInspectionOrder(),
|
fence.getInspectionCount(),
|
fence.getSides(),
|
fence.getCanEnter(),
|
fence.getCanExit(),
|
fence.getConstraintType(),
|
fence.getConstraintDescription(),
|
fence.getCameraNumber(),
|
fence.getAddedTime(),
|
fence.getCompany(),
|
fence.getReserved1(),
|
fence.getReserved2(),
|
fence.getReserved3(),
|
fence.getReserved4(),
|
fence.getReserved5(),
|
fence.getReserved6(),
|
fence.getReserved7(),
|
fence.getReserved8(),
|
fence.getReserved9(),
|
fence.getReserved10()
|
);
|
}
|
|
// ɾ³ýΧÀ¸
|
public static void deleteFence(String fenceId) throws SQLException {
|
String sql = "DELETE FROM fence WHERE id = ?";
|
DBConnector.executeUpdate(sql, fenceId);
|
}
|
|
// »ñÈ¡ËùÓÐΧÀ¸Ãû³ÆµÄ×Ö·û´®Êý×é
|
public static String[] getAllFenceNames() {
|
if (fences == null || fences.isEmpty()) {
|
return new String[0];
|
}
|
|
String[] fenceNames = new String[fences.size()];
|
for (int i = 0; i < fences.size(); i++) {
|
fenceNames[i] = fences.get(i).getFenceName();
|
}
|
return fenceNames;
|
}
|
|
// ¼ì²éΧÀ¸Ãû³ÆÊÇ·ñ´æÔÚ
|
public static boolean isFenceNameExists(String fenceName) {
|
if (fences == null) return false;
|
for (Fence f : fences) {
|
if (fenceName.equals(f.getFenceName())) {
|
return true;
|
}
|
}
|
return false;
|
}
|
|
// ¸ù¾ÝID»ñȡΧÀ¸
|
public static Fence getFenceById(String fenceId) throws SQLException {
|
String sql = "SELECT * FROM fence WHERE id = ?";
|
try (ResultSet rs = DBConnector.executeQuery(sql, fenceId)) {
|
if (rs.next()) {
|
Fence fence = new Fence();
|
fence.setId(rs.getString("id"));
|
fence.setFenceType(rs.getString("fence_type"));
|
fence.setFenceName(rs.getString("fence_name"));
|
fence.setRelatedDepartment(rs.getString("related_department"));
|
fence.setShape(rs.getString("shape"));
|
fence.setValidRangeXy(rs.getString("valid_range_xy"));
|
fence.setValidRangeCoordinates(rs.getString("valid_range_coordinates"));
|
fence.setEffectiveTime(rs.getString("effective_time"));
|
fence.setLayer(rs.getString("layer"));
|
fence.setExpirationTime(rs.getString("expiration_time"));
|
fence.setColor(rs.getString("color"));
|
fence.setIsEnabled(rs.getString("is_enabled"));
|
fence.setBottomHeight(rs.getString("bottom_height"));
|
fence.setTopHeight(rs.getString("top_height"));
|
fence.setGatheringRadius(rs.getString("gathering_radius"));
|
fence.setGatheringTime(rs.getString("gathering_time"));
|
fence.setMaxPeople(rs.getString("max_people"));
|
fence.setMinPeople(rs.getString("min_people"));
|
fence.setHazardousMaterial(rs.getString("hazardous_material"));
|
fence.setMaxDuration(rs.getString("max_duration"));
|
fence.setMinDuration(rs.getString("min_duration"));
|
fence.setLatestInspectionTime(rs.getString("latest_inspection_time"));
|
fence.setInspectionOrder(rs.getString("inspection_order"));
|
fence.setInspectionCount(rs.getString("inspection_count"));
|
fence.setSides(rs.getString("sides"));
|
fence.setCanEnter(rs.getString("can_enter"));
|
fence.setCanExit(rs.getString("can_exit"));
|
fence.setConstraintType(rs.getString("constraint_type"));
|
fence.setConstraintDescription(rs.getString("constraint_description"));
|
fence.setCameraNumber(rs.getString("camera_number"));
|
fence.setAddedTime(rs.getString("added_time"));
|
fence.setCompany(rs.getString("company"));
|
fence.setReserved1(rs.getString("reserved1"));
|
fence.setReserved2(rs.getString("reserved2"));
|
fence.setReserved3(rs.getString("reserved3"));
|
fence.setReserved4(rs.getString("reserved4"));
|
fence.setReserved5(rs.getString("reserved5"));
|
fence.setReserved6(rs.getString("reserved6"));
|
fence.setReserved7(rs.getString("reserved7"));
|
fence.setReserved8(rs.getString("reserved8"));
|
fence.setReserved9(rs.getString("reserved9"));
|
fence.setReserved10(rs.getString("reserved10"));
|
return fence;
|
}
|
}
|
return null; // δÕÒµ½·µ»Ønull
|
}
|
|
// »ñÈ¡ÌØ¶¨ÀàÐ͵ÄΧÀ¸Áбí
|
public static List<Fence> getFencesByType(String fenceType) throws SQLException {
|
List<Fence> fences = new ArrayList<>();
|
String sql = "SELECT * FROM fence WHERE fence_type = ?";
|
try (ResultSet rs = DBConnector.executeQuery(sql, fenceType)) {
|
while (rs.next()) {
|
Fence fence = new Fence();
|
fence.setId(rs.getString("id"));
|
fence.setFenceType(rs.getString("fence_type"));
|
fence.setFenceName(rs.getString("fence_name"));
|
fence.setRelatedDepartment(rs.getString("related_department"));
|
fence.setShape(rs.getString("shape"));
|
fence.setValidRangeXy(rs.getString("valid_range_xy"));
|
fence.setValidRangeCoordinates(rs.getString("valid_range_coordinates"));
|
fence.setEffectiveTime(rs.getString("effective_time"));
|
fence.setLayer(rs.getString("layer"));
|
fence.setExpirationTime(rs.getString("expiration_time"));
|
fence.setColor(rs.getString("color"));
|
fence.setIsEnabled(rs.getString("is_enabled"));
|
fence.setBottomHeight(rs.getString("bottom_height"));
|
fence.setTopHeight(rs.getString("top_height"));
|
fence.setGatheringRadius(rs.getString("gathering_radius"));
|
fence.setGatheringTime(rs.getString("gathering_time"));
|
fence.setMaxPeople(rs.getString("max_people"));
|
fence.setMinPeople(rs.getString("min_people"));
|
fence.setHazardousMaterial(rs.getString("hazardous_material"));
|
fence.setMaxDuration(rs.getString("max_duration"));
|
fence.setMinDuration(rs.getString("min_duration"));
|
fence.setLatestInspectionTime(rs.getString("latest_inspection_time"));
|
fence.setInspectionOrder(rs.getString("inspection_order"));
|
fence.setInspectionCount(rs.getString("inspection_count"));
|
fence.setSides(rs.getString("sides"));
|
fence.setCanEnter(rs.getString("can_enter"));
|
fence.setCanExit(rs.getString("can_exit"));
|
fence.setConstraintType(rs.getString("constraint_type"));
|
fence.setConstraintDescription(rs.getString("constraint_description"));
|
fence.setCameraNumber(rs.getString("camera_number"));
|
fence.setAddedTime(rs.getString("added_time"));
|
fence.setCompany(rs.getString("company"));
|
fences.add(fence);
|
}
|
}
|
return fences;
|
}
|
}
|