| | |
| | | private IDryEquipmentService dryEquipmentService; |
| | | |
| | | |
| | | |
| | | @ApiOperation(value="测试", notes="返回Hello") |
| | | @ApiOperation(value = "测试", notes = "返回Hello") |
| | | @GetMapping("/hello") |
| | | public Result<?> sayHello() { |
| | | return Result.ok("Hello"); |
| | | } |
| | | |
| | | @ApiOperation(value="接收实时数据Json", notes="设备实时数据上传") |
| | | @ApiOperation(value = "接收实时数据Json", notes = "设备实时数据上传") |
| | | @PostMapping("/sendRealTimeDataJson") |
| | | public Result<?> realTimeDataJson(@RequestBody RealTimeDataVo realTimeDataVo) { |
| | | public Result<?> realTimeDataJson(@RequestBody RealTimeDataVo realTimeDataVo) { |
| | | try { |
| | | if (mqttConfig.isEnable() && "user".equals(mqttConfig.getRole())){ |
| | | if (mqttConfig.isEnable() && "user".equals(mqttConfig.getRole())) { |
| | | MqttMessage mqttMessage = new MqttMessage(); |
| | | mqttMessage.setQos(0); |
| | | mqttMessage.setPayload(JSONObject.toJSONString(realTimeDataVo).getBytes()); |
| | | mqttUtil.getMqttClient().publish(MqttConstant.TENANT_UP_PREFIX_REALTIME_DATA,mqttMessage); |
| | | //处理故障信息 |
| | | dryRealTimeDataService.fitFaultRecord(realTimeDataVo); |
| | | mqttUtil.getMqttClient().publish(MqttConstant.TENANT_UP_PREFIX_REALTIME_DATA, mqttMessage); |
| | | } |
| | | |
| | | if ("user".equals(mqttConfig.getRole())){ |
| | | if ("user".equals(mqttConfig.getRole())) { |
| | | //处理故障信息 |
| | | dryRealTimeDataService.fitFaultRecord(realTimeDataVo); |
| | | } |
| | |
| | | return dryRealTimeDataService.realTimeDataHandle(realTimeDataVo); |
| | | } |
| | | |
| | | @ApiOperation(value = "接收实时数据Json", notes = "设备实时数据上传") |
| | | @PostMapping("/sendRealTimeDataJson2") |
| | | public Result<?> realTimeDataJson2(@RequestBody RealTimeDataParentVo realTimeDataParentVo) { |
| | | return dryRealTimeDataService.realTimeDataHandle(realTimeDataParentVo); |
| | | |
| | | } |
| | | |
| | | |
| | | @ApiOperation(value="获取设备实时数据", notes="通过租户ID和设备编码获取实时数据") |
| | | @ApiOperation(value = "获取设备实时数据", notes = "通过租户ID和设备编码获取实时数据") |
| | | @GetMapping("/getRealTimeData") |
| | | public Result<?> queryMachineRealTimeData(RealTimeDataVo realTimeDataVo) { |
| | | return dryRealTimeDataService.queryMachineRealTImeData(realTimeDataVo); |
| | | } |
| | | |
| | | @ApiOperation(value="获取车间统计数据", notes="通过租户ID获取车间统计数据") |
| | | @ApiOperation(value = "获取车间统计数据", notes = "通过租户ID获取车间统计数据") |
| | | @GetMapping("/workshopStatistics") |
| | | public Result<?> workshopStatistics(RealTimeDataVo realTimeDataVo) { |
| | | return dryRealTimeDataService.queryWorkshopStatistics(realTimeDataVo); |
| | | } |
| | | |
| | | |
| | | @ApiOperation(value = "获取所有机台", notes = "通过租户ID获取所有机台数据") |
| | | @GetMapping("/queryAllEqps") |
| | | public Result<?> queryAllEqps(DryEquipment equipment) { |
| | | List<DryEquipment> dryEquipments = dryEquipmentService.queryEqusByTenantId(equipment); |
| | | return Result.OK(dryEquipments); |
| | | } |
| | | |
| | | |
| | |
| | | * 1013 热风启动 1014 开门观察 |
| | | * 1015 出料按钮 |
| | | */ |
| | | @ApiOperation(value="发送控制指令", notes="向服务端发送控制指令,由服务端通过socket转发给控制模块") |
| | | @ApiOperation(value = "发送控制指令", notes = "向服务端发送控制指令,由服务端通过socket转发给控制模块") |
| | | @PostMapping("/sendCommand") |
| | | public Result<?> sendCommand(@RequestBody CommandMessageVo msgVo) { |
| | | return dryRealTimeDataService.sendSocketMsg(msgVo); |
| | |
| | | |
| | | /** |
| | | * 根据设备和租户查询该设备类型的干燥配方,将配方转成xml格式,以字符串方式返回 |
| | | * |
| | | * @param tenantId |
| | | * @param eqpCode |
| | | * @return |
| | | * @throws JAXBException |
| | | */ |
| | | @ApiOperation(value="干燥配方获取", notes="干燥配方下发") |
| | | @ApiOperation(value = "干燥配方获取", notes = "干燥配方下发") |
| | | @GetMapping(value = "/queryFormula") |
| | | public Result<String> queryFormulaByEqpType(Integer tenantId, String eqpCode) throws JAXBException { |
| | | //获取request |
| | | HttpServletRequest request = SpringContextUtils.getHttpServletRequest(); |
| | | // 获取请求主机的IP地址 |
| | | String ip = IpUtils.getIpAddr(request); |
| | | DryEquipment dryEquipment = dryEquipmentService.selectByTenantIdEquipmentId(tenantId+ "", eqpCode); |
| | | DryEquipment dryEquipment = dryEquipmentService.selectByTenantIdEquipmentId(tenantId + "", eqpCode); |
| | | if (dryEquipment != null) { |
| | | if (dryEquipment.getIp().equals(ip)) { |
| | | } else { |
| | |
| | | } else { |
| | | return Result.error("设备不存在"); |
| | | } |
| | | LambdaQueryWrapper<DryHerbFormula> queryWrapper = new LambdaQueryWrapper<DryHerbFormula>(); |
| | | queryWrapper.eq(DryHerbFormula::getEqpType, dryEquipment.getType()) |
| | | .eq(DryHerbFormula::getTenantId, tenantId); |
| | | List<DryHerbFormula> list = dryHerbFormulaService.list(queryWrapper); |
| | | Formulas formulas = new Formulas(); |
| | | list.forEach(item -> { |
| | | DryHerbInfo byId = dryHerbInfoService.getById(item.getHerbId()); |
| | | if (byId!=null) { |
| | | item.setPinyin(byId.getPinyin()); |
| | | item.setName(byId.getName()); |
| | | } |
| | | Formula formula = new Formula(); |
| | | BaseParam baseParam = new BaseParam(); |
| | | WaterParam waterParam = new WaterParam(); |
| | | TypeParam typeParam = new TypeParam(); |
| | | OffsetParam offsetParam = new OffsetParam(); |
| | | baseParam.setCode(item.getCode()); |
| | | baseParam.setIndex(item.getCode()); |
| | | baseParam.setName(item.getName()); |
| | | baseParam.setAb(item.getName()); |
| | | baseParam.setTyp(item.getCategory()); |
| | | waterParam.setDelay(Double.valueOf(item.getDelay())); |
| | | waterParam.setMoisture3(item.getTarget()); |
| | | waterParam.setWeight1(Double.valueOf(item.getFeed())); |
| | | waterParam.setTimes(item.getEt()); |
| | | waterParam.setTemp1(item.getWindTemp()); |
| | | waterParam.setTemp2(item.getEnvTemp()); |
| | | waterParam.setTemp3(item.getEnvHum()); |
| | | waterParam.setTurntime(item.getTurn()); |
| | | typeParam.setMtype(Integer.valueOf(item.getCategory())); |
| | | offsetParam.setMoisoffset(item.getMoisOffset()); |
| | | offsetParam.setColdwind(Double.valueOf(item.getCoolingDuration())); |
| | | LambdaQueryWrapper<DryHerbFormula> queryWrapper = new LambdaQueryWrapper<DryHerbFormula>(); |
| | | queryWrapper.eq(DryHerbFormula::getEqpType, dryEquipment.getType()) |
| | | .eq(DryHerbFormula::getTenantId, tenantId); |
| | | List<DryHerbFormula> list = dryHerbFormulaService.list(queryWrapper); |
| | | Formulas formulas = new Formulas(); |
| | | list.forEach(item -> { |
| | | DryHerbInfo byId = dryHerbInfoService.getById(item.getHerbId()); |
| | | if (byId != null) { |
| | | item.setPinyin(byId.getPinyin()); |
| | | item.setName(byId.getName()); |
| | | } |
| | | Formula formula = new Formula(); |
| | | BaseParam baseParam = new BaseParam(); |
| | | WaterParam waterParam = new WaterParam(); |
| | | TypeParam typeParam = new TypeParam(); |
| | | OffsetParam offsetParam = new OffsetParam(); |
| | | baseParam.setCode(item.getCode()); |
| | | baseParam.setIndex(item.getCode()); |
| | | baseParam.setName(item.getName()); |
| | | baseParam.setAb(item.getName()); |
| | | baseParam.setTyp(item.getCategory()); |
| | | waterParam.setDelay(Double.valueOf(item.getDelay())); |
| | | waterParam.setMoisture3(item.getTarget()); |
| | | waterParam.setWeight1(Double.valueOf(item.getFeed())); |
| | | waterParam.setTimes(item.getEt()); |
| | | waterParam.setTemp1(item.getWindTemp()); |
| | | waterParam.setTemp2(item.getEnvTemp()); |
| | | waterParam.setTemp3(item.getEnvHum()); |
| | | waterParam.setTurntime(item.getTurn()); |
| | | typeParam.setMtype(Integer.valueOf(item.getCategory())); |
| | | offsetParam.setMoisoffset(item.getMoisOffset()); |
| | | offsetParam.setColdwind(Double.valueOf(item.getCoolingDuration())); |
| | | |
| | | formula.setBaseParam(baseParam); |
| | | formula.setWaterParam(waterParam); |
| | | formula.setTypeParam(typeParam); |
| | | formula.setOffsetParam(offsetParam); |
| | | formulas.getDryFormulaList().add(formula); |
| | | }); |
| | | // 把vos转换成xml |
| | | formula.setBaseParam(baseParam); |
| | | formula.setWaterParam(waterParam); |
| | | formula.setTypeParam(typeParam); |
| | | formula.setOffsetParam(offsetParam); |
| | | formulas.getDryFormulaList().add(formula); |
| | | }); |
| | | // 把vos转换成xml |
| | | // 创建JAXBContext实例 |
| | | JAXBContext jaxbContext = JAXBContext.newInstance(Formulas.class); |
| | | |
| | |
| | | StringWriter writer = new StringWriter(); |
| | | marshaller.marshal(formulas, writer); |
| | | |
| | | return Result.OK("请求成功",writer.toString()); |
| | | return Result.OK("请求成功", writer.toString()); |
| | | |
| | | |
| | | } |
| | | |
| | | @ApiOperation(value="干燥配方上报", notes="干燥配方记录上报") |
| | | @ApiOperation(value = "干燥配方上报", notes = "干燥配方记录上报") |
| | | @PostMapping(value = "/sendFormulaHistory") |
| | | public Result<?> sendFormulaHistory(DryHerbFormulaHisVo hisVo) { |
| | | //获取request |