Commit 8f83dd17babfc74a53bda27c6a50ae1df6c09486
1 parent
825e8f9e
report open door success,update ft root api
Showing
5 changed files
with
87 additions
and
2 deletions
| @@ -235,6 +235,13 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | @@ -235,6 +235,13 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | ||
| 235 | presenter.load(this); | 235 | presenter.load(this); |
| 236 | Intent intent = new Intent(this, SocketService.class); | 236 | Intent intent = new Intent(this, SocketService.class); |
| 237 | startService(intent); | 237 | startService(intent); |
| 238 | + new Handler().postDelayed(new Runnable() { | ||
| 239 | + @Override | ||
| 240 | + public void run() { | ||
| 241 | + Log.d("room-info", "test open door report"); | ||
| 242 | + openDoor(); | ||
| 243 | + } | ||
| 244 | + }, 20 * 1000); | ||
| 238 | } | 245 | } |
| 239 | 246 | ||
| 240 | @Override | 247 | @Override |
| @@ -451,8 +458,11 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | @@ -451,8 +458,11 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | ||
| 451 | context.startActivity(intentPlayList1); | 458 | context.startActivity(intentPlayList1); |
| 452 | } | 459 | } |
| 453 | 460 | ||
| 461 | + private RoomStatusInfo roomStatusInfo; | ||
| 462 | + | ||
| 454 | @Override | 463 | @Override |
| 455 | public void updateOrderInfo(RoomStatusInfo info) { | 464 | public void updateOrderInfo(RoomStatusInfo info) { |
| 465 | + roomStatusInfo = info; | ||
| 456 | RoomStatusInfo.DataEntity data = info.getData(); | 466 | RoomStatusInfo.DataEntity data = info.getData(); |
| 457 | int durationMinutes = data.getEnd_time() - data.getBegin_time(); | 467 | int durationMinutes = data.getEnd_time() - data.getBegin_time(); |
| 458 | Log.d("CountService", "durationMinutes:" + durationMinutes); | 468 | Log.d("CountService", "durationMinutes:" + durationMinutes); |
| @@ -476,12 +486,39 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | @@ -476,12 +486,39 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | ||
| 476 | 486 | ||
| 477 | } | 487 | } |
| 478 | 488 | ||
| 489 | + @Override | ||
| 490 | + public void reportResult(boolean b) { | ||
| 491 | + reportSuccess = b; | ||
| 492 | + } | ||
| 493 | + | ||
| 494 | + private boolean reportSuccess; | ||
| 495 | + private int reportCount = 0; | ||
| 496 | + | ||
| 497 | + private Runnable reportRunnable = new Runnable() { | ||
| 498 | + @Override | ||
| 499 | + public void run() { | ||
| 500 | + if (reportSuccess || reportCount++ > 5) { | ||
| 501 | + //success or report 5 times reset status and count | ||
| 502 | + Log.d("room-info", "reportResult:" + reportSuccess + ",reportCount:" + reportCount); | ||
| 503 | + reportCount = 0; | ||
| 504 | + reportSuccess = false; | ||
| 505 | + return; | ||
| 506 | + } | ||
| 507 | + Log.d("room-info", "report the open door status"); | ||
| 508 | + if (roomStatusInfo == null || roomStatusInfo.getData() == null) { | ||
| 509 | + presenter.reportOpenDoorStatus("123456"); | ||
| 510 | + } else { | ||
| 511 | + presenter.reportOpenDoorStatus(roomStatusInfo.getData().getOrder_sn()); | ||
| 512 | + } | ||
| 513 | + handler.postDelayed(this, 10 * 1000); | ||
| 514 | + } | ||
| 515 | + }; | ||
| 516 | + | ||
| 479 | private RoomQrCodeInfo info; | 517 | private RoomQrCodeInfo info; |
| 480 | 518 | ||
| 481 | @Override | 519 | @Override |
| 482 | public void prepareRoomQrCodeInfo(RoomQrCodeInfo info) { | 520 | public void prepareRoomQrCodeInfo(RoomQrCodeInfo info) { |
| 483 | this.info = info; | 521 | this.info = info; |
| 484 | - | ||
| 485 | } | 522 | } |
| 486 | 523 | ||
| 487 | @Override | 524 | @Override |
| @@ -967,6 +1004,8 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | @@ -967,6 +1004,8 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | ||
| 967 | } | 1004 | } |
| 968 | 1005 | ||
| 969 | private void openDoor() { | 1006 | private void openDoor() { |
| 1007 | + handler.post(reportRunnable); | ||
| 1008 | + | ||
| 970 | bleBroadcastReceiver.setResponseObj(new GREENCITYBLEProtocolFactory.GREENCITYBleDataWritten() { | 1009 | bleBroadcastReceiver.setResponseObj(new GREENCITYBLEProtocolFactory.GREENCITYBleDataWritten() { |
| 971 | 1010 | ||
| 972 | @Override | 1011 | @Override |
| @@ -981,10 +1020,13 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | @@ -981,10 +1020,13 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen | ||
| 981 | intent.setAction(GREENBluetoothLeService.ACTION_OPEN_SUCCESS); | 1020 | intent.setAction(GREENBluetoothLeService.ACTION_OPEN_SUCCESS); |
| 982 | intent.putExtra("openrecord", bleOpenRecord); | 1021 | intent.putExtra("openrecord", bleOpenRecord); |
| 983 | sendBroadcast(intent); | 1022 | sendBroadcast(intent); |
| 1023 | + Log.d("room-info", "open success"); | ||
| 1024 | + handler.post(reportRunnable); | ||
| 984 | } | 1025 | } |
| 985 | 1026 | ||
| 986 | @Override | 1027 | @Override |
| 987 | public void writeFailure(String error) { | 1028 | public void writeFailure(String error) { |
| 1029 | + Log.d("room-info", "open failure"); | ||
| 988 | bleBroadcastReceiver.setResponseObj(null); | 1030 | bleBroadcastReceiver.setResponseObj(null); |
| 989 | Toast.makeText(MainActivity.this, "开门失败," + error, Toast.LENGTH_SHORT).show(); | 1031 | Toast.makeText(MainActivity.this, "开门失败," + error, Toast.LENGTH_SHORT).show(); |
| 990 | } | 1032 | } |
| @@ -9,4 +9,6 @@ public interface IRoomInfoModel { | @@ -9,4 +9,6 @@ public interface IRoomInfoModel { | ||
| 9 | void getRoomStatus(String roomSn, RoomInfoModelImpl.GetRoomStatusListener listener); | 9 | void getRoomStatus(String roomSn, RoomInfoModelImpl.GetRoomStatusListener listener); |
| 10 | 10 | ||
| 11 | void getRoomQrCode(String orderSn, RoomInfoModelImpl.GetRoomQrCodeListener listener); | 11 | void getRoomQrCode(String orderSn, RoomInfoModelImpl.GetRoomQrCodeListener listener); |
| 12 | + | ||
| 13 | + void reportOpenDoorStatus(String orderSn, RoomInfoModelImpl.OpenDoorStatusListener listener); | ||
| 12 | } | 14 | } |
| @@ -17,10 +17,11 @@ import com.xgimi.gimicinema.application.FangTangApplication; | @@ -17,10 +17,11 @@ import com.xgimi.gimicinema.application.FangTangApplication; | ||
| 17 | * Created by wugian on 2017/4/7 | 17 | * Created by wugian on 2017/4/7 |
| 18 | */ | 18 | */ |
| 19 | public class RoomInfoModelImpl implements IRoomInfoModel { | 19 | public class RoomInfoModelImpl implements IRoomInfoModel { |
| 20 | - private static final String ROOT_URL = "https://ft.qnbar.cn/develop/"; | 20 | + private static final String ROOT_URL = "https://ft.qnbar.cn/develop/api/"; |
| 21 | private static final String ROOM_INFO_BY_IMEI_URL = ROOT_URL + "tcp/getRoomInfoByimei?imei="; | 21 | private static final String ROOM_INFO_BY_IMEI_URL = ROOT_URL + "tcp/getRoomInfoByimei?imei="; |
| 22 | private static final String ROOM_STATUS_BY_ROOM_SN_URL = ROOT_URL + "tcp/getRoomStatus?room_sn="; | 22 | private static final String ROOM_STATUS_BY_ROOM_SN_URL = ROOT_URL + "tcp/getRoomStatus?room_sn="; |
| 23 | private static final String ROOM_QRCODE_BY_ORDER_SN = ROOT_URL + "tcp/getEndQRCode?order_sn="; | 23 | private static final String ROOM_QRCODE_BY_ORDER_SN = ROOT_URL + "tcp/getEndQRCode?order_sn="; |
| 24 | + private static final String ROOM_REPORT_ROOM_STATUS = ROOT_URL + "tcp/tcp/reportRoomStatus?order_sn="; | ||
| 24 | 25 | ||
| 25 | @Override | 26 | @Override |
| 26 | public void getRoomInfo(String imei, boolean needUpdate, final GetRoomInfoListener listener) { | 27 | public void getRoomInfo(String imei, boolean needUpdate, final GetRoomInfoListener listener) { |
| @@ -127,6 +128,22 @@ public class RoomInfoModelImpl implements IRoomInfoModel { | @@ -127,6 +128,22 @@ public class RoomInfoModelImpl implements IRoomInfoModel { | ||
| 127 | } | 128 | } |
| 128 | 129 | ||
| 129 | 130 | ||
| 131 | + @Override | ||
| 132 | + public void reportOpenDoorStatus(String orderSn, final OpenDoorStatusListener listener) { | ||
| 133 | + OkHttpClientManager.getAsyn(ROOM_REPORT_ROOM_STATUS + orderSn, | ||
| 134 | + new OkHttpClientManager.ResultCallback<String>() { | ||
| 135 | + @Override | ||
| 136 | + public void onError(Request request, Exception e) { | ||
| 137 | + listener.onOpenDoorFailure(); | ||
| 138 | + } | ||
| 139 | + | ||
| 140 | + @Override | ||
| 141 | + public void onResponse(String response) { | ||
| 142 | + listener.onOpenDoorSuccess(); | ||
| 143 | + } | ||
| 144 | + }); | ||
| 145 | + } | ||
| 146 | + | ||
| 130 | public interface GetRoomInfoListener { | 147 | public interface GetRoomInfoListener { |
| 131 | void onGetRoomInfoSuccess(RoomInfo info); | 148 | void onGetRoomInfoSuccess(RoomInfo info); |
| 132 | 149 | ||
| @@ -146,4 +163,10 @@ public class RoomInfoModelImpl implements IRoomInfoModel { | @@ -146,4 +163,10 @@ public class RoomInfoModelImpl implements IRoomInfoModel { | ||
| 146 | 163 | ||
| 147 | void onGetRoomQrCodeFailure(WrongMsg wrongMsg); | 164 | void onGetRoomQrCodeFailure(WrongMsg wrongMsg); |
| 148 | } | 165 | } |
| 166 | + | ||
| 167 | + public interface OpenDoorStatusListener { | ||
| 168 | + void onOpenDoorSuccess(); | ||
| 169 | + | ||
| 170 | + void onOpenDoorFailure(); | ||
| 171 | + } | ||
| 149 | } | 172 | } |
| @@ -64,4 +64,6 @@ public interface IMainView { | @@ -64,4 +64,6 @@ public interface IMainView { | ||
| 64 | void notifyGetRoomInfo(RoomInfo info); | 64 | void notifyGetRoomInfo(RoomInfo info); |
| 65 | 65 | ||
| 66 | void notifyUpdateRoomInfo(RoomInfo info); | 66 | void notifyUpdateRoomInfo(RoomInfo info); |
| 67 | + | ||
| 68 | + void reportResult(boolean b); | ||
| 67 | } | 69 | } |
| @@ -231,6 +231,22 @@ public class MainPresenter extends BasePresenter | @@ -231,6 +231,22 @@ public class MainPresenter extends BasePresenter | ||
| 231 | }); | 231 | }); |
| 232 | } | 232 | } |
| 233 | 233 | ||
| 234 | + public void reportOpenDoorStatus(String orderSn) { | ||
| 235 | + roomInfoModel.reportOpenDoorStatus(orderSn, new RoomInfoModelImpl.OpenDoorStatusListener() { | ||
| 236 | + @Override | ||
| 237 | + public void onOpenDoorSuccess() { | ||
| 238 | + mainView.reportResult(true); | ||
| 239 | + Log.d("room-info", "report success"); | ||
| 240 | + } | ||
| 241 | + | ||
| 242 | + @Override | ||
| 243 | + public void onOpenDoorFailure() { | ||
| 244 | + mainView.reportResult(false); | ||
| 245 | + Log.d("room-info", "report failure"); | ||
| 246 | + } | ||
| 247 | + }); | ||
| 248 | + } | ||
| 249 | + | ||
| 234 | public void getOrderInfo() { | 250 | public void getOrderInfo() { |
| 235 | String imei = SystemUtils.getPid(context, BuildConfig.BUILD_TYPE); | 251 | String imei = SystemUtils.getPid(context, BuildConfig.BUILD_TYPE); |
| 236 | roomInfoModel.getRoomInfo(imei, false, new RoomInfoModelImpl.GetRoomInfoListener() { | 252 | roomInfoModel.getRoomInfo(imei, false, new RoomInfoModelImpl.GetRoomInfoListener() { |
Please
register
or
login
to post a comment