Browse Source

fix some bug

try_support_dt100n
zhaohe 4 weeks ago
parent
commit
37a84b1af4
  1. 10
      appsrc/baseservice/db/base/keyvaldbv2.cpp
  2. 3
      appsrc/baseservice/db/base/keyvaldbv2.hpp
  3. 24
      appsrc/baseservice/db/device_ext_setting_dao_v2.cpp
  4. 22
      html/debug/index.html

10
appsrc/baseservice/db/base/keyvaldbv2.cpp

@ -33,7 +33,6 @@ bool KeyValDBV2Dao::set(string key, string val) {
string KeyValDBV2Dao::get(string key, string defaultVal) { string KeyValDBV2Dao::get(string key, string defaultVal) {
lock_guard<recursive_mutex> lock(lock_); lock_guard<recursive_mutex> lock(lock_);
try { try {
auto all = storage.get_all<KeyValDBV2>(where(c(&KeyValDBV2::key) == key)); auto all = storage.get_all<KeyValDBV2>(where(c(&KeyValDBV2::key) == key));
if (all.size() == 0) { if (all.size() == 0) {
@ -52,3 +51,12 @@ bool KeyValDBV2Dao::get(string key, bool defaultVal) { return get(key, default
bool KeyValDBV2Dao::set(string key, int val) { return set(key, to_string(val)); } bool KeyValDBV2Dao::set(string key, int val) { return set(key, to_string(val)); }
bool KeyValDBV2Dao::set(string key, double val) { return set(key, to_string(val)); } bool KeyValDBV2Dao::set(string key, double val) { return set(key, to_string(val)); }
bool KeyValDBV2Dao::set(string key, bool val) { return set(key, val ? string("true") : string("false")); } bool KeyValDBV2Dao::set(string key, bool val) { return set(key, val ? string("true") : string("false")); }
void KeyValDBV2Dao::clear(string key) {
lock_guard<recursive_mutex> lock(lock_);
try {
storage.remove_all<KeyValDBV2>(where(c(&KeyValDBV2::key) == key));
} catch (const std::exception& e) {
// Ignore errors
}
}

3
appsrc/baseservice/db/base/keyvaldbv2.hpp

@ -83,6 +83,9 @@ class KeyValDBV2Dao {
bool get(string key, bool defaultVal); bool get(string key, bool defaultVal);
double get(string key, double defaultVal); double get(string key, double defaultVal);
float get(string key, float defaultVal) { return get(key, (double)defaultVal); } float get(string key, float defaultVal) { return get(key, (double)defaultVal); }
void clear(string key);
}; };
}; // namespace iflytop }; // namespace iflytop

24
appsrc/baseservice/db/device_ext_setting_dao_v2.cpp

@ -269,7 +269,7 @@ void DeviceExtSettingV2Dao::initVal(ProjectTypeEnum projType, string deviceId) {
// clearVal // clearVal
for (auto& id : DeviceExtSettingId::getEnumList()) { for (auto& id : DeviceExtSettingId::getEnumList()) {
setVal(id, "");
clear(id);
} }
setVal(DeviceExtSettingId::deviceId, deviceId); setVal(DeviceExtSettingId::deviceId, deviceId);
@ -319,8 +319,24 @@ json DeviceExtSettingV2Dao::getSetting() {
json DeviceExtSettingV2Dao::getSettingCH() { json DeviceExtSettingV2Dao::getSettingCH() {
json settingCH; json settingCH;
for (auto& settingId : DeviceExtSettingId::getEnumList()) {
settingCH[idToChName(DeviceExtSettingId(settingId))] = get(settingId, "");
}
settingCH["设备ID"] = getDeviceId();
settingCH["项目类型"] = getProjectType().toString();
settingCH["can接口"] = getCanIF();
settingCH["can波特率"] = getCanBitrate();
settingCH["打印机串口路径"] = getPrinterUartPath();
settingCH["探头-过期时间(月)"] = getH2o2SensorExpireTimeMonth();
settingCH["探头-最小值(ppm)"] = getH2o2Sensorh2o2MinVal();
settingCH["探头-预热时间(秒)"] = getSensorPreheartTimeS();
settingCH["有线探头数量"] = getExtWiredSensorNum();
settingCH["清空加液管路时间(秒)"] = getEmptyThePipeLineTimeS();
settingCH["排空储液桶条件判定阈值(克)"] = getEmptyingLiquidStorageTankCondtionG();
settingCH["泄露检测-充气时间(毫秒)"] = getLeakTestInflationTimeMs();
settingCH["泄露检测-稳定时间(秒)"] = getLeakTestStabilizationTimeS();
settingCH["消毒液桶体积(毫升)"] = getDisinfectantBucketCapacity();
settingCH["用户行为最大记录数"] = getUserBehaviorRecordDbMaxRecords();
settingCH["喷液泵转速单位转换系数"] = getGpmToSpeedRadio();
settingCH["喷液管路清空时间(秒)"] = getSprayLineEmptyTimeS();
settingCH["喷液管路清空速度(RPM)"] = getSprayLineEmptyVelRPM();
return settingCH; return settingCH;
} }

22
html/debug/index.html

@ -39,14 +39,14 @@
@click="actionActionExecute(item)"> @click="actionActionExecute(item)">
{{item.fnDispName}}</a-button> {{item.fnDispName}}</a-button>
<div v-for="param in item.params" class="param-input">
<a-select v-if="item.paramInfoMap[param].isEnum" v-model:value="item.values[param]"
<div v-for="param in item.params" >
<a-select v-if="item.paramInfoMap[param].isEnum" class="param-input" v-model:value="item.values[param]"
:placeholder="param" :dropdownMatchSelectWidth="false"> :placeholder="param" :dropdownMatchSelectWidth="false">
<a-select-option v-for="enumValue in item.paramInfoMap[param].enumValues" :key="enumValue" <a-select-option v-for="enumValue in item.paramInfoMap[param].enumValues" :key="enumValue"
:value="enumValue">{{enumValue}}</a-select-option> :value="enumValue">{{enumValue}}</a-select-option>
</a-select> </a-select>
<a-input v-else v-model:value="item.values[param]" :placeholder="param"
<a-input v-else v-model:value="item.values[param]" :placeholder="param" class="param-input"
@click="showKeyboard(item.values, param)"></a-input> @click="showKeyboard(item.values, param)"></a-input>
</div> </div>
</div> </div>
@ -77,6 +77,8 @@
</a-collapse-panel> </a-collapse-panel>
</a-collapse> </a-collapse>
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
</div> </div>
@ -84,7 +86,7 @@
<style> <style>
:root { :root {
--primary-color: #1890ff; /* 主蓝色 */ --primary-color: #1890ff; /* 主蓝色 */
--primary-hover: #40a9ff; /* 悬停蓝色 */
--primary-hover: #40a9ff2a; /* 悬停蓝色 */
--success-color: #52c41a; /* 成功绿色 */ --success-color: #52c41a; /* 成功绿色 */
--warning-color: #faad14; /* 警告黄色 */ --warning-color: #faad14; /* 警告黄色 */
--error-color: #f5222d; /* 错误红色 */ --error-color: #f5222d; /* 错误红色 */
@ -96,7 +98,7 @@
--card-bg: #ffffff; /* 卡片背景 */ --card-bg: #ffffff; /* 卡片背景 */
--action-btn-bg: #1890ff; /* 操作按钮背景 */ --action-btn-bg: #1890ff; /* 操作按钮背景 */
--action-btn-hover: #40a9ff; /* 操作按钮悬停 */ --action-btn-hover: #40a9ff; /* 操作按钮悬停 */
--disinfect-color: #13c2c2; /* 消毒主题色 - 青蓝色 */
--disinfect-color: #1890ff; /* 消毒主题色 - */
} }
body { body {
@ -141,7 +143,7 @@
/* 主内容区样式 */ /* 主内容区样式 */
.main-content { .main-content {
padding: 15px; padding: 15px;
background-color: white;
background-color: #f0f2f5;
} }
.action-container { .action-container {
@ -150,7 +152,7 @@
overflow-y: auto; overflow-y: auto;
margin-bottom: 10px; margin-bottom: 10px;
padding: 10px; padding: 10px;
background-color: white;
background-color:#f0f2f5;
border-radius: 4px; border-radius: 4px;
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.03); box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.03);
} }
@ -160,9 +162,9 @@
flex-direction: row; flex-direction: row;
margin-bottom: 10px; margin-bottom: 10px;
padding: 10px; padding: 10px;
background-color: #f6ffed;
background-color: var(--primary-hover);
border-radius: 4px; border-radius: 4px;
border-left: 3px solid var(--success-color);
border-left: 3px solid var(--primary-color);
transition: all 0.3s; transition: all 0.3s;
} }
@ -210,7 +212,7 @@
} }
.log-container, .report-container { .log-container, .report-container {
height: 0;
height: 600px;
flex-grow: 1; flex-grow: 1;
overflow-y: auto; overflow-y: auto;
margin-bottom: 10px; margin-bottom: 10px;

Loading…
Cancel
Save