From 21e08324c323d0c5d1e7cedc36323c554857a239 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期二, 01 八月 2017 17:55:09 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java | 202 +++++++++++++++++++++++++++++++++++--------------- 1 files changed, 142 insertions(+), 60 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java index f74447c..297acfa 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DeviceMng.java @@ -7,20 +7,36 @@ import cn.com.basic.face.base.BaseApplication; import cn.com.basic.face.base.MainActivity; import cn.com.basic.face.discern.common.CommonVariables; +import cn.com.basic.face.discern.common.SqliteSqlBean; +import cn.com.basic.face.discern.query.item.CheckInQueryItem; +import cn.com.basic.face.discern.query.item.DeviceQueryItem; +import cn.com.basic.face.fragment.CheckInFragment; +import cn.com.basic.face.fragment.DeviceFragment; +import cn.com.basic.face.fragment.VisitorRegisterFragment; +import cn.com.basic.face.service.sqlite.DeviceDao; +import cn.com.basic.face.service.sync.DeleteLastMonthRecordAndPictureThread; +import cn.com.basic.face.service.sync.SyncDownThread; import cn.com.basic.face.util.AppApi; import org.xutils.http.RequestParams; import org.xutils.x; +import java.io.File; import java.util.List; import java.util.Map; import cn.com.basic.face.discern.common.BaseCommonCallBack; import cn.com.basic.face.discern.entity.Device; import cn.com.basic.face.util.SharedPreferencesUtils; +import cn.com.basic.face.service.sync.SyncUpThread; +import cn.com.basic.face.util.SqliteSqlUtil; public class DeviceMng { public static DeviceMng instance = new DeviceMng(); + + private SyncUpThread syncUpThread = null; + private SyncDownThread syncDownThread = null; + private DeleteLastMonthRecordAndPictureThread deleteLastMonthRecordAndPictureThread = null; public static String authorationId = "101"; @@ -34,6 +50,7 @@ public void run() { try { while (true) { + //AttendanceDao.getInstance().reloadLeftList(null, 0, false); if (!BaseApplication.getInstance().deviceAvailable) { load (); } else { @@ -60,21 +77,101 @@ // }); // return; // } - RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.Query.DEVICE_QUERY); - params.addBodyParameter(Device.FieldNames.sn, authorationId); - params.addBodyParameter(Device.FieldNames.type, CommonVariables.DeviceType.ANDROID_DEVICE); - x.http().post(params, new BaseCommonCallBack() { - public void success() { - List<Device> places = resultBean.getListBeanOfType(Device.class); - if (places.size() > 0) { - BaseApplication.getInstance().setDevice(places.get(0)); + if (MainActivity.getInstance().getInternetAccessible() == CommonVariables.InternetAccess.INTERNET_NOT_INITIALIZE) { + return; + } + if (BaseApplication.getInstance().networkAvailable()) { + RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.Query.DEVICE_QUERY); + + params.addBodyParameter(Device.FieldNames.sn, authorationId); + params.addBodyParameter(Device.FieldNames.type, CommonVariables.DeviceType.ANDROID_DEVICE); + params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId()); + x.http().post(params, new BaseCommonCallBack() { + public void success() { + loadAfterReturn(getList(Device.class)); + } + }); + } else { + loadAfterReturn(DeviceDao.getInstance().loadMainDevice(CommonVariables.DeviceType.ANDROID_DEVICE, authorationId)); + } + } catch (Throwable e) { + e.printStackTrace(); + Toast.makeText(BaseApplication.getInstance(), "鏁版嵁搴撲腑鎵句笉鍒拌璁惧", Toast.LENGTH_SHORT).show(); + } + } + + public void loadAfterReturn(List<Device> devices) { +// List<Device> devices = getList(Device.class); + if (devices.size() > 0) { + final Device device = devices.get(0); + BaseApplication.getInstance().setAndroidDevice(device); + MainActivity.getInstance().runOnUiThread(new Runnable() { + @Override + public void run() { + DeviceFragment.getInstance().setAndroidDevice(device); + + if (BaseApplication.getInstance().networkAvailable()) { + + RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.Query.DEVICE_QUERY); + params.addBodyParameter(Device.FieldNames.belongId, device.getBelongId()); + params.addBodyParameter(Device.FieldNames.type, CommonVariables.DeviceType.CAMERA1); + params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId()); + x.http().post(params, new BaseCommonCallBack() { + public void success() { + List<DeviceQueryItem> devices = resultBean.getList(DeviceQueryItem.class); + if (devices.size() > 0) { + final DeviceQueryItem camera1 = devices.get(0); + BaseApplication.getInstance().setCamera1(camera1); + DeviceFragment.getInstance().setCamera1(camera1); + } + } + }); + + params = new RequestParams(AppApi.BASE_URL + AppApi.Query.DEVICE_QUERY); + params.addBodyParameter(Device.FieldNames.belongId, device.getBelongId()); + params.addBodyParameter(Device.FieldNames.type, CommonVariables.DeviceType.CAMERA2); + params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId()); + x.http().post(params, new BaseCommonCallBack() { + public void success() { + List<DeviceQueryItem> devices = resultBean.getList(DeviceQueryItem.class); + if (devices.size() > 0) { + final DeviceQueryItem camera2 = devices.get(0); + BaseApplication.getInstance().setCamera2(camera2); + DeviceFragment.getInstance().setCamera2(camera2); + } + } + }); } else { - Toast.makeText(BaseApplication.getInstance(), "鏁版嵁搴撲腑鎵句笉鍒拌璁惧", Toast.LENGTH_SHORT).show(); + List<DeviceQueryItem> camera1List = DeviceDao.getInstance().loadCamera(CommonVariables.DeviceType.CAMERA1, device.getBelongId()); + if (camera1List != null && camera1List.size() > 0) { + final DeviceQueryItem camera1 = camera1List.get(0); + BaseApplication.getInstance().setCamera1(camera1); + DeviceFragment.getInstance().setCamera1(camera1); + } + List<DeviceQueryItem> camera2List = DeviceDao.getInstance().loadCamera(CommonVariables.DeviceType.CAMERA2, device.getBelongId()); + if (camera2List != null && camera2List.size() > 0) { + final DeviceQueryItem camera2 = camera2List.get(0); + BaseApplication.getInstance().setCamera2(camera2); + DeviceFragment.getInstance().setCamera2(camera2); + } } } }); - } catch (Throwable e) { - e.printStackTrace(); + synchronized (this) { + if (syncUpThread == null) { + syncUpThread = new SyncUpThread(); + syncUpThread.start(); + } + if (syncDownThread == null) { + syncDownThread = new SyncDownThread(); + syncDownThread.start(); + } + if (deleteLastMonthRecordAndPictureThread == null) { + deleteLastMonthRecordAndPictureThread = new DeleteLastMonthRecordAndPictureThread(); + deleteLastMonthRecordAndPictureThread.start(); + } + } + } else { Toast.makeText(BaseApplication.getInstance(), "鏁版嵁搴撲腑鎵句笉鍒拌璁惧", Toast.LENGTH_SHORT).show(); } } @@ -92,22 +189,22 @@ public void saveLanSetting(Map<String, String> fields) { - RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.Query.DEVICE_QUERY); - params.addBodyParameter(Device.FieldNames.sn, authorationId); - params.addBodyParameter(Device.FieldNames.type, CommonVariables.DeviceType.ANDROID_DEVICE); - x.http().post(params, new BaseCommonCallBack() { - public void success() { - List<Device> places = resultBean.getListBeanOfType(Device.class); - if (places.size() > 0) { - BaseApplication.getInstance().setDevice(places.get(0)); - } else { - Toast.makeText(BaseApplication.getInstance(), "鏁版嵁搴撲腑鎵句笉鍒拌璁惧", Toast.LENGTH_SHORT).show(); - } - } - }); - - - SharedPreferencesUtils.save(CommonVariables.DeviceSharedPreferences.LAN, fields); +// RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.Query.DEVICE_QUERY); +// params.addBodyParameter(Device.FieldNames.sn, authorationId); +// params.addBodyParameter(Device.FieldNames.type, CommonVariables.DeviceType.ANDROID_DEVICE); +// x.http().post(params, new BaseCommonCallBack() { +// public void success() { +// List<Device> places = resultBean.getList(Device.class); +// if (places.size() > 0) { +// BaseApplication.getInstance().setAndroidDevice(places.get(0)); +// } else { +// Toast.makeText(BaseApplication.getInstance(), "鏁版嵁搴撲腑鎵句笉鍒拌璁惧", Toast.LENGTH_SHORT).show(); +// } +// } +// }); +// +// +// SharedPreferencesUtils.save(CommonVariables.DeviceSharedPreferences.LAN, fields); } public void saveSchoolSetting(Map<String, String> fields) { @@ -131,50 +228,35 @@ return sharedPreferences.getString(key, ""); } - public String getCamera1Address() { + public String getCamera2Address() { String username = "admin"; String password = "admin12345"; String ip = "192.168.1.70"; String port = "554"; - -// SharedPreferences camera1 = DeviceMng.getInstance().loadSharedPreferences(CommonVariables.DeviceSharedPreferences.CAMERA1); -// if (!"".equals(camera1.getString("fragment_device_right_camera1_username", ""))) { -// username = camera1.getString("fragment_device_right_camera1_username", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_password", ""))) { -// password = camera1.getString("fragment_device_right_camera1_password", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_ip", ""))) { -// ip = camera1.getString("fragment_device_right_camera1_ip", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_port", ""))) { -// port = camera1.getString("fragment_device_right_camera1_port", ""); -// } - - return "rtsp://"+username+":"+password+"@"+ip+":"+port+"/h264/ch1/sub/av_stream"; + return "rtsp://admin:admin12345@192.168.1.202:554/h264/ch1/main/av_stream"; } - public String getCamera2Address() { + public String getCamera1Address() { String username = "admin"; String password = "a1234567"; String ip = "192.168.1.68"; String port = "554"; + return "rtsp://admin:a1234567@192.168.1.201:554/h264/ch1/main/av_stream"; + } -// SharedPreferences camera1 = DeviceMng.getInstance().loadSharedPreferences(CommonVariables.DeviceSharedPreferences.CAMERA2); -// if (!"".equals(camera1.getString("fragment_device_right_camera1_username", ""))) { -// username = camera1.getString("fragment_device_right_camera1_username", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_password", ""))) { -// password = camera1.getString("fragment_device_right_camera1_password", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_ip", ""))) { -// ip = camera1.getString("fragment_device_right_camera1_ip", ""); -// } -// if (!"".equals(camera1.getString("fragment_device_right_camera1_port", ""))) { -// port = camera1.getString("fragment_device_right_camera1_port", ""); -// } - - return "rtsp://"+username+":"+password+"@"+ip+":"+port+"/h264/ch1/sub/av_stream"; + public void updateDevice(RequestParams params, Device camera) { + if (BaseApplication.getInstance().networkAvailable()) { + params.setUri(AppApi.BASE_URL +AppApi.DEVICE_EDIT); + x.http().post(params, new BaseCommonCallBack() { + @Override + public void success() { + SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class)); + Toast.makeText(BaseApplication.getInstance(),"淇敼鎴愬姛", Toast.LENGTH_SHORT).show(); + } + }); + } else { + DeviceDao.getInstance().updateDevice(camera); + } } } -- Gitblit v1.8.0