温湿度添加try catch

This commit is contained in:
maqiao 2024-08-13 17:05:27 +08:00
parent 6cf9e18963
commit b8249a2788
4 changed files with 42 additions and 30 deletions

View File

@ -54,7 +54,7 @@
<!-- 抽屉串口使用的协议232或者485 --> <!-- 抽屉串口使用的协议232或者485 -->
<add key="DrawerProtocol" value="485" /> <add key="DrawerProtocol" value="485" />
<!-- 抽屉串口的串口号 --> <!-- 抽屉串口的串口号 -->
<add key="DrawerPortPath" value="COM1" /> <add key="DrawerPortPath" value="COM11" />
<!-- can总线串口的串口号 --> <!-- can总线串口的串口号 -->
<add key="CanBusPortPath" value="COM3" /> <add key="CanBusPortPath" value="COM3" />
<!-- 条码枪串口的串口号 --> <!-- 条码枪串口的串口号 -->
@ -121,7 +121,7 @@
<add key="modbusPort" value="4002"/> <add key="modbusPort" value="4002"/>
<!--温湿度串口--> <!--温湿度串口-->
<add key="wsdSerialPort" value="COM5"/> <add key="wsdSerialPort" value="COM1"/>
<!--温度查询定时执行时间--> <!--温度查询定时执行时间-->
<add key="Interval" value="60000"/> <add key="Interval" value="60000"/>
</appSettings> </appSettings>

View File

@ -1880,27 +1880,34 @@ namespace DM_Weight.Port
public TemperatureHumidityInfo GetWSD() public TemperatureHumidityInfo GetWSD()
{ {
TemperatureHumidityInfo temperatureHumidityInfo = new TemperatureHumidityInfo(); TemperatureHumidityInfo temperatureHumidityInfo = new TemperatureHumidityInfo();
var master = ModbusSerialMaster.CreateRtu(wsdSerial); try
int no = 1;
var r = master.ReadHoldingRegisters((byte)no, 00, 2);
if (r != null && r.Length > 0)
{ {
var result = string.Join("", r); var master = ModbusSerialMaster.CreateRtu(wsdSerial);
var result1 = result.Substring(0, 3); int no = 1;
var result2 = result.Substring(3, 3); var r = master.ReadHoldingRegisters((byte)no, 00, 2);
float temp = Int32.Parse(result2) / 10.0F;
float humi = Int32.Parse(result1) / 10.0F;
temperatureHumidityInfo.GroupNo = "DM5";
temperatureHumidityInfo.Temp = temp.ToString();
temperatureHumidityInfo.Humi = humi.ToString();
if (r != null && r.Length > 0)
{
var result = string.Join("", r);
var result1 = result.Substring(0, 3);
var result2 = result.Substring(3, 3);
float temp = Int32.Parse(result2) / 10.0F;
float humi = Int32.Parse(result1) / 10.0F;
temperatureHumidityInfo.GroupNo = "DM5";
temperatureHumidityInfo.Temp = temp.ToString();
temperatureHumidityInfo.Humi = humi.ToString();
}
//if (wsdSerial.IsOpen)
//{
// wsdSerial.Close();
//}
master.Dispose();
}
catch (Exception ex)
{
logger.Info($"获取温湿度异常{ex.Message}");
} }
//if (wsdSerial.IsOpen)
//{
// wsdSerial.Close();
//}
master.Dispose();
return temperatureHumidityInfo; return temperatureHumidityInfo;
} }
#endregion #endregion

View File

@ -132,7 +132,7 @@ namespace DM_Weight.ViewModels
} }
else if (value.PremissionPath.Equals("SettingMainWindow") || value.PremissionPath.Equals("SettingWindow")) else if (value.PremissionPath.Equals("SettingMainWindow") || value.PremissionPath.Equals("SettingWindow"))
{ {
if (Convert.ToInt32(ConfigurationManager.AppSettings["hasFridge"])>0) if (Convert.ToInt32(ConfigurationManager.AppSettings["hasFridge"]) > 0)
{ {
_regionManager.RequestNavigate("ContentRegion", "SettingMainWindow"); _regionManager.RequestNavigate("ContentRegion", "SettingMainWindow");
} }
@ -323,10 +323,10 @@ namespace DM_Weight.ViewModels
} }
} }
//保存温湿度信息 //保存温湿度信息
private async void GetWSD(object sender,ElapsedEventArgs e) private async void GetWSD(object sender, ElapsedEventArgs e)
{ {
TemperatureHumidityInfo temp = _portUtil.GetWSD(); TemperatureHumidityInfo temp = _portUtil.GetWSD();
if(temp != null) if (temp != null)
{ {
SqlSugarHelper.Db.Insertable(new TemperatureHumidityInfo() SqlSugarHelper.Db.Insertable(new TemperatureHumidityInfo()
{ {
@ -335,8 +335,13 @@ namespace DM_Weight.ViewModels
Humi = temp.Humi, Humi = temp.Humi,
AddTime = temp.AddTime AddTime = temp.AddTime
}).ExecuteCommand(); }).ExecuteCommand();
logger.Info($"保存温湿度信息:{temp.Temp},{temp.Humi}");
} }
else
{
logger.Info("温湿度信息返回空");
}
} }

View File

@ -78,16 +78,16 @@
</ListView.Resources> </ListView.Resources>
<ListView.View> <ListView.View>
<GridView ColumnHeaderContainerStyle="{StaticResource st}"> <GridView ColumnHeaderContainerStyle="{StaticResource st}">
<GridViewColumn Width="100" <GridViewColumn Width="180"
Header="操作人" Header="操作人"
DisplayMemberBinding="{Binding User.Nickname}"/> DisplayMemberBinding="{Binding User.Nickname}"/>
<GridViewColumn Width="100" <GridViewColumn Width="180"
Header="时间" Header="时间"
DisplayMemberBinding="{Binding OperationTime, StringFormat='yyyy-MM-dd HH:mm:ss'}" /> DisplayMemberBinding="{Binding OperationTime, StringFormat='yyyy-MM-dd HH:mm:ss'}" />
<GridViewColumn Width="180" <GridViewColumn Width="100"
DisplayMemberBinding="{Binding DrawerNo}" DisplayMemberBinding="{Binding DrawerNo}"
Header="药箱号"/> Header="药箱号"/>
<GridViewColumn Width="100" <GridViewColumn Width="180"
DisplayMemberBinding="{Binding InvoiceId}" DisplayMemberBinding="{Binding InvoiceId}"
Header="操作内容"/> Header="操作内容"/>
</GridView> </GridView>