| | |
| | | package com.ruoyi.alarmpoints.well.service.impl; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.sql.*; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | |
| | | return result; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> getWellDataByPatrolplanIdAndPosition(Map<String, Object> para, List<SysConfig> config) { |
| | | String patrolplanId = (String) para.get("patrolplanId"); |
| | | Double longitude = null; |
| | | Double latitude = null; |
| | | try{ |
| | | longitude = (Double) para.get("longitude"); |
| | | latitude = (Double) para.get("latitude"); |
| | | } catch (Exception e){ |
| | | longitude = ((BigDecimal) para.get("longitude")).doubleValue(); |
| | | latitude = ((BigDecimal) para.get("latitude")).doubleValue(); |
| | | } |
| | | ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.getWellDataByPatrolplanIdAndPosition(patrolplanId,longitude,latitude); |
| | | if(ardAlarmpointsWell != null){ |
| | | Map<String, Object> result = new HashMap(); |
| | | if (ardAlarmpointsWell.getWellId() != null) { |
| | | result.put("wellId", ardAlarmpointsWell.getWellId()); |
| | | } else { |
| | | result.put("wellId", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getWellNumber() != null) { |
| | | result.put("wellNumber", ardAlarmpointsWell.getWellNumber()); |
| | | } else { |
| | | result.put("wellNumber", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getOilProduction() != null) { |
| | | result.put("oilProduction", ardAlarmpointsWell.getOilProduction()); |
| | | } else { |
| | | result.put("oilProduction", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getWellBlock() != null) { |
| | | result.put("wellBlock", ardAlarmpointsWell.getWellBlock()); |
| | | } else { |
| | | result.put("wellBlock", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getProductionDate() != null) { |
| | | result.put("productionDate", ardAlarmpointsWell.getProductionDate()); |
| | | } else { |
| | | result.put("productionDate", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getDisplacementMode() != null) { |
| | | result.put("displacementMode", ardAlarmpointsWell.getDisplacementMode()); |
| | | } else { |
| | | result.put("displacementMode", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getSurroundingEnvironment() != null) { |
| | | result.put("surroundingEnvironment", ardAlarmpointsWell.getSurroundingEnvironment()); |
| | | } else { |
| | | result.put("surroundingEnvironment", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getWellType() != null) { |
| | | result.put("wellType", ardAlarmpointsWell.getWellType()); |
| | | } else { |
| | | result.put("wellType", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getInstalledLoad() != null) { |
| | | result.put("installedLoad", ardAlarmpointsWell.getInstalledLoad()); |
| | | } else { |
| | | result.put("installedLoad", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getMeteringStation() != null) { |
| | | result.put("meteringStation", ardAlarmpointsWell.getMeteringStation()); |
| | | } else { |
| | | result.put("meteringStation", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getTransferStation() != null) { |
| | | result.put("transferStation", ardAlarmpointsWell.getTransferStation()); |
| | | } else { |
| | | result.put("transferStation", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getDehydrationStation() != null) { |
| | | result.put("dehydrationStation", ardAlarmpointsWell.getDehydrationStation()); |
| | | } else { |
| | | result.put("dehydrationStation", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getRunStatus() != null) { |
| | | result.put("runStatus", ardAlarmpointsWell.getRunStatus()); |
| | | } else { |
| | | result.put("runStatus", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getLongitude() != null) { |
| | | result.put("longitude", ardAlarmpointsWell.getLongitude()); |
| | | } else { |
| | | result.put("longitude", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getLatitude() != null) { |
| | | result.put("latitude", ardAlarmpointsWell.getLatitude()); |
| | | } else { |
| | | result.put("latitude", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getAltitude() != null) { |
| | | result.put("altitude", ardAlarmpointsWell.getAltitude()); |
| | | } else { |
| | | result.put("altitude", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getUserId() != null) { |
| | | result.put("userId", ardAlarmpointsWell.getUserId()); |
| | | } else { |
| | | result.put("userId", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getDeptId() != null) { |
| | | result.put("deptId", ardAlarmpointsWell.getDeptId()); |
| | | SysDept sysDept = sysDeptMapper.selectDeptById(ardAlarmpointsWell.getDeptId());//查询兴趣点所在部门 |
| | | if (sysDept != null) { |
| | | result.put("deptName", sysDept.getDeptName()); |
| | | } else { |
| | | result.put("deptName", ""); |
| | | } |
| | | } else { |
| | | result.put("deptId", ""); |
| | | result.put("deptName", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getCreateBy() != null) { |
| | | result.put("createBy", ardAlarmpointsWell.getCreateBy()); |
| | | } else { |
| | | result.put("createBy", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getCreateTime() != null) { |
| | | result.put("createTime", ardAlarmpointsWell.getCreateTime()); |
| | | } else { |
| | | result.put("createTime", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getUpdateBy() != null) { |
| | | result.put("updateBy", ardAlarmpointsWell.getUpdateBy()); |
| | | } else { |
| | | result.put("updateBy", ""); |
| | | } |
| | | if (ardAlarmpointsWell.getUpdateTime() != null) { |
| | | result.put("updateTime", ardAlarmpointsWell.getUpdateTime()); |
| | | } else { |
| | | result.put("updateTime", ""); |
| | | } |
| | | if (config.size() != 0) { |
| | | String oracle = config.get(0).getConfigValue(); |
| | | String[] oracleArr = oracle.split(";"); |
| | | if (oracleArr.length == 3) { |
| | | String url = oracle.split(";")[0]; |
| | | String username = oracle.split(";")[1]; |
| | | String password = oracle.split(";")[2]; |
| | | try { |
| | | int checkMark = checkTable(url, username, password, "\'RTU_DATA_YJ_8\'");//三厂表存在 |
| | | if (checkMark == 1) { |
| | | Map<String, Object> resultRTU = getRtuDataYjByJH(url, username, password, "RTU_DATA_YJ_8", "\'" + ardAlarmpointsWell.getWellId() + "\'"); |
| | | result.putAll(resultRTU); |
| | | } else { |
| | | result.put("wellRunningState", "n");//油井运行状态 |
| | | result.put("totalPowerConsumption", "n");//总耗电量 |
| | | result.put("communicationMachine", "n");//设备通讯 |
| | | result.put("remark", "n");//备注 |
| | | result.put("singleWellWaterTemperature", "n");//单井掺水温度// |
| | | result.put("meteringPlantWaterPressure", "n");//计量间掺水压力// |
| | | result.put("torque", "n");//扭矩 |
| | | result.put("MAT", "n");//回油温度 |
| | | result.put("TGP", "n");//井口油压 |
| | | result.put("CPV", "n");//井口套压 |
| | | result.put("ADL", "n");//A相电流 |
| | | result.put("ADY", "n");//A相电压 |
| | | result.put("BDL", "n");//B相电流 |
| | | result.put("BDY", "n");//B相电压 |
| | | result.put("CDL", "n");//C相电流 |
| | | result.put("CDY", "n");//C相电压 |
| | | result.put("UCV", "n");//上行电流 |
| | | result.put("DCV", "n");//下行电流 |
| | | result.put("SLV", "n");//冲程 |
| | | result.put("CHC", "n");//冲次 |
| | | result.put("BPV", "n");//井口回压 |
| | | result.put("ZWG", "n");//总无功功率 |
| | | result.put("ZYG", "n");//总有功功率 |
| | | result.put("GYS", "n");//功率因数 |
| | | result.put("UWL", "n");//最大载荷 |
| | | result.put("DWL", "n");//最小载荷 |
| | | result.put("ZHS", "n");//转速 |
| | | } |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } else if (oracleArr.length == 4) { |
| | | String url = oracle.split(";")[0]; |
| | | String username = oracle.split(";")[1]; |
| | | String password = oracle.split(";")[2]; |
| | | String prod = oracle.split(";")[3]; |
| | | try { |
| | | //int checkMark = checkTable(url,username,password,"\'RTU_DATA_YJ_8\'");//三厂表存在 |
| | | int checkMark = checkTable(url, username, password, "\'" + prod + ".RTU_DATA_YJ_8\'");//三厂表存在 |
| | | if (checkMark == 1) { |
| | | Map<String, Object> resultRTU = getRtuDataYjByJH(url, username, password, prod + ".RTU_DATA_YJ_8", "\'" + ardAlarmpointsWell.getWellId() + "\'"); |
| | | result.putAll(resultRTU); |
| | | } else { |
| | | result.put("wellRunningState", "n");//油井运行状态 |
| | | result.put("totalPowerConsumption", "n");//总耗电量 |
| | | result.put("communicationMachine", "n");//设备通讯 |
| | | result.put("remark", "n");//备注 |
| | | result.put("singleWellWaterTemperature", "n");//单井掺水温度// |
| | | result.put("meteringPlantWaterPressure", "n");//计量间掺水压力// |
| | | result.put("torque", "n");//扭矩 |
| | | result.put("MAT", "n");//回油温度 |
| | | result.put("TGP", "n");//井口油压 |
| | | result.put("CPV", "n");//井口套压 |
| | | result.put("ADL", "n");//A相电流 |
| | | result.put("ADY", "n");//A相电压 |
| | | result.put("BDL", "n");//B相电流 |
| | | result.put("BDY", "n");//B相电压 |
| | | result.put("CDL", "n");//C相电流 |
| | | result.put("CDY", "n");//C相电压 |
| | | result.put("UCV", "n");//上行电流 |
| | | result.put("DCV", "n");//下行电流 |
| | | result.put("SLV", "n");//冲程 |
| | | result.put("CHC", "n");//冲次 |
| | | result.put("BPV", "n");//井口回压 |
| | | result.put("ZWG", "n");//总无功功率 |
| | | result.put("ZYG", "n");//总有功功率 |
| | | result.put("GYS", "n");//功率因数 |
| | | result.put("UWL", "n");//最大载荷 |
| | | result.put("DWL", "n");//最小载荷 |
| | | result.put("ZHS", "n");//转速 |
| | | } |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } else { |
| | | result.put("wellRunningState", "n");//油井运行状态 |
| | | result.put("totalPowerConsumption", "n");//总耗电量 |
| | | result.put("communicationMachine", "n");//设备通讯 |
| | | result.put("remark", "n");//备注 |
| | | result.put("singleWellWaterTemperature", "n");//单井掺水温度// |
| | | result.put("meteringPlantWaterPressure", "n");//计量间掺水压力// |
| | | result.put("torque", "n");//扭矩 |
| | | result.put("MAT", "n");//回油温度 |
| | | result.put("TGP", "n");//井口油压 |
| | | result.put("CPV", "n");//井口套压 |
| | | result.put("ADL", "n");//A相电流 |
| | | result.put("ADY", "n");//A相电压 |
| | | result.put("BDL", "n");//B相电流 |
| | | result.put("BDY", "n");//B相电压 |
| | | result.put("CDL", "n");//C相电流 |
| | | result.put("CDY", "n");//C相电压 |
| | | result.put("UCV", "n");//上行电流 |
| | | result.put("DCV", "n");//下行电流 |
| | | result.put("SLV", "n");//冲程 |
| | | result.put("CHC", "n");//冲次 |
| | | result.put("BPV", "n");//井口回压 |
| | | result.put("ZWG", "n");//总无功功率 |
| | | result.put("ZYG", "n");//总有功功率 |
| | | result.put("GYS", "n");//功率因数 |
| | | result.put("UWL", "n");//最大载荷 |
| | | result.put("DWL", "n");//最小载荷 |
| | | result.put("ZHS", "n");//转速 |
| | | } |
| | | return result; |
| | | }else{ |
| | | return null; |
| | | } |
| | | } |
| | | |
| | | public int checkTable(String url, String username, String password, String tableName) throws ClassNotFoundException, SQLException { |
| | | Connection connection = null; |
| | | |