package com.boying.controller; 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.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 io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.apache.commons.io.FileUtils; import org.apache.commons.io.FilenameUtils; import org.apache.commons.io.IOUtils; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.math.BigDecimal; import java.util.*; @RestController @RequestMapping("ffzf/ticketblack") @RequiredArgsConstructor @Tag(description = "ffzf/ticketblack" , name = "黑名单表接口" ) public class TicketBlackController { private final TicketService ticketService; private final ViolationTypeService violationTypeService; private final TicketBlackService ticketBlackService; @PostMapping("findPage") @Operation(summary = "分页查询" , description = "分页查询" ) public Object findPage(Page page, TicketBlack ticket){ QueryWrapper wrapper = new QueryWrapper<>(); wrapper.lambda() .like(StringUtils.isNotBlank(ticket.getCarNo()),TicketBlack::getCarNo,ticket.getCarNo()) .eq(ticket.getIsActive() != null,TicketBlack::getIsActive,ticket.getIsActive()) .orderByDesc(TicketBlack::getCreateTime); return R.ok(ticketBlackService.page(page, wrapper)); } @PostMapping("/save") @Operation(summary = "新增黑名单" , description = "新增黑名单" ) public Object save(TicketBlack ticket) throws IOException{ QueryWrapper wrapper = new QueryWrapper<>(); wrapper.lambda() .eq(TicketBlack::getCarNo,ticket.getCarNo()); List list = ticketBlackService.list(wrapper); if(list.size()>0){ return R.failed("此车辆已存在黑名单"); } ticket.setIsActive(1); ticket.setViolationCount(0); ticketBlackService.save(ticket); return R.ok(); } /** * 通过id查询票据表 * @param id id * @return R */ @ApiOperation(value = "通过id查询", notes = "通过id查询") @GetMapping("/{id}" ) @Operation(summary = "通过id查询" , description = "通过id查询" ) public R getById(@PathVariable("id" ) Integer id) { TicketBlack byId = ticketBlackService.getById(id); return R.ok(byId); } @PostMapping("/delete") @Operation(summary = "删除黑名单" , description = "删除黑名单" ) public Object delete(Long id){ TicketBlack ticket =ticketBlackService.getById(id); if(ticket!=null){ if(ticket.getViolationCount() >0 ){ return R.failed("请先解决违章"); } ticketBlackService.removeById(ticket); return R.ok("操作成功"); } return R.failed("未找到该车"); } @PostMapping("/updateById") @Operation(summary = "更新黑名单" , description = "更新黑名单" ) public Object updateById(TicketBlack ticket){ return R.ok( ticketBlackService.updateById(ticket)); } }