java调取他人服务

1:调取他人的服务前提是有服务的地址,声明一个 RestTemplate用他的方法,去调用。一搬返回的是一个用String 接收的字符串,但是在调服务那里他的swagger (若是springboot jpa 的话)里面一般是以json 字符串展示,所以要想获取里面的属性必须转换成 jsonobject 对象才可以获取对方的属性,数组是直接不能获取他的属性的。这一点非常重要,切记!! 下面的是咱的成果。
2:通过微服务调用(调别人的服务是需要钥匙的)的话在自己的swagger中是需要 jwt 或者 token 的,这个从F12来获取!!
3:注意前往不要在for 循环中调用查询方法,或者调用其他东西(总之for循环别调用)下面红字是解决的方法!!!
4:千万别再for 循环中 String str=new String() 这样会过多的分配堆栈影响性能!!

package com.cnpc.epai.welllifesystem.service;
/*
@author -lijing28
@DESCRIPTION ${DESCRIPTION}
@create 2019-1-7
*/
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.cnpc.epai.common.util.BusinessException;
import com.cnpc.epai.welllifesystem.domain.DrWlDatabook;
import com.cnpc.epai.welllifesystem.domain.DrWlWellHistory;
import com.cnpc.epai.welllifesystem.repository.WellNumberRepository;
import com.cnpc.epai.welllifesystem.repository.WellNumberSettingRepository;
import com.cnpc.epai.welllifesystem.util.UpdateTool;
import org.apache.commons.lang.ArrayUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestTemplate;
import springfox.documentation.spring.web.json.Json;

import java.awt.print.Pageable;
import java.math.BigInteger;
import java.text.SimpleDateFormat;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

import static com.sun.tools.corba.se.idl.constExpr.Expression.one;

