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 fences=null; // »ñÈ¡ËùÓÐΧÀ¸ÐÅÏ¢ public static List 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 getFencesByType(String fenceType) throws SQLException { List 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; } }