package com.ruoyi.approve.controller;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.ruoyi.approve.bean.dto.VehicleBorrowRecordDto;
|
import com.ruoyi.approve.bean.dto.VehicleDto;
|
import com.ruoyi.approve.bean.vo.VehicleBorrowRecordVo;
|
import com.ruoyi.approve.bean.vo.VehicleVo;
|
import com.ruoyi.approve.service.VehicleService;
|
import com.ruoyi.approve.service.VehicleBorrowRecordService;
|
import com.ruoyi.framework.aspectj.lang.annotation.Log;
|
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
|
import com.ruoyi.framework.web.controller.BaseController;
|
import com.ruoyi.framework.web.domain.R;
|
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
import lombok.AllArgsConstructor;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
/**
|
* 车辆管理 前端控制器
|
*/
|
@RestController
|
@RequestMapping("/approve/vehicle")
|
@Tag(name = "车辆管理", description = "车辆管理")
|
@AllArgsConstructor
|
public class VehicleController extends BaseController {
|
|
private final VehicleService vehicleService;
|
private final VehicleBorrowRecordService vehicleBorrowRecordService;
|
|
@GetMapping("/listPage")
|
@Operation(summary = "分页查询车辆列表")
|
@Log(title = "车辆列表分页查询", businessType = BusinessType.OTHER)
|
public R listPage(Page<VehicleVo> page, VehicleDto vehicle) {
|
return R.ok(vehicleService.listPage(page, vehicle));
|
}
|
|
@PostMapping("/save")
|
@Operation(summary = "新增车辆")
|
@Log(title = "车辆新增", businessType = BusinessType.INSERT)
|
public R save(@RequestBody VehicleDto vehicle) {
|
return vehicleService.add(vehicle) ? R.ok() : R.fail();
|
}
|
|
@GetMapping("/detail")
|
@Operation(summary = "车辆详情")
|
public R detail(Long id) {
|
return R.ok(vehicleService.detail(id));
|
}
|
|
@PutMapping("/update")
|
@Operation(summary = "修改车辆")
|
@Log(title = "车辆修改", businessType = BusinessType.UPDATE)
|
public R update(@RequestBody VehicleDto vehicle) {
|
return vehicleService.update(vehicle) ? R.ok() : R.fail();
|
}
|
|
@DeleteMapping("/delete")
|
@Operation(summary = "删除车辆")
|
@Log(title = "车辆删除", businessType = BusinessType.DELETE)
|
public R delete(@RequestBody List<Long> ids) {
|
return vehicleService.delete(ids) ? R.ok() : R.fail();
|
}
|
|
@GetMapping("/borrow/listPage")
|
@Operation(summary = "分页查询借出记录列表")
|
@Log(title = "借出记录分页查询", businessType = BusinessType.OTHER)
|
public R borrowListPage(Page<VehicleBorrowRecordVo> page, VehicleBorrowRecordDto record) {
|
return R.ok(vehicleBorrowRecordService.listPage(page, record));
|
}
|
|
@PostMapping("/borrow/save")
|
@Operation(summary = "新增借出记录")
|
@Log(title = "借出记录新增", businessType = BusinessType.INSERT)
|
public R borrowSave(@RequestBody VehicleBorrowRecordDto record) {
|
return vehicleBorrowRecordService.add(record) ? R.ok() : R.fail();
|
}
|
|
@GetMapping("/borrow/detail")
|
@Operation(summary = "借出记录详情")
|
public R borrowDetail(Long id) {
|
return R.ok(vehicleBorrowRecordService.detail(id));
|
}
|
|
@PutMapping("/borrow/update")
|
@Operation(summary = "修改借出记录")
|
@Log(title = "借出记录修改", businessType = BusinessType.UPDATE)
|
public R borrowUpdate(@RequestBody VehicleBorrowRecordDto record) {
|
return vehicleBorrowRecordService.update(record) ? R.ok() : R.fail();
|
}
|
|
@DeleteMapping("/borrow/delete")
|
@Operation(summary = "删除借出记录")
|
@Log(title = "借出记录删除", businessType = BusinessType.DELETE)
|
public R borrowDelete(@RequestBody List<Long> ids) {
|
return vehicleBorrowRecordService.delete(ids) ? R.ok() : R.fail();
|
}
|
|
@PostMapping("/borrow/return")
|
@Operation(summary = "归还车辆")
|
@Log(title = "车辆归还", businessType = BusinessType.UPDATE)
|
public R borrowReturn(@RequestBody VehicleBorrowRecordDto record) {
|
return vehicleBorrowRecordService.returnVehicle(record) ? R.ok() : R.fail();
|
}
|
|
@PostMapping("/borrow/delay")
|
@Operation(summary = "发起延期申请")
|
@Log(title = "延期申请", businessType = BusinessType.INSERT)
|
public R borrowDelay(@RequestBody VehicleBorrowRecordDto record) {
|
return vehicleBorrowRecordService.delay(record) ? R.ok() : R.fail();
|
}
|
}
|