From fb050c0dafa5363a73540dd9e52b78487e25ba0a Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期二, 09 四月 2024 17:32:46 +0800
Subject: [PATCH] fix:新增手动抬杆记录
---
src/main/java/com/boying/entity/BarrierOpenLog.java | 50 ++++++++++
src/main/java/com/boying/service/OutParkService.java | 1
src/main/java/com/boying/mapper/BarrierOpenLogMapper.java | 17 +++
src/main/java/com/boying/entity/EnterPark.java | 4
src/main/java/com/boying/controller/OutParkController.java | 28 +++++
src/main/java/com/boying/controller/BarrierOpenLogController.java | 43 ++++++++
src/main/java/com/boying/entity/vo/BarrierVo.java | 26 +++++
src/main/java/com/boying/service/BarrierOpenLogService.java | 15 +++
src/main/java/com/boying/controller/BarrierController.java | 23 ++++
src/main/java/com/boying/controller/ParkController.java | 2
src/main/java/com/boying/service/impl/BarrierOpenLogServiceImpl.java | 37 +++++++
11 files changed, 241 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/boying/controller/BarrierController.java b/src/main/java/com/boying/controller/BarrierController.java
index 84e5ce0..d82c2b8 100644
--- a/src/main/java/com/boying/controller/BarrierController.java
+++ b/src/main/java/com/boying/controller/BarrierController.java
@@ -5,7 +5,9 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.boying.common.R;
import com.boying.entity.Barrier;
+import com.boying.entity.BarrierOpenLog;
import com.boying.entity.OutPark;
+import com.boying.service.BarrierOpenLogService;
import com.boying.service.BarrierService;
import com.boying.service.OutParkService;
import com.boying.service.ParkService;
@@ -28,6 +30,7 @@
public class BarrierController {
private final BarrierService barrierService;
+ private final BarrierOpenLogService barrierOpenLogService;
private final OutParkService outParkService;
private final ParkService parkService;
private StringRedisTemplate redisTemplate;
@@ -113,7 +116,7 @@
@PostMapping("openBarrier")
- public Object openBarrier(Long barrierId,Integer type) {
+ public Object openBarrier(Long barrierId,Integer type,String carNo,String remark) {
Barrier b= barrierService.getById(barrierId);
if (b==null) {
return R.failed("鏈壘鍒拌閬撻椄");
@@ -127,6 +130,12 @@
try {
String jsonValue = JSON.toJSONString(b);
redisTemplate.opsForValue().set("barrier-"+b.getCode(), jsonValue);
+ BarrierOpenLog barrierOpenLog = new BarrierOpenLog();
+ barrierOpenLog.setCarNo(carNo);
+ barrierOpenLog.setRemark(remark);
+ barrierOpenLog.setParkId(b.getParkId());
+ barrierOpenLog.setType(b.getType());
+ barrierOpenLogService.save(barrierOpenLog);
} catch (Exception e) {
e.printStackTrace();
}
@@ -148,6 +157,12 @@
try {
String jsonValue = JSON.toJSONString(b);
redisTemplate.opsForValue().set("barrier-"+b.getCode(), jsonValue);
+ BarrierOpenLog barrierOpenLog = new BarrierOpenLog();
+ barrierOpenLog.setCarNo(carNo);
+ barrierOpenLog.setRemark(remark);
+ barrierOpenLog.setParkId(b.getParkId());
+ barrierOpenLog.setType(b.getType());
+ barrierOpenLogService.save(barrierOpenLog);
} catch (Exception e) {
e.printStackTrace();
}
@@ -160,6 +175,12 @@
try {
String jsonValue = JSON.toJSONString(b);
redisTemplate.opsForValue().set("barrier-"+b.getCode(), jsonValue);
+ BarrierOpenLog barrierOpenLog = new BarrierOpenLog();
+ barrierOpenLog.setCarNo(carNo);
+ barrierOpenLog.setRemark(remark);
+ barrierOpenLog.setParkId(b.getParkId());
+ barrierOpenLog.setType(b.getType());
+ barrierOpenLogService.save(barrierOpenLog);
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/src/main/java/com/boying/controller/BarrierOpenLogController.java b/src/main/java/com/boying/controller/BarrierOpenLogController.java
new file mode 100644
index 0000000..c6a7346
--- /dev/null
+++ b/src/main/java/com/boying/controller/BarrierOpenLogController.java
@@ -0,0 +1,43 @@
+package com.boying.controller;
+
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.boying.common.R;
+import com.boying.entity.Barrier;
+import com.boying.entity.BarrierOpenLog;
+import com.boying.entity.OutPark;
+import com.boying.service.BarrierOpenLogService;
+import com.boying.service.BarrierService;
+import com.boying.service.OutParkService;
+import com.boying.service.ParkService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.time.LocalDateTime;
+import java.time.temporal.ChronoUnit;
+import java.util.List;
+
+@RestController
+@RequestMapping("ffzf/barrierOpenLog")
+@RequiredArgsConstructor
+public class BarrierOpenLogController {
+
+ private final BarrierOpenLogService barrierOpenLogService;
+
+
+ @PostMapping("findPage")
+ public Object findPage(Page page, Integer parkId,String carNo) {
+ QueryWrapper<BarrierOpenLog> wrapper = new QueryWrapper<>();
+ wrapper.lambda()
+ .eq(parkId != null,BarrierOpenLog::getParkId,parkId)
+ .eq(StringUtils.isNotBlank(carNo),BarrierOpenLog::getCarNo,carNo);
+ Page page1 = barrierOpenLogService.page(page, wrapper);
+ return R.ok(page1);
+ }
+
+}
diff --git a/src/main/java/com/boying/controller/OutParkController.java b/src/main/java/com/boying/controller/OutParkController.java
index 99aef6e..3d0a6e5 100644
--- a/src/main/java/com/boying/controller/OutParkController.java
+++ b/src/main/java/com/boying/controller/OutParkController.java
@@ -332,10 +332,34 @@
enterPark.setParkId(parkId);
enterPark.setBarrierId(list.get(0).getId());
enterPark.setStatus(0);
+ enterPark.setIsAdd(1);
enterPark.setIsPay(0);
- enterPark.setImgId(null);
enterParkService.saveOrUpdate(enterPark);
- return R.ok("淇敼鎴愬姛");
+
+ OutPark outPark = null;
+ QueryWrapper<OutPark> wrapper1 = new QueryWrapper<>();
+ wrapper1.lambda()
+ .eq(OutPark::getParkId,parkId)
+ .eq(OutPark::getCarNo,carNo)
+ .ge(OutPark::getCreateTime,enterPark.getCreateTime())
+ .ne(OutPark::getStatus,1);
+ List<OutPark> list1 = outParkService.list(wrapper1);
+ if(list1 !=null&&list1.size()>0){
+ outPark = list1.get(0);
+ outPark.setEnterTime(enterPark.getCreateTime());
+ long l = outPark.getCreateTime().toInstant(ZoneOffset.of("+8")).toEpochMilli() - enterPark.getCreateTime().toInstant(ZoneOffset.of("+8")).toEpochMilli();
+ outPark.setTime(l/(1000*60));
+ try {
+ outPark.setPrice(costRuleService.getMoney(parkId, outPark.getEnterTime(), outPark.getCreateTime(), 1));
+ }catch (Exception e){
+ e.printStackTrace();
+ }
+ outParkService.saveOrUpdate(outPark);
+ return R.ok(null,"淇敼鍑哄満璁板綍鎴愬姛");
+ }else {
+ return R.ok(null,"鏂板鍏ュ満璁板綍鎴愬姛");
+ }
+
}
diff --git a/src/main/java/com/boying/controller/ParkController.java b/src/main/java/com/boying/controller/ParkController.java
index fa05e7c..de69d43 100644
--- a/src/main/java/com/boying/controller/ParkController.java
+++ b/src/main/java/com/boying/controller/ParkController.java
@@ -113,7 +113,7 @@
Park byId1 = parkService.getById(id);
String num = redisTemplate.opsForValue().get("car_park_" + byId1.getId());
try {
- if(StringUtils.isNotBlank(num)){
+ if(StringUtils.isBlank(num)){
num = "0";
}
byId1.setCarNum(Integer.parseInt(num));
diff --git a/src/main/java/com/boying/entity/BarrierOpenLog.java b/src/main/java/com/boying/entity/BarrierOpenLog.java
new file mode 100644
index 0000000..e45de24
--- /dev/null
+++ b/src/main/java/com/boying/entity/BarrierOpenLog.java
@@ -0,0 +1,50 @@
+package com.boying.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.boying.common.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Transient;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName BarrierOpenLog.java
+ * @Description TODO
+ * @createTime 2024骞�04鏈�09鏃� 10:26:00
+ */
+@Data
+@TableName("barrier_open_log")
+@javax.persistence.Table(name = "barrier_open_log")
+@Entity
+@org.hibernate.annotations.Table(appliesTo = "barrier_open_log", comment = "鎵嬪姩寮�闂告棩蹇楄〃")
+@ApiModel(value = "鎵嬪姩寮�闂告棩蹇楄〃")
+public class BarrierOpenLog extends BaseEntity<Barrier> {
+
+ @ApiModelProperty(value = "鍋滆溅鍦篿d")
+ @Column(columnDefinition = "int comment '鍋滆溅鍦篿d'")
+ private Integer parkId;
+
+ @ApiModelProperty(value = "鍑哄叆")
+ @Column(columnDefinition = "int comment '鍑哄叆 0/鍑� 1/鍏�'")
+ private int type;
+
+ @ApiModelProperty(value = "杞︾墝鍙�")
+ @Column(columnDefinition = "varchar(100) comment '杞︾墝鍙�'")
+ private String carNo;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @Column(columnDefinition = "varchar(100) comment '澶囨敞'")
+ private String remark;
+
+
+ @Transient
+ @TableField(exist = false)
+ private String parkName;
+
+}
diff --git a/src/main/java/com/boying/entity/EnterPark.java b/src/main/java/com/boying/entity/EnterPark.java
index f9707a6..1734340 100644
--- a/src/main/java/com/boying/entity/EnterPark.java
+++ b/src/main/java/com/boying/entity/EnterPark.java
@@ -51,6 +51,10 @@
@Column(columnDefinition = "int comment '鏄惁鏀粯'")
private Integer isPay;
+ @ApiModelProperty(value = "鏄惁鎺ュ彛鏂板")
+ @Column(columnDefinition = "int comment '鏄惁鎺ュ彛鏂板'")
+ private Integer isAdd;
+
private double price;
diff --git a/src/main/java/com/boying/entity/vo/BarrierVo.java b/src/main/java/com/boying/entity/vo/BarrierVo.java
new file mode 100644
index 0000000..69979b9
--- /dev/null
+++ b/src/main/java/com/boying/entity/vo/BarrierVo.java
@@ -0,0 +1,26 @@
+package com.boying.entity.vo;
+
+import com.boying.common.BaseEntity;
+import com.boying.entity.Barrier;
+import com.boying.entity.BarrierOpenLog;
+import io.swagger.annotations.ApiModelProperty;
+
+import javax.persistence.Column;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName BarrierVo.java
+ * @Description TODO
+ * @createTime 2024骞�04鏈�09鏃� 14:37:00
+ */
+public class BarrierVo extends BarrierOpenLog {
+
+ private String code;
+
+ private String code2;
+
+ private int status;
+
+ private int type2;
+}
diff --git a/src/main/java/com/boying/mapper/BarrierOpenLogMapper.java b/src/main/java/com/boying/mapper/BarrierOpenLogMapper.java
new file mode 100644
index 0000000..c1ba898
--- /dev/null
+++ b/src/main/java/com/boying/mapper/BarrierOpenLogMapper.java
@@ -0,0 +1,17 @@
+package com.boying.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.boying.entity.Barrier;
+import com.boying.entity.BarrierOpenLog;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName BarrierMapper.java
+ * @Description TODO
+ * @createTime 2022骞�11鏈�20鏃� 22:26:00
+ */
+@Mapper
+public interface BarrierOpenLogMapper extends BaseMapper<BarrierOpenLog> {
+}
diff --git a/src/main/java/com/boying/service/BarrierOpenLogService.java b/src/main/java/com/boying/service/BarrierOpenLogService.java
new file mode 100644
index 0000000..e6513e5
--- /dev/null
+++ b/src/main/java/com/boying/service/BarrierOpenLogService.java
@@ -0,0 +1,15 @@
+package com.boying.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.boying.entity.Barrier;
+import com.boying.entity.BarrierOpenLog;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName BarrierService.java
+ * @Description TODO
+ * @createTime 2022骞�11鏈�20鏃� 22:25:00
+ */
+public interface BarrierOpenLogService extends IService<BarrierOpenLog> {
+}
diff --git a/src/main/java/com/boying/service/OutParkService.java b/src/main/java/com/boying/service/OutParkService.java
index d655027..4081de4 100644
--- a/src/main/java/com/boying/service/OutParkService.java
+++ b/src/main/java/com/boying/service/OutParkService.java
@@ -44,7 +44,6 @@
OutPark findByOrderId(String txnOrderId);
OutPark findBy5min(String carNo, Integer parkId, LocalDateTime dateTime);
- OutPark findBy10min(String carNo, Integer parkId, LocalDateTime dateTime);
OutPark findBy5min2(String carNo, Integer parkId, LocalDateTime dateTime);
OutPark findBy10min(String carNo, Integer parkId, LocalDateTime dateTime, Integer outParkId);
diff --git a/src/main/java/com/boying/service/impl/BarrierOpenLogServiceImpl.java b/src/main/java/com/boying/service/impl/BarrierOpenLogServiceImpl.java
new file mode 100644
index 0000000..a16e82c
--- /dev/null
+++ b/src/main/java/com/boying/service/impl/BarrierOpenLogServiceImpl.java
@@ -0,0 +1,37 @@
+package com.boying.service.impl;
+
+import cn.hutool.core.date.DateUnit;
+import cn.hutool.core.date.DateUtil;
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.boying.entity.Barrier;
+import com.boying.entity.BarrierOpenLog;
+import com.boying.entity.EnterPark;
+import com.boying.entity.OutPark;
+import com.boying.mapper.*;
+import com.boying.service.BarrierOpenLogService;
+import com.boying.service.BarrierService;
+import com.boying.util.StringUtil;
+import lombok.AllArgsConstructor;
+import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.stereotype.Service;
+
+import java.time.ZoneId;
+import java.util.Date;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName BarrierServiceImpl.java
+ * @Description TODO
+ * @createTime 2022骞�11鏈�20鏃� 22:25:00
+ */
+@Service
+@AllArgsConstructor
+public class BarrierOpenLogServiceImpl extends ServiceImpl<BarrierOpenLogMapper, BarrierOpenLog> implements BarrierOpenLogService {
+
+}
--
Gitblit v1.9.1