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/controller/phone/TicketController.java |  194 +++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 167 insertions(+), 27 deletions(-)

diff --git a/src/main/java/com/boying/controller/phone/TicketController.java b/src/main/java/com/boying/controller/phone/TicketController.java
index 18be733..9c4c681 100644
--- a/src/main/java/com/boying/controller/phone/TicketController.java
+++ b/src/main/java/com/boying/controller/phone/TicketController.java
@@ -5,20 +5,21 @@
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.boying.common.R;
-import com.boying.common.SystemConfigProperties;
 
 import com.boying.entity.*;
 import com.boying.service.*;
 import com.boying.util.DateUtilOther;
+import com.boying.util.FileUtil;
+import com.boying.util.NumberToCN;
+import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.io.IOUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.MediaType;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartHttpServletRequest;
 
@@ -28,17 +29,27 @@
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
+import java.math.BigDecimal;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.*;
 
 @RestController
-@RequestMapping("ticket")
+@RequestMapping("ffzf/ticket")
 @RequiredArgsConstructor
 public class TicketController{
 
 
     private final TicketService ticketService;
 
-    private final SystemConfigProperties systemConfigProperties;
+    @Value("${ffpark.uploadPath}")
+    private String uploadImgPath;
+    @Value("${ffpark.ip2}")
+    private String ip2;
+
+//    @Autowired
+//    private final SystemConfigProperties systemConfigProperties;
 
     private final UserService userService;
 
@@ -50,12 +61,14 @@
 
     private final StreetLogoService streetLogoService;
 
+    private final NowPayOrderService nowPayOrderService;
+
     //鍥剧墖鍥炴樉
     @RequestMapping(value = "/showImg", method = RequestMethod.GET)
     public void getAwardAsByteArray(HttpServletResponse response, HttpServletRequest request) throws IOException {
         String result = request.getParameter("result");
         InputStream in = null;
-        in = FileUtils.openInputStream(new File(systemConfigProperties.getUploadImgPath()+result));
+        in = FileUtils.openInputStream(new File(uploadImgPath+result));
         response.setContentType(MediaType.IMAGE_PNG_VALUE);
         ServletOutputStream out = response.getOutputStream();
         try {
@@ -68,23 +81,17 @@
     }
 
     @PostMapping("findPage")
-    public Object findPage(Page page, Integer type){
-        if(type==null){
-            QueryWrapper<Ticket> wrapper = new QueryWrapper<>();
-            wrapper.lambda()
-                    .eq(Ticket::getType,1)
-                    .orderByDesc(Ticket::getId);
-            return R.ok(ticketService.page(page, wrapper));
-        }else{
-            QueryWrapper<Ticket> wrapper = new QueryWrapper<>();
-            wrapper.lambda()
-                    .eq(Ticket::getType,type)
-                    .orderByDesc(Ticket::getId);
-            return R.ok(ticketService.page(page, wrapper));
-        }
-
+    public Object findPage(Page page, Ticket ticket){
+        QueryWrapper<Ticket> wrapper =  new QueryWrapper<>();
+        wrapper.lambda()
+                .like(StringUtils.isNotBlank(ticket.getCarNo()),Ticket::getCarNo,ticket.getCarNo())
+                .eq(ticket.getType() != null,Ticket::getType,ticket.getType())
+                .eq(ticket.getViolationTypeId() != null,Ticket::getViolationTypeId,ticket.getViolationTypeId())
+                .eq(ticket.getPayStatus() != null,Ticket::getPayStatus,ticket.getPayStatus())
+                .ne(Ticket::getStatus,3)
+                .orderByDesc(Ticket::getCreateTime);
+        return R.ok(ticketService.page(page, wrapper));
     }
-
 
     @PostMapping("/save")
     public Object save(Ticket ticket,HttpServletRequest request) throws IOException{
@@ -96,7 +103,7 @@
             if(multipartFile != null){
                 String fileExtension = FilenameUtils.getExtension(multipartFile.getOriginalFilename());//鑾峰彇鍚庣紑
                 String newFileName = System.currentTimeMillis() + "." + fileExtension;//鍥剧墖鍚嶇О
-                String newFilePath = systemConfigProperties.getUploadImgPath() + newFileName;//涓婁紶璺緞
+                String newFilePath = uploadImgPath + newFileName;//涓婁紶璺緞
                 File destFile = new File(newFilePath);
                 FileUtils.writeByteArrayToFile(destFile, multipartFile.getBytes());
                 if(i != imgs.size()-1){
@@ -123,15 +130,35 @@
         }
 
         ticket.setStatus(1);//宸插鐞�
+        ticket.setPayStatus(0);
 
         ticketService.saveOrUpdate(ticket);
         if(StringUtils.isBlank(ticket.getQrUrl())){
-            ticket.setQrUrl(systemConfigProperties.getIp2()+"#/index?id="+ticket.getId());
+            ticket.setQrUrl(ip2+"#/index?id="+ticket.getId());
             ticketService.saveOrUpdate(ticket);
         }
 
         if(StringUtils.isNotBlank(ticket.getLng())&&StringUtils.isNotBlank(ticket.getLat())){
             saveLogo(ticket.getAddress(),ticket.getLng(),ticket.getLat());
+        }
+        if(ticket.getType() == 2){
+            try {
+                ticket.setPayStatus(1);
+                QueryWrapper<TicketBlack> wrapper = new QueryWrapper<>();
+                wrapper.lambda()
+                        .eq(TicketBlack::getCarNo,ticket.getCarNo());
+                List<TicketBlack> list = ticketBlackService.list(wrapper);
+                if(list.size()>0){
+                    for (TicketBlack ticketBlack : list) {
+                        ticketBlackService.removeById(ticketBlack.getId());
+                    }
+                }
+                ticket = ticketService.getNumber(ticket);
+                ticket.setPush(0);
+                ticketService.uploadInfo(ticket);
+            }catch (Exception e){
+                e.printStackTrace();
+            }
         }
         return R.ok(ticket);
     }
@@ -154,18 +181,92 @@
         updateBlackTicket(ticket);
 
         ticketService.saveOrUpdate(ticket);
-        ticket.setQrUrl(systemConfigProperties.getIp2()+"#/index?id="+ticket.getId());
+        ticket.setQrUrl(ip2+"#/index?id="+ticket.getId());
         ticket.setType(1);
         ticketService.saveOrUpdate(ticket);
         return R.ok(ticket);
     }
+
+    /**
+     * 閫氳繃id鏌ヨ绁ㄦ嵁琛�
+     * @param id id
+     * @return R
+     */
+    @ApiOperation(value = "閫氳繃id鏌ヨ", notes = "閫氳繃id鏌ヨ")
+    @GetMapping("/{id}" )
+    public R getById(@PathVariable("id" ) Integer id) {
+        Ticket byId = ticketService.getById(id);
+        byId.setContent(violationTypeService.getById(byId.getViolationTypeId()).getContent());
+        String shouQianMing = byId.getShouQianMing();
+        String zfQianMing1 = byId.getZfQianMing1();
+        String zfQianMing2 = byId.getZfQianMing2();
+        if(StringUtils.isNotBlank(shouQianMing)){
+            String get = FileUtil.netSourceToBase64(shouQianMing, "GET");
+            byId.setShouQianMing("data:image/png;base64,"+get);
+        }
+        if(StringUtils.isNotBlank(zfQianMing1)){
+            String get = FileUtil.netSourceToBase64(zfQianMing1, "GET");
+            byId.setZfQianMing1("data:image/png;base64,"+get);
+        }
+        if(StringUtils.isNotBlank(zfQianMing2)){
+            String get = FileUtil.netSourceToBase64(zfQianMing2, "GET");
+            byId.setZfQianMing2("data:image/png;base64,"+get);
+        }
+        return R.ok(byId);
+    }
+
 
     @PostMapping("/delete")
     public Object delete(Long id){
         Ticket ticket =ticketService.getById(id);
         ticket.setStatus(3);
         ticketService.saveOrUpdate(ticket);
+        QueryWrapper<TicketBlack> wrapper = new QueryWrapper<>();
+        wrapper.lambda()
+                .eq(TicketBlack::getCarNo,ticket.getCarNo());
+        List<TicketBlack> list = ticketBlackService.list(wrapper);
+        if(list.size()>0){
+            for (TicketBlack ticketBlack : list) {
+                ticketBlackService.removeById(ticketBlack.getId());
+            }
+        }
         return R.ok("鎿嶄綔鎴愬姛");
+    }
+
+    @PostMapping("/updateById")
+    public Object updateById(Ticket ticket){
+        if(ticket.getMoney() >0){
+            BigDecimal numberOfMoney = new BigDecimal(ticket.getMoney()+"");
+            String s = NumberToCN.number2CNMontrayUnit(numberOfMoney);
+            ticket.setMoneyStr(s.toString());
+        }
+        if(ticket.getMoney() == 0){
+            if(StringUtils.isBlank(ticket.getNumber())){
+                ticket = ticketService.getNumber(ticket);
+                ticket.setPush(0);
+                ticketService.uploadInfo(ticket);
+            }
+        }
+        if(StringUtils.isBlank(ticket.getZfName1())){
+            ticket.setZfName1("鐜嬩繆绁�");
+            ticket.setZfName2("寮犲噣闆�");
+            ticket.setZfNum1("03041699001");
+            ticket.setZfNum2("03041618001");
+            ticket.setZfQianMing1("http://127.0.0.1:8089/ffzf/fileinfo/showImg/wangjunxiang.png");
+            ticket.setZfQianMing2("http://127.0.0.1:8089/ffzf/fileinfo/showImg/zhangjinglei.png");
+        }
+        if(StringUtils.isBlank(ticket.getNumber())){
+            ticket.setNumber("--");
+        }
+        ticketService.updateById(ticket);
+        return R.ok();
+    }
+
+    //涓庢墽娉曞鎺�
+    @GetMapping("/getResult")
+    public Object getResult(Ticket ticket){
+        ticketService.updateById(ticket);
+        return R.ok();
     }
 
     public void saveLogo(String name,String lng,String lat){
@@ -190,6 +291,7 @@
             tb.setCarType(ticket.getCarType());
             tb.setColor(ticket.getColor());
             tb.setViolationCount(1);
+            tb.setIsActive(0);
             ticketBlackService.saveOrUpdate(tb);
         }else {
             TicketBlack ticketBlack = all.get(0);
@@ -298,4 +400,42 @@
         }
         return R.ok(ticket);
     }
+
+    /**
+     * 鎵嬪姩缂磋垂
+     * @param id id
+     * @return R
+     */
+    @ApiOperation(value = "鎵嬪姩缂磋垂", notes = "鎵嬪姩缂磋垂")
+    @PostMapping("/jiaofei" )
+    public R jiaofei(Integer id) {
+        Ticket byId = ticketService.getById(id);
+        if(byId.getPayStatus() == 1){
+            return R.failed("姝ょ綒鍗曞凡鏀粯");
+        }else if(byId.getMoney() == 0){
+            return R.failed("姝ょ綒鍗曟棤闇�缂磋垂");
+        }else {
+            NowPayOrder nowPayOrder = new NowPayOrder();
+            nowPayOrder.setQueryId(byId.getId());
+            nowPayOrder.setType(0);
+            nowPayOrder.setCarNo(byId.getCarNo());
+            nowPayOrderService.saveOrder(nowPayOrder);
+            return R.ok("璇锋壂鐮佺即璐�");
+        }
+    }
+
+    /**
+     * 娴嬭瘯瀵规帴
+     * @param
+     * @return R
+     */
+    @ApiOperation(value = "娴嬭瘯瀵规帴", notes = "娴嬭瘯瀵规帴")
+    @GetMapping("/test" )
+    public R test() {
+        Ticket byId = ticketService.getById(13);
+        byId = ticketService.getNumber(byId);
+        byId.setPush(0);
+        ticketService.uploadInfo(byId);
+        return R.ok();
+    }
 }

--
Gitblit v1.9.1