jiazx0107@163.com
2023-12-14 a69402c8b67d8ce4b698d0c394d15ff43b5d99d0
src/main/java/com/fzzy/gateway/controller/GatewayDeviceController.java
@@ -71,6 +71,143 @@
        return "SUCCESS";
    }
    /**
     * 下行分机测试入口
     *
     * @param param
     * @return
     */
    @PostMapping("/test/IDE")
    public @ResponseBody
    String testIDE(@RequestBody GateWayParam param) throws Exception {
        if (StringUtils.isEmpty(param.getBizType())) {
            return "ERROR:没有获取到业务类型,执行失败";
        }
        //获取分机配置
        if ("syncConf".equals(param.getBizType())) {
            return syncConf(param);
        }
        if ("writeConf".equals(param.getBizType())) {
            return writeConf(param);
        }
        if ("initParam".equals(param.getBizType())) {
            return initCable(param);
        }
        if ("disconnect".equals(param.getBizType())) {
            return disconnect(param);
        }
        if ("transparent".equals(param.getBizType())) {
            return transparent(param);
        }
        return "SUCCESS";
    }
    private String transparent(GateWayParam param) {
        String deviceId = param.getDeviceId();
        GatewayDevice device = GatewayUtils.getCacheByDeviceId(deviceId);
        BaseReqData reqData = new BaseReqData();
        reqData.setDeviceId(device.getDeviceId());
        reqData.setProductId(device.getProductId());
        reqData.setDeviceName(device.getDeviceName());
        reqData.setDevice(device);
        reqData.setAutoReplay(false);
        BaseResp resp = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()).transparent(reqData);
        if (BaseResp.CODE_200 != resp.getCode()) {
            return "ERROR:" + resp.getMsg();
        }
        return "SUCCESS";
    }
    private String disconnect(GateWayParam param) {
        String deviceId = param.getDeviceId();
        GatewayDevice device = GatewayUtils.getCacheByDeviceId(deviceId);
        BaseReqData reqData = new BaseReqData();
        reqData.setDeviceId(device.getDeviceId());
        reqData.setProductId(device.getProductId());
        reqData.setDeviceName(device.getDeviceName());
        reqData.setDevice(device);
        reqData.setAutoReplay(false);
        BaseResp resp = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()).disconnect(reqData);
        if (BaseResp.CODE_200 != resp.getCode()) {
            return "ERROR:" + resp.getMsg();
        }
        return "SUCCESS";
    }
    private String initCable(GateWayParam param) {
        String deviceId = param.getDeviceId();
        GatewayDevice device = GatewayUtils.getCacheByDeviceId(deviceId);
        BaseReqData reqData = new BaseReqData();
        reqData.setDeviceId(device.getDeviceId());
        reqData.setProductId(device.getProductId());
        reqData.setDeviceName(device.getDeviceName());
        reqData.setDevice(device);
        reqData.setAutoReplay(false);
        BaseResp resp = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()).initCable(reqData);
        if (BaseResp.CODE_200 != resp.getCode()) {
            return "ERROR:" + resp.getMsg();
        }
        return "SUCCESS";
    }
    private String syncConf(GateWayParam param) {
        String deviceId = param.getDeviceId();
        GatewayDevice device = GatewayUtils.getCacheByDeviceId(deviceId);
        BaseReqData reqData = new BaseReqData();
        reqData.setDeviceId(device.getDeviceId());
        reqData.setProductId(device.getProductId());
        reqData.setDeviceName(device.getDeviceName());
        reqData.setDevice(device);
        reqData.setAutoReplay(false);
        BaseResp resp = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()).syncConf(reqData);
        if (BaseResp.CODE_200 != resp.getCode()) {
            return "ERROR:" + resp.getMsg();
        }
        return "SUCCESS";
    }
    private String writeConf(GateWayParam param) {
        String deviceId = param.getDeviceId();
        GatewayDevice device = GatewayUtils.getCacheByDeviceId(deviceId);
        BaseReqData reqData = new BaseReqData();
        reqData.setDeviceId(device.getDeviceId());
        reqData.setProductId(device.getProductId());
        reqData.setDeviceName(device.getDeviceName());
        reqData.setDevice(device);
        reqData.setAutoReplay(false);
        BaseResp resp = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()).writeConf(reqData);
        if (BaseResp.CODE_200 != resp.getCode()) {
            return "ERROR:" + resp.getMsg();
        }
        return "SUCCESS";
    }
    /**
     * 初始化车牌识别
     *
@@ -98,7 +235,7 @@
            reqData = new BaseReqData(device);
            reqData.setIndex(i);
            syncLprService = gatewayRemoteManager.getSyncLprService(device.getSyncProtocol());
            if(null == syncLprService) continue;
            if (null == syncLprService) continue;
            syncLprService.initLpr(reqData);
            i++;
        }
@@ -126,10 +263,10 @@
            return "ERROR:当前设备没有配置布线规则,无法执行";
        }
        BaseResp resp =null;
        if(GatewayDeviceProtocol.DEVICE_TEST.getCode().equals(device.getSyncProtocol())){
        BaseResp resp;
        if (GatewayDeviceProtocol.DEVICE_TEST.getCode().equals(device.getSyncProtocol())) {
            resp = gatewayRemoteManager.getGatewayTestService(device.getPushProtocol()).testGrain(reqData);
        }else{
        } else {
            reqData.setAutoReplay(false);
            resp = gatewayRemoteManager.getSyncGrainService(device.getSyncProtocol()).syncGrain(reqData);
        }