yc_t 6 rokov pred
rodič
commit
3700ce39bf
24 zmenil súbory, kde vykonal 66 pridanie a 42 odobranie
  1. BIN
      PLCLinker/.vs/PLCLinker/v15/.suo
  2. BIN
      PLCLinker/.vs/PLCLinker/v15/Server/sqlite3/storage.ide
  3. BIN
      PLCLinker/PLCLinker/bin/Release/PLCLinker.exe
  4. BIN
      PLCLinker/PLCLinker/bin/Release/PLCLinker.pdb
  5. BIN
      PLCLinker/PLCLinker/bin/Release/PLCS7.dll
  6. BIN
      PLCLinker/PLCLinker/obj/Release/PLCLinker.csprojResolveAssemblyReference.cache
  7. BIN
      PLCLinker/PLCLinker/obj/Release/PLCLinker.exe
  8. BIN
      PLCLinker/PLCLinker/obj/Release/PLCLinker.pdb
  9. BIN
      PLCLinker/PLCS7/bin/Release/PLCS7.dll
  10. BIN
      PLCLinker/PLCS7/bin/Release/PLCS7.pdb
  11. BIN
      PLCLinker/PLCS7/obj/Release/PLCS7.dll
  12. BIN
      PLCLinker/PLCS7/obj/Release/PLCS7.pdb
  13. 63 39
      PLCLinker/centralController/Terminal/Terminal.cs
  14. BIN
      PLCLinker/centralController/bin/Release/centralController.exe
  15. BIN
      PLCLinker/centralController/bin/Release/centralController.pdb
  16. BIN
      PLCLinker/centralController/obj/Release/centralController.csproj.GenerateResource.Cache
  17. BIN
      PLCLinker/centralController/obj/Release/centralController.exe
  18. BIN
      PLCLinker/centralController/obj/Release/centralController.pdb
  19. BIN
      PLCLinker/socketTest/bin/Release/socketTest.exe
  20. 3 3
      PLCLinker/socketTest/bin/Release/socketTest.exe.config
  21. BIN
      PLCLinker/socketTest/bin/Release/socketTest.pdb
  22. BIN
      PLCLinker/socketTest/obj/Release/socketTest.csprojResolveAssemblyReference.cache
  23. BIN
      PLCLinker/socketTest/obj/Release/socketTest.exe
  24. BIN
      PLCLinker/socketTest/obj/Release/socketTest.pdb

BIN
PLCLinker/.vs/PLCLinker/v15/.suo


BIN
PLCLinker/.vs/PLCLinker/v15/Server/sqlite3/storage.ide


BIN
PLCLinker/PLCLinker/bin/Release/PLCLinker.exe


BIN
PLCLinker/PLCLinker/bin/Release/PLCLinker.pdb


BIN
PLCLinker/PLCLinker/bin/Release/PLCS7.dll


BIN
PLCLinker/PLCLinker/obj/Release/PLCLinker.csprojResolveAssemblyReference.cache


BIN
PLCLinker/PLCLinker/obj/Release/PLCLinker.exe


BIN
PLCLinker/PLCLinker/obj/Release/PLCLinker.pdb


BIN
PLCLinker/PLCS7/bin/Release/PLCS7.dll


BIN
PLCLinker/PLCS7/bin/Release/PLCS7.pdb


BIN
PLCLinker/PLCS7/obj/Release/PLCS7.dll


BIN
PLCLinker/PLCS7/obj/Release/PLCS7.pdb


+ 63 - 39
PLCLinker/centralController/Terminal/Terminal.cs

@@ -46,6 +46,27 @@ namespace Terminal
 
         }
 
+        /// <summary>
+        /// 从终端结构体中获得车牌号
+        /// </summary>
+        /// <param name="ts"></param>
+        /// <returns></returns>
+        private string GetLicenseFromTerm(TerminalStru ts)
+        {
+            string header = Encoding.ASCII.GetString(BitConverter.GetBytes(ts.licenseCodeB));
+            string identityA = Encoding.ASCII.GetString(BitConverter.GetBytes(ts.licenseCodeC));
+            byte[] bytes = BitConverter.GetBytes(ts.licenseCodeD);
+            List<byte> newBytes = new List<byte>();
+            for (int i = 0; i < bytes.Length; i++)
+            {
+                if (bytes[i] != 0x00) { newBytes.Add(bytes[i]); }
+            }
+            string identityB = Encoding.ASCII.GetString(newBytes.ToArray());
+            return header + identityA + identityB;
+        }
+        /// <summary>
+        /// 更新所有车位信息
+        /// </summary>
         private void UpdateAllParkingSpace()
         {
             string findParkingSpace = "select parkingSpaceID from parkingspace;";
@@ -80,25 +101,12 @@ namespace Terminal
                     insertSpaceList.Add(insertParkingSpace);
                 }
             }
