|
@@ -1,5 +1,6 @@
|
|
|
package com.zskk.task;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.jfinal.plugin.activerecord.Db;
|
|
@@ -11,13 +12,14 @@ import com.zskk.model.Report;
|
|
|
import com.zskk.service.ServiceFactory;
|
|
|
import com.zskk.service.WeixinService;
|
|
|
|
|
|
+import java.io.BufferedReader;
|
|
|
+import java.io.IOException;
|
|
|
+import java.io.InputStreamReader;
|
|
|
+import java.io.PrintWriter;
|
|
|
import java.text.ParseException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
|
|
|
-import static com.zskk.service.DataService.getExamList;
|
|
|
-import static com.zskk.service.DataService.postWithParameters;
|
|
|
-
|
|
|
//import com.zskk.model.Studies;
|
|
|
|
|
|
public class DataTask implements ITask {
|
|
@@ -148,5 +150,97 @@ public class DataTask implements ITask {
|
|
|
}
|
|
|
return date;
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 获取未出报告的检查列表
|
|
|
+ * @param instutionId
|
|
|
+ * @param number
|
|
|
+ */
|
|
|
+ public JSONArray getExamList(String instutionId, Integer number) {
|
|
|
+ Map<String,String> map = new HashMap<String,String>();
|
|
|
+ map.put("institution_id", instutionId);
|
|
|
+ map.put("num", number.toString());
|
|
|
+ String content = postWithParameters(GET_EXAM_URL, map);
|
|
|
+ JSONObject jsonObject = JSON.parseObject(content);
|
|
|
+ if (!jsonObject.getString("msg").equals("success")) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ JSONArray jsonArray = JSON.parseArray(jsonObject.getString("data"));
|
|
|
+ return jsonArray;
|
|
|
+
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 发送POST请求
|
|
|
+ *
|
|
|
+ * @param url 目的地址
|
|
|
+ * @param parameters 请求参数,Map类型。
|
|
|
+ * @return 远程响应结果
|
|
|
+ */
|
|
|
+ public String postWithParameters(String url, Map<String, String> parameters) {
|
|
|
+ String result = "";// 返回的结果
|
|
|
+ BufferedReader in = null;// 读取响应输入流
|
|
|
+ PrintWriter out = null;
|
|
|
+ StringBuffer sb = new StringBuffer();// 处理请求参数
|
|
|
+ String params = "";// 编码之后的参数
|
|
|
+ try {
|
|
|
+ // 编码请求参数
|
|
|
+ if (parameters.size() == 1) {
|
|
|
+ for (String name : parameters.keySet()) {
|
|
|
+ sb.append(name).append("=").append(
|
|
|
+ java.net.URLEncoder.encode(parameters.get(name),
|
|
|
+ "UTF-8"));
|
|
|
+ }
|
|
|
+ params = sb.toString();
|
|
|
+ } else {
|
|
|
+ for (String name : parameters.keySet()) {
|
|
|
+ sb.append(name).append("=").append(
|
|
|
+ java.net.URLEncoder.encode(parameters.get(name),
|
|
|
+ "UTF-8")).append("&");
|
|
|
+ }
|
|
|
+ String temp_params = sb.toString();
|
|
|
+ params = temp_params.substring(0, temp_params.length() - 1);
|
|
|
+ }
|
|
|
+ // 创建URL对象
|
|
|
+ java.net.URL connURL = new java.net.URL(url);
|
|
|
+ // 打开URL连接
|
|
|
+ java.net.HttpURLConnection httpConn = (java.net.HttpURLConnection) connURL
|
|
|
+ .openConnection();
|
|
|
+ // 设置通用属性
|
|
|
+ httpConn.setRequestProperty("Accept", "*/*");
|
|
|
+ httpConn.setRequestProperty("Connection", "Keep-Alive");
|
|
|
+ httpConn.setRequestProperty("User-Agent",
|
|
|
+ "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)");
|
|
|
+ // 设置POST方式
|
|
|
+ httpConn.setDoInput(true);
|
|
|
+ httpConn.setDoOutput(true);
|
|
|
+ // 获取HttpURLConnection对象对应的输出流
|
|
|
+ out = new PrintWriter(httpConn.getOutputStream());
|
|
|
+ // 发送请求参数
|
|
|
+ out.write(params);
|
|
|
+ // flush输出流的缓冲
|
|
|
+ out.flush();
|
|
|
+ // 定义BufferedReader输入流来读取URL的响应,设置编码方式
|
|
|
+ in = new BufferedReader(new InputStreamReader(httpConn
|
|
|
+ .getInputStream(), "UTF-8"));
|
|
|
+ String line;
|
|
|
+ // 读取返回的内容
|
|
|
+ while ((line = in.readLine()) != null) {
|
|
|
+ result += line;
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ } finally {
|
|
|
+ try {
|
|
|
+ if (out != null) {
|
|
|
+ out.close();
|
|
|
+ }
|
|
|
+ if (in != null) {
|
|
|
+ in.close();
|
|
|
+ }
|
|
|
+ } catch (IOException ex) {
|
|
|
+ ex.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return result;
|
|
|
+ }
|
|
|
|
|
|
}
|