diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java index 3b37575..fead39b 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java @@ -68,9 +68,9 @@ } - @ApiOperation("psd导出4列数据接口,需传taskId;psdX1,psdX2为框选psd横坐标的起止值") - @PostMapping("/psdExport") - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { - iPsdService.psdExport(taskId, psdX1, psdX2, response); + @ApiOperation("psd导出4列数据接口,需传robotId;startTime,endTime,psdX1,psdX2为框选psd横坐标的起止值") + @GetMapping("/psdExport") + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { + iPsdService.psdExport(robotId,startTime, endTime,psdX1, psdX2, response); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java index 3b37575..fead39b 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java @@ -68,9 +68,9 @@ } - @ApiOperation("psd导出4列数据接口,需传taskId;psdX1,psdX2为框选psd横坐标的起止值") - @PostMapping("/psdExport") - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { - iPsdService.psdExport(taskId, psdX1, psdX2, response); + @ApiOperation("psd导出4列数据接口,需传robotId;startTime,endTime,psdX1,psdX2为框选psd横坐标的起止值") + @GetMapping("/psdExport") + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { + iPsdService.psdExport(robotId,startTime, endTime,psdX1, psdX2, response); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java index c886ce9..88f33cd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java @@ -25,7 +25,7 @@ List hsList(Long detectorId,String type); - void psdExport(Long taskId,Long psdX1,Long psdX2, HttpServletResponse response); + void psdExport(Long robotId,String startTime,String endTime,Long psdX1,Long psdX2, HttpServletResponse response); void insertPsdAlarms(); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java index 3b37575..fead39b 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java @@ -68,9 +68,9 @@ } - @ApiOperation("psd导出4列数据接口,需传taskId;psdX1,psdX2为框选psd横坐标的起止值") - @PostMapping("/psdExport") - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { - iPsdService.psdExport(taskId, psdX1, psdX2, response); + @ApiOperation("psd导出4列数据接口,需传robotId;startTime,endTime,psdX1,psdX2为框选psd横坐标的起止值") + @GetMapping("/psdExport") + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { + iPsdService.psdExport(robotId,startTime, endTime,psdX1, psdX2, response); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java index c886ce9..88f33cd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java @@ -25,7 +25,7 @@ List hsList(Long detectorId,String type); - void psdExport(Long taskId,Long psdX1,Long psdX2, HttpServletResponse response); + void psdExport(Long robotId,String startTime,String endTime,Long psdX1,Long psdX2, HttpServletResponse response); void insertPsdAlarms(); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java index 62feb03..e1b7acd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java @@ -32,7 +32,7 @@ public boolean sendConfig(DetectorConfig config) { //toDo:发送对应设备 - String[] codeArr = InstructCode.getInitCode(6, Float.valueOf(config.getVol6()), + String[] codeArr = InstructCode.getInitCode(0, Float.valueOf(config.getVol6()), Integer.valueOf(config.getRawTrig()), Integer.valueOf(config.getRawPeriod()), Integer.valueOf(config.getRawVth()), Integer.valueOf(config.getPsdTrig()), Integer.valueOf(config.getPsdPeriod()), Integer.valueOf(config.getPsdVth()), @@ -40,11 +40,14 @@ Integer.valueOf(config.getPsdShortGate())); try { + String msg = ""; for (int i = 1; i <= codeArr.length / 3; i++) { - nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); - Thread.sleep(500); + msg = msg + codeArr[i * 3 - 1]; +// nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); +// Thread.sleep(500); } - } catch (InterruptedException e) { + nettyClient.send(config.getDetectorId(), msg); + } catch (Exception e) { e.printStackTrace(); return false; } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java index 3b37575..fead39b 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java @@ -68,9 +68,9 @@ } - @ApiOperation("psd导出4列数据接口,需传taskId;psdX1,psdX2为框选psd横坐标的起止值") - @PostMapping("/psdExport") - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { - iPsdService.psdExport(taskId, psdX1, psdX2, response); + @ApiOperation("psd导出4列数据接口,需传robotId;startTime,endTime,psdX1,psdX2为框选psd横坐标的起止值") + @GetMapping("/psdExport") + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { + iPsdService.psdExport(robotId,startTime, endTime,psdX1, psdX2, response); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java index c886ce9..88f33cd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java @@ -25,7 +25,7 @@ List hsList(Long detectorId,String type); - void psdExport(Long taskId,Long psdX1,Long psdX2, HttpServletResponse response); + void psdExport(Long robotId,String startTime,String endTime,Long psdX1,Long psdX2, HttpServletResponse response); void insertPsdAlarms(); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java index 62feb03..e1b7acd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java @@ -32,7 +32,7 @@ public boolean sendConfig(DetectorConfig config) { //toDo:发送对应设备 - String[] codeArr = InstructCode.getInitCode(6, Float.valueOf(config.getVol6()), + String[] codeArr = InstructCode.getInitCode(0, Float.valueOf(config.getVol6()), Integer.valueOf(config.getRawTrig()), Integer.valueOf(config.getRawPeriod()), Integer.valueOf(config.getRawVth()), Integer.valueOf(config.getPsdTrig()), Integer.valueOf(config.getPsdPeriod()), Integer.valueOf(config.getPsdVth()), @@ -40,11 +40,14 @@ Integer.valueOf(config.getPsdShortGate())); try { + String msg = ""; for (int i = 1; i <= codeArr.length / 3; i++) { - nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); - Thread.sleep(500); + msg = msg + codeArr[i * 3 - 1]; +// nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); +// Thread.sleep(500); } - } catch (InterruptedException e) { + nettyClient.send(config.getDetectorId(), msg); + } catch (Exception e) { e.printStackTrace(); return false; } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java index 22f00af..d51ee3c 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java @@ -85,7 +85,7 @@ } if (psdList != null && psdList.size() > 0) { - psdList.forEach(psd -> { + for (Psd psd : psdList) { psd.setIpPort(deviceIpPort.substring(1)); if (ObjectUtil.isAllNotEmpty(psd.getBaseLine(), psd.getLongGate(), psd.getQlong(), psd.getShortGate(), psd.getQshort())) { @@ -95,9 +95,9 @@ Double psdRate = (Qlong - Qshort) * 1.000 / Qlong; psd.setPsd(String.format("%.2f", psdRate)); psd.setDetectorId(uid); - ConfigDTO configDTO =CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); - if(null==configDTO){ - configDTO=iDetectorConfigService.getConfig(uid); + ConfigDTO configDTO = CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); + if (null == configDTO) { + configDTO = iDetectorConfigService.getConfig(uid); } //设置psdx值 toDo:4096 需要自动取 int psdx = (int) ((Qlong - Qshort) * 1.000 / Qlong * 4096); @@ -105,29 +105,28 @@ psd.setPsdx(psdx + ""); psd.setMcax(mcax + ""); //存缓存 - CacheUtils.PSD_DATA_MAP.put(uid+"_"+psd.getCreateTime()+"_"+System.currentTimeMillis(),psd.getPsd()); + CacheUtils.PSD_DATA_MAP.put(uid + "_" + psd.getCreateTime() + "_" + System.currentTimeMillis(), psd.getPsd()); //根据是否启动,向前端推送hs曲线数值 if (hsFlag) { HsDTO hsDTO = new HsDTO(psdx, 1, mcax, 1); if (psdx < 0 || psdx > 4096) { hsDTO.setPsdX(null); hsDTO.setPsdY(null); + continue; } - if ( mcax > 4096||mcax 4096 || mcax < configDTO.getMcaCutOffValue()) { hsDTO.setMcaX(null); - hsDTO.setMcaY(null); + continue; } - //psd数据叠加到mca曲线上 + //psd数据叠加到mca曲线上,mca数据叠加到psd曲线上,取交集 if (psdx >= x3_3 && psdx <= x4_4) { - hsDTO.setMcaX1(mcax); - hsDTO.setMcaY1(1); - } - //mca数据叠加到psd曲线上 - if (mcax >= x1_1 && mcax <= x2_2) { - if (psdx > 0) { + if(mcax >= x1_1 && mcax <= x2_2){ + hsDTO.setMcaX1(mcax); + hsDTO.setMcaY1(1); hsDTO.setPsdX1(psdx); hsDTO.setPsdY1(1); } + } JSONObject headJson = new JSONObject(); headJson.put("msgKey", "detector_hs"); @@ -137,7 +136,7 @@ } } - }); + } iPsdService.saveBatch(psdList); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java index 3b37575..fead39b 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java @@ -68,9 +68,9 @@ } - @ApiOperation("psd导出4列数据接口,需传taskId;psdX1,psdX2为框选psd横坐标的起止值") - @PostMapping("/psdExport") - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { - iPsdService.psdExport(taskId, psdX1, psdX2, response); + @ApiOperation("psd导出4列数据接口,需传robotId;startTime,endTime,psdX1,psdX2为框选psd横坐标的起止值") + @GetMapping("/psdExport") + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { + iPsdService.psdExport(robotId,startTime, endTime,psdX1, psdX2, response); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java index c886ce9..88f33cd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java @@ -25,7 +25,7 @@ List hsList(Long detectorId,String type); - void psdExport(Long taskId,Long psdX1,Long psdX2, HttpServletResponse response); + void psdExport(Long robotId,String startTime,String endTime,Long psdX1,Long psdX2, HttpServletResponse response); void insertPsdAlarms(); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java index 62feb03..e1b7acd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java @@ -32,7 +32,7 @@ public boolean sendConfig(DetectorConfig config) { //toDo:发送对应设备 - String[] codeArr = InstructCode.getInitCode(6, Float.valueOf(config.getVol6()), + String[] codeArr = InstructCode.getInitCode(0, Float.valueOf(config.getVol6()), Integer.valueOf(config.getRawTrig()), Integer.valueOf(config.getRawPeriod()), Integer.valueOf(config.getRawVth()), Integer.valueOf(config.getPsdTrig()), Integer.valueOf(config.getPsdPeriod()), Integer.valueOf(config.getPsdVth()), @@ -40,11 +40,14 @@ Integer.valueOf(config.getPsdShortGate())); try { + String msg = ""; for (int i = 1; i <= codeArr.length / 3; i++) { - nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); - Thread.sleep(500); + msg = msg + codeArr[i * 3 - 1]; +// nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); +// Thread.sleep(500); } - } catch (InterruptedException e) { + nettyClient.send(config.getDetectorId(), msg); + } catch (Exception e) { e.printStackTrace(); return false; } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java index 22f00af..d51ee3c 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java @@ -85,7 +85,7 @@ } if (psdList != null && psdList.size() > 0) { - psdList.forEach(psd -> { + for (Psd psd : psdList) { psd.setIpPort(deviceIpPort.substring(1)); if (ObjectUtil.isAllNotEmpty(psd.getBaseLine(), psd.getLongGate(), psd.getQlong(), psd.getShortGate(), psd.getQshort())) { @@ -95,9 +95,9 @@ Double psdRate = (Qlong - Qshort) * 1.000 / Qlong; psd.setPsd(String.format("%.2f", psdRate)); psd.setDetectorId(uid); - ConfigDTO configDTO =CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); - if(null==configDTO){ - configDTO=iDetectorConfigService.getConfig(uid); + ConfigDTO configDTO = CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); + if (null == configDTO) { + configDTO = iDetectorConfigService.getConfig(uid); } //设置psdx值 toDo:4096 需要自动取 int psdx = (int) ((Qlong - Qshort) * 1.000 / Qlong * 4096); @@ -105,29 +105,28 @@ psd.setPsdx(psdx + ""); psd.setMcax(mcax + ""); //存缓存 - CacheUtils.PSD_DATA_MAP.put(uid+"_"+psd.getCreateTime()+"_"+System.currentTimeMillis(),psd.getPsd()); + CacheUtils.PSD_DATA_MAP.put(uid + "_" + psd.getCreateTime() + "_" + System.currentTimeMillis(), psd.getPsd()); //根据是否启动,向前端推送hs曲线数值 if (hsFlag) { HsDTO hsDTO = new HsDTO(psdx, 1, mcax, 1); if (psdx < 0 || psdx > 4096) { hsDTO.setPsdX(null); hsDTO.setPsdY(null); + continue; } - if ( mcax > 4096||mcax 4096 || mcax < configDTO.getMcaCutOffValue()) { hsDTO.setMcaX(null); - hsDTO.setMcaY(null); + continue; } - //psd数据叠加到mca曲线上 + //psd数据叠加到mca曲线上,mca数据叠加到psd曲线上,取交集 if (psdx >= x3_3 && psdx <= x4_4) { - hsDTO.setMcaX1(mcax); - hsDTO.setMcaY1(1); - } - //mca数据叠加到psd曲线上 - if (mcax >= x1_1 && mcax <= x2_2) { - if (psdx > 0) { + if(mcax >= x1_1 && mcax <= x2_2){ + hsDTO.setMcaX1(mcax); + hsDTO.setMcaY1(1); hsDTO.setPsdX1(psdx); hsDTO.setPsdY1(1); } + } JSONObject headJson = new JSONObject(); headJson.put("msgKey", "detector_hs"); @@ -137,7 +136,7 @@ } } - }); + } iPsdService.saveBatch(psdList); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java index d7736a5..daff643 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java @@ -228,7 +228,7 @@ } @Override - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { Map resultMap = new HashMap<>(); //构造第一列数据 @@ -257,19 +257,19 @@ resultMap.put("mca:psd", psdTxtDTOList4); - TaskInfo taskInfo = iTaskInfoService.getById(taskId); +// TaskInfo taskInfo = iTaskInfoService.getById(taskId); - if (ObjectUtil.isNotEmpty(taskInfo)) { - Long robotId = taskInfo.getRobotId(); - Date startTime = taskInfo.getStartTime(); - Date endTime = taskInfo.getEndTime(); +// if (ObjectUtil.isNotEmpty(taskInfo)) { +// Long robotId = taskInfo.getRobotId(); +// Date startTime1 = DateUtil.parseDateTime(startTime); +// Date endTime1 = DateUtil.parseDateTime(endTime); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("DETECTOR_ID", robotId); queryWrapper.ge(ObjectUtil.isNotEmpty(startTime), "CREATE_TIME", startTime); queryWrapper.le(ObjectUtil.isNotEmpty(endTime), "CREATE_TIME", endTime); List psdList = list(queryWrapper); for (Psd psd : psdList) { - if (ObjectUtil.isNotEmpty(psd.getPsd()) && Float.valueOf(psd.getPsd()) >= psdLimit) { + if (ObjectUtil.isNotEmpty(psd.getPsd())) { if (ObjectUtil.isNotEmpty(psd.getMcax())) { psdTxtDTOList2.forEach(psdTxtDTO -> { if (psdTxtDTO.getX().equals(Integer.valueOf(psd.getMcax()))) { @@ -298,7 +298,7 @@ } } } - } +// } List list = new ArrayList<>(); for(int j=0;j hsList(Long detectorId,String type); - void psdExport(Long taskId,Long psdX1,Long psdX2, HttpServletResponse response); + void psdExport(Long robotId,String startTime,String endTime,Long psdX1,Long psdX2, HttpServletResponse response); void insertPsdAlarms(); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java index 62feb03..e1b7acd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java @@ -32,7 +32,7 @@ public boolean sendConfig(DetectorConfig config) { //toDo:发送对应设备 - String[] codeArr = InstructCode.getInitCode(6, Float.valueOf(config.getVol6()), + String[] codeArr = InstructCode.getInitCode(0, Float.valueOf(config.getVol6()), Integer.valueOf(config.getRawTrig()), Integer.valueOf(config.getRawPeriod()), Integer.valueOf(config.getRawVth()), Integer.valueOf(config.getPsdTrig()), Integer.valueOf(config.getPsdPeriod()), Integer.valueOf(config.getPsdVth()), @@ -40,11 +40,14 @@ Integer.valueOf(config.getPsdShortGate())); try { + String msg = ""; for (int i = 1; i <= codeArr.length / 3; i++) { - nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); - Thread.sleep(500); + msg = msg + codeArr[i * 3 - 1]; +// nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); +// Thread.sleep(500); } - } catch (InterruptedException e) { + nettyClient.send(config.getDetectorId(), msg); + } catch (Exception e) { e.printStackTrace(); return false; } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java index 22f00af..d51ee3c 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java @@ -85,7 +85,7 @@ } if (psdList != null && psdList.size() > 0) { - psdList.forEach(psd -> { + for (Psd psd : psdList) { psd.setIpPort(deviceIpPort.substring(1)); if (ObjectUtil.isAllNotEmpty(psd.getBaseLine(), psd.getLongGate(), psd.getQlong(), psd.getShortGate(), psd.getQshort())) { @@ -95,9 +95,9 @@ Double psdRate = (Qlong - Qshort) * 1.000 / Qlong; psd.setPsd(String.format("%.2f", psdRate)); psd.setDetectorId(uid); - ConfigDTO configDTO =CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); - if(null==configDTO){ - configDTO=iDetectorConfigService.getConfig(uid); + ConfigDTO configDTO = CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); + if (null == configDTO) { + configDTO = iDetectorConfigService.getConfig(uid); } //设置psdx值 toDo:4096 需要自动取 int psdx = (int) ((Qlong - Qshort) * 1.000 / Qlong * 4096); @@ -105,29 +105,28 @@ psd.setPsdx(psdx + ""); psd.setMcax(mcax + ""); //存缓存 - CacheUtils.PSD_DATA_MAP.put(uid+"_"+psd.getCreateTime()+"_"+System.currentTimeMillis(),psd.getPsd()); + CacheUtils.PSD_DATA_MAP.put(uid + "_" + psd.getCreateTime() + "_" + System.currentTimeMillis(), psd.getPsd()); //根据是否启动,向前端推送hs曲线数值 if (hsFlag) { HsDTO hsDTO = new HsDTO(psdx, 1, mcax, 1); if (psdx < 0 || psdx > 4096) { hsDTO.setPsdX(null); hsDTO.setPsdY(null); + continue; } - if ( mcax > 4096||mcax 4096 || mcax < configDTO.getMcaCutOffValue()) { hsDTO.setMcaX(null); - hsDTO.setMcaY(null); + continue; } - //psd数据叠加到mca曲线上 + //psd数据叠加到mca曲线上,mca数据叠加到psd曲线上,取交集 if (psdx >= x3_3 && psdx <= x4_4) { - hsDTO.setMcaX1(mcax); - hsDTO.setMcaY1(1); - } - //mca数据叠加到psd曲线上 - if (mcax >= x1_1 && mcax <= x2_2) { - if (psdx > 0) { + if(mcax >= x1_1 && mcax <= x2_2){ + hsDTO.setMcaX1(mcax); + hsDTO.setMcaY1(1); hsDTO.setPsdX1(psdx); hsDTO.setPsdY1(1); } + } JSONObject headJson = new JSONObject(); headJson.put("msgKey", "detector_hs"); @@ -137,7 +136,7 @@ } } - }); + } iPsdService.saveBatch(psdList); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java index d7736a5..daff643 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java @@ -228,7 +228,7 @@ } @Override - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { Map resultMap = new HashMap<>(); //构造第一列数据 @@ -257,19 +257,19 @@ resultMap.put("mca:psd", psdTxtDTOList4); - TaskInfo taskInfo = iTaskInfoService.getById(taskId); +// TaskInfo taskInfo = iTaskInfoService.getById(taskId); - if (ObjectUtil.isNotEmpty(taskInfo)) { - Long robotId = taskInfo.getRobotId(); - Date startTime = taskInfo.getStartTime(); - Date endTime = taskInfo.getEndTime(); +// if (ObjectUtil.isNotEmpty(taskInfo)) { +// Long robotId = taskInfo.getRobotId(); +// Date startTime1 = DateUtil.parseDateTime(startTime); +// Date endTime1 = DateUtil.parseDateTime(endTime); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("DETECTOR_ID", robotId); queryWrapper.ge(ObjectUtil.isNotEmpty(startTime), "CREATE_TIME", startTime); queryWrapper.le(ObjectUtil.isNotEmpty(endTime), "CREATE_TIME", endTime); List psdList = list(queryWrapper); for (Psd psd : psdList) { - if (ObjectUtil.isNotEmpty(psd.getPsd()) && Float.valueOf(psd.getPsd()) >= psdLimit) { + if (ObjectUtil.isNotEmpty(psd.getPsd())) { if (ObjectUtil.isNotEmpty(psd.getMcax())) { psdTxtDTOList2.forEach(psdTxtDTO -> { if (psdTxtDTO.getX().equals(Integer.valueOf(psd.getMcax()))) { @@ -298,7 +298,7 @@ } } } - } +// } List list = new ArrayList<>(); for(int j=0;j" + vol6); volList.add(new Vol(Long.parseLong(vol6,16)+"", DateUtil.formatDateTime(new Date()))); } else { @@ -219,7 +219,7 @@ str = str.substring(str.indexOf(InstructCode.DAC_HEAD + InstructCode.DAC_HEAD_LENGTH) + 24); String[] volArr = InstructCode.getVolArr(str); //本设备只用到第6通道 - String vol6 = volArr[5]; + String vol6 = volArr[0]; // log.info("分包第6通道电压值-------->" + vol6); volList.add(new Vol(Long.parseLong(vol6,16)+"", DateUtil.formatDateTime(new Date()))); } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java index 3b37575..fead39b 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java @@ -68,9 +68,9 @@ } - @ApiOperation("psd导出4列数据接口,需传taskId;psdX1,psdX2为框选psd横坐标的起止值") - @PostMapping("/psdExport") - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { - iPsdService.psdExport(taskId, psdX1, psdX2, response); + @ApiOperation("psd导出4列数据接口,需传robotId;startTime,endTime,psdX1,psdX2为框选psd横坐标的起止值") + @GetMapping("/psdExport") + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { + iPsdService.psdExport(robotId,startTime, endTime,psdX1, psdX2, response); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java index c886ce9..88f33cd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java @@ -25,7 +25,7 @@ List hsList(Long detectorId,String type); - void psdExport(Long taskId,Long psdX1,Long psdX2, HttpServletResponse response); + void psdExport(Long robotId,String startTime,String endTime,Long psdX1,Long psdX2, HttpServletResponse response); void insertPsdAlarms(); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java index 62feb03..e1b7acd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java @@ -32,7 +32,7 @@ public boolean sendConfig(DetectorConfig config) { //toDo:发送对应设备 - String[] codeArr = InstructCode.getInitCode(6, Float.valueOf(config.getVol6()), + String[] codeArr = InstructCode.getInitCode(0, Float.valueOf(config.getVol6()), Integer.valueOf(config.getRawTrig()), Integer.valueOf(config.getRawPeriod()), Integer.valueOf(config.getRawVth()), Integer.valueOf(config.getPsdTrig()), Integer.valueOf(config.getPsdPeriod()), Integer.valueOf(config.getPsdVth()), @@ -40,11 +40,14 @@ Integer.valueOf(config.getPsdShortGate())); try { + String msg = ""; for (int i = 1; i <= codeArr.length / 3; i++) { - nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); - Thread.sleep(500); + msg = msg + codeArr[i * 3 - 1]; +// nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); +// Thread.sleep(500); } - } catch (InterruptedException e) { + nettyClient.send(config.getDetectorId(), msg); + } catch (Exception e) { e.printStackTrace(); return false; } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java index 22f00af..d51ee3c 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java @@ -85,7 +85,7 @@ } if (psdList != null && psdList.size() > 0) { - psdList.forEach(psd -> { + for (Psd psd : psdList) { psd.setIpPort(deviceIpPort.substring(1)); if (ObjectUtil.isAllNotEmpty(psd.getBaseLine(), psd.getLongGate(), psd.getQlong(), psd.getShortGate(), psd.getQshort())) { @@ -95,9 +95,9 @@ Double psdRate = (Qlong - Qshort) * 1.000 / Qlong; psd.setPsd(String.format("%.2f", psdRate)); psd.setDetectorId(uid); - ConfigDTO configDTO =CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); - if(null==configDTO){ - configDTO=iDetectorConfigService.getConfig(uid); + ConfigDTO configDTO = CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); + if (null == configDTO) { + configDTO = iDetectorConfigService.getConfig(uid); } //设置psdx值 toDo:4096 需要自动取 int psdx = (int) ((Qlong - Qshort) * 1.000 / Qlong * 4096); @@ -105,29 +105,28 @@ psd.setPsdx(psdx + ""); psd.setMcax(mcax + ""); //存缓存 - CacheUtils.PSD_DATA_MAP.put(uid+"_"+psd.getCreateTime()+"_"+System.currentTimeMillis(),psd.getPsd()); + CacheUtils.PSD_DATA_MAP.put(uid + "_" + psd.getCreateTime() + "_" + System.currentTimeMillis(), psd.getPsd()); //根据是否启动,向前端推送hs曲线数值 if (hsFlag) { HsDTO hsDTO = new HsDTO(psdx, 1, mcax, 1); if (psdx < 0 || psdx > 4096) { hsDTO.setPsdX(null); hsDTO.setPsdY(null); + continue; } - if ( mcax > 4096||mcax 4096 || mcax < configDTO.getMcaCutOffValue()) { hsDTO.setMcaX(null); - hsDTO.setMcaY(null); + continue; } - //psd数据叠加到mca曲线上 + //psd数据叠加到mca曲线上,mca数据叠加到psd曲线上,取交集 if (psdx >= x3_3 && psdx <= x4_4) { - hsDTO.setMcaX1(mcax); - hsDTO.setMcaY1(1); - } - //mca数据叠加到psd曲线上 - if (mcax >= x1_1 && mcax <= x2_2) { - if (psdx > 0) { + if(mcax >= x1_1 && mcax <= x2_2){ + hsDTO.setMcaX1(mcax); + hsDTO.setMcaY1(1); hsDTO.setPsdX1(psdx); hsDTO.setPsdY1(1); } + } JSONObject headJson = new JSONObject(); headJson.put("msgKey", "detector_hs"); @@ -137,7 +136,7 @@ } } - }); + } iPsdService.saveBatch(psdList); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java index d7736a5..daff643 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java @@ -228,7 +228,7 @@ } @Override - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { Map resultMap = new HashMap<>(); //构造第一列数据 @@ -257,19 +257,19 @@ resultMap.put("mca:psd", psdTxtDTOList4); - TaskInfo taskInfo = iTaskInfoService.getById(taskId); +// TaskInfo taskInfo = iTaskInfoService.getById(taskId); - if (ObjectUtil.isNotEmpty(taskInfo)) { - Long robotId = taskInfo.getRobotId(); - Date startTime = taskInfo.getStartTime(); - Date endTime = taskInfo.getEndTime(); +// if (ObjectUtil.isNotEmpty(taskInfo)) { +// Long robotId = taskInfo.getRobotId(); +// Date startTime1 = DateUtil.parseDateTime(startTime); +// Date endTime1 = DateUtil.parseDateTime(endTime); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("DETECTOR_ID", robotId); queryWrapper.ge(ObjectUtil.isNotEmpty(startTime), "CREATE_TIME", startTime); queryWrapper.le(ObjectUtil.isNotEmpty(endTime), "CREATE_TIME", endTime); List psdList = list(queryWrapper); for (Psd psd : psdList) { - if (ObjectUtil.isNotEmpty(psd.getPsd()) && Float.valueOf(psd.getPsd()) >= psdLimit) { + if (ObjectUtil.isNotEmpty(psd.getPsd())) { if (ObjectUtil.isNotEmpty(psd.getMcax())) { psdTxtDTOList2.forEach(psdTxtDTO -> { if (psdTxtDTO.getX().equals(Integer.valueOf(psd.getMcax()))) { @@ -298,7 +298,7 @@ } } } - } +// } List list = new ArrayList<>(); for(int j=0;j" + vol6); volList.add(new Vol(Long.parseLong(vol6,16)+"", DateUtil.formatDateTime(new Date()))); } else { @@ -219,7 +219,7 @@ str = str.substring(str.indexOf(InstructCode.DAC_HEAD + InstructCode.DAC_HEAD_LENGTH) + 24); String[] volArr = InstructCode.getVolArr(str); //本设备只用到第6通道 - String vol6 = volArr[5]; + String vol6 = volArr[0]; // log.info("分包第6通道电压值-------->" + vol6); volList.add(new Vol(Long.parseLong(vol6,16)+"", DateUtil.formatDateTime(new Date()))); } diff --git a/casic-server/src/main/java/com/casic/missiles/netty/InstructCode.java b/casic-server/src/main/java/com/casic/missiles/netty/InstructCode.java index 9322ae0..8a7490b 100644 --- a/casic-server/src/main/java/com/casic/missiles/netty/InstructCode.java +++ b/casic-server/src/main/java/com/casic/missiles/netty/InstructCode.java @@ -10,7 +10,7 @@ * 设备初始化时需要依次发送1~16号指令 */ public static String[] InitCodeArr = { - "1", "设置高压", "set set_voltage 5 1.8\n", + "1", "设置高压", "set set_voltage 0 1.2\n", "2", "复位adc", "cmd set_adc_delay_rst 1 0\n", "3", "逻辑复位", "cmd set_logic_rst 1 0\n", "4", "设置波形采样触发方式为下降沿", "cmd set_raw_trig_sel_adc2 3 0\n", @@ -21,7 +21,7 @@ "9", "设置波形甄别触发周期", "cmd set_psd_trig_period 100 0\n", "10", "设置波形甄别触发阈值", "cmd set_psd_trig_vth 1911 0\n", "11", "设置波形甄别门偏移", "cmd set_psd_gate_offset 12 0\n", - "12", "设置波形甄别延迟", "cmd set_adc2_delay_num 20 0\n", + "12", "设置波形甄别延迟", "cmd set_adc2_delay_num 6 0\n", "13", "设置波形甄别长门", "cmd set_psd_long_gate 112 0\n", "14", "设置波形甄别短门", "cmd set_psd_short_gate 27 0\n", "15", "取消复位adc", "cmd set_adc_delay_rst 0 0\n", @@ -47,7 +47,7 @@ "9", "设置波形甄别触发周期", "cmd set_psd_trig_period " + psdPeriod + " 0\n", "10", "设置波形甄别触发阈值", "cmd set_psd_trig_vth " + (psdVth + 750) * 4096 / 1500 + " 0\n", "11", "设置波形甄别门偏移", "cmd set_psd_gate_offset " + psdOffset / 8 + " 0\n", - "12", "设置波形甄别延迟", "cmd set_adc2_delay_num 20 0\n", + "12", "设置波形甄别延迟", "cmd set_adc2_delay_num 6 0\n", "13", "设置波形甄别长门", "cmd set_psd_long_gate " + psdLongGate / 2 + " 0\n", "14", "设置波形甄别短门", "cmd set_psd_short_gate " + psdShortGate / 2 + " 0\n", "15", "取消复位adc", "cmd set_adc_delay_rst 0 0\n", diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java index 3b37575..fead39b 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/controller/NeutronController.java @@ -68,9 +68,9 @@ } - @ApiOperation("psd导出4列数据接口,需传taskId;psdX1,psdX2为框选psd横坐标的起止值") - @PostMapping("/psdExport") - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { - iPsdService.psdExport(taskId, psdX1, psdX2, response); + @ApiOperation("psd导出4列数据接口,需传robotId;startTime,endTime,psdX1,psdX2为框选psd横坐标的起止值") + @GetMapping("/psdExport") + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { + iPsdService.psdExport(robotId,startTime, endTime,psdX1, psdX2, response); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java index c886ce9..88f33cd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/IPsdService.java @@ -25,7 +25,7 @@ List hsList(Long detectorId,String type); - void psdExport(Long taskId,Long psdX1,Long psdX2, HttpServletResponse response); + void psdExport(Long robotId,String startTime,String endTime,Long psdX1,Long psdX2, HttpServletResponse response); void insertPsdAlarms(); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java index 62feb03..e1b7acd 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/DetectorConfigServiceImpl.java @@ -32,7 +32,7 @@ public boolean sendConfig(DetectorConfig config) { //toDo:发送对应设备 - String[] codeArr = InstructCode.getInitCode(6, Float.valueOf(config.getVol6()), + String[] codeArr = InstructCode.getInitCode(0, Float.valueOf(config.getVol6()), Integer.valueOf(config.getRawTrig()), Integer.valueOf(config.getRawPeriod()), Integer.valueOf(config.getRawVth()), Integer.valueOf(config.getPsdTrig()), Integer.valueOf(config.getPsdPeriod()), Integer.valueOf(config.getPsdVth()), @@ -40,11 +40,14 @@ Integer.valueOf(config.getPsdShortGate())); try { + String msg = ""; for (int i = 1; i <= codeArr.length / 3; i++) { - nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); - Thread.sleep(500); + msg = msg + codeArr[i * 3 - 1]; +// nettyClient.send(config.getDetectorId(), codeArr[i * 3 - 1]); +// Thread.sleep(500); } - } catch (InterruptedException e) { + nettyClient.send(config.getDetectorId(), msg); + } catch (Exception e) { e.printStackTrace(); return false; } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java index 22f00af..d51ee3c 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/NeutronOptServiceImpl.java @@ -85,7 +85,7 @@ } if (psdList != null && psdList.size() > 0) { - psdList.forEach(psd -> { + for (Psd psd : psdList) { psd.setIpPort(deviceIpPort.substring(1)); if (ObjectUtil.isAllNotEmpty(psd.getBaseLine(), psd.getLongGate(), psd.getQlong(), psd.getShortGate(), psd.getQshort())) { @@ -95,9 +95,9 @@ Double psdRate = (Qlong - Qshort) * 1.000 / Qlong; psd.setPsd(String.format("%.2f", psdRate)); psd.setDetectorId(uid); - ConfigDTO configDTO =CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); - if(null==configDTO){ - configDTO=iDetectorConfigService.getConfig(uid); + ConfigDTO configDTO = CacheUtil.get(RobotDictConstants.CACHE_SCHEMA, RobotDictConstants.KEY_CONFIG_PARAMS_ID + uid); + if (null == configDTO) { + configDTO = iDetectorConfigService.getConfig(uid); } //设置psdx值 toDo:4096 需要自动取 int psdx = (int) ((Qlong - Qshort) * 1.000 / Qlong * 4096); @@ -105,29 +105,28 @@ psd.setPsdx(psdx + ""); psd.setMcax(mcax + ""); //存缓存 - CacheUtils.PSD_DATA_MAP.put(uid+"_"+psd.getCreateTime()+"_"+System.currentTimeMillis(),psd.getPsd()); + CacheUtils.PSD_DATA_MAP.put(uid + "_" + psd.getCreateTime() + "_" + System.currentTimeMillis(), psd.getPsd()); //根据是否启动,向前端推送hs曲线数值 if (hsFlag) { HsDTO hsDTO = new HsDTO(psdx, 1, mcax, 1); if (psdx < 0 || psdx > 4096) { hsDTO.setPsdX(null); hsDTO.setPsdY(null); + continue; } - if ( mcax > 4096||mcax 4096 || mcax < configDTO.getMcaCutOffValue()) { hsDTO.setMcaX(null); - hsDTO.setMcaY(null); + continue; } - //psd数据叠加到mca曲线上 + //psd数据叠加到mca曲线上,mca数据叠加到psd曲线上,取交集 if (psdx >= x3_3 && psdx <= x4_4) { - hsDTO.setMcaX1(mcax); - hsDTO.setMcaY1(1); - } - //mca数据叠加到psd曲线上 - if (mcax >= x1_1 && mcax <= x2_2) { - if (psdx > 0) { + if(mcax >= x1_1 && mcax <= x2_2){ + hsDTO.setMcaX1(mcax); + hsDTO.setMcaY1(1); hsDTO.setPsdX1(psdx); hsDTO.setPsdY1(1); } + } JSONObject headJson = new JSONObject(); headJson.put("msgKey", "detector_hs"); @@ -137,7 +136,7 @@ } } - }); + } iPsdService.saveBatch(psdList); } } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java index d7736a5..daff643 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/neutron/service/impl/PsdServiceImpl.java @@ -228,7 +228,7 @@ } @Override - public void psdExport(Long taskId, Long psdX1, Long psdX2, HttpServletResponse response) { + public void psdExport(Long robotId,String startTime,String endTime, Long psdX1, Long psdX2, HttpServletResponse response) { Map resultMap = new HashMap<>(); //构造第一列数据 @@ -257,19 +257,19 @@ resultMap.put("mca:psd", psdTxtDTOList4); - TaskInfo taskInfo = iTaskInfoService.getById(taskId); +// TaskInfo taskInfo = iTaskInfoService.getById(taskId); - if (ObjectUtil.isNotEmpty(taskInfo)) { - Long robotId = taskInfo.getRobotId(); - Date startTime = taskInfo.getStartTime(); - Date endTime = taskInfo.getEndTime(); +// if (ObjectUtil.isNotEmpty(taskInfo)) { +// Long robotId = taskInfo.getRobotId(); +// Date startTime1 = DateUtil.parseDateTime(startTime); +// Date endTime1 = DateUtil.parseDateTime(endTime); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("DETECTOR_ID", robotId); queryWrapper.ge(ObjectUtil.isNotEmpty(startTime), "CREATE_TIME", startTime); queryWrapper.le(ObjectUtil.isNotEmpty(endTime), "CREATE_TIME", endTime); List psdList = list(queryWrapper); for (Psd psd : psdList) { - if (ObjectUtil.isNotEmpty(psd.getPsd()) && Float.valueOf(psd.getPsd()) >= psdLimit) { + if (ObjectUtil.isNotEmpty(psd.getPsd())) { if (ObjectUtil.isNotEmpty(psd.getMcax())) { psdTxtDTOList2.forEach(psdTxtDTO -> { if (psdTxtDTO.getX().equals(Integer.valueOf(psd.getMcax()))) { @@ -298,7 +298,7 @@ } } } - } +// } List list = new ArrayList<>(); for(int j=0;j" + vol6); volList.add(new Vol(Long.parseLong(vol6,16)+"", DateUtil.formatDateTime(new Date()))); } else { @@ -219,7 +219,7 @@ str = str.substring(str.indexOf(InstructCode.DAC_HEAD + InstructCode.DAC_HEAD_LENGTH) + 24); String[] volArr = InstructCode.getVolArr(str); //本设备只用到第6通道 - String vol6 = volArr[5]; + String vol6 = volArr[0]; // log.info("分包第6通道电压值-------->" + vol6); volList.add(new Vol(Long.parseLong(vol6,16)+"", DateUtil.formatDateTime(new Date()))); } diff --git a/casic-server/src/main/java/com/casic/missiles/netty/InstructCode.java b/casic-server/src/main/java/com/casic/missiles/netty/InstructCode.java index 9322ae0..8a7490b 100644 --- a/casic-server/src/main/java/com/casic/missiles/netty/InstructCode.java +++ b/casic-server/src/main/java/com/casic/missiles/netty/InstructCode.java @@ -10,7 +10,7 @@ * 设备初始化时需要依次发送1~16号指令 */ public static String[] InitCodeArr = { - "1", "设置高压", "set set_voltage 5 1.8\n", + "1", "设置高压", "set set_voltage 0 1.2\n", "2", "复位adc", "cmd set_adc_delay_rst 1 0\n", "3", "逻辑复位", "cmd set_logic_rst 1 0\n", "4", "设置波形采样触发方式为下降沿", "cmd set_raw_trig_sel_adc2 3 0\n", @@ -21,7 +21,7 @@ "9", "设置波形甄别触发周期", "cmd set_psd_trig_period 100 0\n", "10", "设置波形甄别触发阈值", "cmd set_psd_trig_vth 1911 0\n", "11", "设置波形甄别门偏移", "cmd set_psd_gate_offset 12 0\n", - "12", "设置波形甄别延迟", "cmd set_adc2_delay_num 20 0\n", + "12", "设置波形甄别延迟", "cmd set_adc2_delay_num 6 0\n", "13", "设置波形甄别长门", "cmd set_psd_long_gate 112 0\n", "14", "设置波形甄别短门", "cmd set_psd_short_gate 27 0\n", "15", "取消复位adc", "cmd set_adc_delay_rst 0 0\n", @@ -47,7 +47,7 @@ "9", "设置波形甄别触发周期", "cmd set_psd_trig_period " + psdPeriod + " 0\n", "10", "设置波形甄别触发阈值", "cmd set_psd_trig_vth " + (psdVth + 750) * 4096 / 1500 + " 0\n", "11", "设置波形甄别门偏移", "cmd set_psd_gate_offset " + psdOffset / 8 + " 0\n", - "12", "设置波形甄别延迟", "cmd set_adc2_delay_num 20 0\n", + "12", "设置波形甄别延迟", "cmd set_adc2_delay_num 6 0\n", "13", "设置波形甄别长门", "cmd set_psd_long_gate " + psdLongGate / 2 + " 0\n", "14", "设置波形甄别短门", "cmd set_psd_short_gate " + psdShortGate / 2 + " 0\n", "15", "取消复位adc", "cmd set_adc_delay_rst 0 0\n", diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index 455c4bf..8e82df8 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -4,7 +4,7 @@ spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://localhost:3306/casic_robot_inspection?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true + url: jdbc:mysql://192.168.1.127:3306/casic_robot_inspection?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=UTC&&allowMultiQueries=true username: root password: 123456 druid: