From c06382f1b619e1dc7f37be36a0cee126239abdee Mon Sep 17 00:00:00 2001
From: chengsc <Demo@DESKTOP-CPA90BF>
Date: 星期三, 30 十月 2024 11:35:22 +0800
Subject: [PATCH] Merge branch 'master' into csc
---
Admin.NET/WCS.Application/Service/WcsDevice/WcsDeviceService.cs | 75 +++++++++++++++++++++++++++++++++++++
1 files changed, 75 insertions(+), 0 deletions(-)
diff --git a/Admin.NET/WCS.Application/Service/WcsDevice/WcsDeviceService.cs b/Admin.NET/WCS.Application/Service/WcsDevice/WcsDeviceService.cs
index 0b6596b..ee6a929 100644
--- a/Admin.NET/WCS.Application/Service/WcsDevice/WcsDeviceService.cs
+++ b/Admin.NET/WCS.Application/Service/WcsDevice/WcsDeviceService.cs
@@ -375,6 +375,81 @@
}
+
+ /// <summary>
+ /// 鎵嬪姩鍐欏叆PLC鍚仠淇℃伅
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "WriteStartStop")]
+ [DisplayName("鍐欏叆PLC鍚仠淇℃伅")]
+ public async Task WriteStartStop(WcsDeviceStartStop input)
+ {
+ WcsPlc modPlc;
+ string DbNum = "";// DB鍧�
+
+
+ var plcList = await _wcsPlcRep.Context.Queryable<WcsPlc>().Where(s => s.Type == PLCTypeEnum.ConveyorLine && s.IsDelete == false).ToListAsync();
+ if (input.Layer == "1")
+ {
+ modPlc = plcList.FirstOrDefault(m => m.Text == "1灞傛墭鐩樿緭閫佺嚎");
+ if (modPlc == null)
+ throw Oops.Bah($"鏈煡璇㈠埌1妤煎眰PLC淇℃伅");
+ DbNum = "";
+ }
+ else if (input.Layer == "2")
+ {
+ modPlc = plcList.FirstOrDefault(m => m.Text == "2灞傛墭鐩樿緭閫佺嚎");
+ if (modPlc == null)
+ throw Oops.Bah($"鏈煡璇㈠埌2妤煎眰PLC淇℃伅");
+ DbNum = "91";
+ PLCUtil modUtil = new PLCUtil(modPlc);
+ switch (input.Type)
+ {
+ case "TwoPalletStart":
+ modUtil.SetPlcDBValue(PLCDataTypeEnum.Bit, DbNum, "46.0", "true");
+ break;
+ case "OnePalletStop":
+ modUtil.SetPlcDBValue(PLCDataTypeEnum.Bit, DbNum, "46.1", "true");
+ break;
+ case "TwoMaStart":
+ modUtil.SetPlcDBValue(PLCDataTypeEnum.Bit, DbNum, "58.0", "true");
+ break;
+ case "TwoMaStop":
+ modUtil.SetPlcDBValue(PLCDataTypeEnum.Bit, DbNum, "58.1", "true");
+ break;
+ case "TwoMaTwoStart":
+ modUtil.SetPlcDBValue(PLCDataTypeEnum.Bit, DbNum, "58.2", "true");
+ break;
+ case "TwoMaTwoStop":
+ modUtil.SetPlcDBValue(PLCDataTypeEnum.Bit, DbNum, "58.3", "true");
+ break;
+ case "TwoBoxStart":
+ modUtil.SetPlcDBValue(PLCDataTypeEnum.Bit, DbNum, "46.2", "true");
+ break;
+ case "TwoBoxStop":
+ modUtil.SetPlcDBValue(PLCDataTypeEnum.Bit, DbNum, "46.3", "true");
+ break;
+ default:
+ break;
+ }
+ modUtil.Close();
+ }
+ else if (input.Layer == "3")
+ {
+ modPlc = plcList.FirstOrDefault(m => m.Text == "3灞傛墭鐩樿緭閫佺嚎");
+ if (modPlc == null)
+ throw Oops.Bah($"鏈煡璇㈠埌3妤煎眰PLC淇℃伅");
+ DbNum = "";
+ }
+ else
+ {
+ throw Oops.Bah("鎿嶄綔绫诲瀷淇℃伅閿欒");
+ }
+
+ }
+
#endregion
/// <summary>
--
Gitblit v1.8.0