diff --git a/src/device_holder.cpp b/src/device_holder.cpp index 8a1ee09..05a77fd 100644 --- a/src/device_holder.cpp +++ b/src/device_holder.cpp @@ -3,8 +3,8 @@ #include "barrier/generic_barrier.h" #include "platform_scale/generic_platform_scale.h" #include "sound_column/generic_sound_column.h" -// #include "vidicon/generic_vidicon.h" -#include "vidicon/barrier_vidicon.h" +#include "vidicon/generic_vidicon.h" +// #include "vidicon/barrier_vidicon.h" namespace zsy { void DeviceHolder::initBarriers(std::vector &configs) @@ -39,8 +39,8 @@ namespace zsy { { for (auto &config: configs) { - // vidicons.emplace(config.sn, std::make_shared(config)); - vidicons.emplace(config.sn, std::make_shared(config)); + vidicons.emplace(config.sn, std::make_shared(config)); + // vidicons.emplace(config.sn, std::make_shared(config)); } } diff --git a/src/report_svr/report_svr.h b/src/report_svr/report_svr.h index 9030f29..dced996 100644 --- a/src/report_svr/report_svr.h +++ b/src/report_svr/report_svr.h @@ -34,9 +34,9 @@ namespace zsy inline void from_json(const nlohmann::json &j, ReportPassResult::Data &o) { - PARSE_JSON(carNumber, o.carNumber); + PARSE_JSON(car_number, o.carNumber); PARSE_JSON(type, o.type); - PARSE_JSON(orderNo, o.orderNo); + PARSE_JSON(order_no, o.orderNo); PARSE_JSON(errMsg, o.errMsg); PARSE_JSON(scene, o.scene); } @@ -64,9 +64,9 @@ namespace zsy inline void from_json(const nlohmann::json &j, ReportResult::Data &o) { - PARSE_JSON(carNumber, o.carNumber); - PARSE_JSON(orderNo, o.orderNo); - PARSE_JSON(laneCode, o.laneCode); + PARSE_JSON(car_number, o.carNumber); + PARSE_JSON(order_no, o.orderNo); + PARSE_JSON(lane_code, o.laneCode); } inline void from_json(const nlohmann::json &j, ReportResult &o) diff --git a/src/vidicon/barrier_vidicon.cpp b/src/vidicon/barrier_vidicon.cpp index 8f83927..251cc3d 100644 --- a/src/vidicon/barrier_vidicon.cpp +++ b/src/vidicon/barrier_vidicon.cpp @@ -60,7 +60,7 @@ namespace zsy const auto res = jsonData.get(); imageContent = res.payload.image_content; - hasNewContent.store(true); + hasNewContent.store(true, std::memory_order_release); }); Application::eventManager->subscribe(MqttCli::TYPE_LOCAL + "/device/" + config.ip + "/message/down/snapshot/reply", [this](const EventManager::Event &event) { @@ -111,13 +111,19 @@ namespace zsy do { i++; - LOGGER_INFO("等待:{}", i); + LOGGER_INFO("等待照片:{}", i); std::this_thread::sleep_for(std::chrono::milliseconds(1000)); - } while (i <= 10 && !hasNewContent.load()); + } while (i <= 10 && !hasNewContent.load(std::memory_order_acquire)); const auto filename = "car_body_" + Snowflake::genIdStr() + ".jpg"; auto content = SysUtil::base64_decode(imageContent); + if (imageContent == "") + { + LOGGER_ERROR("未收到图片"); + return nullptr; + } + return std::make_shared(content, std::ios_base::in | std::ios_base::binary); } else {