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