From 80cacfd0dcee0174f2a8d9ae322a2fcf857cef63 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期三, 04 十二月 2024 15:31:35 +0800
Subject: [PATCH] fix : 新增修改出场接口

---
 src/main/java/com/boying/controller/ParkController.java |   65 ++++++++++++++++++++++++++++----
 1 files changed, 56 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/boying/controller/ParkController.java b/src/main/java/com/boying/controller/ParkController.java
index de69d43..469c0ea 100644
--- a/src/main/java/com/boying/controller/ParkController.java
+++ b/src/main/java/com/boying/controller/ParkController.java
@@ -1,14 +1,20 @@
 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.EditParkNumLog;
+import com.boying.entity.EnterPark;
 import com.boying.entity.Park;
 import com.boying.entity.User;
+import com.boying.service.EditParkNumLogService;
+import com.boying.service.EnterParkService;
 import com.boying.service.ParkService;
 import com.boying.service.UserService;
+import com.boying.util.IpUtil;
 import com.boying.util.RedisJsonUtil;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -18,7 +24,9 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.servlet.http.HttpServletRequest;
 import java.io.IOException;
+import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -35,10 +43,12 @@
     private final ParkService parkService;
     private final UserService userService;
     private final RedisJsonUtil redisJsonUtil;
+    private final EnterParkService enterParkService;
+    private final EditParkNumLogService editParkNumLogService;
 
     @PostMapping("/findPage")
-    public Object findPage(Page page) {
-        Page page1 = parkService.page(page, new QueryWrapper<Park>().lambda().orderByDesc(Park::getId));
+    public Object findPage(Page page,Park park) {
+        Page page1 = parkService.page(page, new QueryWrapper<Park>().lambda().eq(park.getId()!=null,Park::getId,park.getId()).orderByDesc(Park::getId));
         List<Park> records = page1.getRecords();
         for (Park record : records) {
             String num = redisTemplate.opsForValue().get("car_park_" +  record.getId());
@@ -61,18 +71,15 @@
             redisTemplate.opsForValue().set("car_park_" + park.getId(),"0",30, TimeUnit.DAYS);
             redisTemplate.opsForValue().set("park_up_" + park.getId(),"true",30, TimeUnit.DAYS);
         }
-        try {
-            redisJsonUtil.set("park-"+park.getId(), park);
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
+        String jsonValue = JSON.toJSONString(park);
+        redisTemplate.opsForValue().set("park-"+park.getId(), jsonValue);
         return R.ok("淇濆瓨鎴愬姛");
     }
 
     @PostMapping("/delete")
     public Object delete(Long id) {
         parkService.removeById(id);
-        redisJsonUtil.del("park-"+id);
+        redisTemplate.delete("park-"+id);
         return R.ok("鍒犻櫎鎴愬姛");
     }
 
@@ -142,8 +149,13 @@
         }
     }
     @PostMapping("/editParkCarNum")
-    public Object editParkCarNum(Park park) {
+    public Object editParkCarNum(HttpServletRequest request, Park park) {
         Park byId = parkService.getById(park.getId());
+        int num = byId.getNum();
+        String old = redisTemplate.opsForValue().get("car_park_" + byId.getId());
+        if(old==null){
+            old="0";
+        }
         if(byId == null){
             return R.failed("鏈煡璇㈠埌璇ュ仠杞﹀満");
         }else {
@@ -151,8 +163,43 @@
             redisTemplate.opsForValue().set("car_park_" + byId.getId(),park.getCarNum()+"",30, TimeUnit.DAYS);
             redisTemplate.opsForValue().set("park_up_" + byId.getId(),"true",30, TimeUnit.DAYS);
             parkService.updateById(byId);
+            String jsonValue = JSON.toJSONString(park);
+            redisTemplate.opsForValue().set("park-"+park.getId(), jsonValue);
+
+            String ipAddr = IpUtil.getIpAddr(request);
+            int newNum = park.getNum();
+            EditParkNumLog numLog = new EditParkNumLog();
+            numLog.setIp(ipAddr);
+            numLog.setNum(num);
+            numLog.setUseNum(Integer.parseInt(old));
+            numLog.setNewNum(newNum);
+            numLog.setNewUseNum(park.getCarNum());
+            numLog.setParkName(byId.getName());
+            numLog.setCreateTime(LocalDateTime.now());
+            editParkNumLogService.save(numLog);
+
             return R.ok(null,"淇敼鎴愬姛");
         }
     }
 
+
+
+
+    @PostMapping("/getParkCar")
+    public Object getParkCar(Page page, Integer parkId,String carNo) {
+        QueryWrapper<EnterPark> enterParkQueryWrapper = new QueryWrapper<>();
+        enterParkQueryWrapper.lambda()
+                .eq(parkId != null,EnterPark::getParkId,parkId)
+                .like(StringUtils.isNotBlank(carNo),EnterPark::getCarNo,carNo)
+                .orderByDesc(EnterPark::getCreateTime);
+        Page<EnterPark> page1 = enterParkService.page(page, enterParkQueryWrapper);
+        for (EnterPark record : page1.getRecords()) {
+            record.setParkName(parkService.getById(record.getParkId()).getName());
+            if(record.getImgId() != null){
+                record.setImgPath("/ffzf/fileinfo/showImgById/"+record.getImgId());
+            }
+        }
+        return R.ok(page1);
+    }
+
 }

--
Gitblit v1.9.1