package com.ard.work.device.camera.service.impl; import com.ard.common.core.constant.CacheConstants; import com.ard.work.api.domian.ArdCamera; import com.ard.work.api.domian.ArdCameraHepu; import com.ard.work.api.domian.ArdChannel; import com.ard.work.device.camera.mapper.ArdCameraHepuMapper; import com.ard.work.device.camera.service.IArdCameraHepuService; import com.ard.work.event.HepuLoginEvent; import com.ard.work.event.LoginEvent; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.event.EventListener; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @Slf4j @Service public class ArdCameraHepuServiceImpl implements IArdCameraHepuService { @Autowired private ArdCameraHepuMapper ardCameraHepuMapper; @Override public ArdCameraHepu selectArdCameraHepuById(String id) { return ardCameraHepuMapper.selectArdCameraHepuById(id); } @Override public List selectByCameraId(String cameraId) { return ardCameraHepuMapper.selectByCameraId(cameraId); } @Override public List selectArdCameraHepuList(ArdCameraHepu ardCameraHepu) { return ardCameraHepuMapper.selectArdCameraHepuList(ardCameraHepu); } @Override public int insertArdCameraHepu(ArdCameraHepu ardCameraHepu) { return ardCameraHepuMapper.insertArdCameraHepu(ardCameraHepu); } @Override public int batchInsertArdCameraHepu(List list) { if (list == null || list.isEmpty()) { return 0; } // 调用 Mapper 层的批量插入方法 return ardCameraHepuMapper.batchInsertArdCameraHepu(list); } @Override public int updateArdCameraHepu(ArdCameraHepu ardCameraHepu) { return ardCameraHepuMapper.updateArdCameraHepu(ardCameraHepu); } @Override public int deleteArdCameraHepuById(String id) { return ardCameraHepuMapper.deleteArdCameraHepuById(id); } @Override public int deleteArdCameraHepuByIds(String[] ids) { return ardCameraHepuMapper.deleteArdCameraHepuByIds(ids); } @Override public int deleteByCameraId(String cameraId) { return ardCameraHepuMapper.deleteByCameraId(cameraId); } /** * 监听登录事件 * * @param loginEvent 登录事件 * @author 刘苏义 * @date 2024/8/23 15:42 */ @Async @EventListener(HepuLoginEvent.class) public void LoginEventListener(HepuLoginEvent loginEvent) { ArdCameraHepu node = loginEvent.getCamera(); // 更新节点信息 ardCameraHepuMapper.updateArdCameraHepu(node); } }