From ac93c4092a21dbf0fa9cf8b9b1302f2d5d183f61 Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期一, 09 六月 2025 20:48:20 +0800
Subject: [PATCH] 修改提示字段
---
project/后台管理/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs | 348 ++++++++++++++++++++++++++++++++++++---------------------
1 files changed, 218 insertions(+), 130 deletions(-)
diff --git "a/project/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs" "b/project/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs"
index e9327e6..955cb86 100644
--- "a/project/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs"
+++ "b/project/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs"
@@ -36,133 +36,170 @@
/// <returns></returns>
public WebResponseContent automation(string extendedState)
{
+ var messages = new List<string>();
+ //string message = "";
try
{
for (int deptId = 1; deptId <= 5; deptId++)
{
- var devices = GetDevicesByDeptId(deptId);
- if (devices == null)
- {
- Console.WriteLine($"DeptId={deptId} 鏈壘鍒拌澶囷紝璺宠繃");
- continue;
- }
-
- var para = BaseDal.QueryData()
- .Where(x => x.Deptid == deptId)
- .OrderByDescending(x => x.CreateDate)
- .FirstOrDefault();
-
- if (para == null)
- {
- Console.WriteLine($"DeptId={deptId} 鏈壘鍒板弬鏁伴厤缃紝璺宠繃");
- continue;
- }
-
- int ext = (int)para.ExtendSpeed;//宸LC鑷姩浼稿嚭缂╁洖閫熷害
- int ret = (int)para.RetractionSpeed;//鍙砅LC鑷姩浼稿嚭缂╁洖閫熷害
- int liftPosition = (int)para.LeftPosition;//宸︿几鍑轰綅缃�
- int rigtpostition = (int)para.RightPosition;//鍙充几鍑轰綅缃�
-
try
{
- var leftorigin = devices.Value.left.Communicator.Read<bool>("M115");//宸lc鍒板師鐐逛綅缃俊鍙�
- var rightorigin = devices.Value.right.Communicator.Read<bool>("M115");//鍙硃lc鍒拌揪鍘熺偣浣嶇疆淇″彿
- if (leftorigin == true || rightorigin == true)
+ var devices = GetDevicesByDeptId(deptId);
+ if (devices == null)
{
- return new WebResponseContent { Status = false, Message = "宸插埌鍘熷鐐�" };
- }
- }
- catch (Exception)
- {
-
-
- }
- try
- {
- var lefttarget = devices.Value.left.Communicator.Read<bool>("M116");//宸lc鍒拌揪鐩爣浣嶇疆
- var righttarget = devices.Value.right.Communicator.Read<bool>("M116");//鍙硃lc鍒拌揪鐩爣浣嶇疆
- if (lefttarget == true || righttarget == true)
- {
- return new WebResponseContent { Status = false, Message = "宸插埌鏈�澶у��" };
+ messages.Add($"DeptId={deptId} 鏈壘鍒拌澶囷紝璺宠繃");
+ continue;
}
- }
- catch (Exception)
- {
+ var para = BaseDal.QueryData()
+ .Where(x => x.Deptid == deptId)
+ .OrderByDescending(x => x.CreateDate)
+ .FirstOrDefault();
+ if (para == null)
+ {
+ messages.Add($"DeptId={deptId} 鏈壘鍒板弬鏁伴厤缃紝璺宠繃");
+ continue;
+ }
- }
+ int ext = (int)para.ExtendSpeed;
+ int ret = (int)para.RetractionSpeed;
+ int liftPos = (int)para.LeftPosition;
+ int rightPos = (int)para.RightPosition;
-
- if (extendedState == "浼稿嚭")
- {
try
{
- devices.Value.left.Communicator.Write<int>("D1001", ext);//宸LC鑷姩浼稿嚭缂╁洖閫熷害
- devices.Value.left.Communicator.Write<bool>("M102", true);//浼稿嚭鎸夐挳
- devices.Value.left.Communicator.Write<int>("D1002", liftPosition);//宸︿几鍑轰綅缃�
+ if (devices.Value.left.Communicator.Read<bool>("M117"))
+ {
+
+ return new WebResponseContent { Status = true, Message = "鐜板湪姝e湪杩涜涓紝绛夊緟鎿嶄綔瀹屾垚" };
+ }
+
}
catch (Exception)
{
+ }
+ try
+ {
+ if (devices.Value.right.Communicator.Read<bool>("M117"))
+ {
+ return new WebResponseContent { Status = true, Message = "鐜板湪姝e湪杩涜涓紝绛夊緟鎿嶄綔瀹屾垚" };
+ }
+ }
+ catch (Exception)
+ {
+ }
+
+ if (extendedState == "浼稿嚭")
+ {
+
+ try
+ {
+ if (devices.Value.left.Communicator.Read<float>("D80")>= liftPos-5)//鍒拌揪鏈�澶т綅缃�)
+ {
+ messages.Add($"杞ㄩ亾绔檣deptId}宸︿几缂╂潌宸插埌鏈�澶т綅缃�");
+
+ }
+ else
+ {
+ devices.Value.left.Communicator.Write<int>("D1022", liftPos);//浼稿嚭浣嶇疆
+ devices.Value.left.Communicator.Write<int>("D1002", ext);//宸LC鑷姩鍔ㄤ几鍑虹缉鍥為�熷害
+ devices.Value.left.Communicator.Write<bool>("M102", true);//浼稿嚭鎸夐挳
+ }
}
-
+ catch { }
+
try
{
- devices.Value.right.Communicator.Write<int>("D1001", ret); //鍙砅LC鑷姩浼稿嚭缂╁洖閫熷害
+ if (devices.Value.left.Communicator.Read<float>("D80") >=rightPos-5)
+ {
+ messages.Add($"杞ㄩ亾绔檣deptId}鍙充几缂╂潌宸插埌鏈�澶т綅缃�");
+
+ }
+ else
+ {
+ devices.Value.right.Communicator.Write<int>("D1022", rightPos);
+ devices.Value.right.Communicator.Write<int>("D1002", ret);
devices.Value.right.Communicator.Write<bool>("M102", true);
- devices.Value.right.Communicator.Write<int>("D1002", rigtpostition);//鍙充几鍑轰綅缃�
- }
- catch (Exception)
+
+ } }
+ catch { }
+
+ }
+ else if (extendedState == "缂╁洖")
+ {
+
+ try
{
-
- throw;
+ if (devices.Value.left.Communicator.Read<bool>("M115")) //鍒拌揪鍘熺偣浣�
+ {
+ messages.Add($"杞ㄩ亾绔檣deptId}宸︿几缂╂潌宸插埌鍘熺偣");
+
}
-
-
-
- Console.WriteLine($"DeptId={deptId} 锛屽乏閫熷害={ext}锛屽彸閫熷害={ret}");
+ else
+ {
+ devices.Value.left.Communicator.Write<int>("D1022", liftPos);//浼稿嚭浣嶇疆
+ devices.Value.left.Communicator.Write<int>("D1002", ext);//宸LC鑷姩浼�=缂╁洖鍑虹缉鍥為�熷害
+ devices.Value.left.Communicator.Write<bool>("M103", true);//宸lc缂╁洖鎸夐挳
+
+ }
}
- else if (extendedState == "缂╁洖")
- {
+ catch { }
+
+
+
try
{
- devices.Value.left.Communicator.Write<int>("D1001", ext);//缂╁洖閫熷害
- devices.Value.left.Communicator.Write<bool>("M103", true);//缂╁洖鎸夐挳
- }
- catch (Exception)
+ if (devices.Value.right.Communicator.Read<bool>("M115"))
{
-
- throw;
+ messages.Add($"杞ㄩ亾绔檣deptId}鍙充几缂╂潌宸插埌鍘熺偣");
+
}
-
- try
+ else
{
- devices.Value.right.Communicator.Write<int>("D1001", ret);
+ devices.Value.right.Communicator.Write<int>("D1022", rightPos);
+ devices.Value.right.Communicator.Write<int>("D1002", ret);
devices.Value.right.Communicator.Write<bool>("M103", true);
+
+ }
+
+
}
- catch (Exception)
+ catch { }
+
+ }
+ else
{
-
- throw;
+ return new WebResponseContent { Status = false, Message = "鏈煡鎿嶄綔鍛戒护" };
}
- Console.WriteLine($"DeptId={deptId} 缂╁洖鎿嶄綔锛屽乏閫熷害={ext}锛屽彸閫熷害={ret}");
+
+
}
- else
+ catch (Exception exDept)
{
- return new WebResponseContent { Status = false, Message = "鏈煡鐨勬搷浣滃懡浠�" };
+ messages.Add($"DeptId={deptId} 寮傚父锛歿exDept.Message}");
}
}
- return new WebResponseContent { Status = true, Message = "鍏ㄩ儴璁惧鎿嶄綔瀹屾垚",
+ return new WebResponseContent
+ {
+ Status = true,
+ Message = messages.Count == 0 ? "鎵ц鎴愬姛" : "閮ㄥ垎鎵ц澶辫触锛�" + string.Join("锛�", messages),
+ Data = messages
};
}
catch (Exception ex)
{
- return new WebResponseContent { Status = false, Message = $"鎿嶄綔寮傚父锛歿ex.Message}" };
+ return new WebResponseContent
+ {
+ Status = false,
+ Message = $"鑷姩鎺у埗寮傚父锛歿ex.Message}"
+ };
}
}
+
@@ -176,96 +213,147 @@
/// <param name="DeptId">鑲¢亾鍙�</param>
/// <returns></returns>
public WebResponseContent ManualOperation(string position, string ExtendedState,int DeptId)
- {
+ {
try
{
+ if (!int.TryParse(AppSettings.Get("DepartmentID"), out int deid))
+ {
+ return new WebResponseContent { Status = false, Message = "閰嶇疆椤� DepartmentID 鏃犳硶杞崲涓烘暣鏁�" };
+ }
+ var devices = GetDevicesByDeptId(deid);
- var devices = GetDevicesByDeptId(DeptId);
- if (devices == null)
- return new WebResponseContent { Status = false, Message = "璁惧鏈壘鍒�" };
+ //淇╀釜plc宸﹀彸鍚勪竴涓�
+ //OtherDevice liftotherDevice = (OtherDevice)Storage.Devices.Find(x => x.DeviceCode == "SSG001");
+ //OtherDevice rightotherDevice = (OtherDevice)Storage.Devices.Find(x => x.DeviceCode == "SSG002");
- var para = BaseDal.QueryData(x=>x.Deptid== DeptId).OrderByDescending(x => x.CreateDate).FirstOrDefault();
- if (para == null)
- return new WebResponseContent { Status = false, Message = "鍙傛暟鏈厤缃�" };
-
+ //鎵惧埌Dt_Parameters涓殑鏈�鏂颁竴鏉℃暟鎹牴鎹綋鍓嶇殑deid
+ var para = BaseDal.QueryData().Where(x => x.Deptid == deid).OrderByDescending(x => x.CreateDate).FirstOrDefault();
int ext = (int)para.ManualExtend;//宸LC鎵嬪姩浼稿嚭缂╁洖閫熷害
int ret = (int)para.ManualRetraction;//鍙砅LC鎵嬪姩浼稿嚭缂╁洖閫熷害
+ int liftPosition = (int)para.LeftPosition;//宸︿几鍑轰綅缃�
+ int rigtpostition = (int)para.RightPosition;//鍙充几鍑轰綅缃�
+ //bool canLeft = true,
+ // canRight = true;
+ string message = "";
+
try
{
- var leftorigin = devices.Value.left.Communicator.Read<bool>("M115");//宸lc鍒板師鐐逛綅缃俊鍙�
- var rightorigin = devices.Value.right.Communicator.Read<bool>("M115");//鍙硃lc鍒拌揪鍘熺偣浣嶇疆淇″彿
- if (leftorigin == true || rightorigin == true)
+ if (devices.Value.left.Communicator.Read<bool>("M117")) //榛樿鏄痜lase
{
- return new WebResponseContent { Status = false, Message = "宸插埌鍘熷鐐�" };
- }
- }
- catch (Exception)
- {
-
- }
- try
- {
- var lefttarget = devices.Value.left.Communicator.Read<bool>("M116");//宸lc鍒拌揪鐩爣浣嶇疆
- var righttarget = devices.Value.right.Communicator.Read<bool>("M116");//鍙硃lc鍒拌揪鐩爣浣嶇疆
- if (lefttarget == true || righttarget == true)
- {
- return new WebResponseContent { Status = false, Message = "宸插埌鏈�澶у��" };
+ return new WebResponseContent { Status = true, Message = "鐜板湪姝e湪杩涜涓紝绛夊緟鎿嶄綔瀹屾垚" };
}
}
catch (Exception)
{
-
+ }
+ try
+ {
+ if (devices.Value.right.Communicator.Read<bool>("M117"))
+ {
+ return new WebResponseContent { Status = true, Message = "鐜板湪姝e湪杩涜涓紝绛夊緟鎿嶄綔瀹屾垚" };
+ }
}
-
-
+ catch (Exception)
+ {
+ }
if (position == "宸�" && ExtendedState == "浼稿嚭")
{
- devices.Value.left.Communicator.Write<int>("D1000", ext);//宸LC鎵嬪姩浼稿嚭缂╁洖閫熷害
- devices.Value.left.Communicator.Write<bool>("M100", true);//浼稿嚭鎸夐挳
- Console.WriteLine($"{position}宸LC鑷姩浼稿嚭缂╁洖閫熷害{ext}");
+ if (devices.Value.left.Communicator.Read<float>("D80") >= liftPosition - 5) //鍒拌揪鐩爣浣嶇疆
+ {
+ message += "宸︿几缂╂潌鍒拌揪鐩爣浣嶇疆锛�";
+ }
+ else
+ {
+ devices.Value.left.Communicator.Write<int>("D1004", liftPosition);//宸︿几鍑轰綅缃�
+ devices.Value.left.Communicator.Write<int>("D1000", ext);//宸LC鎵嬪姩浼稿嚭缂╁洖閫熷害
+ devices.Value.left.Communicator.Write<bool>("M100", true);//浼稿嚭鎸夐挳
+ Thread.Sleep(100); // 绛夊緟100ms锛堟ā鎷熸寜閽寜涓嬶級
+ devices.Value.left.Communicator.Write<bool>("M100", false); // 閲婃斁鎸夐挳
+
+
+ Console.WriteLine($"{position}浼哥缉鏉嗘墜鍔ㄤ几鍑簕ext}");
+ }
+
}
else if (position == "宸�" && ExtendedState == "缂╁洖")
{
- devices.Value.left.Communicator.Write<int>("D1000", ext);//宸LC鎵嬪姩浼稿嚭缂╁洖閫熷害
- devices.Value.left.Communicator.Write<bool>("M101", true);
- Console.WriteLine($"{position}宸LC鑷姩浼稿嚭缂╁洖閫熷害{ext}");
+ if (devices.Value.left.Communicator.Read<bool>("M115"))//缂╁洖鐨勬椂鍊欏垽鏂�)
+ {
+ message += "宸LC宸插埌鍘熺偣锛�";
+ }
+ else
+ {
+ devices.Value.left.Communicator.Write<int>("D1004", liftPosition);//浼稿嚭浣嶇疆
+ devices.Value.left.Communicator.Write<int>("D1000", ext);//宸LC鎵嬪姩浼稿嚭缂╁洖閫熷害
+ devices.Value.left.Communicator.Write<bool>("M101", true);
+ Thread.Sleep(100); // 绛夊緟100ms锛堟ā鎷熸寜閽寜涓嬶級
+ devices.Value.left.Communicator.Write<bool>("M101", false); // 閲婃斁鎸夐挳
+ Console.WriteLine($"{position}浼哥缉鏉嗘墜鍔ㄧ缉鍥瀧ext}");
+ }
+
}
- else if (position == "鍙�" && ExtendedState == "浼稿嚭")
+
+ if (position == "鍙�" && ExtendedState == "浼稿嚭")
{
- devices.Value.right.Communicator.Write<int>("D1000", ret);//鍙砅LC鎵嬪姩浼稿嚭缂╁洖閫熷害
- devices.Value.right.Communicator.Write<bool>("M100", true);
- Console.WriteLine($"{position}鍙砅LC鑷姩浼稿嚭缂╁洖閫熷害{ext}");
+ if (devices.Value.right.Communicator.Read<float>("D80") >= rigtpostition - 5)
+ {
+ message += "鍙充几缂╂潌鍒拌揪鐩爣浣嶇疆锛�";
+ }
+ else
+ {
+ devices.Value.right.Communicator.Write<int>("D1004", rigtpostition);//鍙充几鍑轰綅缃�
+ devices.Value.right.Communicator.Write<int>("D1000", ret);//鍙砅LC鎵嬪姩浼稿嚭缂╁洖閫熷害
+ devices.Value.right.Communicator.Write<bool>("M100", true);
+ Thread.Sleep(100); // 绛夊緟100ms锛堟ā鎷熸寜閽寜涓嬶級
+ devices.Value.right.Communicator.Write<bool>("M100", false); // 閲婃斁鎸夐挳
+ Console.WriteLine($"{position}浼哥缉鏉嗘墜鍔ㄤ几鍑簕ret}");
+ }
+
+
}
else if (position == "鍙�" && ExtendedState == "缂╁洖")
{
- devices.Value.right.Communicator.Write<int>("D1000", ret);//鍙砅LC鎵嬪姩浼稿嚭缂╁洖閫熷害
- devices.Value.right.Communicator.Write<bool>("M101", true);
- Console.WriteLine($"{position}鍙砅LC鑷姩浼稿嚭缂╁洖閫熷害{ret}");
+ if (devices.Value.right.Communicator.Read<bool>("M115"))
+ {
+ message += "鍙充几缂╂潌宸插埌鍘熺偣锛�";
+ }
+ else
+ {
+ devices.Value.right.Communicator.Write<int>("D1004", rigtpostition);//浼稿嚭浣嶇疆
+ devices.Value.right.Communicator.Write<int>("D1000", ret);//鍙砅LC鎵嬪姩浼稿嚭缂╁洖閫熷害
+ devices.Value.right.Communicator.Write<bool>("M101", true);
+ Thread.Sleep(100); // 绛夊緟100ms锛堟ā鎷熸寜閽寜涓嬶級
+ devices.Value.right.Communicator.Write<bool>("M101", false); // 閲婃斁鎸夐挳
+ Console.WriteLine($"{position}浼哥缉鏉嗘墜鍔ㄧ缉鍥瀧ret}");
+ }
+
}
- else
+
+
+ return new WebResponseContent
{
- return new WebResponseContent { Status = false, Message = "鐘舵�佸弬鏁伴敊璇�" };
- }
-
- return new WebResponseContent { Status = true, Message = "鎴愬姛",
+ Status = true,
+ Message = string.IsNullOrEmpty(message) ? "鎵ц鎴愬姛" : $"{message}",
Data = new
{
ManualExtend = ext,
- ManualRetraction = ret
+ ManualRetraction = ret,
+ message
}
-
};
-
}
+
+
catch (Exception ex)
{
return new WebResponseContent { Status = false, Message = ex.Message };
}
+
}
--
Gitblit v1.9.3