package com.basic.security.manager.es; import android.util.Log; import com.basic.security.manager.BaseManager; import com.basic.security.manager.DeviceManager; import com.basic.security.model.ModelAdapter; import com.basic.security.utils.Constants; import com.basic.security.utils.ExceptionUtil; import java.io.IOException; import java.util.Properties; import okhttp3.Call; import okhttp3.Callback; import okhttp3.MediaType; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; import okhttp3.Response; import static com.basic.security.utils.DateUtil.formatTime; public class EsBaseManager { private static String HOSTNAME; private static String HTTP_PORT; private static String HTTP_URL; private static String PERSON_URL; public EsBaseManager() { Properties properties = new Properties(); try { properties.load(EsBaseManager.class.getResourceAsStream("/assets/es_config.properties")); } catch (Exception e) { ExceptionUtil.printException(e); } HOSTNAME = properties.getProperty("HOSTNAME"); HTTP_PORT = properties.getProperty("HTTP_PORT"); HTTP_URL = properties.getProperty("HTTP_URL"); PERSON_URL = properties.getProperty("PERSON_URL"); } public void queryAndSend(String recordTime) { ModelAdapter modelAdapter = new ModelAdapter(); modelAdapter = BaseManager.findByTime("visit", recordTime); ModelAdapter deviceAdapter = DeviceManager.getDevice(); if (modelAdapter.model.size() != 0) { String jsonStr = "{\n" + "\"videoReqNum\" : \"" + modelAdapter.getString("device_id") + "\",\n" + "\"Gender\" : \"1\",\n" + "\"content\" : \"\",\n" + "\"likeDate\" : \"" + formatTime(Long.parseLong(String.valueOf(Constants.compareFeatureTime)), "yyyy-MM-dd HH:mm:ss") + "\",\n" + "\"picAddress\" : \"" + deviceAdapter.getString("address") + "\",\n" + "\"Age\" : \"\",\n" + "\"picDate\" : \"" + formatTime(Long.parseLong(modelAdapter.getString("visit_time").toString()), "yyyy-MM-dd HH:mm:ss") + "\",\n" + "\"likePer\" : \"" + Constants.score + "\",\n" + "\"indeviceid\" : \"" + modelAdapter.getString("device_id") + "\",\n" + "\"personId\" : \"" + modelAdapter.getString("person_id") + "\",\n" + "\"indevicename\" : \"" + modelAdapter.getString("device_name") + "\",\n" + "\"personIsHub\" : \"\",\n" + "\"videoIp\" : \"" + modelAdapter.getString("device_id") + "\"\n" + "}"; useOkHttp(modelAdapter.getString("id").toString(), jsonStr); } } public void useOkHttp(String id, String jsonStr) { try { OkHttpClient okHttpClient = new OkHttpClient(); MediaType JSON = MediaType.parse("application/json"); RequestBody body = RequestBody.create(JSON, jsonStr); Request request = new Request.Builder() .url("http://" + HOSTNAME + ":" + HTTP_PORT + "" + HTTP_URL + "" + id + "") .put(body) .build(); okHttpClient.newCall(request).enqueue(new Callback() { public void onFailure(Call call, IOException e) { Log.d("Http:call", "" + call.request() + ""); } public void onResponse(Call call, Response response) { Log.d("Http:call", "" + response.code() + ""); } }); } catch (Exception e) { ExceptionUtil.printException(e); } } }