package com.youlai.boot.device.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.youlai.boot.device.model.entity.SnDeveloper; import com.youlai.boot.device.model.form.DeveloperForm; import com.youlai.boot.device.model.query.DeveloperQuery; import com.youlai.boot.device.model.vo.DeveloperVO; /** * 设备开发者选项服务接口 * * @author TTSTD * @since 2026-04-27 */ public interface DeveloperService extends IService { /** * 分页查询开发者选项配置 * * @param queryParams 查询参数 * @return 分页列表 */ IPage page(DeveloperQuery queryParams); /** * 获取开发者选项表单数据 * * @param id 主键ID * @return 表单数据 */ DeveloperForm getDeveloperFormData(Long id); /** * 新增开发者选项配置 * * @param developerForm 表单 * @return 是否成功 */ boolean saveDeveloper(DeveloperForm developerForm); /** * 修改开发者选项配置 * * @param id 主键ID * @param developerForm 表单 * @return 是否成功 */ boolean updateDeveloper(Long id, DeveloperForm developerForm); /** * 批量删除开发者选项配置 * * @param ids 主键ID,多个以英文逗号(,)分隔 * @return 是否成功 */ boolean deleteDevelopers(String ids); /** * 根据设备序列号保存或更新开发者选项配置 * * @param sn 设备序列号 * @param developerOptions 开发者选项开关(0关闭,1开启) * @return 是否成功 */ boolean saveOrUpdateBySn(String sn, Integer developerOptions); /** * 根据设备序列号删除开发者选项配置 * * @param sn 设备序列号 * @return 是否成功 */ boolean removeBySn(String sn); /** * 根据设备序列号获取开发者选项开关,不存在时返回 0 * * @param sn 设备序列号 * @return 开发者选项开关(0关闭,1开启) */ Integer getDeveloperOptionsBySn(String sn); }