| | |
| | | import com.baomidou.mybatisplus.core.toolkit.StringUtils; |
| | | import com.boying.common.SystemConfigProperties; |
| | | import com.boying.entity.*; |
| | | import com.boying.entity.led.LedBean; |
| | | import com.boying.entity.led.ResultData; |
| | | import com.boying.service.*; |
| | | import com.boying.util.DateUtilOther; |
| | | import com.boying.util.FileUtil; |
| | | import com.boying.util.StringUtil; |
| | | import com.google.gson.JsonObject; |
| | | import com.google.gson.JsonParser; |
| | | import ledshow.CodeUtil; |
| | | import ledshow.LedBean; |
| | | import ledshow.ResultData; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.data.redis.core.StringRedisTemplate; |
| | | import org.springframework.stereotype.Controller; |
| | |
| | | import java.util.List; |
| | | import java.util.concurrent.TimeUnit; |
| | | |
| | | |
| | | /** |
| | | * Servlet implementation class PlateServlet |
| | | */ |
| | | @Controller |
| | | @RequestMapping("/car") |
| | | @RequestMapping("/ffzf/car") |
| | | @RequiredArgsConstructor |
| | | public class PlateServlet3 extends HttpServlet { |
| | | private static final long serialVersionUID = 1L; |
| | |
| | | private final TicketService ticketService; |
| | | private final CostRuleService costRuleService; |
| | | private final WhiteListService whiteListService; |
| | | private final FileInfoService fileInfoService; |
| | | private final String LEDURL = "http://192.168.31.212:9988/LedShow/IGetResultDataAllLine"; |
| | | |
| | | /** |
| | |
| | | out.close(); |
| | | } |
| | | |
| | | protected void easyNoOpen(HttpServletRequest request, HttpServletResponse response) throws IOException { |
| | | response.setContentType("text/json"); |
| | | PrintWriter out = response.getWriter(); |
| | | out.println("{\"Response_AlarmInfoPlate\":{\"info\":\"error\",\"content\":\"...\",\"is_pay\":\"false\"}}"); |
| | | out.flush(); |
| | | out.close(); |
| | | } |
| | | |
| | | @PostMapping("/status") |
| | | public void heart(String serialno,HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException { |
| | | Barrier barrier = barrierService.findByCode(serialno); |
| | |
| | | int i = Integer.parseInt(redisnum); |
| | | i--; |
| | | if(i<0){ |
| | | String s= "2."+barrier.getCarNo()+"闸机手动启动,场内停车数为"+i+"\n"; |
| | | writeTxt2(s); |
| | | redisTemplate.opsForValue().set("car_park_" + park.getId(),"0",30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS); |
| | | }else { |
| | | String s= "2."+barrier.getCarNo()+"闸机手动启动,场内停车数为"+i+"\n"; |
| | | writeTxt2(s); |
| | | redisTemplate.opsForValue().set("car_park_" + park.getId(),Integer.toString(i),30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS); |
| | | } |
| | |
| | | int i = Integer.parseInt(redisnum); |
| | | i--; |
| | | if(i<0){ |
| | | String s= "2."+outPark.getCarNo()+"缴费完成,场内停车数为"+i+"\n"; |
| | | writeTxt2(s); |
| | | redisTemplate.opsForValue().set("car_park_" + park.getId(),"0",30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS); |
| | | }else { |
| | | String s= "2."+outPark.getCarNo()+"缴费完成,场内停车数为"+i+"\n"; |
| | | writeTxt2(s); |
| | | redisTemplate.opsForValue().set("car_park_" + park.getId(),Integer.toString(i),30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS); |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | }else { |
| | | easyNoOpen(request,response); |
| | | } |
| | | } |
| | | /** |
| | |
| | | BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream(),"UTF-8")); |
| | | String str = ""; |
| | | String lineStr = ""; |
| | | FileInfo fileInfo = null; |
| | | while((str = reader.readLine()) != null){ |
| | | lineStr += str; |
| | | } |
| | |
| | | JSONObject result = alarmInfoPlate.getJSONObject("result"); |
| | | JSONObject plateResult = result.getJSONObject("PlateResult"); |
| | | String carNo = plateResult.get("license").toString(); |
| | | // String image = plateResult.get("imageFile").toString(); |
| | | String code = alarmInfoPlate.get("serialno").toString(); |
| | | |
| | | try { |
| | |
| | | break; |
| | | } |
| | | |
| | | System.out.println("编号:"+serialno+"设备识别到了:"+license); |
| | | |
| | | // if(StringUtils.isNotBlank(image)){ |
| | | // fileInfo = FileUtil.generateBase64StringToFile(image, 1,1); |
| | | // fileInfoService.save(fileInfo); |
| | | // } |
| | | |
| | | |
| | | System.out.println("编号:"+serialno+" 设备识别到了:"+license); |
| | | String format = sdf.format(new Date()); |
| | | s+= format+",车牌号为:"+license+",serialno为:"+code+" "; |
| | | |
| | |
| | | System.out.println("查询到道闸为:"+barrier); |
| | | if(barrier==null){ |
| | | s+="查询道闸为空\n"; |
| | | easyNoOpen(request,response); |
| | | }else{ |
| | | if(barrier.getType()==0){ |
| | | //noOpen(request,response); |
| | | outPark(license, barrier.getId(), barrier.getParkId(),request,response); |
| | | outPark(license, barrier.getId(), barrier.getParkId(),request,response,fileInfo); |
| | | s+=license+"-保存出场记录\n"; |
| | | }else{ |
| | | String num = redisTemplate.opsForValue().get("car_park_" + barrier.getParkId()); |
| | |
| | | }else { |
| | | //led显示 |
| | | inLedShow(code, license,barrier.getParkId(),request,response); |
| | | enterPark(license,barrier.getId(),barrier.getParkId()); |
| | | enterPark(license,barrier.getId(),barrier.getParkId(),fileInfo); |
| | | s+=license+"-保存入场记录\n"; |
| | | } |
| | | } |
| | |
| | | System.out.println("无入场记录"); |
| | | s+=" ,查询场内记录异常"; |
| | | writeTxt(s); |
| | | easyNoOpen(request,response); |
| | | } |
| | | } |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | public void enterPark(String carNo,Integer barrierId,Integer parkId) { |
| | | Park park = parkService.getById(parkId); |
| | | int num = 0; |
| | | String s = redisTemplate.opsForValue().get("car_park_" + parkId); |
| | | if(park != null){ |
| | | num = park.getNum(); |
| | | if(s !=null){ |
| | | if(Integer.parseInt(s) >= num){ |
| | | redisTemplate.opsForValue().set("park_up_" + parkId,"false",30, TimeUnit.DAYS); |
| | | return; |
| | | } |
| | | }else { |
| | | s= "0"; |
| | | redisTemplate.opsForValue().set("car_park_" + parkId,s,30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS); |
| | | } |
| | | private void writeTxt2( String txt) |
| | | { |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); |
| | | try |
| | | { |
| | | FileWriter f = new FileWriter(systemConfigProperties.getLogPath()+sdf.format(new Date())+"LED.txt",true); |
| | | BufferedWriter bw=new BufferedWriter(f); |
| | | bw.write(txt); |
| | | bw.newLine(); |
| | | bw.close(); |
| | | } |
| | | catch(Exception e) |
| | | { |
| | | System.out.println("打印错误"); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | public void enterPark(String carNo,Integer barrierId,Integer parkId,FileInfo fileInfo) { |
| | | Park park = parkService.getById(parkId); |
| | | // int num = 0; |
| | | // String s = redisTemplate.opsForValue().get("car_park_" + parkId); |
| | | // if(park != null){ |
| | | // num = park.getNum(); |
| | | // if(s !=null){ |
| | | // if(Integer.parseInt(s) >= num){ |
| | | // redisTemplate.opsForValue().set("park_up_" + parkId,"false",30, TimeUnit.DAYS); |
| | | // return; |
| | | // } |
| | | // }else { |
| | | // s= "0"; |
| | | // redisTemplate.opsForValue().set("car_park_" + parkId,s,30, TimeUnit.DAYS); |
| | | // redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS); |
| | | // } |
| | | // } |
| | | enterParkService.deleteByCarNo(carNo,parkId); |
| | | EnterPark enterPark = new EnterPark(); |
| | | enterPark.setCarNo(carNo); |
| | |
| | | if(tickets.size()>0){ |
| | | enterPark.setStatus(1);//发现有违章 |
| | | } |
| | | if(fileInfo != null){ |
| | | enterPark.setImgId(fileInfo.getId()); |
| | | } |
| | | enterParkService.saveOrUpdate(enterPark); |
| | | |
| | | Barrier barrier = barrierService.getById(barrierId); |
| | | barrier.setType2(1); |
| | | barrierService.saveOrUpdate(barrier); |
| | | // Barrier barrier = barrierService.getById(barrierId); |
| | | // barrier.setType2(1); |
| | | // barrierService.saveOrUpdate(barrier); |
| | | } |
| | | |
| | | public double outPark(String carNo,Integer barrierId,Integer parkId,HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { |
| | | public double outPark(String carNo,Integer barrierId,Integer parkId,HttpServletRequest request, HttpServletResponse response,FileInfo fileInfo) throws ServletException, IOException { |
| | | double money = 0.0; |
| | | EnterPark enterPark = null; |
| | | String toDayHrMinSec = null; |
| | |
| | | //outPark.setPrice(Double.valueOf(String.format("%.1f", money))); |
| | | outPark.setPrice(money); |
| | | outPark.setStatus3(findTicket(carNo)); |
| | | if(fileInfo != null){ |
| | | outPark.setImgId(fileInfo.getId()); |
| | | } |
| | | outParkService.saveOrUpdate(outPark); |
| | | Barrier barrier =barrierService.getById(barrierId); |
| | | barrier.setCarNo(carNo); |
| | |
| | | outParkService.saveOrUpdate(byCarNoAndBarrierId); |
| | | return 0.0; |
| | | }else{ |
| | | if(w.getParkIds()!=null){ |
| | | if(StringUtils.isNotBlank(w.getParkIds())){ |
| | | if(w.getEndTime()!=null){ |
| | | String parkIds = w.getParkIds(); |
| | | String[] split = parkIds.split(","); |
| | |
| | | } |
| | | if(outPark.getPrice()==0&&outPark.getStatus3()==0){ |
| | | System.out.println(outPark.getCarNo()+"该车不需要缴费"); |
| | | String s= "1."+barrier.getCarNo()+"该车不需要缴费\n"; |
| | | writeTxt2(s); |
| | | outLedShow(barrier.getCode(),barrier.getCarNo(),outPark.getPrice(),toDayHrMinSec,barrier.getParkId(),request,response,0); |
| | | }else { |
| | | //需要缴费或者有违章 |
| | | System.out.println(outPark.getCarNo()+"该车需要缴费"+outPark.getPrice()); |
| | | String s= "1."+barrier.getCarNo()+"该车需要缴费\n"; |
| | | writeTxt2(s); |
| | | outLedShow(barrier.getCode(),barrier.getCarNo(),outPark.getPrice(),toDayHrMinSec,barrier.getParkId(),request,response,1); |
| | | } |
| | | barrierService.saveOrUpdate(barrier); |
| | |
| | | carType = "月租车"; |
| | | }else { |
| | | //白名单固定停车场车辆 |
| | | if(byCarNo.getParkId().equals(barrier.getParkId())){ |
| | | if(StringUtils.isNotBlank(byCarNo.getParkIds()) && byCarNo.getParkIds().contains(barrier.getParkId()+"")){ |
| | | carType = "月租车"; |
| | | long l = (byCarNo.getEndTime().getTime() - byCarNo.getStartTime().getTime()) / (24 * 3600 * 1000); |
| | | carDay = "有效期还有"+l+"天"; |
| | | }else { |
| | | carType = "临时车"; |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | LedBean ledBean = new LedBean(); |
| | | ledBean.setColor1(0); |
| | | ledBean.setColor2(0); |
| | | ledBean.setColor3(0); |
| | | ledBean.setColor4(0); |
| | | ledBean.setContent1(carNo); |
| | | ledBean.setContent2(carType); |
| | | ledBean.setContent3(carDay); |
| | | ledBean.setContent4("余位:"+i); |
| | | ledBean.setDisMode1(1); |
| | | ledBean.setDisMode2(1); |
| | | ledBean.setDisMode3(1); |
| | | ledBean.setDisMode4(1); |
| | | ledBean.setVoiceContent(carType+","+carNo+","+carDay); |
| | | String s = JSON.toJSONString(ledBean); |
| | | String s1= HttpRequest.post(LEDURL) |
| | | .timeout(5000) |
| | | .body(s) |
| | | .execute() |
| | | .body(); |
| | | ResultData resultData = JSON.parseObject(s1,ResultData.class); |
| | | String[] split = resultData.getDatas().split("-"); |
| | | String[] dataX = new String[resultData.getLenth()]; |
| | | System.arraycopy(split,0,dataX,0,resultData.getLenth()); |
| | | String s2 = StringUtil.toStr(dataX); |
| | | byte[] bytes = StringUtil.HexString2Bytes(s2); |
| | | for (byte aByte : bytes) { |
| | | System.out.print(aByte+" "); |
| | | } |
| | | System.out.println(); |
| | | String data1 = new String("gb2312"); |
| | | data1 = Base64.getMimeEncoder().encodeToString(bytes); |
| | | // String data2 = data1.replace("\n", ""); |
| | | String data3 = data1.replaceAll("\r\n", ""); |
| | | System.out.println(); |
| | | System.out.println(data3); |
| | | open(request,response,data3);//入场开闸 |
| | | ledBean.setcolor1(0); |
| | | ledBean.setcolor2(0); |
| | | ledBean.setcolor3(0); |
| | | ledBean.setcolor4(0); |
| | | ledBean.setcontent1(carNo); |
| | | ledBean.setcontent2(carType); |
| | | ledBean.setcontent3(carDay); |
| | | ledBean.setcontent4("余位:"+i); |
| | | ledBean.setdisMode1(0); |
| | | ledBean.setdisMode2(0); |
| | | ledBean.setdisMode3(0); |
| | | ledBean.setdisMode4(0); |
| | | ledBean.setvoiceContent(carType+","+carNo+","+carDay); |
| | | ResultData resultData = CodeUtil.GetResultDataAllLine(ledBean); |
| | | byte[] dataX = new byte[resultData.getlenth()]; |
| | | System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth()); |
| | | String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "="; |
| | | data1 = data1.replaceAll("\r\n", ""); |
| | | |
| | | open(request,response,data1);//入场开闸 |
| | | } |
| | | |
| | | public void inLedFullShow(String ledId, String carNo, Integer parkId,HttpServletRequest request, HttpServletResponse response) throws IOException { |
| | |
| | | carType = "月租车"; |
| | | }else { |
| | | //白名单固定停车场车辆 |
| | | if(byCarNo.getParkId().equals(barrier.getParkId())){ |
| | | if(StringUtils.isNotBlank(byCarNo.getParkIds()) && byCarNo.getParkIds().contains(barrier.getParkId()+"")){ |
| | | carType = "月租车"; |
| | | long l = (byCarNo.getEndTime().getTime() - byCarNo.getStartTime().getTime()) / (24 * 3600 * 1000); |
| | | carDay = "有效期还有"+l+"天"; |
| | | }else { |
| | | carType = "临时车"; |
| | | } |
| | | } |
| | | } |
| | | |
| | | LedBean ledBean = new LedBean(); |
| | | ledBean.setColor1(0); |
| | | ledBean.setColor2(0); |
| | | ledBean.setColor3(0); |
| | | ledBean.setColor4(0); |
| | | ledBean.setContent1(carNo); |
| | | ledBean.setContent2(carType); |
| | | ledBean.setContent3("车位已满"); |
| | | ledBean.setContent4("请驶离"); |
| | | ledBean.setDisMode1(1); |
| | | ledBean.setDisMode2(1); |
| | | ledBean.setDisMode3(1); |
| | | ledBean.setDisMode4(1); |
| | | ledBean.setVoiceContent("车位已满,请驶离"); |
| | | String s = JSON.toJSONString(ledBean); |
| | | String s1= HttpRequest.post(LEDURL) |
| | | .timeout(5000) |
| | | .body(s) |
| | | .execute() |
| | | .body(); |
| | | ResultData resultData = JSON.parseObject(s1,ResultData.class); |
| | | byte[] dataX = new byte[resultData.getLenth()]; |
| | | System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth()); |
| | | ledBean.setcolor1(0); |
| | | ledBean.setcolor2(0); |
| | | ledBean.setcolor3(0); |
| | | ledBean.setcolor4(0); |
| | | ledBean.setcontent1(carNo); |
| | | ledBean.setcontent2(carType); |
| | | ledBean.setcontent3("车位已满"); |
| | | ledBean.setcontent4("请驶离"); |
| | | ledBean.setdisMode1(0); |
| | | ledBean.setdisMode2(0); |
| | | ledBean.setdisMode3(0); |
| | | ledBean.setdisMode4(0); |
| | | ledBean.setvoiceContent("车位已满,请驶离"); |
| | | ResultData resultData = CodeUtil.GetResultDataAllLine(ledBean); |
| | | byte[] dataX = new byte[resultData.getlenth()]; |
| | | System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth()); |
| | | String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "="; |
| | | data1 = data1.replaceAll("\r\n", ""); |
| | | |
| | |
| | | |
| | | public void outLedShow(String ledId,String carNo,Double price,String timeStamp,Integer parkId,HttpServletRequest request, HttpServletResponse response,int type) throws ServletException, IOException { |
| | | String redisnum = redisTemplate.opsForValue().get("car_park_" + parkId); |
| | | Park park = parkService.getById(parkId); |
| | | LedBean ledBean = new LedBean(); |
| | | ledBean.setColor1(0); |
| | | ledBean.setColor2(0); |
| | | ledBean.setColor3(0); |
| | | ledBean.setColor4(0); |
| | | ledBean.setContent1(carNo); |
| | | ledBean.setContent2("停车"+timeStamp); |
| | | ledBean.setContent3("交费"+price+"元"); |
| | | ledBean.setContent4("禁止闯杆"); |
| | | ledBean.setDisMode1(1); |
| | | ledBean.setDisMode2(1); |
| | | ledBean.setDisMode3(1); |
| | | ledBean.setDisMode4(1); |
| | | ledBean.setVoiceContent(carNo+"停车"+timeStamp+"交费"+price+"元"); |
| | | String s = JSON.toJSONString(ledBean); |
| | | String s1= HttpRequest.post(LEDURL) |
| | | .timeout(5000) |
| | | .body(s) |
| | | .execute() |
| | | .body(); |
| | | ResultData resultData = JSON.parseObject(s1,ResultData.class); |
| | | byte[] dataX = new byte[resultData.getLenth()]; |
| | | System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth()); |
| | | ledBean.setcolor1(0); |
| | | ledBean.setcolor2(0); |
| | | ledBean.setcolor3(0); |
| | | ledBean.setcolor4(0); |
| | | ledBean.setcontent1(carNo); |
| | | ledBean.setcontent2("停车"+timeStamp); |
| | | ledBean.setcontent3("交费"+price+"元"); |
| | | ledBean.setcontent4("禁止闯杆"); |
| | | ledBean.setdisMode1(0); |
| | | ledBean.setdisMode2(1); |
| | | ledBean.setdisMode3(1); |
| | | ledBean.setdisMode4(0); |
| | | ledBean.setvoiceContent(carNo+"停车"+timeStamp+"交费"+price+"元"); |
| | | ResultData resultData = CodeUtil.GetResultDataAllLine(ledBean); |
| | | byte[] dataX = new byte[resultData.getlenth()]; |
| | | System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth()); |
| | | String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "="; |
| | | data1 = data1.replaceAll("\r\n", ""); |
| | | if(type == 0){ |
| | | //开闸 |
| | | open(request,response,data1); |
| | | redisTemplate.opsForValue().set("park_change_in_"+parkId,"true",1, TimeUnit.DAYS); |
| | | int i = Integer.parseInt(redisnum); |
| | | i--; |
| | | if(i<0){ |
| | | String s= "2."+carNo+",场内停车数为0\n"; |
| | | writeTxt2(s); |
| | | redisTemplate.opsForValue().set("car_park_" + parkId,"0",30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS); |
| | | }else { |
| | | String s= "2."+carNo+",场内停车数为"+i+"\n"; |
| | | writeTxt2(s); |
| | | redisTemplate.opsForValue().set("car_park_" + parkId,Integer.toString(i),30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS); |
| | | } |
| | |
| | | public void outLedShowYueZu(String carNo,String text,Integer parkId,HttpServletRequest request, HttpServletResponse response,int type) throws ServletException, IOException{ |
| | | String redisnum = redisTemplate.opsForValue().get("car_park_" + parkId); |
| | | LedBean ledBean = new LedBean(); |
| | | ledBean.setColor1(0); |
| | | ledBean.setColor2(0); |
| | | ledBean.setColor3(0); |
| | | ledBean.setColor4(0); |
| | | ledBean.setContent1(carNo); |
| | | ledBean.setContent2(text); |
| | | ledBean.setContent3("减速慢行"); |
| | | ledBean.setContent4("欢迎下次光临"); |
| | | ledBean.setDisMode1(1); |
| | | ledBean.setDisMode2(1); |
| | | ledBean.setDisMode3(1); |
| | | ledBean.setDisMode4(1); |
| | | ledBean.setVoiceContent(text+carNo+"欢迎下次光临"); |
| | | String s = JSON.toJSONString(ledBean); |
| | | String s1= HttpRequest.post(LEDURL) |
| | | .timeout(5000) |
| | | .body(s) |
| | | .execute() |
| | | .body(); |
| | | ResultData resultData = JSON.parseObject(s1,ResultData.class); |
| | | byte[] dataX = new byte[resultData.getLenth()]; |
| | | System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth()); |
| | | ledBean.setcolor1(0); |
| | | ledBean.setcolor2(0); |
| | | ledBean.setcolor3(0); |
| | | ledBean.setcolor4(0); |
| | | ledBean.setcontent1(carNo); |
| | | ledBean.setcontent2(text); |
| | | ledBean.setcontent3("减速慢行"); |
| | | ledBean.setcontent4("欢迎下次光临"); |
| | | ledBean.setdisMode1(0); |
| | | ledBean.setdisMode2(0); |
| | | ledBean.setdisMode3(0); |
| | | ledBean.setdisMode4(1); |
| | | ledBean.setvoiceContent(text+carNo+"欢迎下次光临"); |
| | | ResultData resultData = CodeUtil.GetResultDataAllLine(ledBean); |
| | | byte[] dataX = new byte[resultData.getlenth()]; |
| | | System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth()); |
| | | String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "="; |
| | | data1 = data1.replaceAll("\r\n", ""); |
| | | if(type == 0){ |
| | | //开闸 |
| | | open(request,response,data1); |
| | | redisTemplate.opsForValue().set("park_change_in_"+parkId,"true",1, TimeUnit.DAYS); |
| | | int i = Integer.parseInt(redisnum); |
| | | i--; |
| | | if(i<0){ |
| | | String s= "2."+carNo+",场内停车数为0\n"; |
| | | writeTxt2(s); |
| | | redisTemplate.opsForValue().set("car_park_" + parkId,"0",30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS); |
| | | }else { |
| | | String s= "2."+carNo+",场内停车数为"+i+"\n"; |
| | | writeTxt2(s); |
| | | redisTemplate.opsForValue().set("car_park_" + parkId,Integer.toString(i),30, TimeUnit.DAYS); |
| | | redisTemplate.opsForValue().set("park_up_" + parkId,"true",30, TimeUnit.DAYS); |
| | | } |
| | |
| | | |
| | | public void outLedShowDefault(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ |
| | | LedBean ledBean = new LedBean(); |
| | | ledBean.setColor1(0); |
| | | ledBean.setColor2(0); |
| | | ledBean.setColor3(0); |
| | | ledBean.setColor4(0); |
| | | ledBean.setContent1("一车一杆"); |
| | | ledBean.setContent2("减速慢行"); |
| | | ledBean.setContent3("无需取卡"); |
| | | ledBean.setContent4("扫码缴费"); |
| | | ledBean.setDisMode1(1); |
| | | ledBean.setDisMode2(1); |
| | | ledBean.setDisMode3(1); |
| | | ledBean.setDisMode4(1); |
| | | ledBean.setVoiceContent(""); |
| | | String s = JSON.toJSONString(ledBean); |
| | | String s1= HttpRequest.post(LEDURL) |
| | | .timeout(5000) |
| | | .body(s) |
| | | .execute() |
| | | .body(); |
| | | ResultData resultData = JSON.parseObject(s1,ResultData.class); |
| | | byte[] dataX = new byte[resultData.getLenth()]; |
| | | System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth()); |
| | | ledBean.setcolor1(0); |
| | | ledBean.setcolor2(0); |
| | | ledBean.setcolor3(0); |
| | | ledBean.setcolor4(0); |
| | | ledBean.setcontent1("一车一杆"); |
| | | ledBean.setcontent2("减速慢行"); |
| | | ledBean.setcontent3("无需取卡"); |
| | | ledBean.setcontent4("扫码缴费"); |
| | | ledBean.setdisMode1(0); |
| | | ledBean.setdisMode2(0); |
| | | ledBean.setdisMode3(0); |
| | | ledBean.setdisMode4(0); |
| | | ledBean.setvoiceContent(""); |
| | | ResultData resultData = CodeUtil.GetResultDataAllLine(ledBean); |
| | | byte[] dataX = new byte[resultData.getlenth()]; |
| | | System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth()); |
| | | String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "="; |
| | | data1 = data1.replaceAll("\r\n", ""); |
| | | noOpen(request,response,data1); |
| | |
| | | |
| | | public void inLedShowDefault(Integer parkId,HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ |
| | | String num = redisTemplate.opsForValue().get("car_park_" + parkId); |
| | | String con3 = ""; |
| | | String con4 = ""; |
| | | if(num == null){ |
| | | num = "0"; |
| | | } |
| | | Park byId = parkService.getById(parkId); |
| | | int i = byId.getNum() - Integer.parseInt(num); |
| | | if(i<0){ |
| | | if(i<=0){ |
| | | i = 0; |
| | | con3 = "车位已满"; |
| | | con4 = "请驶离"; |
| | | }else { |
| | | con3 = "排队等候"; |
| | | con4 = "余位:"+i; |
| | | } |
| | | LedBean ledBean = new LedBean(); |
| | | ledBean.setColor1(0); |
| | | ledBean.setColor2(0); |
| | | ledBean.setColor3(0); |
| | | ledBean.setColor4(0); |
| | | ledBean.setContent1("一车一杆"); |
| | | ledBean.setContent2("减速慢行"); |
| | | ledBean.setContent3("排队等候"); |
| | | ledBean.setContent4("余位:"+i); |
| | | ledBean.setDisMode1(1); |
| | | ledBean.setDisMode2(1); |
| | | ledBean.setDisMode3(1); |
| | | ledBean.setDisMode4(1); |
| | | ledBean.setVoiceContent(""); |
| | | String s = JSON.toJSONString(ledBean); |
| | | String s1= HttpRequest.post(LEDURL) |
| | | .timeout(5000) |
| | | .body(s) |
| | | .execute() |
| | | .body(); |
| | | ResultData resultData = JSON.parseObject(s1,ResultData.class); |
| | | byte[] dataX = new byte[resultData.getLenth()]; |
| | | System.arraycopy(resultData.getDatas(),0,dataX,0,resultData.getLenth()); |
| | | ledBean.setcolor1(0); |
| | | ledBean.setcolor2(0); |
| | | ledBean.setcolor3(0); |
| | | ledBean.setcolor4(0); |
| | | ledBean.setcontent1("一车一杆"); |
| | | ledBean.setcontent2("减速慢行"); |
| | | ledBean.setcontent3(con3); |
| | | ledBean.setcontent4(con4); |
| | | ledBean.setdisMode1(0); |
| | | ledBean.setdisMode2(0); |
| | | ledBean.setdisMode3(0); |
| | | ledBean.setdisMode4(0); |
| | | ledBean.setvoiceContent(""); |
| | | ResultData resultData = CodeUtil.GetResultDataAllLine(ledBean); |
| | | byte[] dataX = new byte[resultData.getlenth()]; |
| | | System.arraycopy(resultData.getdatas(),0,dataX,0,resultData.getlenth()); |
| | | String data1 = Base64.getMimeEncoder().encodeToString(dataX) + "="; |
| | | data1 = data1.replaceAll("\r\n", ""); |
| | | noOpen(request,response,data1); |
| | | } |
| | | |
| | | |
| | | } |