package fence;
|
import java.awt.geom.Point2D;
|
import java.util.List;
|
|
import Method.GetNowTime;
|
import Method.InsertData;
|
import PbuliClass.IsInStartAndEndTime;
|
import PbuliClass.IsPtInPoly;
|
import PbuliClass.ShowMessage;
|
import person.Person;
|
import person.person_Dell;
|
import tbDataModel.TbFence;
|
|
/**ÅжϵãÊÇ·ñ³öÈ¥¸æ¾¯ÇøÓòÄÚ*/
|
public class PointIsInOutWarning {
|
|
|
public static void is_in_warning_fence(
|
List<TbFence> warning_fences,
|
int size,
|
String tagid,
|
String intime,
|
int x,
|
int y,
|
String floor,
|
Point2D.Double point
|
) {
|
Person person=person_Dell.get_Person(tagid);
|
if(person ==null) {//Èç¹û±êÇ©²»´æÔÚ
|
return;
|
}
|
|
if(size ==0) {//Èç¹ûΧÀ¸ÇøÓò²»´æÔÚÔòÍ˳ö
|
return;
|
}
|
|
for(int i=0;i<size;i++) {
|
TbFence warning_fence=warning_fences.get(i);
|
String bumen=person.getP_department();
|
String bumen1=warning_fence.getBumen();
|
String qiyong=warning_fence.getBaoliu7();
|
if(qiyong.equals("0")) {//Èç¹ûΧÀ¸Ã»ÓÐÆôÓÃ
|
continue;
|
}
|
if(!bumen.equals(bumen1)) {//Èç¹û²¿ÃŲ»Ò»ÖÂÔò¼ÌÐø
|
continue;
|
}
|
String ceng=warning_fence.getFloor();//ΧÀ¸ÇøÓòËùÔڵIJ㲻һÖÂ
|
String allFnece = warning_fence.getBaoliu10();
|
if(!ceng.equals(floor)&&!allFnece.equals("1")) {
|
continue;
|
}
|
String startime=warning_fence.getStart();//ΧÀ¸ÉúЧ¿ªÊ¼Ê±¼ä
|
String stoptime=warning_fence.getStop();//ΧÀ¸ÉúЧ½áÊøÊ±¼ä
|
boolean zai=IsInStartAndEndTime.belongCalendar(intime, startime, stoptime);//ÅжÏÊÇ·ñÔÚΧÀ¸ÉúЧµÄʱ¼äÄÚ
|
if(!zai) {//ÔÚΧÀ¸ÉúЧʱ¼äÄÚÍ˳ö
|
continue;
|
}
|
boolean ispoly=IsPtInPoly.inPoly(point, warning_fence.getPts());//ÅжÏID×ø±êÊÇ·ñÔÚΧÀ¸ÇøÓòÄÚ
|
if(!ispoly) {//Èç¹ûÔÚ¸æ¾¯ÇøÓòÄÚ
|
boolean isin=person.isOutwarning();//ÈËÔ±ÊÇ·ñÒѾ´¦ÓÚΧÀ¸ÇøÓòÍâ
|
person.setP_fence("2");
|
String name=person.getP_name();
|
String area=warning_fence.getName();//ÇøÓòÃû³Æ
|
if(isin) {
|
ShowMessage.zidingyi(name+"("+tagid+")³ö"+area+"±¨¾¯\n"+GetNowTime.timestamp2());//Êý¾Ý¿âÖÐÌí¼ÓÒ»Ìõ¼Ç¼
|
Kongzhizhengdong.contril(tagid,"³öÇøÓò¸æ¾¯");//¿ØÖÆÕ𶯻òÕß·äÃù
|
Palyvoice.play("outwarning.wav");
|
return;
|
}
|
|
ShowMessage.zidingyi(name+"("+tagid+")³ö"+area+"±¨¾¯\n"+GetNowTime.timestamp2());//Êý¾Ý¿âÖÐÌí¼ÓÒ»Ìõ¼Ç¼
|
InsertData.into_database("³öÈ¥¸æ¾¯",area,name,bumen,tagid,intime,"","");
|
Palyvoice.play("outwarning.wav");
|
Kongzhizhengdong.contril(tagid,"³öÇøÓò¸æ¾¯");//¿ØÖÆÕ𶯻òÕß·äÃù
|
person_Dell.alert_isin_fence(tagid, "1",area);//±êÇ©½øÈë¸æ¾¯ÇøÓò½«ÊµÊ±Î»ÖÃÖи澯״̬ÐÞ¸ÄΪ1
|
person.setOutwarning(true);
|
return;
|
}
|
}
|
|
person.setP_fence("0");
|
person.setOutwarning(false);
|
}
|
}
|