-
-        }
-        /// <summary>
-        /// 从终端结构体中获得车牌号
-        /// </summary>
-        /// <param name="ts"></param>
-        /// <returns></returns>
-        private string GetLicenseFromTerm(TerminalStru ts)
-        {
-            string header = Encoding.ASCII.GetString(BitConverter.GetBytes(ts.licenseCodeB));
-            string identityA = Encoding.ASCII.GetString(BitConverter.GetBytes(ts.licenseCodeC));
-            byte[] bytes = BitConverter.GetBytes(ts.licenseCodeD);
-            List<byte> newBytes = new List<byte>();
-            for (int i = 0; i < bytes.Length; i++)
+            try
             {
-                if (bytes[i] != 0x00) { newBytes.Add(bytes[i]); }
+                Monitor.Monitor.localDBOper.UpdateTransaction(updateSpaceList);
+                Monitor.Monitor.localDBOper.Insert(insertSpaceList);
             }
-            string identityB = Encoding.ASCII.GetString(newBytes.ToArray());
-            return header + identityA + identityB;
+            catch (Exception e) { Console.WriteLine("更新本地所有车位异常"+e.Message); }
         }
         /// <summary>
         /// 更新车辆状态
@@ -255,25 +263,10 @@ namespace Terminal
             }
         }
         /// <summary>
-        /// 停车相关操作
-        /// 1.读取到号牌机启动指令,启动号牌机并根据是否注册用户进行操作
-        ///     非注册拿到号牌后记录并告知plc
-        ///     注册用户,核对号牌与用户关联信息
-        /// 2.停车流程结束,写数据库
+        /// 停车流程,收到PLC停车完成信号后操作过程
         /// </summary>
-        private void ParkProcess()
+        private void ParkCompleteSubProcess()
         {
-            //1.号牌机启动
-            Task.Factory.StartNew(() =>
-            {
-                while (!isClosing)
-                {
-                    ParkNumSubProcess();
-                    Thread.Sleep(Monitor.Monitor.plcRefreshInterval);
-                }
-            });
-
-            //2.停车流程结束
             int processAttrib = Monitor.Monitor.mainBlockInfo.parkingRunning;
             int processCompleted = Monitor.Monitor.mainBlockInfo.processCompleted;
             int currentTerm = Monitor.Monitor.mainBlockInfo.terminalID;
@@ -322,8 +315,8 @@ namespace Terminal
                         try { parkingRecordsID = reader.GetInt32("parkingRecordsID"); } catch (Exception) { break; };
                         //更新本地车辆表
                         UpdateVehicle(license, parkingRecordsID, 1, true, false);
-
-
+                        //更新本地车位
+                        UpdateAllParkingSpace();
                         //注册用户加入云端操作
                         if (term.btnStatus == 0)
                         {
@@ -334,6 +327,37 @@ namespace Terminal
                 }
             }
         }
+        /// <summary>
+        /// 停车相关操作
+        /// 1.读取到号牌机启动指令,启动号牌机并根据是否注册用户进行操作
+        ///     非注册拿到号牌后记录并告知plc
+        ///     注册用户,核对号牌与用户关联信息
+        /// 2.停车流程结束,写数据库
+        /// </summary>
+        private void ParkProcess()
+        {
+            //1.号牌机启动
+            Task.Factory.StartNew(() =>
+            {
+                while (!isClosing)
+                {
+                    ParkNumSubProcess();
+                    Thread.Sleep(Monitor.Monitor.plcRefreshInterval);
+                }
+            });
+
+            Task.Factory.StartNew(()=> {
+                while (!isClosing)
+                {
+                    ParkCompleteSubProcess();
+                    Thread.Sleep(Monitor.Monitor.plcRefreshInterval);
+                }
+            });
+        }
+        /// <summary>
+        /// 取车相关操作
+        /// 
+        /// </summary>
         private void FetchProcess()
         {
 
@@ -341,10 +365,10 @@ namespace Terminal
 
         public void Start()
         {
-            Task.Factory.StartNew(() =>
-            {
+            //Task.Factory.StartNew(() =>
+            //{
 
-            });
+            //});
         }
 
         public void Stop()

BIN
PLCLinker/centralController/bin/Release/centralController.exe


BIN
PLCLinker/centralController/bin/Release/centralController.pdb


BIN
PLCLinker/centralController/obj/Release/centralController.csproj.GenerateResource.Cache


BIN
PLCLinker/centralController/obj/Release/centralController.exe


BIN
PLCLinker/centralController/obj/Release/centralController.pdb


BIN
PLCLinker/socketTest/bin/Release/socketTest.exe


+ 3 - 3
PLCLinker/socketTest/bin/Release/socketTest.exe.config

@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8" ?>
+<?xml version="1.0" encoding="utf-8"?>
 <configuration>
     <startup> 
-        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6" />
+        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
     </startup>
-</configuration>
+</configuration>

BIN
PLCLinker/socketTest/bin/Release/socketTest.pdb


BIN
PLCLinker/socketTest/obj/Release/socketTest.csprojResolveAssemblyReference.cache


BIN
PLCLinker/socketTest/obj/Release/socketTest.exe


BIN
PLCLinker/socketTest/obj/Release/socketTest.pdb