add-将RFID添加数据库

master
liuwf 2 days ago
parent adb761d912
commit f23384f1e4

@ -0,0 +1,31 @@
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Security.Principal;
using System.Text;
namespace SlnMesnac.RfidUpload.Model
{
[SugarTable("RFID_INFO")]
public class RfidInfo
{
// 该特性指定此属性对应数据库表中的 id 列
// IsIdentity = true 表示该列是自增列
// IsPrimaryKey = true 表示该列是主键
[SugarColumn(ColumnName = "id", IsIdentity = true, IsPrimaryKey = true)]
public int Id { get; set; }
// 用于存储调拨单号
[SugarColumn(ColumnName = "dbdh")]
public string Dbdh { get; set; }
// 用于存储RFID
[SugarColumn(ColumnName = "result")]
public string Result { get; set; }
//时间
[SugarColumn(ColumnName = "recordtime")]
public string RecordTime { get; set; }
}
}

@ -1,4 +1,7 @@
using System.Windows;
using System.Threading.Tasks;
using System;
using System.Windows;
using SlnMesnac.RfidUpload.NLog;
namespace SlnMesnac.RfidUpload.UI
{
@ -7,5 +10,85 @@ namespace SlnMesnac.RfidUpload.UI
/// </summary>
public partial class App : Application
{
private static readonly LogHelper logger = LogHelper.Instance;
public App()
{
//UI线程未捕获异常处理事件UI主线程
this.DispatcherUnhandledException += App_DispatcherUnhandledException;
//非UI线程未捕获异常处理事件(例如自己创建的一个子线程)
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
//Task线程内未捕获异常处理事件
TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException;//Task异常
}
void App_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e)
{
try
{
logger.Error(e.Exception.Message);
HandleException(e.Exception);
}
catch (Exception ex)
{
HandleException(ex);
}
finally
{
e.Handled = true;
}
}
private static void HandleException(Exception ex)
{
logger.Error(ex.Message);
//Logger log = new Logger();
//log.Log(ex.ToString());
}
//非UI线程未捕获异常处理事件(例如自己创建的一个子线程)
private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
try
{
var exception = e.ExceptionObject as Exception;
if (exception != null)
{
HandleException(exception);
}
}
catch (Exception ex)
{
HandleException(ex);
}
finally
{
//ignore
}
}
private static void TaskScheduler_UnobservedTaskException(object sender, UnobservedTaskExceptionEventArgs e)
{
try
{
var exception = e.Exception as Exception;
if (exception != null)
{
HandleException(exception);
}
}
catch (Exception ex)
{
HandleException(ex);
}
finally
{
e.SetObserved();
}
}
}
}

