package com.ydtech.modules.admin.service; import com.ydtech.extension.BaseIService; import com.ydtech.modules.admin.constants.EnabledEnum; import com.ydtech.modules.admin.model.dto.SysQueryVehicleConfigDTO; import com.ydtech.modules.admin.model.po.SysQueryVehicleConfig; import com.ydtech.modules.admin.model.vo.SysQueryVehicleConfigQueryPageVo; import com.ydtech.modules.admin.model.vo.SysQueryVehicleConfigQueryVo; import com.ydtech.modules.admin.model.vo.SysQueryVehicleConfigSaveVo; import com.ydtech.modules.order.entity.BasePageResult; import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Objects; /** * @author Administrator * @description 针对表【sys_query_vehicle_config(车型查询配置信息)】的数据库操作Service * @createDate 2024-08-16 10:20:52 */ public interface SysQueryVehicleConfigService extends BaseIService { /** * 配置 * * @param sysQueryVehicleConfigSaveVo 车型配置实体 */ void disposition(SysQueryVehicleConfigSaveVo sysQueryVehicleConfigSaveVo); /** * 查询 * * @param sysQueryVehicleConfigQueryPageVo 车险查询配置实体 */ BasePageResult inquire(SysQueryVehicleConfigQueryPageVo sysQueryVehicleConfigQueryPageVo); /** * 删除 * * @param id 配置id */ void deleteVehicleConfig(Integer id); /** * 修改 * * @param sysQueryVehicleConfigSaveVo 车型配置实体 */ void modify(Integer id, SysQueryVehicleConfigSaveVo sysQueryVehicleConfigSaveVo); /** * 查询单个配置信息 * * @param id 配置信息id * @return 配置信息 */ SysQueryVehicleConfigQueryVo queryById(Integer id); /** * 通过类型查看开启的配置信息 * * @param type 类型 * @return */ SysQueryVehicleConfigDTO getByType(String type); /** * 把修改改为关闭 * * @param enabled 开启关闭状态 */ default boolean updateEnabled(int enabled) { List list = lambdaQuery().eq(SysQueryVehicleConfig::getEnabled, EnabledEnum.EE_1.getCode()).list(); if (list.isEmpty()) { return true; } if (EnabledEnum.EE_1.getCode() == enabled) { return lambdaUpdate() .set(SysQueryVehicleConfig::getEnabled, EnabledEnum.EE_0.getCode()) .eq(SysQueryVehicleConfig::getEnabled, EnabledEnum.EE_1.getCode()) .update(); } return true; } /** * 开关修改 * * @param id 配置信息id */ void openOne(Integer id); }