| | |
| | | |
| | | import java.io.IOException; |
| | | import java.io.OutputStream; |
| | | import java.math.BigDecimal; |
| | | import java.text.ParseException; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.Iterator; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | |
| | |
| | | import com.hxzkoa.json.tb_anchor_nearby; |
| | | import com.hxzkoa.json.tb_department; |
| | | import com.hxzkoa.json.tb_fence; |
| | | import com.hxzkoa.json.tb_fence2; |
| | | import com.hxzkoa.json.tb_map; |
| | | import com.hxzkoa.json.tb_shipin; |
| | | import com.hxzkoa.json.tb_system; |
| | | import com.hxzkoa.json.tb_tag; |
| | | import com.hxzkoa.json.tb_tongbuanchor; |
| | | import com.hxzkoa.json.tb_xunjianbaobiao; |
| | | import com.hxzkoa.json.tb_xunjianset; |
| | | import com.hxzkoa.services.AttendanceService; |
| | | import com.hxzkoa.services.BasicInfoService; |
| | | import com.hxzkoa.services.FenceService; |
| | | import com.hxzkoa.services.LabelService; |
| | | import com.hxzkoa.services.SysSettingService; |
| | | import com.hxzkoa.services.ZhwService; |
| | | import com.hxzkoa.udp.GetNowTime; |
| | | import com.hxzkoa.udp.Udp_Out; |
| | | /*import com.hxzkoa.udp.Udp_Receive;*/ |
| | |
| | | @Autowired |
| | | private FenceService fenceService; |
| | | @Autowired |
| | | private ZhwService ZhwService; |
| | | @Autowired |
| | | private BasicInfoService basicInfoService; |
| | | @Autowired |
| | | private LabelService labelService; |
| | | @Autowired |
| | | private SysSettingService sysSettingService; |
| | | @Autowired |
| | | private AttendanceService attendanceService; |
| | | |
| | | @RequestMapping(value = "/fenceList.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public String fenceList(HttpServletRequest request) throws ParseException { |
| | |
| | | return toPage; |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/fenceLista.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public JSONObject fenceLista(HttpServletRequest request) throws ParseException { |
| | | JSONObject json = new JSONObject(); |
| | | List<tb_fence2> fenceList = fenceService.getFenceListaaa(); |
| | | if (fenceList.size() > 0) { |
| | | double xmaxz = Double.parseDouble(fenceList.get(0).getZuobiao()[0].split(",")[0]); |
| | | double ymaxz = Double.parseDouble(fenceList.get(0).getZuobiao()[0].split(",")[1]); |
| | | double xminz = Double.parseDouble(fenceList.get(0).getZuobiao()[0].split(",")[0]); |
| | | double yminz = Double.parseDouble(fenceList.get(0).getZuobiao()[0].split(",")[1]); |
| | | for(int i = 0; i < fenceList.size(); i++) { |
| | | Map<BigDecimal,BigDecimal> bigDecimals = new HashMap<>(); |
| | | String[] aaa = fenceList.get(i).getZuobiao(); |
| | | for(int j = 0; j < aaa.length; j++) { |
| | | String[] bbb = aaa[j].split(","); |
| | | bigDecimals.put(new BigDecimal(bbb[0]),new BigDecimal(bbb[1])); |
| | | } |
| | | String vvv = getPoint(bigDecimals); |
| | | fenceList.get(i).setCenterpoint(vvv); |
| | | String[] zuobiaos = fenceList.get(i).getZuobiao(); |
| | | double xmax = Double.parseDouble(zuobiaos[0].split(",")[0]); |
| | | double ymax = Double.parseDouble(zuobiaos[0].split(",")[1]); |
| | | double xmin = Double.parseDouble(zuobiaos[0].split(",")[0]); |
| | | double ymin = Double.parseDouble(zuobiaos[0].split(",")[1]); |
| | | for (int j = 0;j < zuobiaos.length; j++) { |
| | | String[] zuobiao = zuobiaos[j].split(","); |
| | | if (Double.parseDouble(zuobiao[0]) > xmax) { |
| | | xmax = Double.parseDouble(zuobiao[0]); |
| | | } |
| | | if (Double.parseDouble(zuobiao[1]) > ymax) { |
| | | ymax = Double.parseDouble(zuobiao[1]); |
| | | } |
| | | if (Double.parseDouble(zuobiao[0]) < xmin) { |
| | | xmin = Double.parseDouble(zuobiao[0]); |
| | | } |
| | | if (Double.parseDouble(zuobiao[1]) < ymin) { |
| | | ymin = Double.parseDouble(zuobiao[1]); |
| | | } |
| | | } |
| | | if (xmax > xmaxz) { |
| | | xmaxz = xmax; |
| | | } |
| | | if (ymax > ymaxz) { |
| | | ymaxz = ymax; |
| | | } |
| | | if (xmin < xminz) { |
| | | xminz = xmin; |
| | | } |
| | | if (ymin < yminz) { |
| | | yminz = ymin; |
| | | } |
| | | } |
| | | for (int i = 0; i < fenceList.size(); i++) { |
| | | fenceList.get(i).setMax(xmaxz+","+ymaxz); |
| | | fenceList.get(i).setMin(xminz+","+yminz); |
| | | } |
| | | } |
| | | json.put("dataList", fenceList); |
| | | return json; |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/findidfence.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public JSONObject findidfence(HttpServletRequest request) throws ParseException { |
| | | JSONObject json = new JSONObject(); |
| | | List<tb_fence2> fenceList = fenceService.getFenceListm(); |
| | | if (fenceList.size() > 0) { |
| | | double xmaxz = Double.parseDouble(fenceList.get(0).getZuobiao()[0].split(",")[0]); |
| | | double ymaxz = Double.parseDouble(fenceList.get(0).getZuobiao()[0].split(",")[1]); |
| | | double xminz = Double.parseDouble(fenceList.get(0).getZuobiao()[0].split(",")[0]); |
| | | double yminz = Double.parseDouble(fenceList.get(0).getZuobiao()[0].split(",")[1]); |
| | | for(int i = 0; i < fenceList.size(); i++) { |
| | | Map<BigDecimal,BigDecimal> bigDecimals = new HashMap<>(); |
| | | String[] aaa = fenceList.get(i).getZuobiao(); |
| | | for(int j = 0; j < aaa.length; j++) { |
| | | String[] bbb = aaa[j].split(","); |
| | | bigDecimals.put(new BigDecimal(bbb[0]),new BigDecimal(bbb[1])); |
| | | } |
| | | String vvv = getPoint(bigDecimals); |
| | | fenceList.get(i).setCenterpoint(vvv); |
| | | String[] zuobiaos = fenceList.get(i).getZuobiao(); |
| | | double xmax = Double.parseDouble(zuobiaos[0].split(",")[0]); |
| | | double ymax = Double.parseDouble(zuobiaos[0].split(",")[1]); |
| | | double xmin = Double.parseDouble(zuobiaos[0].split(",")[0]); |
| | | double ymin = Double.parseDouble(zuobiaos[0].split(",")[1]); |
| | | for (int j = 0;j < zuobiaos.length; j++) { |
| | | String[] zuobiao = zuobiaos[j].split(","); |
| | | if (Double.parseDouble(zuobiao[0]) > xmax) { |
| | | xmax = Double.parseDouble(zuobiao[0]); |
| | | } |
| | | if (Double.parseDouble(zuobiao[1]) > ymax) { |
| | | ymax = Double.parseDouble(zuobiao[1]); |
| | | } |
| | | if (Double.parseDouble(zuobiao[0]) < xmin) { |
| | | xmin = Double.parseDouble(zuobiao[0]); |
| | | } |
| | | if (Double.parseDouble(zuobiao[1]) < ymin) { |
| | | ymin = Double.parseDouble(zuobiao[1]); |
| | | } |
| | | } |
| | | if (xmax > xmaxz) { |
| | | xmaxz = xmax; |
| | | } |
| | | if (ymax > ymaxz) { |
| | | ymaxz = ymax; |
| | | } |
| | | if (xmin < xminz) { |
| | | xminz = xmin; |
| | | } |
| | | if (ymin < yminz) { |
| | | yminz = ymin; |
| | | } |
| | | } |
| | | for (int i = 0; i < fenceList.size(); i++) { |
| | | fenceList.get(i).setMax(xmaxz+","+ymaxz); |
| | | fenceList.get(i).setMin(xminz+","+yminz); |
| | | } |
| | | } |
| | | json.put("dataList", fenceList); |
| | | return json; |
| | | } |
| | | |
| | | @RequestMapping(value = "/jiankongManagement.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public String jiankongManagement(HttpServletRequest request) { |
| | | String toPage = "forward:/hxzk/fence/jiankongManagement.jsp"; |
| | |
| | | public void shipinManagement_add(HttpServletRequest request) throws IOException { |
| | | tb_shipin shipin = new tb_shipin(); |
| | | shipin.setFencename(request.getParameter("fencename")); |
| | | shipin.setShebeiid(request.getParameter("shebeiid")); |
| | | shipin.setTongdaoid(request.getParameter("tongdaoid")); |
| | | shipin.setYonghuming(request.getParameter("yonghuming")); |
| | | shipin.setMima(request.getParameter("mima")); |
| | | shipin.setPosx(request.getParameter("posx")); |
| | | shipin.setPosy(request.getParameter("posy")); |
| | | shipin.setPosz(request.getParameter("posz")); |
| | | shipin.setFloor(request.getParameter("floor")); |
| | | shipin.setName(request.getParameter("name")); |
| | | shipin.setBaoliu1(request.getParameter("baoliu1")); |
| | | fenceService.shipinManagement_add(shipin); |
| | | List<tb_shipin> shipins = fenceService.searchshipinManagement(shipin.getName()); |
| | | String xieyi = "BSTOCS1,ADDSP,"+shipin.getFencename()+","+shipin.getShebeiid()+","+shipin.getTongdaoid()+","+shipin.getPosx()+","+shipin.getPosy()+","+shipin.getPosz()+","+shipin.getFloor()+","+shipin.getName()+",END"; |
| | | String xieyi = "BSTOCS1,ADDSP,"+shipin.getFencename()+","+shipin.getYonghuming()+","+shipin.getMima()+","+shipin.getPosx()+","+shipin.getPosy()+","+shipin.getPosz()+","+shipin.getFloor()+","+shipin.getName()+",END"; |
| | | Udp_Out.udp_to_cs(xieyi); |
| | | } |
| | | |
| | |
| | | String[] id = idstr.split(","); |
| | | shipin.setId(Integer.parseInt(id[0])); |
| | | shipin.setFencename(request.getParameter("fencename")); |
| | | shipin.setShebeiid(request.getParameter("shebeiid")); |
| | | shipin.setTongdaoid(request.getParameter("tongdaoid")); |
| | | shipin.setYonghuming(request.getParameter("yonghuming")); |
| | | shipin.setMima(request.getParameter("mima")); |
| | | shipin.setPosx(request.getParameter("posx")); |
| | | shipin.setPosy(request.getParameter("posy")); |
| | | shipin.setPosz(request.getParameter("posz")); |
| | | shipin.setFloor(request.getParameter("floor")); |
| | | shipin.setName(request.getParameter("name")); |
| | | shipin.setBaoliu1(request.getParameter("baoliu1")); |
| | | fenceService.shipinManagement_modify(shipin); |
| | | String xieyi = "BSTOCS1,ALTERSP,"+shipin.getFencename()+","+shipin.getShebeiid()+","+shipin.getTongdaoid()+","+shipin.getPosx()+","+shipin.getPosy()+","+shipin.getPosz()+","+shipin.getFloor()+","+shipin.getName()+",END"; |
| | | String xieyi = "BSTOCS1,ALTERSP,"+shipin.getFencename()+","+shipin.getYonghuming()+","+shipin.getMima()+","+shipin.getPosx()+","+shipin.getPosy()+","+shipin.getPosz()+","+shipin.getFloor()+","+shipin.getName()+",END"; |
| | | Udp_Out.udp_to_cs(xieyi); |
| | | } |
| | | |
| | |
| | | tb_fence fence = new tb_fence(); |
| | | fence.setBumen(request.getParameter("bumen")); |
| | | fence.setName(request.getParameter("name")); |
| | | fence.setZuobiao(request.getParameter("zuobiao")); |
| | | String zuobiao = request.getParameter("zuobiao"); |
| | | fence.setStart(request.getParameter("start")); |
| | | fence.setStart(request.getParameter("stop")); |
| | | fence.setStop(request.getParameter("stop")); |
| | | fence.setBaoliu1(request.getParameter("gaodu")); |
| | | fence.setId(Integer.parseInt(request.getParameter("id"))); |
| | | fenceService.fenceList_modify(fence); |
| | | List<tb_fence> fenceaa = fenceService.searchFenceLisa(String.valueOf(fence.getId())); |
| | | String baowen = ""; |
| | | if (fenceaa.get(0).getShape().equals("多边形")) { |
| | | String[] zuobiaos = zuobiao.split(","); |
| | | String str = ""; |
| | | for (int i=0; i<zuobiaos.length; i++) { |
| | | if (i == zuobiaos.length-1) { |
| | | str += zuobiaos[i]; |
| | | break; |
| | | } |
| | | if (i%2 == 0) { |
| | | str += zuobiaos[i]+":"; |
| | | } else { |
| | | str += zuobiaos[i]+";"; |
| | | } |
| | | } |
| | | baowen = str; |
| | | } else { |
| | | baowen = zuobiao.replace(",", ":"); |
| | | } |
| | | fence.setZuobiao(zuobiao); |
| | | fenceService.fenceList_modifya(fence); |
| | | List<tb_fence> fenceListList = fenceService.searchFenceListid(fence.getId()); |
| | | String xieyi = "BSTOCS1,ALTERFENCE,"+fenceListList.get(0).getFloor()+","+fenceListList.get(0).getType()+","+fence.getBumen()+","+fence.getName()+","+baowen+","+fenceListList.get(0).getShape()+","+fence.getStart()+","+fence.getStop()+","+fenceListList.get(0).getAddtime()+","+fenceListList.get(0).getColor()+",END"; |
| | | Udp_Out.udp_to_cs(xieyi); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/fenceList_modifya.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public String fenceList_modifya(HttpServletRequest request) throws ParseException { |
| | | tb_fence fence = new tb_fence(); |
| | | fence.setBumen(request.getParameter("bumen")); |
| | | fence.setName(request.getParameter("name")); |
| | | fence.setZuobiao(request.getParameter("zuobiao")); |
| | | fence.setStart(request.getParameter("start")); |
| | | fence.setStop(request.getParameter("stop")); |
| | | fence.setBaoliu1(request.getParameter("gaodu")); |
| | | fence.setBaoliu3(request.getParameter("baoliu3")); |
| | | fence.setBaoliu4(request.getParameter("baoliu4")); |
| | | fence.setId(Integer.parseInt(request.getParameter("id"))); |
| | | int aaa = fenceService.fenceList_modify(fence); |
| | | List<tb_fence> fenceListList = fenceService.searchFenceListid(fence.getId()); |
| | | String xieyi = "BSTOCS1,ALTERFENCE,"+fenceListList.get(0).getFloor()+","+fenceListList.get(0).getType()+","+fence.getBumen()+","+fence.getName()+","+fence.getZuobiao()+","+fenceListList.get(0).getShape()+","+fence.getStart()+","+fence.getStop()+","+fenceListList.get(0).getAddtime()+","+fenceListList.get(0).getColor()+",END"; |
| | | Udp_Out.udp_to_cs(xieyi); |
| | | return ""+aaa; |
| | | } |
| | | |
| | | @ResponseBody |
| | |
| | | String checkValStr = request.getParameter("checkVal"); |
| | | checkValStr = checkValStr.replaceAll("\"", ""); |
| | | String[] checkVal = checkValStr.split(","); |
| | | for (int i = 0; i < checkVal.length; i++) { |
| | | String fences = fenceService.searchFenceListid2(Integer.parseInt(checkVal[i])); |
| | | String xieyi = "BSTOCS1,DELETEFECNCE,"+fences+",END"; |
| | | Udp_Out.udp_to_cs(xieyi); |
| | | } |
| | | fenceService.fenceList_delete(checkVal); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/fenceList_deletea.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public String fenceList_deletea(HttpServletRequest request) throws NumberFormatException, ParseException { |
| | | String checkValStr = request.getParameter("checkVal"); |
| | | checkValStr = checkValStr.replaceAll("\"", ""); |
| | | String[] checkVal = checkValStr.split(","); |
| | | for (int i = 0; i < checkVal.length; i++) { |
| | | List<tb_fence> fences = fenceService.searchFenceListid(Integer.parseInt(checkVal[i])); |
| | | tb_fence fence = new tb_fence(); |
| | |
| | | String xieyi = "BSTOCS1,DELETEFECNCE,"+fence.getName()+",END"; |
| | | Udp_Out.udp_to_cs(xieyi); |
| | | } |
| | | int aaa = fenceService.fenceList_delete(checkVal); |
| | | return ""+aaa; |
| | | } |
| | | |
| | | @ResponseBody |
| | |
| | | String xieyi = "BSTOCS1,DELETEALLFENCE,END"; |
| | | Udp_Out.udp_to_cs(xieyi); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/fenceList_deleteAlla.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public String fenceList_deleteAlla(HttpServletRequest request) { |
| | | int aaa = fenceService.fenceList_deleteAll(); |
| | | String xieyi = "BSTOCS1,DELETEALLFENCE,END"; |
| | | Udp_Out.udp_to_cs(xieyi); |
| | | return ""+aaa; |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/fenceList_search.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | |
| | | json.put("dataList", fenceListList); |
| | | return json.toString(); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/fenceList_searcha.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public JSONObject fenceList_searcha(HttpServletRequest request) throws ParseException { |
| | | String input = request.getParameter("type"); |
| | | List<tb_fence> fenceListList = fenceService.searchFenceList(input); |
| | | JSONObject json = new JSONObject(); |
| | | json.put("dataList", fenceListList); |
| | | return json; |
| | | } |
| | | |
| | | @RequestMapping(value = "/inspectionSettings.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public String inspectionSettings(HttpServletRequest request) { |
| | |
| | | json.put("dataList", systems); |
| | | return json.toString(); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @RequestMapping(value = "/enablefence.do", method = { RequestMethod.POST, RequestMethod.GET }) |
| | | public String enablefence(HttpServletRequest request) { |
| | | tb_fence fence = new tb_fence(); |
| | | fence.setBaoliu7(request.getParameter("str")); |
| | | fence.setId(Integer.valueOf(request.getParameter("id"))); |
| | | int aaa = fenceService.enablefence(fence); |
| | | return ""+aaa; |
| | | } |
| | | |
| | | private static String getPoint(Map<BigDecimal, BigDecimal> bigDecimals) { |
| | | int point_num = bigDecimals.size(); //坐标点个数 |
| | | double X = 0; |
| | | double Y = 0; |
| | | double Z = 0; |
| | | for(Map.Entry entry : bigDecimals.entrySet()) { |
| | | double lat = Float.parseFloat(entry.getKey().toString()) * Math.PI / 180; |
| | | double lng = Float.parseFloat(entry.getValue().toString()) * Math.PI / 180; |
| | | double x = Math.cos(lat) * Math.cos(lng); |
| | | double y = Math.cos(lat) * Math.sin(lng); |
| | | double z = Math.sin(lat); |
| | | X += x; |
| | | Y += y; |
| | | Z += z; |
| | | } |
| | | X = X / point_num; |
| | | Y = Y / point_num; |
| | | Z = Z / point_num; |
| | | |
| | | double tmp_lng = Math.atan2(Y, X); |
| | | double tmp_lat = Math.atan2(Z, Math.sqrt(X * X + Y * Y)); |
| | | |
| | | String vvv = Math.round(tmp_lat * 180 / Math.PI * 100.0)/100.0 + "," + Math.round(tmp_lng * 180 / Math.PI * 100.0)/100.0; |
| | | return vvv; |
| | | } |
| | | } |