package com.ruoyi.alarmpoints.well.service.impl; 
 | 
  
 | 
import java.math.BigDecimal; 
 | 
import java.sql.*; 
 | 
import java.util.ArrayList; 
 | 
import java.util.HashMap; 
 | 
import java.util.List; 
 | 
import java.util.Map; 
 | 
  
 | 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 
 | 
import com.github.pagehelper.PageHelper; 
 | 
import com.github.pagehelper.PageInfo; 
 | 
import com.ruoyi.alarmpoints.well.domain.*; 
 | 
import com.ruoyi.alarmpoints.well.mapper.ArdAlarmpointsWellMapper; 
 | 
import com.ruoyi.alarmpoints.well.mapper.ArdWellGuideCameraMapper; 
 | 
import com.ruoyi.alarmpoints.well.service.IArdAlarmpointsWellService; 
 | 
import com.ruoyi.common.annotation.DataScope; 
 | 
import com.ruoyi.common.core.domain.entity.SysConfig; 
 | 
import com.ruoyi.common.core.domain.entity.SysDept; 
 | 
import com.ruoyi.common.core.domain.entity.SysUser; 
 | 
import com.ruoyi.common.exception.ServiceException; 
 | 
import com.ruoyi.common.utils.DateUtils; 
 | 
import com.ruoyi.common.utils.SecurityUtils; 
 | 
import com.ruoyi.common.utils.StringUtils; 
 | 
import com.ruoyi.common.utils.bean.BeanValidators; 
 | 
import com.ruoyi.common.utils.spring.SpringUtils; 
 | 
import com.ruoyi.common.utils.uuid.IdUtils; 
 | 
import com.ruoyi.system.mapper.SysDeptMapper; 
 | 
import com.ruoyi.utils.data.Query; 
 | 
import com.ruoyi.utils.gis.GisUtil; 
 | 
import lombok.ToString; 
 | 
import org.slf4j.Logger; 
 | 
import org.slf4j.LoggerFactory; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.stereotype.Service; 
 | 
import org.springframework.transaction.annotation.Transactional; 
 | 
  
 | 
import javax.annotation.Resource; 
 | 
import javax.validation.Validator; 
 | 
  
 | 
/** 
 | 
 * 井管理Service业务层处理 
 | 
 * 
 | 
 * @author 刘苏义 
 | 
 * @date 2023-03-07 
 | 
 */ 
 | 
@Service 
 | 
public class ArdAlarmpointsWellServiceImpl implements IArdAlarmpointsWellService { 
 | 
    private static final Logger log = LoggerFactory.getLogger(ArdAlarmpointsWellServiceImpl.class); 
 | 
    @Resource 
 | 
    private ArdAlarmpointsWellMapper ardAlarmpointsWellMapper; 
 | 
    @Resource 
 | 
    private ArdWellGuideCameraMapper ardWellGuideCameraMapper; 
 | 
  
 | 
    @Autowired 
 | 
    protected Validator validator; 
 | 
  
 | 
    @Resource 
 | 
    protected SysDeptMapper sysDeptMapper; 
 | 
  