@ -24,6 +24,8 @@ using SlnMesnac.RfidUpload.UI.TempData;
using slnmesnac.rfidupload.Repository;
using TouchSocket.Core;
using System.Windows.Interop;
using static Dm.net.buffer.ByteArrayBuffer;
using System.IO;
namespace SlnMesnac.RfidUpload.UI.viewModel
{
@ -49,85 +51,7 @@ namespace SlnMesnac.RfidUpload.UI.viewModel
private Institution Institution;
#region 参数定义
/// <summary>
/// 串口
/// </summary>
//private ObservableCollection<string> _serialPortItems = new ObservableCollection<string>();
//public ObservableCollection<string> SerialPortItems
//{
// get { return _serialPortItems; }
// set { _serialPortItems = value; RaisePropertyChanged(() => SerialPortItems); }
//}
//private string _selectedSerialPortItems = string.Empty;
//public string SelectedSerialPortItems
//{
// get { return _selectedSerialPortItems; }
// set { _selectedSerialPortItems = value; RaisePropertyChanged(() => SelectedSerialPortItems); }
//}
///// <summary>
///// 波特率
///// </summary>
//private ObservableCollection<int> _baudRateItems = new ObservableCollection<int>() { 9600, 115200 };
//public ObservableCollection<int> BaudRateItems
//{
// get { return _baudRateItems; }
// set { _baudRateItems = value; RaisePropertyChanged(() => BaudRateItems); }
//}
//private int _selectedBaudRateItems = 115200;
//public int SelectedBaudRateItems
//{
// get { return _selectedBaudRateItems; }
// set { _selectedBaudRateItems = value; RaisePropertyChanged(() => SelectedBaudRateItems); }
//}
///// <summary>
///// 数据位
///// </summary>
//private ObservableCollection<int> _dataBitsItems = new ObservableCollection<int>() { 2, 4, 6, 8 };
//public ObservableCollection<int> DataBitsItems
//{
// get { return _dataBitsItems; }
// set { _dataBitsItems = value; RaisePropertyChanged(() => DataBitsItems); }
//}
//private int _selectedDataBitsItems = 8;
//public int SelectedDataBitsItems
//{
// get { return _selectedDataBitsItems; }
// set { _selectedDataBitsItems = value; RaisePropertyChanged(() => SelectedDataBitsItems); }
//}
///// <summary>
/////停止位
///// </summary>
//private ObservableCollection<int> _stopBitsItems = new ObservableCollection<int>() { 0, 1, 2, 3, 4 };
//public ObservableCollection<int> StopBitsItems
//{
// get { return _stopBitsItems; }
// set { _stopBitsItems = value; RaisePropertyChanged(() => StopBitsItems); }
//}
//private int _selectedStopBitsItems = 1;
//public int SelectedStopBitsItems
//{
// get { return _selectedStopBitsItems; }
// set { _selectedStopBitsItems = value; RaisePropertyChanged(() => SelectedStopBitsItems); }
//}
///// <summary>
/////校验位
///// </summary>
//private ObservableCollection<string> _parityItems = new ObservableCollection<string>() { "None", "Odd", "Even", "Mark", "Space" };
//public ObservableCollection<string> ParityItems
//{
// get { return _parityItems; }
// set { _parityItems = value; RaisePropertyChanged(() => ParityItems); }
//}
//private string _selectedParityItems = "None";
//public string SelectedParityItems
//{
// get { return _selectedParityItems; }
// set { _selectedParityItems = value; RaisePropertyChanged(() => SelectedParityItems); }
//}
/// <summary>
/// 标签数量
@ -288,8 +212,8 @@ namespace SlnMesnac.RfidUpload.UI.viewModel
FinishCommand = new RelayCommand(Finish);
ReUploadRecordCommand = new RelayCommand(ReUploadRecord);
this.Init();
test();
// test();
}
private void ReUploadRecord()
@ -313,15 +237,59 @@ namespace SlnMesnac.RfidUpload.UI.viewModel
}
/// <summary>
/// 清除日志文件
/// </summary>
private void DeleteLogsLogic()
{
try
{
//获取当前程序运行目录下的logs文件夹
string logPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Log");
string[] strings = Directory.GetDirectories(logPath);
foreach (string s in strings)
{
string dirName = Path.GetFileName(s);
if (!string.IsNullOrEmpty(dirName))
{
if (DateTime.TryParse(dirName, out DateTime dt))
{
if (dt < DateTime.Now.AddDays(-10))
{
Directory.Delete(s, true);
}
}
}
}
}
catch
{
}
}
private void Init()
{
DeleteLogsLogic();
GetRfidList();
TouchSocketService service = new TouchSocketService();
service.AddTouchSocketAsync(appConfig.RFIDAddress);
WorkModelParam = Convert.ToInt32(appConfig.workModel);
Task.Run(() =>
{
Thread.Sleep(1000 * 10);
throw new Exception("test");
});
}
@ -557,20 +525,7 @@ namespace SlnMesnac.RfidUpload.UI.viewModel
}
/// <summary>
/// 清空标签信息列表
/// </summary>
private void EmptyFiles()
{
No = 0;
labelItems.Clear();
LabelCountParam = 0;
MainPageTipMessage = "";
}
private void SystemSet()
{
@ -617,6 +572,54 @@ namespace SlnMesnac.RfidUpload.UI.viewModel
}
}
/// <summary>
/// 清空标签信息列表
/// </summary>
private void EmptyFiles()
{
No = 0;
labelItems.Clear();
LabelCountParam = 0;
MainPageTipMessage = "";
sqliteHelper.DeleteRFIDList();
GetRfidList();
}
/// <summary>
/// 从数据库加载到界面
/// </summary>
private void GetRfidList()
{
No = 0;
labelItems.Clear();
LabelCountParam = 0;
List<RfidInfo> rfidInfos = sqliteHelper.GetRFIDList();
if(rfidInfos != null&& rfidInfos.Count > 0)
{
foreach (var item in rfidInfos)
{
App.Current.Dispatcher.BeginInvoke((Action)(() =>
{
int no = labelItems.Count;
DataGridEnt dataGridEnt = new DataGridEnt();
dataGridEnt.no = ++no;
dataGridEnt.dbdh = _transferOrderInfo.dbdh;
dataGridEnt.result = item.Result;
dataGridEnt.recordtime = DateTime.Now;
labelItems.Add(dataGridEnt);
LabelInfoDataGrid = labelItems;
LabelCountParam += 1;
}));
}
}
}
/// <summary>
@ -625,6 +628,11 @@ namespace SlnMesnac.RfidUpload.UI.viewModel
/// <param name="labelInfos"></param>
private void RefreshLabelInfoDataGrid(string code)
{
RfidInfo rfidInfo = new RfidInfo();
rfidInfo.Dbdh = _transferOrderInfo.dbdh;
rfidInfo.Result = code;
rfidInfo.RecordTime = DateTime.Now.ToString();
sqliteHelper.InsertRFID(rfidInfo);
bool IsHas = labelItems.Any(x => x.result == code);
if (IsHas)

@ -67,6 +67,8 @@ namespace slnmesnac.rfidupload.Repository
});
}
#region 数据重传表相关操作
/// <summary>
/// 插入记录
/// </summary>
@ -118,13 +120,51 @@ namespace slnmesnac.rfidupload.Repository
/// </summary>
/// <param name="printRecord"></param>
/// <returns></returns>
public int updateRecordByFfjhNo(string ffjhNo,bool uploadResult)
public int updateRecordByFfjhNo(string ffjhNo, bool uploadResult)
{
int flag = uploadResult ? 1 : 0;
string sql = $"UPDATE UPLOAD_RECORD SET isSuccess = {flag} WHERE ffjhNo = {ffjhNo}";
int result = db.Updateable<UploadRecord>(sql).ExecuteCommand();
return result;
}
#endregion
#region RFID数据表相关操作
/// <summary>
/// 查询记录列表--不包含strList字段
/// </summary>
/// <param name="printRecord"></param>
/// <returns></returns>
public List<RfidInfo> GetRFIDList()
{
List<RfidInfo> list;
list = db.Queryable<RfidInfo>().ToList();
return list;
}
/// <summary>
/// 删除所有RFID
/// </summary>
/// <param name="printRecord"></param>
/// <returns></returns>
public bool DeleteRFIDList()
{
int count = db.Deleteable<RfidInfo>().ExecuteCommand();
return count>0? true : false;
}
/// <summary>
/// 插入一条RFID
/// </summary>
/// <param name="printRecord"></param>
/// <returns></returns>
public int InsertRFID(RfidInfo record)
{
int result = db.Insertable<RfidInfo>(record).ExecuteCommand();
return result;
}
#endregion
}
}
Loading…
Cancel
Save