package com.fzzy.gateway.hx2023.service; import com.bstek.dorado.annotation.Expose; import com.fzzy.api.data.GatewayDeviceType; import com.fzzy.gateway.api.GatewayRemoteManager; import com.fzzy.gateway.api.GatewayRemoteService; import com.fzzy.gateway.data.BaseReqData; import com.fzzy.gateway.entity.GatewayConf; import com.fzzy.gateway.entity.GatewayDevice; import com.fzzy.gateway.service.GatewayConfService; import com.fzzy.gateway.service.GatewayDeviceService; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.List; /** * 当前接口,初始化相关 */ @Component public class ApiInitService { @Resource private GatewayConfService confService; @Resource private GatewayDeviceService deviceService; @Resource private GatewayRemoteManager gatewayRemoteManager; /** * apiInitService#init */ @Expose public void init() { List list = confService.listAll(); if (null == list || list.isEmpty()) { return; } GatewayRemoteService gatewayRemoteService; for (GatewayConf gatewayConf : list) { gatewayRemoteService = gatewayRemoteManager.getRemoteService(gatewayConf.getPushProtocol()); gatewayRemoteService.init(gatewayConf); } } public void updateDeviceCache() { deviceService.flushCache(); } public void initAllLpr() { List list = deviceService.listAll(); if (null == list || list.isEmpty()) { return; } BaseReqData reqData; int i = 1; for (GatewayDevice device : list) { if (!GatewayDeviceType.TYPE_02.getCode().equals(device.getType())) { continue; } reqData = new BaseReqData(device); reqData.setIndex(i); gatewayRemoteManager.getSyncLprService(device.getSyncProtocol()).initLpr(reqData); i++; } } }