package com.baiwang.qa.test.perf;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baiwang.baiwangcloud.client.BaiwangCouldAPIClient;
import com.baiwang.model.InvoiceOpenModel;
import com.baiwang.qa.http.HttpCommon;
import com.baiwang.qa.http.HttpMethodEnum;
import com.baiwang.qa.http.HttpResponse;
import com.baiwang.qa.performancepub.CommonParams;
import com.baiwang.qa.performancepub.ServiceCaller;
import java.io.StringReader;
import java.io.ObjectInputStream.GetField;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import java.util.UUID;
import java.util.concurrent.atomic.AtomicLong;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.xml.sax.InputSource;
public class OpenTemplate extends ServiceCaller
{
BaiwangCouldAPIClient client = new BaiwangCouldAPIClient();
String nsrsbh = “51234567890010BWGF”;
String jrdm = “123456”;
String address=“dp8”;
String url2 = “http://10.100.3.2/cms/template/queryCommonTemplate”;
Map<String,String> header=new HashMap<String,String>();
String body="{“businessType”:2,“operator”:"",“organizationId”:1000000000128,“pageNo”:null,“pageSize”:null,“qdBm”:null,“requestID”:“050003521104_06872898”,“requestType”:“1”,“status”:null,“templateBm”:null,“templateName”:"",“templateType”:"",“tenantId”:31800000015329,“type”:1}";
JSONObject params=JSON.parseObject(body);
HttpCommon common= new HttpCommon();
public static AtomicLong temp=new AtomicLong(System.currentTimeMillis());
public OpenTemplate(Properties pro)
{
super(pro);
this.header.put(“Content-Type”, “application/json”);
this.header.put(“Connection”, “Close”);
try
{
this.client.login(CommonParams.url, this.nsrsbh, this.jrdm);
}
catch (Exception e)
{
e.printStackTrace();
}
}
public Object serviceCall()
{
String result = “false”;
try
{
long lsh= temp.getAndIncrement();
String res = this.client.rpc(String.format(InvoiceOpenModel.model,nsrsbh,jrdm,lsh,address));
String fpdm=getNum(res,"fpdm");
String fphm=getNum(res,"fphm");
HttpResponse responst=common.doHttp(url2, HttpMethodEnum.POST,header,null, params, false);
String template=responst.getString();
JSONObject template1 = JSONObject.parseObject(template);
JSONObject templateContent =(JSONObject)template1.getJSONArray("data").get(0);
String templateContent1 =templateContent.getString("templateContent");
//System.out.println(templateContent);
String bs=this.client.rpc(String.format(InvoiceOpenModel.model_BS,nsrsbh,jrdm,lsh,fpdm,fphm));
if (res.contains("成功")&&result=="200"&&bs.contains("成功")) {
result = "true";
//System.out.println(res);
}else {
System.out.println(res);
System.out.println(result);
System.out.println(bs);
}
}
catch (Exception e)
{
e.printStackTrace();
}
return result;
}
public boolean isPass(Object result)
{
if (“true”.equals(result)) {
return true;
}
return false;
}
public String formatResultToString(Object result)
{
return null;
}
public void destory() {}
private String getNum(String xml,String lable)
{
String result="";
String reg="<"+lable+">(.*?)</"+lable+">";
Pattern pattern = Pattern.compile(reg);
Matcher m = pattern.matcher(xml);
while (m.find()) {
result=m.group(1);
}
return result;
}
}