From 1d92f653e2bf1174d5d1d101ee0bbbd2103ecf4a Mon Sep 17 00:00:00 2001 From: yanjinhui <3306209981@qq.com> Date: 星期三, 12 三月 2025 08:34:41 +0800 Subject: [PATCH] 通信 --- 项目代码/WIDESEAWCS_Server 正式/SerialPortService/NjTaskServer.cs | 239 ++++++++++++++++++++++++++++++++++------------------------- 1 files changed, 138 insertions(+), 101 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/NjTaskServer.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/NjTaskServer.cs" index a2750a5..97da93f 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/NjTaskServer.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WIDESEAWCS_Server \346\255\243\345\274\217/SerialPortService/NjTaskServer.cs" @@ -5,6 +5,7 @@ using System.Net.NetworkInformation; using System.Text; using System.Threading.Tasks; +using StackExchange.Profiling.Internal; using WIDESEA_ISerialPortRepository; using WIDESEA_SerialPortRepository; using WIDESEAWCS_Core; @@ -37,71 +38,14 @@ } - public WebResponseContent Fuzzyquery(string trainkind, string trainnum, string track, string coachnum, string bogie, string processdept) - { - try - { - var query = BaseDal.Db.Queryable<Dt_NjTask>(); - // 鐢熸垚 OR 鏌ヨ鏉′欢 鍗充换鎰忓瓧娈甸兘鍙互鏌ョ湅 - if (!string.IsNullOrEmpty(trainkind) || !string.IsNullOrEmpty(trainnum) || - !string.IsNullOrEmpty(track) || !string.IsNullOrEmpty(coachnum) || - !string.IsNullOrEmpty(bogie) || !string.IsNullOrEmpty(processdept)) - { - query = query.Where(x => - (!string.IsNullOrEmpty(trainkind) && x.trainKind.Contains(trainkind)) || - (!string.IsNullOrEmpty(trainnum) && x.trainNum.Contains(trainnum)) || - (!string.IsNullOrEmpty(track) && x.track.Contains(track)) || - (!string.IsNullOrEmpty(coachnum) && x.coachNum.Contains(coachnum)) || - (!string.IsNullOrEmpty(bogie) && x.bogie.Contains(bogie)) || - (!string.IsNullOrEmpty(processdept) && x.processDept.Contains(processdept)) - ); - } - - var result = query.ToList(); // 鎵ц鏌ヨ .ToList()鏌ヨ鍒楄〃锛� .InSingle(1); // 鏍规嵁鏌ヨ鍗曚釜瀹炰綋 - return new WebResponseContent { Status = true, Data = result }; - } - catch (Exception ex) - { - - return new WebResponseContent { Status = false, Message = "鏌ョ湅澶辫触锛�" + ex.Message }; - } - - } + //淇濆瓨妯℃澘 public WebResponseContent Submtandsave(NjtakeDTO njtakeDTO) { try - { - - #region 鑷畾涔夊懡鍚嶇粰Njtaskid - // 鑾峰彇浠婂ぉ鐨勬棩鏈熼儴鍒嗭紝濡� "KH0306" - string todayPrefix = $"KH{DateTime.Now:MMdd}"; - - // 鏌ヨ鏁版嵁搴擄紝鎵惧嚭褰撳ぉ鏈�澶х殑 NJtaskID - var lastTask = BaseDal.QueryData(i => i.NJtaskID.StartsWith(todayPrefix)) - .OrderByDescending(i => i.NJtaskID) - .FirstOrDefault(); - - int nextNumber = 1; // 榛樿缂栧彿 - - if (lastTask != null) - { - // 鑾峰彇鍚庝袱浣嶅垎閽熺紪鍙� - string lastNumberPart = lastTask.NJtaskID.Substring(6, 2); - if (int.TryParse(lastNumberPart, out int lastNumber)) - { - nextNumber = lastNumber + 1; - } - } - - // 鐢熸垚 NJtaskID锛屼緥濡� KH030601, KH030602... - string CustomizeID = $"{todayPrefix}{nextNumber:D2}"; - #endregion - - - + { //鏇村叿妯℃澘id鏉ユ煡璇㈡槸鍚﹀瓨鍦ㄨ鏉℃暟鎹� var existtepm = _templateRepository.QueryFirst(i => i.TemplateID == njtakeDTO.Tpid); var Temp = new Dt_Template(); //濡傛灉浣犺鏇存柊閭d箞瑕佸厛鎵惧埌锛屽惁鍒欎綘杩欐牱鏄垱寤轰竴涓柊鐨勫璞� @@ -116,15 +60,13 @@ Temp.zhiJianYuan_Dq = njtakeDTO.zhijianyuan_dq; Temp.zhiJianYuan_Lc = njtakeDTO.zhijianyuan_lc; Temp.zhiJianYuan_Dg = njtakeDTO.zhijianyuan_dg; - Temp.liJu_Dg = njtakeDTO.liju_dq; + Temp.liJu_Dg = njtakeDTO.liju_dg; Temp.liJu_Dq = njtakeDTO.liju_dq; Temp.liJu_Lc = njtakeDTO.liju_lc; Temp.fuZhu_Dg = njtakeDTO.fuzhu_dg; Temp.fuZhu_Dq = njtakeDTO.fuzhu_dq; Temp.fuZhu_Lc = njtakeDTO.fuzhu_lc; - - - + } //濡傛灉鏈夊氨鍦ㄦā鏉夸笂杩涜鏇存敼 else @@ -132,7 +74,7 @@ existtepm.zhiJianYuan_Dq = njtakeDTO.zhijianyuan_dq; existtepm.zhiJianYuan_Lc = njtakeDTO.zhijianyuan_lc; existtepm.zhiJianYuan_Dg = njtakeDTO.zhijianyuan_dg; - existtepm.liJu_Dg = njtakeDTO.liju_dq; + existtepm.liJu_Dg = njtakeDTO.liju_dg; existtepm.liJu_Dq = njtakeDTO.liju_dq; existtepm.liJu_Lc = njtakeDTO.liju_lc; existtepm.fuZhu_Dg = njtakeDTO.fuzhu_dg; @@ -147,11 +89,11 @@ return new WebResponseContent { Status = false, Message = "娌℃湁鎵惧埌" }; } - task.Taskstatus = "宸叉淳宸�"; + task.Taskstatus = 1;//宸叉淳宸� if (existtepm == null) { - task.NJtaskID = CustomizeID; + task.TakeName = njtakeDTO.takename; task.jiShuYuan = njtakeDTO.jishuyuan; task.zhiJianYuan_DG = njtakeDTO.zhijianyuan_dg; @@ -165,6 +107,7 @@ task.fuZhu_DQ = njtakeDTO.fuzhu_dq; task.fuZhu_LC = njtakeDTO.fuzhu_lc; task.dispatchTime = DateTime.Now; + task.startTime = DateTime.Now; } else { @@ -181,6 +124,7 @@ task.fuZhu_DQ = njtakeDTO.fuzhu_dq; task.fuZhu_LC = njtakeDTO.fuzhu_lc; task.dispatchTime = DateTime.Now; + task.startTime = DateTime.Now; } @@ -231,9 +175,9 @@ // 瀹氫箟浠诲姟鎷嗚В鐨勭粍淇℃伅 var groups = new[] { - new { Grouptype= "鐢垫皵",Pustatus="寰呴绛�",Zhijianyuan = task.zhiJianYuan_DQ, Lijuzouyeyuan = task.liJu_DQ, Fuzyuan = task.fuZhu_DQ }, - new { Grouptype = "鏈烘",Pustatus="寰呴绛�", Zhijianyuan = task.zhiJianYuan_LC, Lijuzouyeyuan = task.liJu_LC, Fuzyuan = task.fuZhu_LC }, - new { Grouptype = "鍦版矡",Pustatus="寰呴绛�", Zhijianyuan = task.zhiJianYuan_DG, Lijuzouyeyuan = task.liJu_DG, Fuzyuan = task.fuZhu_DG } + new { Grouptype= "鐢垫皵",Pustatus=0,Zhijianyuan = task.zhiJianYuan_DQ, Lijuzouyeyuan = task.liJu_DQ, Fuzyuan = task.fuZhu_DQ }, + new { Grouptype = "鏈烘",Pustatus=0, Zhijianyuan = task.zhiJianYuan_LC, Lijuzouyeyuan = task.liJu_LC, Fuzyuan = task.fuZhu_LC }, + new { Grouptype = "鍦版矡",Pustatus=0, Zhijianyuan = task.zhiJianYuan_DG, Lijuzouyeyuan = task.liJu_DG, Fuzyuan = task.fuZhu_DG } }; @@ -313,30 +257,7 @@ { try { - #region 鑷畾涔夊懡鍚嶇粰Njtaskid - // 鑾峰彇浠婂ぉ鐨勬棩鏈熼儴鍒嗭紝濡� "KH0306" - string todayPrefix = $"KH{DateTime.Now:MMdd}"; - - // 鏌ヨ鏁版嵁搴擄紝鎵惧嚭褰撳ぉ鏈�澶х殑 NJtaskID - var lastTask = BaseDal.QueryData(i => i.NJtaskID.StartsWith(todayPrefix)) - .OrderByDescending(i => i.NJtaskID) - .FirstOrDefault(); - - int nextNumber = 1; // 榛樿缂栧彿 - - if (lastTask != null) - { - // 鑾峰彇鍚庝袱浣嶅垎閽熺紪鍙� - string lastNumberPart = lastTask.NJtaskID.Substring(6, 2); - if (int.TryParse(lastNumberPart, out int lastNumber)) - { - nextNumber = lastNumber + 1; - } - } - - // 鐢熸垚 NJtaskID锛屼緥濡� KH030601, KH030602... - string CustomizeID = $"{todayPrefix}{nextNumber:D2}"; - #endregion + //鍏堟牴鎹甶d鍒ゆ柇鏄惁鏈夎浠诲姟 @@ -346,10 +267,10 @@ return new WebResponseContent { Status = false, Message = "娌℃湁鎵惧埌" }; } - task.Taskstatus = "宸叉淳宸�"; + task.Taskstatus = 1;//宸叉淳宸� - task.NJtaskID = CustomizeID; - task.TakeName = notempDTO.takename; + + task.TakeName = notempDTO.takename; task.jiShuYuan = notempDTO.jishuyuan; task.zhiJianYuan_DG = notempDTO.zhijianyuan_dg; task.zhiJianYuan_DQ = notempDTO.zhijianyuan_dq; @@ -362,8 +283,7 @@ task.fuZhu_DQ = notempDTO.fuzhu_dq; task.fuZhu_LC = notempDTO.fuzhu_lc; task.dispatchTime=DateTime.Now; - //task.NJtaskID= - // task.startTime =DateTime.Now; + task.startTime = DateTime.Now; @@ -414,9 +334,9 @@ // 瀹氫箟浠诲姟鎷嗚В鐨勭粍淇℃伅 var groups = new[] { - new { Grouptype= "鐢垫皵",Pustatus="寰呴绛�",Zhijianyuan = task.zhiJianYuan_DQ, Lijuzouyeyuan = task.liJu_DQ, Fuzyuan = task.fuZhu_DQ }, - new { Grouptype = "鏈烘",Pustatus="寰呴绛�", Zhijianyuan = task.zhiJianYuan_LC, Lijuzouyeyuan = task.liJu_LC, Fuzyuan = task.fuZhu_LC }, - new { Grouptype = "鍦版矡",Pustatus="寰呴绛�", Zhijianyuan = task.zhiJianYuan_DG, Lijuzouyeyuan = task.liJu_DG, Fuzyuan = task.fuZhu_DG } + new { Grouptype= "鐢垫皵",Pustatus=0,Zhijianyuan = task.zhiJianYuan_DQ, Lijuzouyeyuan = task.liJu_DQ, Fuzyuan = task.fuZhu_DQ }, + new { Grouptype = "鏈烘",Pustatus=0, Zhijianyuan = task.zhiJianYuan_LC, Lijuzouyeyuan = task.liJu_LC, Fuzyuan = task.fuZhu_LC }, + new { Grouptype = "鍦版矡",Pustatus=0, Zhijianyuan = task.zhiJianYuan_DG, Lijuzouyeyuan = task.liJu_DG, Fuzyuan = task.fuZhu_DG } }; // 閫氳繃寰幆鍒涘缓瀵硅薄 @@ -461,6 +381,123 @@ } } + //娣诲姞淇℃伅 + public WebResponseContent AddNjtake(AddNjtDTO addNjtDTO) + { + try + { + #region 鑷畾涔夊懡鍚嶇粰Njtaskid + // 鑾峰彇浠婂ぉ鐨勬棩鏈熼儴鍒嗭紝濡� "KH0306" + string todayPrefix = $"KH{DateTime.Now:MMdd}"; + // 鏌ヨ鏁版嵁搴擄紝鎵惧嚭褰撳ぉ鏈�澶х殑 NJtaskID + var lastTask = BaseDal.QueryData(i => i.NJtaskID.StartsWith(todayPrefix)) + .OrderByDescending(i => i.NJtaskID) + .FirstOrDefault(); + + int nextNumber = 1; // 榛樿缂栧彿 + + if (lastTask != null) + { + // 鑾峰彇鍚庝袱浣嶅垎閽熺紪鍙� + string lastNumberPart = lastTask.NJtaskID.Substring(6, 2); + if (int.TryParse(lastNumberPart, out int lastNumber)) + { + nextNumber = lastNumber + 1; + } + } + + // 鐢熸垚 NJtaskID锛屼緥濡� KH0306001, KH0306002... + string CustomizeID = $"{todayPrefix}{nextNumber:D3}";//D3琛ㄧず 3浣嶆暟锛屼笉瓒宠ˉ0 + #endregion + + var addnj = new Dt_NjTask() + { + NJtaskID = CustomizeID, + trainKind = addNjtDTO.trainKind, + trainNum = addNjtDTO.trainNum, + track = addNjtDTO.track, + coachNum = addNjtDTO.coachNum, + bogie = addNjtDTO.bogie, + processDept = addNjtDTO.processDept, + jiShuYuan=addNjtDTO.jiShuYuan, + zhiJianYuan_LC=addNjtDTO.zhiJianYuan_LC, + zhiJianYuan_DG=addNjtDTO.zhiJianYuan_DG, + zhiJianYuan_DQ=addNjtDTO.zhiJianYuan_DQ, + gongZhang=addNjtDTO.gongZhang, + liJu_LC=addNjtDTO.liJu_LC, + liJu_DG=addNjtDTO.liJu_DG, + liJu_DQ=addNjtDTO.liJu_DQ, + fuZhu_LC=addNjtDTO.fuZhu_LC, + fuZhu_DG=addNjtDTO.fuZhu_DG, + fuZhu_DQ=addNjtDTO.fuZhu_DQ, + Taskstatus = 0, + createTime = DateTime.Now, + }; + + _unitOfWorkManage.BeginTran(); + BaseDal.AddData(addnj); + + _unitOfWorkManage.CommitTran(); + return new WebResponseContent { Status = true, Data = addnj }; + + } + catch (Exception ex) + { + _unitOfWorkManage.RollbackTran(); + return new WebResponseContent { Status = false, Message = "澶辫触" + ex.Message }; + } + } + + //鏌ョ湅璇︽儏 杩斿洖鏁翠釜琛ㄧ殑鏁版嵁锛堟洿鍏穒d锛� + public WebResponseContent GetNjdetail(string njtaskID) + { + try + { + _unitOfWorkManage.BeginTran(); + var datatail = BaseDal.QueryData(x => x.NJtaskID == njtaskID).FirstOrDefault(); + if (datatail == null) + { + return new WebResponseContent { Status = false, Message = "娌℃湁鎵惧埌" }; + + } + _unitOfWorkManage.CommitTran(); + return new WebResponseContent { Status = true,Data = datatail }; + } + catch (Exception ex) + { + + _unitOfWorkManage.RollbackTran(); + return new WebResponseContent() { Status = false, Message ="澶辫触"+ ex.Message }; + } + } + + //鏇村叿id鏇存柊 + public WebResponseContent PuNjtake(PutNjtDTO putNjtDTO) + { + try + { + var putake = BaseDal.QueryData(x => x.id==putNjtDTO.id).FirstOrDefault(); + if (putake == null) + { + return new WebResponseContent { Status = false, Message = "娌℃湁鎵惧埌" }; + } + putake.trainKind= putNjtDTO.trainkind; + putake.trainNum= putNjtDTO.trainNum; + putake.track=putNjtDTO.track; + putake.coachNum=putake.coachNum; + putake.bogie=putNjtDTO.bogie; + putake.processDept=putake.processDept; + _unitOfWorkManage.BeginTran(); + BaseDal.UpdateData(putake); + _unitOfWorkManage.CommitTran(); + return new WebResponseContent { Status = true, Data = putake }; + } + catch (Exception ex) + { + _unitOfWorkManage.RollbackTran(); + return new WebResponseContent { Status = false, Message = "鏌ヨ澶辫触锛�" + ex.Message }; + } + } } } -- Gitblit v1.9.3