package com.ruoyi.approve.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.approve.bean.dto.VehicleDto; import com.ruoyi.approve.bean.vo.VehicleVo; import com.ruoyi.approve.mapper.VehicleMapper; import com.ruoyi.approve.pojo.Vehicle; import com.ruoyi.approve.service.VehicleService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; /** * 车辆管理 Service 实现 */ @Service @RequiredArgsConstructor public class VehicleServiceImpl extends ServiceImpl implements VehicleService { private final VehicleMapper vehicleMapper; @Override public IPage listPage(Page page, VehicleDto vehicle) { return vehicleMapper.listPage(page, vehicle); } @Override @Transactional(rollbackFor = Exception.class) public Boolean add(VehicleDto vehicle) { return this.save(vehicle); } @Override public Vehicle detail(Long id) { if (id == null) { return null; } return this.getOne( new LambdaQueryWrapper() .eq(Vehicle::getId, id) .eq(Vehicle::getDeleted, 0) .last("LIMIT 1") ); } @Override @Transactional(rollbackFor = Exception.class) public Boolean update(VehicleDto vehicle) { if (vehicle == null || vehicle.getId() == null) { return false; } return this.updateById(vehicle); } @Override @Transactional(rollbackFor = Exception.class) public Boolean delete(List ids) { if (ids == null || ids.isEmpty()) { return false; } return this.update( Wrappers.lambdaUpdate() .in(Vehicle::getId, ids) .eq(Vehicle::getDeleted, 0) .set(Vehicle::getDeleted, 1) ); } }