zhangnaisong
2024-07-26 1636f02b9cf3f408ebf8b3c4e377237e5b74bf4a
ard-work/src/main/java/com/ruoyi/sy/controller/ArdTankLockController.java
@@ -4,8 +4,14 @@
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.sy.domain.ArdTankWall;
import com.ruoyi.sy.service.IArdTankLockProcessLogService;
import com.ruoyi.sy.service.IArdTankWallLockService;
import com.ruoyi.sy.service.IArdTankWallService;
import com.ruoyi.utils.result.Results;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -40,6 +46,15 @@
public class ArdTankLockController extends BaseController {
    @Autowired
    private IArdTankLockService ardTankLockService;
    @Autowired
    private IArdTankWallService ardTankWallService;
    @Autowired
    private IArdTankWallLockService ardTankWallLockService;
    @Autowired
    private IArdTankLockProcessLogService ardTankLockProcessLogService;
    /**
     * 查询电磁锁列表
@@ -78,12 +93,19 @@
    /**
     * 新增电磁锁
     */
    @ApiOperation("新增电磁锁")
    /*@ApiOperation("新增电磁锁")
    @PreAuthorize("@ss.hasPermi('sy:lock:add')")
    @Log(title = "电磁锁" , businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ArdTankLock ardTankLock) {
        return toAjax(ardTankLockService.insertArdTankLock(ardTankLock));
    }*/
    @ApiOperation("新增电磁锁")
    @PreAuthorize("@ss.hasPermi('sy:lock:add')")
    @Log(title = "电磁锁" , businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody Map<String,Object> para) {
        return toAjax(ardTankLockService.insertArdTankLock(para));
    }
    /**
@@ -119,12 +141,198 @@
        return toAjax(ardTankLockService.deleteArdTankLockById(id));
    }
    @ApiOperation("查询全部电磁锁")
    /*@ApiOperation("查询全部电磁锁")
    @PreAuthorize("@ss.hasPermi('sy:lock:getAll')")
    @GetMapping("/getAll")
    public Results getAll() {
        String userId = SecurityUtils.getUserId();
        Results result = ardTankLockService.getAll(userId);
        return result;
    }*/
    @ApiOperation("查询全部电磁锁")
    @PreAuthorize("@ss.hasPermi('sy:lock:getAll')")
    //@GetMapping("/getAll")
    @PostMapping("/getAll")
    public TableDataInfo getAll(@RequestBody Map<String,Integer> para) {
        /*startPage();
        String userId = SecurityUtils.getUserId();
        List<Map<String,Object>> result = ardTankLockService.getAll(userId);
        return getDataTable(result);*/
        PageHelper.startPage((Integer) para.get("pageNum"), (Integer) para.get("pageSize"));
        String userId = SecurityUtils.getUserId();
        Map<String,Object> result = ardTankLockService.getAll(userId);
        TableDataInfo dataTable = new TableDataInfo();
        dataTable.setRows((List<Map<String,Object>>) result.get("list"));
        dataTable.setTotal((Long) result.get("total"));
        dataTable.setCode(200);
        dataTable.setMsg("查询成功");
        return dataTable;
    }
    /**
     * 根据car_id获取电磁锁详细信息
     */
    @ApiOperation("根据car_id获取电磁锁详细信息")
    @PreAuthorize("@ss.hasPermi('sy:lock:getLockByCarId')")
    @PostMapping("/getLockByCarId")
    public AjaxResult getLockByCarId(@RequestBody ArdTankLock ardTankLock) {
        String userId = SecurityUtils.getUserId();
        return success(ardTankLockService.getLockByCarId(ardTankLock.getCarId(),userId));
    }
    /**
     * 根据car_id删除电磁锁
     */
    @ApiOperation("根据car_id删除电磁锁")
    @PreAuthorize("@ss.hasPermi('sy:lock:deleteLockByCarId')")
    @PostMapping("/deleteLockByCarId")
    public AjaxResult deleteLockByCarId(@RequestBody ArdTankLock ardTankLock) {
        return toAjax(ardTankLockService.deleteLockByCarId(ardTankLock.getCarId()));
    }
    @ApiOperation("修改电磁锁")
    @PreAuthorize("@ss.hasPermi('sy:lock:updateLockByCarId')")
    @Log(title = "电磁锁" , businessType = BusinessType.UPDATE)
    @PutMapping("/updateLockByCarId")
    public AjaxResult updateLockByCarId(@RequestBody Map<String,Object> para) {
        return toAjax(ardTankLockService.updateLockByCarId(para));
    }
    /**
     * 新增电子围栏
     */
    @ApiOperation("新增电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:lock:addWall')")
    @Log(title = "电磁锁" , businessType = BusinessType.INSERT)
    @PostMapping("/addWall")
    public AjaxResult addWall(@RequestBody ArdTankWall ardTankWall) {
        return toAjax(ardTankWallService.insertArdTankWall(ardTankWall));
    }
    /**
     * 修改电子围栏
     */
    @ApiOperation("修改电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:lock:updateWall')")
    @Log(title = "电磁锁" , businessType = BusinessType.UPDATE)
    @PutMapping("/updateWall")
    public AjaxResult updateWall(@RequestBody ArdTankWall ardTankWall) {
        return toAjax(ardTankWallService.updateArdTankWall(ardTankWall));
    }
    /**
     * 删除电子围栏
     */
    @ApiOperation("删除单一电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:lock:removeWall')")
    @Log(title = "电磁锁" , businessType = BusinessType.DELETE)
    @DeleteMapping("/removeWall/{id}")
    public AjaxResult removeWall(@PathVariable String id) {
        return toAjax(ardTankWallService.deleteArdTankWallById(id));
    }
    /*@ApiOperation("查询全部电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:lock:getAllArdTankWall')")
    @GetMapping("/getAllArdTankWall")
    public Results getAllArdTankWall() {
        List<ArdTankWall> result = ardTankWallService.getAllArdTankWall();
        return Results.succeed(result);
    }*/
    @ApiOperation("查询全部电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:lock:getAllArdTankWall')")
    @PostMapping("/getAllArdTankWall")
    public TableDataInfo getAllArdTankWall(@RequestBody Map<String,Object> para) {
        /*startPage();
        ArdTankWall ardTankWall = new ArdTankWall();
        ardTankWall.setWallName((String) para.get("wallName"));
        List<ArdTankWall> list = ardTankWallService.selectArdTankWallList(ardTankWall);
        return getDataTable(list);*/
        PageHelper.startPage((Integer) para.get("pageNum"), (Integer) para.get("pageSize"));
        ArdTankWall ardTankWall = new ArdTankWall();
        ardTankWall.setWallName((String) para.get("wallName"));
        Map<String,Object> result = ardTankWallService.selectArdTankWallList(ardTankWall);
        TableDataInfo dataTable = new TableDataInfo();
        dataTable.setRows((List<ArdTankWall>) result.get("list"));
        dataTable.setTotal((Long) result.get("total"));
        dataTable.setCode(200);
        dataTable.setMsg("查询成功");
        return dataTable;
    }
    @ApiOperation("根据主键获取电磁锁电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:tankWall:getArdTankWallById')")
    @GetMapping(value = "/getArdTankWallById/{id}")
    public AjaxResult getArdTankWallById(@PathVariable String id) {
        return success(ardTankWallService.selectArdTankWallById(id));
    }
    /**
     * 模糊查询电磁锁及挂接的车辆
     */
    @ApiOperation("模糊查询电磁锁及挂接的车辆")
    @PreAuthorize("@ss.hasPermi('sy:lock:getLockByCarPlate')")
    @PostMapping("/getLockByCarPlate")
    public TableDataInfo getLockByCarPlate(@RequestBody Map<String,Object> para) {
        /*startPage();
        String userId = SecurityUtils.getUserId();
        List<Map<String,String>> result = ardTankLockService.getLockByCarPlate(userId,para.get("carPlate"));
        return getDataTable(result);*/
        //PageHelper.startPage((Integer) para.get("pageNum"), (Integer) para.get("pageSize"));
        String userId = SecurityUtils.getUserId();
        Map<String,Object> result = ardTankLockService.getLockByCarPlate(userId, (String) para.get("carPlate"),(Integer) para.get("pageNum"), (Integer) para.get("pageSize"));
        TableDataInfo dataTable = new TableDataInfo();
        dataTable.setRows((List<Map<String,Object>>) result.get("list"));
        dataTable.setTotal((Long) result.get("total"));
        dataTable.setCode(200);
        dataTable.setMsg("查询成功");
        return dataTable;
    }
    @ApiOperation("根据锁主键获取电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:tankWall:getArdTankWallByLockId')")
    @GetMapping(value = "/getArdTankWallByLockId/{id}")
    public AjaxResult getArdTankWallByLockId(@PathVariable String id) {
        return success(ardTankWallService.getArdTankWallByLockId(id));
    }
    /**
     * 挂接电磁锁及电子围栏
     */
    @ApiOperation("挂接电磁锁及电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:lock:insertWallLock')")
    @PostMapping("/insertWallLock")
    public AjaxResult insertWallLock(@RequestBody Map<String,Object> para) {
        int result = ardTankWallLockService.insertWallLock(para);
        return toAjax(result);
    }
    /**
     * 根据锁主键删除挂接的电子围栏
     */
    @ApiOperation("根据锁主键删除挂接的电子围栏")
    @PreAuthorize("@ss.hasPermi('sy:lock:deleteArdTankWallLockByLockId')")
    @Log(title = "电磁锁" , businessType = BusinessType.DELETE)
    @DeleteMapping("/deleteArdTankWallLockByLockId/{id}")
    public AjaxResult deleteArdTankWallLockByLockId(@PathVariable String id) {
        return toAjax(ardTankWallLockService.deleteArdTankWallLockByLockId(id));
    }
    /**
     * 操控电磁锁
     */
    @ApiOperation("操控电磁锁")
    @PreAuthorize("@ss.hasPermi('sy:lock:processArdTankLockByLockId')")
    @Log(title = "电磁锁" , businessType = BusinessType.INSERT)
    @PostMapping("/processArdTankLockByLockId")
    public AjaxResult processArdTankLockByLockId(@RequestBody Map<String,String> para) {
        String userId = SecurityUtils.getUserId();
        String username = SecurityUtils.getUsername();
        return ardTankLockProcessLogService.processArdTankLockByLockId(userId,username,para);
    }
}