From 2f0c81709876d76b6b120cf6ac43f05cda6dfe4c Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期六, 22 三月 2025 09:36:13 +0800
Subject: [PATCH] 修改websocket;
---
项目代码/WIDESEAWCS_Server 正式/SerialPortService/PutakeServer.cs | 163 +++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 119 insertions(+), 44 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/PutakeServer.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/PutakeServer.cs"
index a39bdfd..bcc052d 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/PutakeServer.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/PutakeServer.cs"
@@ -3,68 +3,157 @@
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.Information;
using WIDESEA_ISerialPortRepository;
+using WIDESEA_SerialPortRepository;
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseRepository;
using WIDESEAWCS_Core.BaseServices;
+using WIDESEAWCS_Core.Helper;
+using WIDESEAWCS_Core.HttpContextUser;
using WIDESEAWCS_ITaskInfoRepository;
using WIDESEAWCS_ITaskInfoService;
using WIDESEAWCS_Model.Models;
namespace WIDESEAWCS_TaskInfoService
{
- public class Putake : ServiceBase<Dt_Putake, IPutakeRepository>, IPutakeServer
+ public class PutakeServer : ServiceBase<Dt_Putake, IPutakeRepository>, IPutakeServer
{
private IUnitOfWorkManage _uniUnitOfWorkManage;
private INjTaskRepository _iNjTaskRepository;
+
- public Putake(IPutakeRepository BaseDal, IUnitOfWorkManage uniUnitOfWorkManage, INjTaskRepository iNjTaskRepository) : base(BaseDal)
+ public PutakeServer(IPutakeRepository BaseDal, IUnitOfWorkManage uniUnitOfWorkManage, INjTaskRepository iNjTaskRepository ) : base(BaseDal)
{
_uniUnitOfWorkManage = uniUnitOfWorkManage;//鏁版嵁搴撲簨鍔�
_iNjTaskRepository= iNjTaskRepository;
+
+
+ }
+ public override PageGridData<Dt_Putake> GetPageData(PageDataOptions options)
+ {
+ OrderByParameters = new Dictionary<string, SqlSugar.OrderByType>
+ {
+ { nameof(Dt_Putake.Pustatus),SqlSugar.OrderByType.Asc },
+ // { nameof(Dt_Putake.CreateDate),SqlSugar.OrderByType.Asc }//鎸夌姸鎬佸拰鍒涘缓鏃堕棿鍗囧簭鎺掑簭
+ };
+ return base.GetPageData(options);
}
private enum cond
{
- 寰呴绛�=1,
- 寰呬綔涓�=2,
- 寰呭綊绛�=3,
- 寰呰川妫�=4,
- 宸插畬鎴�=5
+ 寰呴绛�=0,
+ 寰呬綔涓�=1,
+ 寰呭綊绛�=2,
+ 寰呰川妫�=3,
+ 宸插畬鎴�=4
}
//淇敼涓嬪彂浠诲姟琛ㄧ殑浠诲姟鐘舵��
- public WebResponseContent ChangeStatus(int id)
+ public WebResponseContent ChangeStatus(string id,string gruops)
{
try
{
- var putake = BaseDal.QueryData(i => i.ID == id).FirstOrDefault();
+ var putake = BaseDal.QueryData(i => i.Njtakeid == id&&i.Grouptype==gruops).FirstOrDefault();
+ var nj = _iNjTaskRepository.QueryData(i => i.NJtaskID == id).FirstOrDefault();
if (putake == null)
{
return new WebResponseContent { Status = false, Message = "鏈壘鍒拌浠诲姟" };
}
- //putake.Pustatus鏄瓧绗︿覆,闇�瑕佸厛杞崲鎴� cond 鏋氫妇锛�
- if (!Enum.TryParse(putake.Pustatus, out cond currentStatus))
+ //鎶婃暟鎹簱涓殑 int 鍊艰浆鎹负 `cond` 鏋氫妇锛�
+ if (!Enum.IsDefined(typeof(cond), putake.Pustatus))
{
return new WebResponseContent { Status = false, Message = "褰撳墠鐘舵�佷笉鍚堟硶锛屾棤娉曟洿鏂�" };
}
+ cond currentStatus = (cond)putake.Pustatus; // int -> 鏋氫妇杞崲
+
switch (currentStatus)
{
- case cond.寰呴绛�:
- putake.Pustatus = cond.寰呬綔涓�.ToString();
- //_iNjTaskRepository
+
+ case cond.寰呴绛�: //
+ putake.Pustatus = (int)cond.寰呬綔涓�; // 鏋氫妇杞� int
+ if (gruops=="鏈烘")
+ {
+
+ }
+ if (gruops == "鐢垫皵")
+ {
+
+ }
+ if (gruops == "鍦版矡")
+ {
+
+ }
break;
- case cond.寰呬綔涓�:
- putake.Pustatus = cond.寰呭綊绛�.ToString();
+ case cond.寰呬綔涓�://寮�濮嬩綔涓氾紝寮�濮嬫椂闂�
+ putake.Pustatus = (int)cond.寰呭綊绛�;
+ if (gruops == "鏈烘")
+ {
+ nj.startTime_LC = DateTime.Now;//寮�濮嬫椂闂�
+ nj.createTime = DateTime.Now;
+ }
+ if (gruops == "鐢垫皵")
+ {
+ nj!.startTime_DQ = DateTime.Now;
+ nj.createTime = DateTime.Now;
+ }
+ if (gruops == "鍦版矡")
+ {
+ nj!.startTime_DG = DateTime.Now;
+ nj.createTime = DateTime.Now;
+ }
break;
- case cond.寰呭綊绛�:
- putake.Pustatus = cond.寰呰川妫�.ToString();
+ case cond.寰呭綊绛�://纭褰掕繕锛屽畬鎴愭椂闂�
+ putake.Pustatus = (int)cond.寰呰川妫�;
+ if (gruops == "鏈烘")
+ {
+ nj.endTime_LC = DateTime.Now;
+ nj.createTime = DateTime.Now;
+ }
+ if (gruops == "鐢垫皵")
+ {
+ nj.endTime_DQ = DateTime.Now;
+ nj.createTime = DateTime.Now;
+ }
+ if (gruops == "鍦版矡")
+ {
+ nj.endTime_DG = DateTime.Now;
+ nj.createTime = DateTime.Now;
+ }
break;
- case cond.寰呰川妫�:
- putake.Pustatus=cond.宸插畬鎴�.ToString();
+ case cond.寰呰川妫�: // 瀹屾垚璐ㄦ鏃堕棿
+ putake.Pustatus = (int)cond.宸插畬鎴�;
+
+ //DateTime latestTime = new DateTime(1900, 1, 1, 0, 0, 0);
+
+ if (gruops == "鏈烘")
+ {
+ nj!.confirmTime_LC = DateTime.Now;
+ nj.createTime = DateTime.Now;
+ }
+ if (gruops == "鐢垫皵")
+ {
+ nj!.confirmTime_DQ = DateTime.Now;
+ nj.createTime = DateTime.Now;
+ }
+ if (gruops == "鍦版矡")
+ {
+ nj!.confirmTime_DG = DateTime.Now;
+ nj.createTime = DateTime.Now;
+ }
+
+ // 鑾峰彇鏈�鍚庝竴娆″畬鎴愮殑鏃堕棿
+ // latestTime = (DateTime)new[] { nj.confirmTime_LC, nj.confirmTime_DQ, nj.confirmTime_DG }.Max(); // 鍙栨渶鏂扮殑鏃堕棿
+
+ DateTime? latestTime = new[] { nj.confirmTime_LC, nj.confirmTime_DQ, nj.confirmTime_DG }
+ .Where(t => t.HasValue) // 杩囨护鎺� null
+ .Select(t => t.Value) // 鍙栧嚭闈炵┖鐨勫��
+ .DefaultIfEmpty(DateTime.Now) // 鑻ユ暟缁勪负绌猴紝浣跨敤褰撳墠鏃堕棿
+ .Max(); // 鍙栨渶澶ф椂闂�
+ nj.endTime = latestTime; // 璧嬪�兼渶鏂版椂闂�
putake.Finishedtime = DateTime.Now;
break;
case cond.宸插畬鎴�:
@@ -72,20 +161,15 @@
default:
return new WebResponseContent { Status = false, Message = "鏈煡鐘舵�侊紝鏃犳硶鏇存柊" };
}
- //寮�鍚簨鍔�
- _uniUnitOfWorkManage.BeginTran();
- // 鏇存柊鏁版嵁搴�
+
+ _iNjTaskRepository.UpdateData(nj);
BaseDal.UpdateData(putake);
- //鎻愪氦浜嬪姟
- _uniUnitOfWorkManage.CommitTran();
- return new WebResponseContent { Status = true,Data= putake };
+ return new WebResponseContent { Status = true, Data = putake };
}
catch (Exception ex)
{
- //鍥炴粴浜嬪姟
- _uniUnitOfWorkManage.RollbackTran();
return new WebResponseContent { Status = false, Message = "鏇存柊澶辫触锛�" + ex.Message };
}
}
@@ -95,38 +179,26 @@
{
try
{
- //寮�鍚簨鍔�
- _uniUnitOfWorkManage.BeginTran();
-
var dg = BaseDal.QueryData(i=>i.Grouptype== group);
- //鎻愪氦浜嬪姟
- _uniUnitOfWorkManage.CommitTran();
return new WebResponseContent { Status = true, Data = dg };
}
catch (Exception ex)
{
- // 鍥炴粴浜嬪姟
- _uniUnitOfWorkManage.RollbackTran();
return new WebResponseContent { Status = false, Message = $"鏌ョ湅澶辫触:{ex}" };
}
}
-
- //鏌ョ湅杩欎釜涓嬪彂浠诲姟鐨勪腑浠诲姟琛ㄤ腑鐨勮鎯呮暟鎹�
+ //鏌ョ湅杩欎釜涓嬪彂浠诲姟鐨勪腑浠诲姟琛ㄤ腑鐨勮鎯呮暟鎹紙鍜宯jtaskServe涓竴鏍凤級
public WebResponseContent GetNjtake(string njid)
{
try
{
- //寮�鍚簨鍔�
- _uniUnitOfWorkManage.BeginTran();
-
var Nj = _iNjTaskRepository.QueryData(i => i.NJtaskID == njid).FirstOrDefault();
if (Nj != null)
{
- //鎻愪氦浜嬪姟
- _uniUnitOfWorkManage.CommitTran();
+
return new WebResponseContent { Status = true, Data = Nj };
}
else {
@@ -139,10 +211,13 @@
catch (Exception ex)
{
- //鍥炴粴浜嬪姟
- _uniUnitOfWorkManage.RollbackTran();
+
return new WebResponseContent { Status = false, Message = "鏇存柊澶辫触锛�" + ex.Message };
}
}
+
+
+
+
}
}
--
Gitblit v1.9.3