zsh_root
2024-01-02 7b595546af704983dbafcd0d385c8768ddacefc2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
package fence;
import java.awt.geom.Point2D;
import java.util.Vector;
 
import Judge.JugeNumber;
import Method.GetNowTime;
import Method.InsertData;
import PbuliClass.IsPtInPoly;
import PbuliClass.ShowMessage;
import jiekou.Warnig;
import person.Person;
import person.person_Dell;
import tbDataModel.TbFence;
 
/**³¬Ô±±¨¾¯*/
public class Pointchaoyuan {
    static Vector<Person> cyvc=new Vector<Person>();
    public static void isinchaoyuan(String tagid,int x,int y,String floor,int size) {        
        Person person=person_Dell.get_Person(tagid);
        if(person==null) {//ÈËÔ±²»´æÔÚÔÚÔòÍ˳ö
            return;
        }
 
        for(int i=0;i<size;i++) {
            TbFence fc=Fences.getChaoyuan_fences().get(i);
            String baoliu2=fc.getBaoliu2();
            if( baoliu2==null) {
                continue;
            }
            if(!JugeNumber.isDigit(baoliu2)) {//Èç¹ûΧÀ¸ÎÞÏÞÖÆÔò½øÈëÏÂÒ»¸öÑ­»·
                continue;
            }            
            String fcfloor=fc.getFloor();
            String allFnece = fc.getBaoliu10();
            if(floor.equals(fcfloor)&&!allFnece.equals("1")) {//±êÇ©ËùÔÚ²ãºÍΧÀ¸ÔÚÒ»²ã
                Point2D.Double point=new Point2D.Double(x,y);
                boolean isin=IsPtInPoly.inPoly(point, fc.getPts());
                String area=fc.getName();
                boolean a=serch(tagid,area);//²éÏÂÈËÊÇ·ñÒѾ­ÔÚ¸ÄΧÀ¸ÄÚ
                if(isin) {//Èç¹ûÔÚÇøÓòÄÚ
                    int numxianzhi=Integer.parseInt(baoliu2);
                    int num=num(area);
                    if(!a) {//Èç¹ûÈ˲»ÔÚ¼¯ºÏÄÚ
                        person.setChaoyuanquname(area);
                        cyvc.add(person);                        
                        if(num>numxianzhi) {//Èç¹ûΧÀ¸ÄÚÈËÊý´óÓÚÏÞÖÆÈËÊý
                            ShowMessage.zidingyi(area+"µ±Ç°ÊýÁ¿"+num+"³¬¹ýÏÞÖÆÊýÁ¿"+numxianzhi+"±¨¾¯");
                            String name=person.getP_name();
                            String bumen=person.getP_department();
                            String intime=GetNowTime.now();
                            InsertData.into_database("³¬Ô±±¨¾¯",area,name,bumen,tagid,intime,"","");
                            person.setP_fence("3");
                            Warnig.chaoyuan(area, fcfloor, String.valueOf(num), String.valueOf(numxianzhi));
                            Kongzhizhengdong.contril(tagid,"ËùÔÚÇøÓòÒѳ¬Ô±");//¿ØÖÆÕ𶯻òÕß·äÃù
                        }
                    }else {
                        if(num>numxianzhi) {//Èç¹ûΧÀ¸ÄÚÈËÊý´óÓÚÏÞÖÆÈËÊý
                            Warnig.chaoyuan(area, fcfloor, String.valueOf(num), String.valueOf(numxianzhi));
                            ShowMessage.zidingyi(area+"µ±Ç°ÊýÁ¿"+num+"³¬¹ýÏÞÖÆÊýÁ¿"+numxianzhi+"±¨¾¯");
                            Kongzhizhengdong.contril(tagid,"ËùÔÚÇøÓòÒѳ¬Ô±");//¿ØÖÆÕ𶯻òÕß·äÃù
                        }
                    }
                }else {
                    if(a) {
                        cyvc.removeElement(person);
                        person.setP_fence("0");
                    }
                }
            }            
        }
 
 
 
    }
 
    /**´Ó¼¯ºÏÖÐѰÕÒij¸öÈË*/
    public static boolean serch(String tagid,String area) {
        boolean a=false;
        int size=cyvc.size();
        if(size !=0) {
            for(int i=0;i<size;i++) {
                Person b=cyvc.get(i);
                String tagid1=b.getP_tagid();
                String area1=b.getChaoyuanquname();
                if(tagid.equals(tagid1) && area.equals(area1)) {
                    a=true;
                    break;
                }
            }
        }
        return a;
 
    }
 
    /**´Ó¼¯ºÏÖÐѰÕÒij¸öÈË*/
    public static boolean serch(String tagid) {
        boolean a=false;
        int size=cyvc.size();
        if(size !=0) {
            for(int i=0;i<size;i++) {
                Person b=cyvc.get(i);
                String tagid1=b.getP_tagid();
                if(tagid.equals(tagid1) ) {
                    a=true;
                    break;
                }
            }
        }
        return a;
 
    }
 
    /**´Ó¼¯ºÏÖÐѰÕÒij¸öΧÀ¸ÖÐÈËÔ±×ÜÊý*/
    public static int num(String area) {
        int num=0;
        int size=cyvc.size();
        if(size !=0) {
            for(int i=0;i<size;i++) {
                Person b=cyvc.get(i);
                String area1=b.getChaoyuanquname();
                if(area.equals(area1)) {
                    num=num+1;
                }
            }
        }
        return num;
 
    }
 
}