package com.qianwen.mdc.collect.service; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.qianwen.mdc.collect.entity.mgr.WorkstationAppMapping; import com.qianwen.mdc.collect.mapper.mgr.WorkstationAppMappingMapper; import com.qianwen.mdc.collect.utils.redis.RedisUtil; @Service public class WorkstationAppMappingService{ private static final Logger log = LoggerFactory.getLogger(WorkstationAppMappingService.class); public static final String MAPPING_REDIS_KEY = "workstation-appid-map"; @Autowired private WorkstationAppMappingMapper mapper; @Autowired private RedisUtil redisUtil; @Transactional public void save(WorkstationAppMapping mapping) { mapper.insert(mapping); } @Transactional public void update(WorkstationAppMapping mapping) { mapper.updateById(mapping); } @Transactional public void remove(long id) { mapper.deleteById(id); } /** * 所有数据的列表 * @return */ public List allList(){ return mapper.selectList(Wrappers.emptyWrapper()); } /** * 将所有映射数据都保存到redis缓存,{appId1=workstationId1,appId2=workstationId2} */ public void saveToCache() { List list = allList(); list.forEach(m ->{ redisUtil.hset(MAPPING_REDIS_KEY, m.getAppId(), m.getWorkstationId()); }); } }