feat(device): 重构应用图标功能,新增停止应用操作
- 静态资源路径从 /api/v1/device/app_icon 迁移至 /static/app_icon,避免与 Controller 路径冲突,并添加 immutable 长缓存策略 - 数据库及实体新增 app_name 字段,支持图标上报时同步应用名称 - 图标锁定场景改用 BusinessException(APP_ICON_LOCKED) 明确业务拒绝码,设备端可识别为终态 - 新增 STOP_APP 操作类型及对应推送接口 - 安全配置放行 /static/** 静态资源路径
This commit is contained in:
@@ -5,6 +5,7 @@ import com.youlai.boot.common.enums.ActionTypeEnum;
|
||||
import com.youlai.boot.common.enums.LogModuleEnum;
|
||||
import com.youlai.boot.common.result.Result;
|
||||
import com.youlai.boot.device.model.entity.SnDeviceInfo;
|
||||
import com.youlai.boot.device.model.form.AppActionForm;
|
||||
import com.youlai.boot.device.model.form.DeveloperForm;
|
||||
import com.youlai.boot.device.model.vo.DevicePageVO;
|
||||
import com.youlai.boot.device.service.DeviceService;
|
||||
@@ -129,4 +130,28 @@ public class DeviceOpsController {
|
||||
boolean result = deviceService.deleteDeveloperConfig(sn);
|
||||
return Result.judge(result);
|
||||
}
|
||||
|
||||
@Operation(summary = "打开应用")
|
||||
@PostMapping("/{sn}/app/launch")
|
||||
@Log(module = LogModuleEnum.DEVICE, value = ActionTypeEnum.LAUNCH_APP)
|
||||
public Result<?> launchApp(@PathVariable String sn, @Valid @RequestBody AppActionForm form) {
|
||||
boolean result = deviceService.launchApp(sn, form.getPackageName());
|
||||
return Result.judge(result);
|
||||
}
|
||||
|
||||
@Operation(summary = "清除应用数据")
|
||||
@PostMapping("/{sn}/app/clear_data")
|
||||
@Log(module = LogModuleEnum.DEVICE, value = ActionTypeEnum.CLEAR_APP_DATA)
|
||||
public Result<?> clearAppData(@PathVariable String sn, @Valid @RequestBody AppActionForm form) {
|
||||
boolean result = deviceService.clearAppData(sn, form.getPackageName());
|
||||
return Result.judge(result);
|
||||
}
|
||||
|
||||
@Operation(summary = "卸载应用")
|
||||
@PostMapping("/{sn}/app/uninstall")
|
||||
@Log(module = LogModuleEnum.DEVICE, value = ActionTypeEnum.UNINSTALL_APP)
|
||||
public Result<?> uninstallApp(@PathVariable String sn, @Valid @RequestBody AppActionForm form) {
|
||||
boolean result = deviceService.uninstallApp(sn, form.getPackageName());
|
||||
return Result.judge(result);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user