diff --git a/AIParkingApplication/AIParkingApplicationForm.cs b/AIParkingApplication/AIParkingApplicationForm.cs
index a924504..dba2f67 100644
--- a/AIParkingApplication/AIParkingApplicationForm.cs
+++ b/AIParkingApplication/AIParkingApplicationForm.cs
@@ -26,7 +26,7 @@ namespace AIParkingApplication
this.apiController = apiController;
this.configOnWeb = configOnWeb;
- ReadAccessControlDeviceIPConfiguration();
+ ReadAccessControlDeviceIPConfigurationFile();
if (string.IsNullOrEmpty(doorAccessControlDeviceIP) || !Util.IsValidIPAddress(doorAccessControlDeviceIP))
{
MessageBox.Show("Kiểm tra lại cấu hình IP thiết bị mở cửa! (C3200)", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
@@ -135,6 +135,7 @@ namespace AIParkingApplication
private void toolStripMenuItemSwitchLaneInIn_Click(object sender, EventArgs e)
{
+ Util.AddOrUpdateAppSettings("CURRENT_LANE_SETTING", "IN-IN");
UpdateMenuStripItemStatus(sender as ToolStripMenuItem);
StopAllLanes();
UpdateLaneInIn();
@@ -142,6 +143,7 @@ namespace AIParkingApplication
private void toolStripMenuItemSwitchLaneInOut_Click(object sender, EventArgs e)
{
+ Util.AddOrUpdateAppSettings("CURRENT_LANE_SETTING", "IN-OUT");
UpdateMenuStripItemStatus(sender as ToolStripMenuItem);
StopAllLanes();
UpdateLaneInOut();
@@ -149,6 +151,7 @@ namespace AIParkingApplication
private void toolStripMenuItemSwitchLaneOutIn_Click(object sender, EventArgs e)
{
+ Util.AddOrUpdateAppSettings("CURRENT_LANE_SETTING", "OUT-IN");
UpdateMenuStripItemStatus(sender as ToolStripMenuItem);
StopAllLanes();
UpdateLaneOutIn();
@@ -156,6 +159,7 @@ namespace AIParkingApplication
private void toolStripMenuItemSwitchLaneOutOut_Click(object sender, EventArgs e)
{
+ Util.AddOrUpdateAppSettings("CURRENT_LANE_SETTING", "OUT-OUT");
UpdateMenuStripItemStatus(sender as ToolStripMenuItem);
StopAllLanes();
UpdateLaneOutOut();
@@ -196,7 +200,51 @@ namespace AIParkingApplication
laneOut78?.Hide();
}
- private void ReadAccessControlDeviceIPConfiguration()
+ private void InitLaneFirstTime()
+ {
+ try
+ {
+ string lanesConfig = ConfigurationManager.AppSettings["CURRENT_LANE_SETTING"];
+ if (!string.IsNullOrEmpty(lanesConfig))
+ {
+ string[] lanes = lanesConfig.Split('-');
+ if (lanes.Length == 2)
+ {
+ string lane0 = lanes[0].ToLower();
+ string lane1 = lanes[1].ToLower();
+ if (lane0 == "in" && lane1 == "in")
+ {
+ UpdateLaneInIn();
+ }
+ if (lane0 == "in" && lane1 == "out")
+ {
+ UpdateLaneInOut();
+ }
+ if (lane0 == "out" && lane1 == "in")
+ {
+ UpdateLaneOutIn();
+ }
+ if (lane0 == "out" && lane1 == "out")
+ {
+ UpdateLaneOutOut();
+ }
+ }
+ else
+ {
+ Util.AddOrUpdateAppSettings("CURRENT_LANE_SETTING", "IN-OUT");
+ UpdateLaneInOut();
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ Util.AddOrUpdateAppSettings("CURRENT_LANE_SETTING", "IN-OUT");
+ UpdateLaneInOut();
+ Console.WriteLine($"{DateTime.Now.GetTimeFormatted()}\tReadLaneSettingFromConfigurationFile\t{ex.Message}");
+ }
+ }
+
+ private void ReadAccessControlDeviceIPConfigurationFile()
{
try
{
@@ -212,6 +260,7 @@ namespace AIParkingApplication
private void AIParkingApplicationForm_Load(object sender, EventArgs e)
{
InitAllLanes();
+ InitLaneFirstTime();
}
private void AIParkingApplicationForm_FormClosing(object sender, FormClosingEventArgs e)
diff --git a/AIParkingApplication/App.config b/AIParkingApplication/App.config
index 48f66bc..eb9980e 100644
--- a/AIParkingApplication/App.config
+++ b/AIParkingApplication/App.config
@@ -4,6 +4,7 @@
+