 | 
    /** 
 | 
     * 查询井管理 
 | 
     * 
 | 
     * @param id 井管理主键 
 | 
     * @return 井管理 
 | 
     */ 
 | 
    @Override 
 | 
    public ArdAlarmpointsWell selectArdAlarmpointsWellById(String id) { 
 | 
        return ardAlarmpointsWellMapper.selectArdAlarmpointsWellById(id); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 查询井管理 
 | 
     * 
 | 
     * @param wellId 井管理主键 
 | 
     * @return 井管理 
 | 
     */ 
 | 
    @Override 
 | 
    public ArdAlarmpointsWell selectArdAlarmpointsWellByWellId(String wellId) { 
 | 
        return ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(wellId); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 查询井管理列表 
 | 
     * 
 | 
     * @param ardAlarmpointsWell 井管理 
 | 
     * @return 井管理 
 | 
     */ 
 | 
    @Override 
 | 
    @DataScope(deptAlias = "d", userAlias = "u") 
 | 
    public List<ArdAlarmpointsWell> selectArdAlarmpointsWellList(ArdAlarmpointsWell ardAlarmpointsWell) { 
 | 
        return ardAlarmpointsWellMapper.selectArdAlarmpointsWellList(ardAlarmpointsWell); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * @param ardAlarmpointsWell 按井编号查询 
 | 
     * @return 
 | 
     */ 
 | 
    @Override 
 | 
    @DataScope(deptAlias = "d", userAlias = "u") 
 | 
    public List<ArdAlarmpointsWell> selectArdAlarmpointsWellByWellIdLike(ArdAlarmpointsWell ardAlarmpointsWell) { 
 | 
        return ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellIdLike(ardAlarmpointsWell); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 新增井管理 
 | 
     * 
 | 
     * @param ardAlarmpointsWell 井管理 
 | 
     * @return 结果 
 | 
     */ 
 | 
    @Override 
 | 
    @Transactional 
 | 
    public int insertArdAlarmpointsWell(ArdAlarmpointsWell ardAlarmpointsWell) { 
 | 
        boolean wellIdExists = checkWellIdExists(ardAlarmpointsWell); 
 | 
        if (wellIdExists) { 
 | 
            throw new RuntimeException("井号已存在"); 
 | 
        } 
 | 
        ardAlarmpointsWell.setId(IdUtils.simpleUUID()); 
 | 
        ardAlarmpointsWell.setUserId(SecurityUtils.getUserId()); 
 | 
        ardAlarmpointsWell.setCreateBy(SecurityUtils.getUsername()); 
 | 
        ardAlarmpointsWell.setCreateTime(DateUtils.getNowDate()); 
 | 
        return ardAlarmpointsWellMapper.insertArdAlarmpointsWell(ardAlarmpointsWell); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 修改井管理 
 | 
     * 
 | 
     * @param ardAlarmpointsWell 井管理 
 | 
     * @return 结果 
 | 
     */ 
 | 
    @Override 
 | 
    @Transactional 
 | 
    public int updateArdAlarmpointsWell(ArdAlarmpointsWell ardAlarmpointsWell) { 
 | 
        boolean wellIdExists = checkWellIdExists(ardAlarmpointsWell); 
 | 
        if (wellIdExists) { 
 | 
            throw new RuntimeException("井号已存在"); 
 | 
        } 
 | 
        ardAlarmpointsWell.setUpdateBy(SecurityUtils.getUsername()); 
 | 
        ardAlarmpointsWell.setUpdateTime(DateUtils.getNowDate()); 
 | 
        return ardAlarmpointsWellMapper.updateArdAlarmpointsWell(ardAlarmpointsWell); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    @Transactional 
 | 
    public int updateArdAlarmpointsWellByWellId(ArdAlarmpointsWell ardAlarmpointsWell) { 
 | 
        ardAlarmpointsWell.setUpdateBy(SecurityUtils.getUsername()); 
 | 
        ardAlarmpointsWell.setUpdateTime(DateUtils.getNowDate()); 
 | 
        return ardAlarmpointsWellMapper.updateArdAlarmpointsWellByWellId(ardAlarmpointsWell); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 批量删除井管理 
 | 
     * 
 | 
     * @param ids 需要删除的井管理主键 
 | 
     * @return 结果 
 | 
     */ 
 | 
    @Override 
 | 
    public int deleteArdAlarmpointsWellByIds(String[] ids) { 
 | 
        return ardAlarmpointsWellMapper.deleteArdAlarmpointsWellByIds(ids); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 删除井管理信息 
 | 
     * 
 | 
     * @param id 井管理主键 
 | 
     * @return 结果 
 | 
     */ 
 | 
    @Override 
 | 
    public int deleteArdAlarmpointsWellById(String id) { 
 | 
        return ardAlarmpointsWellMapper.deleteArdAlarmpointsWellById(id); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public String importWell(List<ArdAlarmpointsWell> ardAlarmpointsWellList, Boolean isUpdateSupport, String operName) { 
 | 
        if (StringUtils.isNull(ardAlarmpointsWellList) || ardAlarmpointsWellList.size() == 0) { 
 | 
            throw new ServiceException("导入井数据不能为空!"); 
 | 
        } 
 | 
        int successNum = 0; 
 | 
        int failureNum = 0; 
 | 
        StringBuilder successMsg = new StringBuilder(); 
 | 
        StringBuilder failureMsg = new StringBuilder(); 
 | 
        for (ArdAlarmpointsWell well : ardAlarmpointsWellList) { 
 | 
            try { 
 | 
                //获取当前登录用户id 
 | 
                String userId = SecurityUtils.getUserId(); 
 | 
                well.setUserId(userId); 
 | 
                // 验证是否存在这个井 
 | 
                ArdAlarmpointsWell w = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(well.getWellId()); 
 | 
                if (StringUtils.isNull(w)) { 
 | 
                    BeanValidators.validateWithException(validator, well); 
 | 
                    well.setCreateBy(operName); 
 | 
                    this.insertArdAlarmpointsWell(well); 
 | 
                    successNum++; 
 | 
                    successMsg.append("<br/>" + successNum + "、井号 " + well.getWellId() + " 导入成功"); 
 | 
                } else if (isUpdateSupport) { 
 | 
                    BeanValidators.validateWithException(validator, well); 
 | 
                    checkWellDataScope(well.getUserId()); 
 | 
                    well.setUpdateBy(operName); 
 | 
                    this.updateArdAlarmpointsWellByWellId(well); 
 | 
                    successNum++; 
 | 
                    successMsg.append("<br/>" + successNum + "、井号 " + well.getWellId() + " 更新成功"); 
 | 
                } else { 
 | 
                    failureNum++; 
 | 
                    failureMsg.append("<br/>" + failureNum + "、井号 " + well.getWellId() + " 已存在"); 
 | 
                } 
 | 
            } catch (Exception e) { 
 | 
                failureNum++; 
 | 
                String msg = "<br/>" + failureNum + "、井号 " + well.getWellId() + " 导入失败:"; 
 | 
                failureMsg.append(msg + e.getMessage()); 
 | 
                log.error(msg, e); 
 | 
            } 
 | 
        } 
 | 
        if (failureNum > 0) { 
 | 
            failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:"); 
 | 
            throw new ServiceException(failureMsg.toString()); 
 | 
        } else { 
 | 
            successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:"); 
 | 
        } 
 | 
        return successMsg.toString(); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 校验井是否允许操作 
 | 
     * 
 | 
     * @param well 井信息 
 | 
     */ 
 | 
    @Override 
 | 
    public void checkWellAllowed(ArdAlarmpointsWell well) { 
 | 
        if (StringUtils.isNotNull(well.getId())) { 
 | 
            throw new ServiceException("不允许操作井"); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 校验用户是否有数据权限 
 | 
     * 
 | 
     * @param userId 用户id 
 | 
     */ 
 | 
    @Override 
 | 
    public void checkWellDataScope(String userId) { 
 | 
        if (!SysUser.isAdmin(SecurityUtils.getUserId())) { 
 | 
            ArdAlarmpointsWell well = new ArdAlarmpointsWell(); 
 | 
            well.setUserId(userId); 
 | 
            List<ArdAlarmpointsWell> wells = SpringUtils.getAopProxy(this).selectArdAlarmpointsWellList(well); 
 | 
            if (StringUtils.isEmpty(wells)) { 
 | 
                throw new ServiceException("没有权限访问井数据!"); 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 核对井号是否唯一 
 | 
     * 
 | 
     * @param well 需要核对的井 
 | 
     * @return 结果 
 | 
     */ 
 | 
    @Override 
 | 
    public Boolean checkWellIdExists(ArdAlarmpointsWell well) { 
 | 
        // 校验:wellId 
 | 
        String id = (well.getId() == null) ? "" : well.getId(); 
 | 
        String wellId = well.getWellId(); 
 | 
        ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.checkWellIdExists(wellId); 
 | 
        String infoId = (ardAlarmpointsWell == null) ? "" : (ardAlarmpointsWell.getId()); 
 | 
        if ((ardAlarmpointsWell != null) && !((infoId).equals(id))) { 
 | 
            //已存在 
 | 
            return true; 
 | 
        } 
 | 
        return false; 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public List<ArdAlarmpointsWell> wellByDeptList(List<Long> deptList) { 
 | 
        QueryWrapper<ArdAlarmpointsWell> queryWrapper = new QueryWrapper<>(); 
 | 
        queryWrapper.in("dept_id", deptList); 
 | 
        return ardAlarmpointsWellMapper.selectList(queryWrapper); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public ArdAlarmpointsWell wellById(String id) { 
 | 
        return ardAlarmpointsWellMapper.selectById(id); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public List<ArdAlarmpointsWell> wellList(List<Long> deptList) { 
 | 
        QueryWrapper<ArdAlarmpointsWell> queryWrapper = new QueryWrapper<>(); 
 | 
        queryWrapper.select("id", "well_id", "oil_production", "longitude", "latitude", "altitude").in("dept_id", deptList); 
 | 
        return ardAlarmpointsWellMapper.selectList(queryWrapper); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public PageInfo<ArdAlarmpointsWell> conditionList(ArdAlarmpointsWellParam ardAlarmpointsWellParam) { 
 | 
        Integer pageNum = ardAlarmpointsWellParam.getPageNum(); 
 | 
        Integer pageSize = ardAlarmpointsWellParam.getPageSize(); 
 | 
        PageHelper.startPage(pageNum, pageSize); 
 | 
        QueryWrapper<ArdAlarmpointsWell> queryWrapper = new QueryWrapper<>(); 
 | 
        queryWrapper.select("id","altitude","metering_station","displacement_mode","latitude","dehydration_station", 
 | 
                "well_type","production_date","well_id","transfer_station","oil_production","run_status","longitude", 
 | 
                "installed_load","dept_id","user_id","surrounding_environment","well_number","well_block") 
 | 
                .like(!StringUtils.isBlank(ardAlarmpointsWellParam.getWellId()), "well_id", ardAlarmpointsWellParam.getWellId()) 
 | 
                .in("dept_id", ardAlarmpointsWellParam.getDeptList()); 
 | 
        List<ArdAlarmpointsWell> list = ardAlarmpointsWellMapper.selectList(queryWrapper); 
 | 
//        List<ArdAlarmpointsWell> list = ardAlarmpointsWellMapper.conditionList(ardAlarmpointsWellParam.getWellId(),ardAlarmpointsWellParam.getDeptList()); 
 | 
        return new PageInfo<>(list); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public List<ArdAlarmpointsWellDeptVo> wellListDept(List<Long> deptList) { 
 | 
        return ardAlarmpointsWellMapper.wellListDept(deptList); 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public List<ArdAlarmpointsWell> getNearbyWellList(Double longitudeCenter, Double latitudeCenter, Long deptId, Integer range) { 
 | 
        List<ArdAlarmpointsWell> nearbyWellList = new ArrayList<>(); 
 | 
        try { 
 | 
            if (longitudeCenter != null && latitudeCenter != null) { 
 | 
                ArdAlarmpointsWell ardAlarmpointsWell = new ArdAlarmpointsWell(); 
 | 
                ardAlarmpointsWell.setDeptId(deptId); 
 | 
                List<ArdAlarmpointsWell> ardAlarmpointsWells = ardAlarmpointsWellMapper.selectArdAlarmpointsWellList(ardAlarmpointsWell); 
 | 
                if (ardAlarmpointsWells.size() > 0) { 
 | 
                    for (ArdAlarmpointsWell well : ardAlarmpointsWells) { 
 | 
                        Double longitude = well.getLongitude(); 
 | 
                        Double latitude = well.getLatitude(); 
 | 
                        if (longitude != null && latitude != null) { 
 | 
                            double distance = GisUtil.getDistance(new Double[]{longitudeCenter, latitudeCenter}, new Double[]{longitude, latitude}); 
 | 
                            if (distance <= range) { 
 | 
                                nearbyWellList.add(well); 
 | 
                            } 
 | 
                        } 
 | 
                    } 
 | 
                } 
 | 
            } 
 | 
        } catch (Exception ex) { 
 | 
            log.error("获取附近井异常:" + ex.getMessage()); 
 | 
        } 
 | 
        return nearbyWellList; 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public Map<String, Object> getWellDataByWellId(String wellId, List<SysConfig> config) { 
 | 
        ArdAlarmpointsWell ardAlarmpointsWell = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(wellId); 
 | 
        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", "\'" + wellId + "\'"); 
 | 
                        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", "\'" + wellId + "\'"); 
 | 
                        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; 
 | 
    } 
 | 
  
 | 
    @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; 
 | 
        } 
 | 
    } 
 | 
  
 | 
    @Override 
 | 
    public ArdAlarmpointsWell getWellById(String id) { 
 | 
        ArdAlarmpointsWell result = ardAlarmpointsWellMapper.getWellById(id); 
 | 
        return result; 
 | 
    } 
 | 
  
 | 
    public int checkTable(String url, String username, String password, String tableName) throws ClassNotFoundException, SQLException { 
 | 
        Connection connection = null; 
 | 
  
 | 
        Statement updateStatement = null; 
 | 
  
 | 
        Statement queryStatement = null; 
 | 
  
 | 
        try { 
 | 
            Class.forName("oracle.jdbc.OracleDriver"); 
 | 
            connection = DriverManager.getConnection(url, username, password); 
 | 
            //Statement 对象 发送sql 
 | 
            updateStatement = connection.createStatement(); 
 | 
            //查询 
 | 
            queryStatement = connection.createStatement(); 
 | 
            ResultSet resultSet = queryStatement.executeQuery("select count(*) from user_tables where table_name = upper(" + tableName + ")"); 
 | 
  
 | 
            int result = 0; 
 | 
            while (resultSet.next()) { 
 | 
                int column = resultSet.getInt(1); 
 | 
                result = column; 
 | 
            } 
 | 
            return result; 
 | 
        } catch (SQLException e) { 
 | 
            e.printStackTrace(); 
 | 
            return 0; 
 | 
        } finally { 
 | 
            if (updateStatement != null) { 
 | 
                updateStatement.close(); 
 | 
            } 
 | 
            if (queryStatement != null) { 
 | 
                queryStatement.close(); 
 | 
            } 
 | 
            if (connection != null) { 
 | 
                connection.close(); 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public Map<String, Object> getRtuDataYjByJH(String url, String username, String password, String tableName, String JH) throws ClassNotFoundException, SQLException { 
 | 
        Connection connection = null; 
 | 
  
 | 
        Statement updateStatement = null; 
 | 
  
 | 
        Statement queryStatement = null; 
 | 
  
 | 
        try { 
 | 
            Class.forName("oracle.jdbc.OracleDriver"); 
 | 
            connection = DriverManager.getConnection(url, username, password); 
 | 
            //Statement 对象 发送sql 
 | 
            updateStatement = connection.createStatement(); 
 | 
            //查询 
 | 
            queryStatement = connection.createStatement(); 
 | 
            ResultSet resultSet = queryStatement.executeQuery("select rdy0.* from " + tableName + " rdy0 inner join (" + 
 | 
                    "select rdy.JH,max(rdy.RQ) as RQ from RTU_DATA_YJ_8 rdy group by rdy.JH" + 
 | 
                    ")t on rdy0.JH = t.JH and rdy0.RQ = t.RQ where rdy0.JH = " + JH); 
 | 
  
 | 
            Map<String, Object> result = new HashMap(); 
 | 
            while (resultSet.next()) { 
 | 
                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");//扭矩 
 | 
  
 | 
                if (resultSet.getString("MAT") != null) {//回油温度 
 | 
                    result.put("MAT", resultSet.getString("MAT")); 
 | 
                } else { 
 | 
                    result.put("MAT", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("TGP") != null) {//井口油压 
 | 
                    result.put("TGP", resultSet.getString("TGP")); 
 | 
                } else { 
 | 
                    result.put("TGP", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("CPV") != null) {//井口套压 
 | 
                    result.put("CPV", resultSet.getString("CPV")); 
 | 
                } else { 
 | 
                    result.put("CPV", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("ADL") != null) {//A相电流 
 | 
                    result.put("ADL", resultSet.getString("ADL")); 
 | 
                } else { 
 | 
                    result.put("ADL", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("ADY") != null) {//A相电压 
 | 
                    result.put("ADY", resultSet.getString("ADY")); 
 | 
                } else { 
 | 
                    result.put("ADY", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("BDL") != null) {//B相电流 
 | 
                    result.put("BDL", resultSet.getString("BDL")); 
 | 
                } else { 
 | 
                    result.put("BDL", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("BDY") != null) {//B相电压 
 | 
                    result.put("BDY", resultSet.getString("BDY")); 
 | 
                } else { 
 | 
                    result.put("BDY", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("CDL") != null) {//C相电流 
 | 
                    result.put("CDL", resultSet.getString("CDL")); 
 | 
                } else { 
 | 
                    result.put("CDL", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("CDY") != null) {//C相电压 
 | 
                    result.put("CDY", resultSet.getString("CDY")); 
 | 
                } else { 
 | 
                    result.put("CDY", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("UCV") != null) {//上行电流 
 | 
                    result.put("UCV", resultSet.getString("UCV")); 
 | 
                } else { 
 | 
                    result.put("UCV", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("DCV") != null) {//下行电流 
 | 
                    result.put("DCV", resultSet.getString("DCV")); 
 | 
                } else { 
 | 
                    result.put("DCV", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("SLV") != null) {//冲程 
 | 
                    result.put("SLV", resultSet.getString("SLV")); 
 | 
                } else { 
 | 
                    result.put("SLV", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("CHC") != null) {//冲次 
 | 
                    result.put("CHC", resultSet.getString("CHC")); 
 | 
                } else { 
 | 
                    result.put("CHC", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("BPV") != null) {//井口回压 
 | 
                    result.put("BPV", resultSet.getString("BPV")); 
 | 
                } else { 
 | 
                    result.put("BPV", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("ZWG") != null) {//总无功功率 
 | 
                    result.put("ZWG", resultSet.getString("ZWG")); 
 | 
                } else { 
 | 
                    result.put("ZWG", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("ZYG") != null) {//总有功功率 
 | 
                    result.put("ZYG", resultSet.getString("ZYG")); 
 | 
                } else { 
 | 
                    result.put("ZYG", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("GYS") != null) {//功率因数 
 | 
                    result.put("GYS", resultSet.getString("GYS")); 
 | 
                } else { 
 | 
                    result.put("GYS", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("UWL") != null) {//最大载荷 
 | 
                    result.put("UWL", resultSet.getString("UWL")); 
 | 
                } else { 
 | 
                    result.put("UWL", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("DWL") != null) {//最小载荷 
 | 
                    result.put("DWL", resultSet.getString("DWL")); 
 | 
                } else { 
 | 
                    result.put("DWL", "n"); 
 | 
                } 
 | 
                if (resultSet.getString("ZHS") != null) {//转速 
 | 
                    result.put("ZHS", resultSet.getString("ZHS")); 
 | 
                } else { 
 | 
                    result.put("ZHS", "n"); 
 | 
                } 
 | 
            } 
 | 
            if (result.size() == 0) { 
 | 
                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; 
 | 
        } finally { 
 | 
            if (updateStatement != null) { 
 | 
                updateStatement.close(); 
 | 
            } 
 | 
            if (queryStatement != null) { 
 | 
                queryStatement.close(); 
 | 
            } 
 | 
            if (connection != null) { 
 | 
                connection.close(); 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
  
 | 
} 
 |