@Service
public class WellNumberServiceImpl implements WellNumberService{

@Autowired
private WellNumberSettingRepository wellNumberSettingRepository;

@Autowired
private WellNumberRepository wellNumberRepository;

@Autowired
private RestTemplate restTemplate;

static  final String wellUrl="http://3001dataset";

private String dataBookNameById(String databookId) {
    return wellNumberRepository.dataBookNameById(databookId);
}

private String dataHistoryImport(String wellId,String datasetId)  {
    //调用查询的databook 中 description  用于替换
    String searchUrl = wellUrl + "/core/dataset/udb/"+datasetId+"/searchdata.json";
    MultiValueMap<String,Object> map = new LinkedMultiValueMap<>();
    map.add("param[]","WELL_ID = "+wellId);

// new HttpEntity<>( map ) 之所以把map 放到HttpEntity HttpEntity其实相当于一个消息实体,内容是http传送的报文(这里可以说是html,css等等文件)。这里只需要知道它是用来表征一个http报文的实体就行了,用来发送或接收。
String postForObject = restTemplate.postForObject(searchUrl, new HttpEntity<>( map ), String.class, datasetId);
return postForObject;
}

//使用组装的查询条件和datasetId从3001服务中获取指定数据  需调用
private String getWellDateFromLake( MultiValueMap<String, Object> data , String datasetId ){
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
    headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
    HttpEntity httpEntity = new HttpEntity(data, headers);
    String searchUrl = wellUrl + "/core/dataset/udb/"+datasetId+"/searchdataplus.json";
    String wellDateStr = restTemplate.postForObject(searchUrl, httpEntity, String.class, datasetId);
    return wellDateStr;
}


//井位下发00101   Klv9VWWlJRXjld4QX5Q6sKmpSTELvec0    油井:WELLJD100001949  属于:设计
@Override
public String dataWellDistributed(String wellId){
    //井基本信息的datasetId   String.valueOf(Math.round(Integer.parseInt(content.getString("GEO_OFFSET_EAST"))))
    String datasetId = "Klv9VWWlJRXjld4QX5Q6sKmpSTELvec0";
    String dataBookNameById = "";
    String json = dataHistoryImport(wellId, datasetId);
    JSONObject jsonObject = JSON.parseObject(json);
    if (null !=jsonObject.getJSONArray("content") && jsonObject.getJSONArray("content").size()>0){
        dataBookNameById = dataBookNameById("00101");
        JSONObject content = jsonObject.getJSONArray("content").getJSONObject(0);//content.getString("GEO_OFFSET_NORTH")content.getString("GEO_OFFSET_NORTH");
        if (!(content.getString("GEO_DESCRIPTION")==null
                && content.getString("GEO_OFFSET_NORTH")==null
                && content.getString("GEO_OFFSET_EAST")==null
                && content.getString("WELL_PURPOSE")==null
                && content.getString("BUDGETED_MD")==null
                && content.getString("TARGET_FORMATION")==null)){

            //[地理位置]
            if(content.getString("GEO_DESCRIPTION")==null){
                dataBookNameById=dataBookNameById.replace("该井位于[地理位置]境内,","");
            }else {
                dataBookNameById=dataBookNameById.replace("[地理位置]",content.getString("GEO_DESCRIPTION"));
            }
            //[X] [Y]
            if(null !=content.getString("GEO_OFFSET_NORTH") && null !=content.getString("GEO_OFFSET_EAST")){
                dataBookNameById=dataBookNameById.replace("[X]",content.getString("GEO_OFFSET_NORTH"));
                dataBookNameById=dataBookNameById.replace("[Y]",content.getString("GEO_OFFSET_EAST"));
            }else {
                dataBookNameById=dataBookNameById.replace("设计坐标为X:[X],Y:[Y],","");
            }

            //[设计井别]
            if(content.getString("WELL_PURPOSE")==null){
                dataBookNameById=dataBookNameById.replace("设计井别为[设计井别],","");
            }else {
                dataBookNameById=dataBookNameById.replace("[设计井别]",content.getString("WELL_PURPOSE"));
            }
            //[设计井深]
            if(content.getString("BUDGETED_MD")==null){
                dataBookNameById=dataBookNameById.replace("设计井深[设计井深]m,","");
            }else {
                dataBookNameById=dataBookNameById.replace("[设计井深]",content.getString("BUDGETED_MD"));
            }

            //[目的层位]
            if (content.getString("TARGET_FORMATION")==null){
                dataBookNameById=dataBookNameById.replace(",目的层为[目的层位]","");
            }else {
                dataBookNameById=dataBookNameById.replace("[目的层位]",content.getString("TARGET_FORMATION"));
            }
        }else {
            dataBookNameById="";
        }
    }
    return dataBookNameById;
}

//钻井  Klv9VWWlJRXjld4QX5Q6sKmpSTELvec0     油井:WELLJD100001949  属于:钻井(IE)
@Override
public String dataWellDrilling(String wellId)  {
    String datasetId = "Klv9VWWlJRXjld4QX5Q6sKmpSTELvec0";
    String dataBookNameById = "";
    String json = dataHistoryImport(wellId, datasetId);
    JSONArray content1= JSON.parseObject(json).getJSONArray("content");
    if (null !=content1){
        JSONObject content = content1.getJSONObject(0);
        if ( !(content.getString("SPUD_DATE")==null
                && content.getString("END_DRILLING_DATE")==null
                && content.getString("COMPLETION_FORMATION")==null
                && content.getString("COMPLETION_MD")==null)){
            dataBookNameById = dataBookNameById("00301");
            dataBookNameById=dataBookNameById.replace("[开钻日期]",content.getString("SPUD_DATE")==null?"":content.getString("SPUD_DATE").replace("-","."));
            //日期  To_Char(v_Kz, 'YYYY.MM.DD')
            dataBookNameById=dataBookNameById.replace("[完钻日期]",content.getString("END_DRILLING_DATE")==null?"":content.getString("END_DRILLING_DATE").replace("-","."));
            //[完钻层位]
            if(content.getString("COMPLETION_FORMATION")==null){
                dataBookNameById=dataBookNameById.replace("完钻层位[完钻层位],","");
            }else {
                dataBookNameById=dataBookNameById.replace("[完钻层位]",content.getString("COMPLETION_FORMATION"));
            }

            //[完钻井深]
            if(content.getString("COMPLETION_MD")==null){
                dataBookNameById=dataBookNameById.replace(",完钻井深[完钻井深]m","");
            }else {
                dataBookNameById=dataBookNameById.replace("[完钻井深]",content.getString("COMPLETION_MD"));
            }
        }
    }
    return dataBookNameById;
}


//  钻井事故  getWellDateFromLake   问题在勘探平台 没有JD的数据 !!  但是存储过程已经注销了  油井:WELLJD100001949 空的
@Override
public String dataWellDrillingAccident(String wellId) {
    String datasetId = "cn98Sq7eSj5MRghdI7mhXDXG30qcHLe7";
    String dataBookNameById="";
    //组装查询条件
    MultiValueMap<String, Object> queryCondition = new LinkedMultiValueMap<>();
    queryCondition.add("quertDto",JSON.toJSONString(ArrayUtils.toMap(new Object[][]{
            //jd井 但是此时JD没有数据  XJ有
            {"dataRegions", Arrays.asList("XJ")},
            //wellID
            {"filter",ArrayUtils.toMap(new Object[][]{
                    {"key","WELL_ID"},
                    {"logic","AND"},
                    { "realValue",Arrays.asList( wellId )}
            })},
            //按照OCCURRENCE_TIME升序排序
            {"sort", ArrayUtils.toMap(new Object[][] {
                    {"OCCURRENCE_TIME", "ASC"}
            })}
    })));
    //使用查询条件和datasetId从3001服务中获取数据
    String json = getWellDateFromLake( queryCondition , datasetId );
    JSONArray content1 = JSON.parseObject(json).getJSONArray("content");
    if (null !=content1 && content1.size()>0){
        JSONObject content = content1.getJSONObject(0);
        if (null !=content.getString("OCCURRENCE_TIME")){
            dataBookNameById = dataBookNameById("00302");
            //暂时没有[日期2] 字段!!  日期2 最大时间   日期1 最小时间
            dataBookNameById = dataBookNameById.replace("[日期1]", content.getString("OCCURRENCE_TIME") == null ? "" : content.getString("OCCURRENCE_TIME"));
        }
    }
    return dataBookNameById;
}

//套管  7Zk3ngZ2tOFHinMphAwY2KkB92Ake4RO   返回多条  content.getString("CASING_MD") 数据集:钻井  属于:钻井
@Override
public String dataWellSurfaceCasing(String wellId,String casingName) {
    List <String>list1=new ArrayList<String>();
    String s="";
    String dataBookNameById="";
    String databookId="";
    //油层套管 表层套管 油层套管 生产套管  7Zk3ngZ2tOFHinMphAwY2KkB92Ake4RO
    String datasetId ="7Zk3ngZ2tOFHinMphAwY2KkB92Ake4RO";
    //组装查询条件
    MultiValueMap<String, Object> queryCondition = new LinkedMultiValueMap<>();
    queryCondition.add("quertDto", JSON.toJSONString( ArrayUtils.toMap(new Object[][] {
            //JD井
            {"dataRegions", Arrays.asList("JD")},
            //井wellId
            {"filter", ArrayUtils.toMap(new Object[][] {
                    {"key", ""},
                    {"logic", "AND"},
                    {"subFilter",Arrays.asList( ArrayUtils.toMap(new Object[][]{
                                    {"key","WELL_ID"},
                                    {"logic", "AND"},
                                    {"realValue",Arrays.asList(wellId)}
                            } ),
                            ArrayUtils.toMap(new Object[][]{
                                    {"key","CASING_NAME"},
                                    {"logic", "AND"},
                                    {"realValue",Arrays.asList(casingName)},
                                    //{"symbol","in"}
                            } ))
                    }
            })}
    })));
    //pageable page 0 开始  size 写10000000 若比他大可能只有size=20  它最多展示2000条
    queryCondition.add("page","0");
    queryCondition.add("size","10000000");
    //使用查询条件和datasetId从3001服务中获取数据
    String json = getWellDateFromLake( queryCondition , datasetId );
    //用於計算套管數量 组装查询条件
    MultiValueMap<String, Object> queryCondition1 = new LinkedMultiValueMap<>();
    queryCondition1.add("quertDto", JSON.toJSONString( ArrayUtils.toMap(new Object[][] {
            //JD井
            {"dataRegions", Arrays.asList("JD")},
            //井wellId
            {"filter", ArrayUtils.toMap(new Object[][] {
                    {"key", ""},
                    {"logic", "AND"},
                    {"subFilter",Arrays.asList(
                            ArrayUtils.toMap(new Object[][]{
                                    {"key","CASING_NAME"},
                                    {"logic", "AND"},
                                    {"realValue",Arrays.asList(casingName)},
                                    //{"symbol","in"}
                            } ))
                    }
            })}
    })));
    queryCondition1.add("page","0");
    queryCondition1.add("size","10000000");
    String json1 = getWellDateFromLake( queryCondition1 , datasetId );

    JSONArray content1 = JSON.parseObject(json).getJSONArray("content");
    switch (casingName){
        case "表层套管":
            databookId="00303";
            break;
        case "油层套管":
            databookId="00304";
            break;
        case "生产套管":
            databookId="00305";
            break;
        case "技术套管":
            databookId="00306";
            break;
    }
    if (null !=content1 && content1.size()>0){
       //调用查询方法
        dataBookNameById = dataBookNameById(databookId);
        String [] arr=new String[content1.size()];
        Arrays.fill(arr,dataBookNameById);
        for (int i=0;i<arr.length;i++){
            JSONObject content = content1.getJSONObject(i);
            if (!(content.getString("GRADE")==null
                    &&content.getString("CASING_OD")==null
                    &&content.getString("WALL_THICKNESS")==null
                    &&content.getString("CASING_MD")==null)){
                //dataBookNameById = dataBookNameById(databookId);
                dataBookNameById=arr[i].replace("[钢级]",content.getString("GRADE")==null?"":content.getString("GRADE"));
                dataBookNameById=dataBookNameById.replace("[外径]",content.getString("CASING_OD")==null?"":content.getString("CASING_OD"));
                dataBookNameById=dataBookNameById.replace("[壁厚]",content.getString("WALL_THICKNESS")==null?"":content.getString("WALL_THICKNESS"));
                //count
                dataBookNameById=dataBookNameById.replace("[套管数量]",String.valueOf(JSON.parseObject(json1).getString("totalElements")));
                //max   Integer.parseInt(JSON.parseObject(json1).getJSONArray("content").getJSONObject(0).getString("CASING_MD"))
                List<Double> list=new ArrayList<Double>();
                JSONArray jsonArray=JSON.parseObject(json1).getJSONArray("content");
                for (int j=0;j<jsonArray.size();j++){
                    JSONObject jsonObject1 = jsonArray.getJSONObject(j);
                    if (null !=jsonObject1.getString("CASING_MD")) {
                        double casing_md = Double.parseDouble(jsonObject1.getString("CASING_MD"));
                        list.add(casing_md);
                    }
                }
                Double max = Collections.max(list);
                dataBookNameById=dataBookNameById.replace("[下入深度]",String.valueOf(max));
                list1.add(dataBookNameById);
            }
        }
        for (int t=0;t<list1.size();t++){
            s=s+list1.get(t)+"    ";
        }
    }
    return s;
}


//钻井取心  AAJClBONI1OmhcRiyYddG2cNZR8onCPM     模型:录井   dataHistoryImportCount
@Override
public String dataWellDrillingCoring(String wellId) {
    String datasetId = "AAJClBONI1OmhcRiyYddG2cNZR8onCPM";
    String dataBookNameById="";
    //组装查询条件
    MultiValueMap<String, Object> queryCondition = new LinkedMultiValueMap<>();
    //pageable page 0 开始  size 写10000000 若比他大可能只有size=20  它最多展示2000条
    queryCondition.add("page","0");
    queryCondition.add("size","10000000");
    String json1 = getWellDateFromLake( queryCondition , datasetId );
    //所有没有wellId限制的所有小数组
    JSONArray content2 =JSON.parseObject(json1).getJSONArray("content");
    String json = dataHistoryImport(wellId, datasetId);
    JSONArray content1 = JSON.parseObject(json).getJSONArray("content");
    if (null !=content1 && content1.size()>0){
        //取得是wellId 所对应的那一条
        JSONObject content = content1.getJSONObject(0);
        if (!(content.getString("CORING_SEQ")==null
                &&content.getString("DEPTH_INCREMENT")==null
                &&content.getString("CUT_RECOVERED")==null
                &&content.getString("FULL_OIL_CONTAINED_CORE_LEN")==null)){
            dataBookNameById = dataBookNameById("00401");
            //求总个数 size
            dataBookNameById=dataBookNameById.replace("[取心次数]",String.valueOf(content2.size()));
            //求总长
            double d1=0;
            double d2=0;
            double d3=0;
            for (int i=0;i<content2.size();i++) {
                String depth_increment = content2.getJSONObject(i).getString("DEPTH_INCREMENT");
                String cut_recovered = content2.getJSONObject(i).getString("CUT_RECOVERED");
                String full_oil_contained_core_len = content2.getJSONObject(i).getString("FULL_OIL_CONTAINED_CORE_LEN");
                if (null !=depth_increment) {
                   d1+=Double.parseDouble(depth_increment);
                }else {
                    d1=0+d1;
                }

                if (null !=cut_recovered) {
                    d2+=Double.parseDouble(cut_recovered);
                }else {
                    d2=0+d2;
                }

                if (null !=full_oil_contained_core_len) {
                    d3+=Double.parseDouble(full_oil_contained_core_len);
                }else {
                    d3=0+d3;
                }
            }
            dataBookNameById=dataBookNameById.replace("[总进尺]",String.valueOf(d1));
            //[所得岩心长]  !!!!  替换说是[岩心总长]  但是右面是 [所得岩心长]
            dataBookNameById=dataBookNameById.replace("[岩心总长]",String.valueOf(d2));
            //找不到平均取心率字段 !!!
            // dataBookNameById=dataBookNameById.replace("[平均取心率]",content.getString("WALL_THICKNESS")==null?"":content.getString("WALL_THICKNESS"));
           //数据集模型是 饱含油心长  !!!
            dataBookNameById=dataBookNameById.replace("[含油岩心长]",String.valueOf(d3));
        }
    }
    //找不到取心层位字段
    //dataBookNameById=dataBookNameById.replace("[取心层位]",content.getString("GRADE")==null?"":content.getString("GRADE"));
    return dataBookNameById;
}

//综合测井  WfFszpIQg8BMeIB4GK42iWplsOChhJa1   返回多条数据   数据集  : 测井
@Override
public String dataWellComprehensiveLogging(String wellId) {
    List <String>list=new ArrayList<String>();
    String s="";
    String dataBookNameById="";
    String datasetId = "WfFszpIQg8BMeIB4GK42iWplsOChhJa1";
    //String dataBookNameById = dataBookNameById("00501");
    String json = dataHistoryImport(wellId, datasetId);
    //String json2 = dataHistoryImportCount(datasetId);
    JSONObject jsonObject = JSON.parseObject(json);
    //JSONObject content = jsonObject.getJSONArray("content").getJSONObject(0);
    JSONArray content1 = jsonObject.getJSONArray("content");
    if (null !=content1 && content1.size()>0){
        dataBookNameById = dataBookNameById("00501");
        String [] arr=new String[content1.size()];
        Arrays.fill(arr,dataBookNameById);
        for (int i=0;i<arr.length;i++){
            JSONObject content = content1.getJSONObject(i);
            if (!(content.getString("START_TIME")==null
                    &&content.getString("TOP")==null
                    &&content.getString("BOTTOM")==null
                    &&content.getString("INSTRUMENT_TYPES")==null)){
                dataBookNameById=arr[i].replace("[日期]",content.getString("START_TIME")==null?"":content.getString("START_TIME"));
                //没有测井队伍字段
                //dataBookNameById=dataBookNameById.replace("[测井队伍]",content.getString("DEPTH_INCREMENT")==null?"":content.getString("DEPTH_INCREMENT"));
                //测井仪器字段  INSTRUMENT_TYPES   注意
                dataBookNameById=dataBookNameById.replace("[测井仪器]",content.getString("INSTRUMENT_TYPES")==null?"":content.getString("INSTRUMENT_TYPES"));
                dataBookNameById=dataBookNameById.replace("[测井井段]",content.getString("TOP")==null || content.getString("BOTTOM")==null?"":content.getString("TOP")+"m~"+content.getString("BOTTOM")+"m");
                list.add(dataBookNameById);
            }
        }
        for (int i=0;i<list.size();i++){
            s =s+list.get(i)+"    ";
        }
    }
    return s;
}


//试油进展 wpwtGIEyvXHTrIG3a4ITFoD8ld2yClvv   没有定产字段  sql  !!!   数据集:试油试采
@Override
public String dataWellTryTheWellShow(String wellId){
    String datasetId = "wpwtGIEyvXHTrIG3a4ITFoD8ld2yClvv";
    List <String>list=new ArrayList<String>();
    String dataBookNameById="";
    String s="";
    String json = dataHistoryImport(wellId, datasetId);
    JSONArray content1 = JSON.parseObject(json).getJSONArray("content");
    if (null !=content1 && content1.size()>0){
        dataBookNameById = dataBookNameById("00603");
        String [] arr=new String[content1.size()];
        Arrays.fill(arr,dataBookNameById);
        for (int i=0;i<arr.length;i++){
            JSONObject content = content1.getJSONObject(i);
            if (!(content.getString("LAYER_NO")==null
                    && content.getString("START_TIME")==null
                    && content.getString("FORMATION_NAME")==null
                    && content.getString("WORKING_SYSTEM")==null
                    && content.getString("TUBING_PRES")==null
                    && content.getString("CASING_PRES_RANGE")==null
                    && content.getString("DAILY_PROD_OIL")==null
                    && content.getString("DAILY_PROD_GAS")==null
                    && content.getString("DAILY_PROD_WATER")==null
            )){
                dataBookNameById = arr[i].replace("&次&", content.getString("LAYER_NO") == null ? "" : content.getString("LAYER_NO"));
                dataBookNameById = dataBookNameById.replace("&日期1&", content.getString("START_TIME") == null ? "" : content.getString("START_TIME").replace("yyyy-MM-dd","yyyy/MM/dd"));
                dataBookNameById = dataBookNameById.replace("&试油层位&", content.getString("FORMATION_NAME") == null ? "" : content.getString("FORMATION_NAME"));
                //没有定产字段
                //dataBookNameById=dataBookNameById.replace("&定产&",content.getString("SPUD_DATE")==null?"":content.getString("GEO_DESCRIPTION"));
                dataBookNameById = dataBookNameById.replace("Φ&工作制度&", content.getString("WORKING_SYSTEM") == null ? "" : content.getString("WORKING_SYSTEM"));
                dataBookNameById = dataBookNameById.replace("&油压&", content.getString("TUBING_PRES") == null ? "" : content.getString("TUBING_PRES"));
                dataBookNameById = dataBookNameById.replace("&套压&", content.getString("CASING_PRES_RANGE") == null ? "" : content.getString("CASING_PRES_RANGE"));
                dataBookNameById = dataBookNameById.replace("&日产油&", content.getString("DAILY_PROD_OIL") == null ? "" : content.getString("DAILY_PROD_OIL"));
                dataBookNameById = dataBookNameById.replace("&日产气&", content.getString("DAILY_PROD_GAS") == null ? "" : content.getString("DAILY_PROD_GAS"));
                dataBookNameById = dataBookNameById.replace("&日产水&", content.getString("DAILY_PROD_WATER") == null ? "" : content.getString("DAILY_PROD_WATER"));
                list.add(dataBookNameById);
            }
        }
        for (int i=0;i<list.size();i++){
            s =s+list.get(i)+"    ";
        }
    }
    return s;
}

//试油结论 wpwtGIEyvXHTrIG3a4ITFoD8ld2yClvv     数据集:试油试采
@Override
public String dataWellTestConclusion(String wellId) {
    String datasetId = "wpwtGIEyvXHTrIG3a4ITFoD8ld2yClvv";
    String dataBookNameById="";
    String json = dataHistoryImport(wellId, datasetId);
    JSONArray content1 = JSON.parseObject(json).getJSONArray("content");
    if (null !=content1 && content1.size()>0){
        JSONObject content = content1.getJSONObject(0);
        if (!(content.getString("END_TIME")==null
                &&content.getString("DAILY_PROD_OIL")==null
                &&content.getString("DAILY_PROD_WATER")==null)){
            dataBookNameById = dataBookNameById("00604");
            if(content.getString("END_TIME")==null){
                dataBookNameById=dataBookNameById.replace("[日期]完试,","");
            }else {
                dataBookNameById=dataBookNameById.replace("[日期]",content.getString("END_TIME"));
            }
            //dataBookNameById=dataBookNameById.replace("[日期]",content.getString("END_TIME")==null?"":content.getString("END_TIME"));
            //没有定产字段
            //dataBookNameById=dataBookNameById.replace("[定产]",content.getString("DAILY_PROD_OIL")==null?"":content.getString("DAILY_PROD_OIL"));
            //[日产油]
            if(content.getString("DAILY_PROD_OIL")==null){
                dataBookNameById=dataBookNameById.replace(",日产油[日产油]t,日产水[日产水]m^3。","");
            }else {
                dataBookNameById=dataBookNameById.replace("[日产油]",content.getString("DAILY_PROD_OIL"));
            }
            //dataBookNameById=dataBookNameById.replace("[日产油]",content.getString("DAILY_PROD_OIL")==null?"":content.getString("DAILY_PROD_OIL"));
            //[日产水]
            if(content.getString("DAILY_PROD_WATER")==null){
                dataBookNameById=dataBookNameById.replace(",日产水[日产水]m^3。","");
            }else {
                dataBookNameById=dataBookNameById.replace("[日产水]",content.getString("DAILY_PROD_WATER"));
            }
            //dataBookNameById=dataBookNameById.replace("[日产水]",content.getString("DAILY_PROD_WATER")==null?"":content.getString("DAILY_PROD_WATER"));
        }
    }
    return dataBookNameById;
}

}

猜你喜欢

转载自blog.csdn.net/weixin_41987908/article/details/86678955
今日推荐