From 45045dab394abe534fa5221a1e09a90c1eebf835 Mon Sep 17 00:00:00 2001
From: qiuyao <qiuyao@hnkhzn.com>
Date: 星期一, 24 三月 2025 10:29:21 +0800
Subject: [PATCH] 更新通讯源码
---
项目代码/WIDESEAWCS_Server 正式/SerialPortService/PutakeServer.cs | 222 ++++++++++++++++++++++++++++---------------------------
1 files changed, 113 insertions(+), 109 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 714c07d..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"
@@ -9,66 +9,151 @@
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();
- // _iNjTaskRepository.QueryData(x=>x.)
+ 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.宸插畬鎴�:
@@ -76,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 };
}
}
@@ -99,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 {
@@ -143,77 +211,13 @@
catch (Exception ex)
{
- //鍥炴粴浜嬪姟
- _uniUnitOfWorkManage.RollbackTran();
+
return new WebResponseContent { Status = false, Message = "鏇存柊澶辫触锛�" + ex.Message };
}
}
- //鏇村叿浠诲姟鐘舵�佹煡璇�
- public WebResponseContent seletTaskeStatus(string status)
- {
- try
- {
- //寮�鍚簨鍔�
- _uniUnitOfWorkManage.BeginTran();
- var Nj = BaseDal.QueryData(i => i.Pustatus == status);
+
- if (Nj != null)
- {
- //鎻愪氦浜嬪姟
- _uniUnitOfWorkManage.CommitTran();
- return new WebResponseContent { Status = true, Data = Nj };
- }
- else
- {
- return new WebResponseContent { Status = false, Message = "娌℃湁鎵惧埌" };
- }
-
- }
- catch (Exception ex)
- {
-
- //鍥炴粴浜嬪姟
- _uniUnitOfWorkManage.RollbackTran();
- return new WebResponseContent { Status = false, Message = "鏇存柊澶辫触锛�" + ex.Message };
- }
- }
-
- public WebResponseContent GetNJandPu()
- {
- try
- {
- var nj = _iNjTaskRepository.QueryData(); // 鑾峰彇 NJ 浠诲姟鍒楄〃
- //var pu = BaseDal.QueryData(); // 鑾峰彇 PU 浠诲姟鍒楄〃
- //var result = nj.Join(
- // pu,
- // n => n.NJtaskID, // 澶栭敭 (涓昏〃)
- // p => p.ID.ToString(), // 鍐呴敭 (浠庤〃)
- // (n, p) => new // 杩炴帴鍚庣殑缁撴灉
- // {
- // n.NJtaskID,
- // n.trainKind,
- // n.trainNum,
- // n.track,
- // n.coachNum,
- // n.bogie,
- // n.processDept,
- // n.createTime,
- // p.Pustatus,
-
- // }).ToList();
-
-
- return new WebResponseContent { Status = true, Data = nj };
-
- }
-
- catch (Exception)
- {
-
- throw;
- }
- }
}
}
--
Gitblit v1.9.3