feat(device): add app icon management with pagination and delete functionality
新增应用图标库分页查询和图标删除接口,并完成对应的菜单与按钮权限初始化。
This commit is contained in:
@@ -3,7 +3,10 @@ package com.youlai.boot.device.controller;
|
||||
import com.youlai.boot.common.annotation.Log;
|
||||
import com.youlai.boot.common.enums.ActionTypeEnum;
|
||||
import com.youlai.boot.common.enums.LogModuleEnum;
|
||||
import com.youlai.boot.common.result.PageResult;
|
||||
import com.youlai.boot.common.result.Result;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.youlai.boot.device.model.vo.AppIconVO;
|
||||
import com.youlai.boot.device.service.AppIconService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
@@ -12,6 +15,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
@@ -76,4 +80,25 @@ public class AppIconController {
|
||||
) {
|
||||
return Result.success(appIconService.uploadIcon(packageName, appName, file, "admin"));
|
||||
}
|
||||
|
||||
@Operation(summary = "删除应用图标版本")
|
||||
@DeleteMapping("/{packageName}/{iconId}")
|
||||
@Log(module = LogModuleEnum.DEVICE, value = ActionTypeEnum.DELETE)
|
||||
public Result<Boolean> deleteIcon(
|
||||
@Parameter(description = "应用包名") @PathVariable String packageName,
|
||||
@Parameter(description = "图标记录ID") @PathVariable Long iconId
|
||||
) {
|
||||
return Result.judge(appIconService.deleteIcon(packageName, iconId));
|
||||
}
|
||||
|
||||
@Operation(summary = "应用图标库分页列表")
|
||||
@GetMapping("/page")
|
||||
public PageResult<AppIconVO> page(
|
||||
@Parameter(description = "页码", example = "1") @RequestParam(defaultValue = "1") Long pageNum,
|
||||
@Parameter(description = "每页条数", example = "10") @RequestParam(defaultValue = "10") Long pageSize,
|
||||
@Parameter(description = "应用包名(可选,不传返回全部)") @RequestParam(required = false) String packageName
|
||||
) {
|
||||
IPage<AppIconVO> page = new Page<>(pageNum, pageSize);
|
||||
return PageResult.success(appIconService.pageAppIcons(page, packageName));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user