package com.wss.park.controller;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.wss.park.car.FaceApi;
import com.wss.park.car.RootResp;
import com.wss.park.pojo.Car;
import com.wss.park.pojo.CarInfo;
import com.wss.park.pojo.Finance;
import com.wss.park.pojo.SysSet;
import com.wss.park.pojo.User;
import com.wss.park.service.CarInfoService;
import com.wss.park.service.CarService;
import com.wss.park.utils.Base64Util;
@Controller
@RequestMapping("/car")
public class CarController {
@Resource
private CarInfoService carInfoService;
@Resource
private CarService carService;
@RequestMapping("/paizhao")
@ResponseBody
public Map<String, Object> paizhao(HttpServletRequest request,String imageData,String extName) throws Exception{
User user = (User)request.getSession().getAttribute("userinfo");
FaceApi faceApi = new FaceApi();
RootResp resp = faceApi.getPlateOcr(imageData);
Map<String,Object> json = new HashMap<String, Object>();
if(resp!=null){
//ret=0表示识别成功
if(resp.getRet()==0) {
JSONObject data = (JSONObject )resp.getData();
json.put("errorCode", 0);
JSONArray arr = data.getJSONArray("item_list");
System.out.println(arr);
JSONObject item = (JSONObject)arr.get(0);
String carNo = item.getString("itemstring");
System.out.println("carNo="+carNo);
String savePath = request.getSession().getServletContext().getRealPath("/attached/face/")+"/";
String inPic = UUID.randomUUID()+"."+extName;
savePath += inPic;
System.out.println("savePath="+savePath);
Base64Util.decoderBase64File(imageData, savePath);
//车辆信息
CarInfo carInfo = carInfoService.findCarbyCarId(carNo);
Car car = new Car();
car.setCardNo(carNo);
car.setStatus(0);
car.setUserName(user.getUserName());
//查未缴费的停车信息
Car c = carService.findByStatus(car);
String remark= "临时停车";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if(carInfo==null){//临时停车
car.setFinanceType(2);//2临时
if(c==null){//入库
car.setCarFee(0);
car.setInPic(inPic);
car.setInTime(sdf.format(new Date()));
car.setRemark(remark);
car.setStatus(0);//0未收费
carService.carIn(car);
json.put("msg","临时车【"+carNo+"】:入场" );
}else{//出库
float carFee = 0;
SysSet sysSet = (SysSet)request.getServletContext().getAttribute("sysSet");
carFee = c.getMinutes()-sysSet.getMianfeiTime();
if(carFee<=0){
car.setCarFee(0);
carFee=0;
}else{
carFee = (float)Math.ceil(carFee/sysSet.getShoufeiTime())*sysSet.getShoufeiMoney();
car.setCarFee(carFee);
}
car.setStatus(1);//1已收费
car.setOutPic(inPic);
car.setOutTime(sdf.format(new Date()));
car.setRemark(remark);
car.setCarId(c.getCarId());
carService.carOut(car);
if(carFee>0){
//收费
Finance finance = new Finance();
finance.setCarNo(carNo);
finance.setFinanceType(2);//临时车收费
finance.setOprTime(new Date());
finance.setUserName(user.getUserName());
finance.setRemark("临时车【"+carNo+"】:出场,请收费:"+carFee+"元" );
finance.setTotalMoney(carFee);
}
json.put("msg","临时车【"+carNo+"】:出场,请收费:"+carFee+"元" );
}
}else{//包月停车
remark="包月停车";
car.setFinanceType(1);//1包月
if(c==null){//入库
car.setCarFee(0);
car.setInPic(inPic);
car.setInTime(sdf.format(new Date()));
car.setRemark(remark);
car.setStatus(0);//0未收费
carService.carIn(car);
json.put("msg","包月车【"+carNo+"】:入场" );
}else{//出库
car.setCarFee(0);
car.setStatus(2);//2包月
car.setOutPic(inPic);
car.setOutTime(sdf.format(new Date()));
car.setRemark(remark);
car.setCarId(c.getCarId());
carService.carOut(car);
if(carInfo.getDiffDate()>0){
json.put("msg","包月车【"+carNo+"】:出场,还剩"+carInfo.getDiffDate()+"天" );
}else{
json.put("msg","包月车【"+carNo+"】:出场,请及时缴费" );
}
}
}
}else{
json.put("errorCode", resp.getRet());
json.put("msg", "车牌识别失败");
}
}
return json;
}
@RequestMapping("/carInfo")
public String carInfo(String carNo,ModelMap model) throws Exception{
if(carNo==null){
carNo="";
}
List<CarInfo> carInfoList = carInfoService.findCar(carNo);
model.addAttribute("carInfoList", carInfoList);
return "car";
}
@RequestMapping(value="/carAdd",method=RequestMethod.GET)
public String carAdd(ModelMap model) throws Exception{
CarInfo carInfo = new CarInfo();
model.addAttribute("carInfo",carInfo);
return "carInfo";
}
//保存车辆信息
@RequestMapping(value="/carAdd",method=RequestMethod.POST)
public String carAdd(CarInfo carInfo,ModelMap model) {
try{
if(carInfo.getCarInfoId()==0){
carInfoService.carAdd(carInfo);
}else{
carInfoService.carUpdate(carInfo);
}
}catch(Exception e){
model.addAttribute("carInfo", carInfo);
model.addAttribute("msg", "该车牌对应的车辆信息已经存在");
return "carInfo";
}
//车辆信息
List<CarInfo> carInfoList = carInfoService.findCar("");
model.addAttribute("carInfoList", carInfoList);
return "car";
}
@RequestMapping("/stopCar")
public String stopCar(Car car,Model model)
{
if(car==null) {
car=new Car();
}
List<Car> list = carService.findByCarNo(car);
model.addAttribute("carlist", list);
return "stop";
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
基于Spring+SpringMVC+Mybaits的小区停车场车牌识别系统.zip
共108个文件
jar:42个
java:21个
jsp:9个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 103 浏览量
2023-12-24
00:53:45
上传
评论
收藏 14.51MB ZIP 举报
温馨提示
基于springboot开发的完整项目算法源码,可用于毕业设计、课程设计、练手学习等
资源推荐
资源详情
资源评论
收起资源包目录
基于Spring+SpringMVC+Mybaits的小区停车场车牌识别系统.zip (108个子文件)
.classpath 1KB
org.eclipse.wst.common.component 483B
org.eclipse.wst.jsdt.ui.superType.container 49B
index.css 12KB
Firefox.exe 307KB
imgzoom_tb.gif 459B
none.gif 43B
.gitignore 10B
druid-1.1.0.jar 2.16MB
jackson-databind-2.9.4.jar 1.28MB
spring-context-4.1.5.RELEASE.jar 1002KB
spring-core-4.1.5.RELEASE.jar 985KB
mysql-connector-java-5.1.38.jar 961KB
spring-webmvc-4.1.5.RELEASE.jar 763KB
spring-web-4.1.5.RELEASE.jar 702KB
spring-beans-4.1.5.RELEASE.jar 692KB
mybatis-3.1.1.jar 636KB
spring-test-4.1.5.RELEASE.jar 491KB
fastjson-1.2.8.jar 429KB
spring-jdbc-4.1.5.RELEASE.jar 417KB
jstl-1.2.jar 405KB
spring-websocket-4.1.5.RELEASE.jar 379KB
spring-orm-4.1.5.RELEASE.jar 368KB
spring-aop-4.1.5.RELEASE.jar 351KB
log4j-1.2.8.jar 344KB
jackson-core-2.9.4.jar 313KB
spring-messaging-4.1.5.RELEASE.jar 279KB
spring-jms-4.1.5.RELEASE.jar 263KB
commons-codec-1.9.jar 258KB
spring-expression-4.1.5.RELEASE.jar 253KB
spring-tx-4.1.5.RELEASE.jar 247KB
junit-4.11.jar 239KB
commons-io-2.4.jar 181KB
spring-context-support-4.1.5.RELEASE.jar 174KB
spring-webmvc-portlet-4.1.5.RELEASE.jar 173KB
commons-dbcp-1.2.2.jar 119KB
commons-pool-1.6.jar 109KB
javax.servlet-api-3.1.0.jar 94KB
spring-oxm-4.1.5.RELEASE.jar 80KB
jackson-annotations-2.9.4.jar 65KB
commons-logging-1.1.1.jar 59KB
commons-fileupload-1.2.1.jar 56KB
spring-aspects-4.1.5.RELEASE.jar 55KB
hamcrest-core-1.3.jar 44KB
mybatis-spring-1.1.1.jar 40KB
slf4j-api-1.5.8.jar 23KB
spring-instrument-tomcat-4.1.5.RELEASE.jar 10KB
slf4j-log4j12-1.5.8.jar 9KB
spring-instrument-4.1.5.RELEASE.jar 7KB
aopalliance-1.0.jar 4KB
CarController.java 6KB
Security.java 5KB
FaceApi.java 4KB
UserController.java 3KB
SignUtil.java 3KB
Car.java 2KB
Base64Util.java 2KB
CarInfo.java 1KB
Finance.java 1KB
WeChatProperties.java 992B
SysSet.java 903B
User.java 868B
UserService.java 861B
CarInfoService.java 812B
CarService.java 716B
MyX509TrustManager.java 653B
RootResp.java 464B
CarDAO.java 420B
CarInfoDAO.java 409B
WeChatConfig.java 354B
UserDAO.java 242B
banner.jpg 121KB
rtz2.jpg 37KB
jquery-3.3.1.min.js 85KB
.jsdtscope 564B
faceCheck.jsp 7KB
car.jsp 4KB
stop.jsp 4KB
regUser.jsp 3KB
login.jsp 3KB
carInfo.jsp 3KB
enimg.jsp 2KB
index.jsp 869B
IncludeJS.jsp 275B
MANIFEST.MF 39B
org.eclipse.wst.jsdt.ui.superType.name 6B
tmpic.png 68KB
cm.png 14KB
logo.png 8KB
rtz.png 7KB
icon-user.png 3KB
exit.png 3KB
login_icon02.png 1KB
login_icon01.png 1KB
peo.png 1KB
org.eclipse.jdt.core.prefs 364B
.project 1KB
system.properties 262B
jdbc.properties 190B
banner.psd 525KB
共 108 条
- 1
- 2
资源评论
马coder
- 粉丝: 1211
- 资源: 6602
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功