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.api.GatewaySyncLprService;
|
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<GatewayConf> 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<GatewayDevice> list = deviceService.listAll();
|
|
if (null == list || list.isEmpty()) {
|
return;
|
}
|
|
BaseReqData reqData;
|
int i = 1;
|
GatewaySyncLprService syncLprService;
|
for (GatewayDevice device : list) {
|
|
if (!GatewayDeviceType.TYPE_02.getCode().equals(device.getType())) {
|
continue;
|
}
|
|
reqData = new BaseReqData(device);
|
reqData.setIndex(i);
|
syncLprService = gatewayRemoteManager.getSyncLprService(device.getSyncProtocol());
|
if(null == syncLprService) continue;
|
syncLprService.initLpr(reqData);
|
i++;
|
}
|
}
|
}
|