tcp_util.cpp 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. /*
  2. * tcp_util.cpp
  3. *
  4. * Created on: 2024年7月18日
  5. * Author: m
  6. */
  7. #include "tcp_model.h"
  8. #include "tcp_util.h"
  9. #include "json/json.h"
  10. #include <utils/TimeHelper.h>
  11. #include "base/strings.hpp"
  12. #include "service/BusinessConfig.h"
  13. void sendAuthLogin(std::string clerkNfc) {
  14. Json::Value json;
  15. json["passNo"] = clerkNfc;
  16. json["operationData"] = "";
  17. // 发送tcp, tcp_type = AUTH, tcp_action = LOGIN
  18. TcpModel tcpModel;
  19. tcpModel.tid = base::format("t%d",TimeHelper::getCurrentTime());
  20. tcpModel.type = TcpType::AUTH;
  21. tcpModel.action = AuthAction::LOGIN;
  22. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  23. tcpModel.json = json;
  24. sendTcpModel(tcpModel);
  25. }
  26. void sendAuthLogout(std::string authItId) {
  27. TcpModel tcpModel;
  28. tcpModel.tid = base::format("t%d",TimeHelper::getCurrentTime());
  29. tcpModel.type = TcpType::AUTH;
  30. tcpModel.action = AuthAction::LOGOUT;
  31. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  32. tcpModel.to_id = 0;
  33. tcpModel.data = authItId;
  34. sendTcpModel(tcpModel);
  35. }
  36. void sendSignIn(std::string clerkNfc) {
  37. Json::Value json;
  38. json["passNo"] = clerkNfc;
  39. json["operationData"] = "";
  40. // 发送tcp, tcp_type = AUTH, tcp_action = LOGIN
  41. TcpModel tcpModel;
  42. tcpModel.tid = base::format("t%d",TimeHelper::getCurrentTime());
  43. tcpModel.type = TcpType::SIGN_IN;
  44. tcpModel.action = SignInAction::SIGN_IN;
  45. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  46. tcpModel.json = json;
  47. sendTcpModel(tcpModel);
  48. }
  49. void sendPostionStart(std::string clerkNfc) {
  50. Json::Value json;
  51. json["passNo"] = clerkNfc;
  52. json["operationData"] = "";
  53. TcpModel tcpModel;
  54. tcpModel.tid = base::format("t%d", TimeHelper::getCurrentTime());
  55. tcpModel.type = TcpType::POSITION;
  56. tcpModel.action = PositionAction::POSITION_START;
  57. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  58. tcpModel.json = json;
  59. sendTcpModel(tcpModel);
  60. }
  61. void sendRoomCheckStart(std::string clerkNfc) {
  62. Json::Value json;
  63. json["passNo"] = clerkNfc;
  64. json["operationData"] = "";
  65. TcpModel tcpModel;
  66. tcpModel.tid = base::format("t%d", TimeHelper::getCurrentTime());
  67. tcpModel.type = TcpType::ROOMCHECK;
  68. tcpModel.action = RoomCheckAction::START;
  69. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  70. tcpModel.json = json;
  71. sendTcpModel(tcpModel);
  72. }
  73. void sendNursing() {
  74. // 门灯控制
  75. std::string color = StoragePreferences::getString(STORE_NURSING_COLOR_RGB, "010");
  76. if (color != "" && color.size() == 3) {
  77. color = color + "F";
  78. } else {
  79. color = "010F";
  80. }
  81. lightControl("DOORLED", color);
  82. // 发送tcp, tcp_type = SIDE, tcp_action = NURSING
  83. TcpModel tcpModel;
  84. tcpModel.tid = base::format("t%d",TimeHelper::getCurrentTime());
  85. tcpModel.type = TcpType::SIDE;
  86. tcpModel.action = SideAction::NURSING;
  87. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  88. sendTcpModel(tcpModel);
  89. }
  90. void sendNursingEnd() {
  91. // 发送tcp, tcp_type = SIDE, tcp_action = NURSING_END
  92. TcpModel tcpModel;
  93. tcpModel.tid = base::format("t%d", TimeHelper::getCurrentTime());
  94. tcpModel.type = TcpType::SIDE;
  95. tcpModel.action = SideAction::NURSING_END;
  96. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  97. tcpModel.data = StoragePreferences::getString(STORE_NURSING_INTERACTION_ID, ""); // 获取nursingTcpModel里,id字段的数据
  98. sendTcpModel(tcpModel);
  99. }
  100. void sendReinforceCall() {
  101. TcpModel tcpModel;
  102. tcpModel.type = TcpType::REINFORCE;
  103. tcpModel.action = ReinforceAction::CALL;
  104. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  105. tcpModel.to_id = 0;
  106. sendTcpModel(tcpModel);
  107. }
  108. void sendCallByDoor() {
  109. // 发送tcp, tcp_type = VOICE, tcp_action = CANCEL_BY_DOOR
  110. TcpModel tcpModel;
  111. tcpModel.tid = base::format("t%d",TimeHelper::getCurrentTime());
  112. tcpModel.type = TcpType::VOICE;
  113. tcpModel.action = VoiceAction::CANCEL_BY_DOOR;
  114. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  115. sendTcpModel(tcpModel);
  116. }
  117. void sendBlueCodeCall() {
  118. TcpModel tcpModel;
  119. tcpModel.tid = base::format("t%d",TimeHelper::getCurrentTime());
  120. tcpModel.type = TcpType::BLUE_CODE;
  121. tcpModel.action = BlueCodeAction::CALL;
  122. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  123. sendTcpModel(tcpModel);
  124. }
  125. void sendBlueCodeResponse(std::string tid, std::string blueCodeId) {
  126. TcpModel tcpModel;
  127. tcpModel.tid = tid;
  128. tcpModel.type = TcpType::BLUE_CODE;
  129. tcpModel.action = BlueCodeAction::RESPONSE;
  130. tcpModel.from_id = StoragePreferences::getInt(STORE_DEVICE_ID,0);
  131. tcpModel.data = blueCodeId;
  132. sendTcpModel(tcpModel);
  133. }