/**
*
*/
package com.app.record;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import org.apache.commons.io.IOUtils;
/**
* @author Administrator
* @date 2016-11-05 02:39:04
*
*/
public class sendMagToRecWhenCreate {
public static String doHttpPost(String touserId, String b) {
System.out.println("接受人ID" + touserId);
JSONArray resultArray;
JSONObject resultObj;
String fromuserId = null;
JSONObject record = null;
try {
resultArray = new JSONArray(b);
resultObj = resultArray.optJSONObject(0);
fromuserId = resultObj.getString("fromuserId");//获取数据项
record = resultObj.getJSONObject("record");//获取数据对象
} catch (JSONException e2) {
// TODO 自动生成的 catch 块
e2.printStackTrace();
}
System.out.println("发送人ID" + fromuserId);
System.out.println("日志数组:" + record);
String URL = "http://......";
JSONObject obj = new JSONObject();
JSONObject msg = new JSONObject();
try {
msg.put("chatType", "EXTERNAL");
msg.put("fromUserId", 103);
msg.put("fromType", "APP");
msg.put("toUserId", touserId);
msg.put("toType", "PERSONAL");
msg.put("gorupId", "0");
if (record.getString("recordType").equals("daily")) {
msg.put("summaryInfo",
"{"
+ "\"title\":\"日志:"
+ record.getString("userName")
+ "的日报\","
+ "\"content\":\"今日完成工作:"
+ record.getString("finishWork")
+ " 未完成工作:"
+ record.getString("unfinishWork")
+ " 需协调工作:"
+ record.getString("coordinateWork")
+ " 备注:"
+ record.getString("remark")
+ "\","
+ "\"detail\":{\"type\":\"BROADCAST\",\"url\":\"record/dateDetail.html\",\"params\":{\"recordId\":45}},"
+ "\"buttons\":{\"action\":{\"type\":\"WEBSERVICE\",\"url\":\"record/dateDetail.html\",\"params\":{\"recordId\":45} } } }");
}
msg.put("moduleType", "APP");
obj.put("msg", msg);
System.out.println(obj.toString());
} catch (JSONException e1) {
// TODO 自动生成的 catch 块
e1.printStackTrace();
}
InputStream instr = null;
ByteArrayOutputStream out = null;
try {
URL url = new URL(URL);
HttpURLConnection urlCon = (HttpURLConnection) url.openConnection();
urlCon.setDoOutput(true);
urlCon.setDoInput(true);
urlCon.setUseCaches(false);
urlCon.setRequestMethod("POST");
urlCon.setReadTimeout(5000);// 连接上了读取超时的时间
urlCon.setConnectTimeout(5000);// 设置连接超时时间5s
urlCon.setRequestProperty("content-Type", "application/json");
urlCon.setRequestProperty("charset", "utf-8");
byte[] data = (obj.toString()).getBytes();
urlCon.setRequestProperty("Content-length",
String.valueOf(data.length));
OutputStream printout = urlCon.getOutputStream();
printout.write((obj.toString()).getBytes("utf-8"));
printout.flush();
printout.close();
System.out.println(urlCon.getResponseCode());
instr = urlCon.getInputStream();
byte[] bis = IOUtils.toByteArray(instr);
String ResponseString = new String(bis, "UTF-8");
if ((ResponseString == null) || ("".equals(ResponseString.trim()))) {
System.out.println("返回空");
}
System.out.println("返回数据为:" + ResponseString);
return ResponseString;
} catch (Exception e) {
e.printStackTrace();
return "0";
} finally {
try {
out.close();
instr.close();
} catch (Exception ex) {
return "0";
}
}
}
}