package cn.cslg.pas.service; import cn.cslg.pas.common.dto.ConfigDTO; import cn.cslg.pas.common.model.cronModel.PersonnelVO; import cn.cslg.pas.common.utils.CacheUtils; import cn.cslg.pas.common.utils.LoginUtils; import cn.cslg.pas.common.vo.ConfigVO; import cn.cslg.pas.common.vo.QueryConfigVO; import cn.cslg.pas.domain.WebLoginConfig; import cn.cslg.pas.mapper.WebLoginConfigMapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import java.util.List; /** * @author admin * @description 针对表【web_config(网站配置)】的数据库操作Service实现 * @createDate 2023-03-08 18:51:17 */ @Service @RequiredArgsConstructor(onConstructor_ = {@Lazy}) public class WebLoginConfigService extends ServiceImpl { private final CacheUtils cacheUtils; private final LoginUtils loginUtils; //添加配置 public void addLoginConfig(ConfigDTO configDTO) { PersonnelVO personnelVO = cacheUtils.getLoginUserPersonnel(loginUtils.getId()); LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(WebLoginConfig::getWebId, configDTO.getWebId()) .eq(WebLoginConfig::getTenantId, personnelVO.getTenantId()); List configs = this.list(wrapper); WebLoginConfig config = new WebLoginConfig(); if (configs.size() > 0) { config = configs.get(0); } config.setWebId(configDTO.getWebId()); config.setTenantId(personnelVO.getTenantId()); config.setLoginAccount(configDTO.getLoginAccount()); config.setLoginPassword(configDTO.getLoginPassword()); this.saveOrUpdate(config); } public WebLoginConfig getLoginConfig(Integer webId, Integer tenantId) { List configs = this.list(new LambdaQueryWrapper().eq(WebLoginConfig::getWebId, webId).eq(WebLoginConfig::getTenantId, tenantId)); WebLoginConfig config; if (configs.size() > 0) { config = configs.get(0); } else { config = null; } return config; } public IPage queryLoginConfig(QueryConfigVO queryConfigVO) { PersonnelVO personnelVO = cacheUtils.getLoginUserPersonnel(loginUtils.getId()); queryConfigVO.setTenantId(personnelVO.getTenantId()); IPage dataPage = baseMapper.getPageList(new Page<>(queryConfigVO.getCurrent(), queryConfigVO.getSize()), queryConfigVO); return dataPage; } public Boolean deleteConfig(List ids) { return this.removeByIds(ids); } public WebLoginConfig getConfig(Integer webId,Integer webGroup) { List configs = this.list(new LambdaQueryWrapper().eq(WebLoginConfig::getWebId, webId).eq(WebLoginConfig::getWebGroup,webGroup)); WebLoginConfig config; if (configs.size() > 0) { config = configs.get(0); } else { config = null; } return config; } }