yanjinhui
2025-03-10 f391144114bedefe44c700a590bd50272ff067ec
ÏîÄ¿´úÂë/WIDESEAWCS_Server Õýʽ/SerialPortService/NjTaskServer.cs
@@ -37,23 +37,24 @@
            
        }
        public WebResponseContent Fuzzyquery(string trainkind, string trainnum, string track, string coachnum, string bogie, string processdept)
        //模糊查询
        public WebResponseContent Fuzzyquery(MhuNjtakeTDO mhuNjtakeTDO)
        {
            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))
                if (!string.IsNullOrEmpty(mhuNjtakeTDO.trainkind) || !string.IsNullOrEmpty(mhuNjtakeTDO.trainnum) ||
                    !string.IsNullOrEmpty(mhuNjtakeTDO.track) || !string.IsNullOrEmpty(mhuNjtakeTDO.coachnum) ||
                    !string.IsNullOrEmpty(mhuNjtakeTDO.bogie) || !string.IsNullOrEmpty(mhuNjtakeTDO.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))
                    BaseDal.QueryData(x =>
                        (!string.IsNullOrEmpty(mhuNjtakeTDO.trainkind) && x.trainKind.Contains(mhuNjtakeTDO.trainkind)) ||
                        (!string.IsNullOrEmpty(mhuNjtakeTDO.trainnum) && x.trainNum.Contains(mhuNjtakeTDO.trainnum)) ||
                        (!string.IsNullOrEmpty(mhuNjtakeTDO.track) && x.track.Contains(mhuNjtakeTDO.track)) ||
                        (!string.IsNullOrEmpty(mhuNjtakeTDO.coachnum) && x.coachNum.Contains(mhuNjtakeTDO.coachnum)) ||
                        (!string.IsNullOrEmpty(mhuNjtakeTDO.bogie) && x.bogie.Contains(mhuNjtakeTDO.bogie)) ||
                        (!string.IsNullOrEmpty(mhuNjtakeTDO.processdept) && x.processDept.Contains(mhuNjtakeTDO.processdept))
                    );
                }
@@ -74,34 +75,6 @@
        {
            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(); //如果你要更新那么要先找到,否则你这样是创建一个新的对象      
@@ -116,14 +89,12 @@
                        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;
                }
                //如果有就在模板上进行更改
@@ -132,7 +103,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;
@@ -151,7 +122,7 @@
                if (existtepm == null)
                {
                    task.NJtaskID = CustomizeID;
                    task.TakeName = njtakeDTO.takename;
                    task.jiShuYuan = njtakeDTO.jishuyuan;
                    task.zhiJianYuan_DG = njtakeDTO.zhijianyuan_dg;
@@ -165,6 +136,7 @@
                    task.fuZhu_DQ = njtakeDTO.fuzhu_dq;
                    task.fuZhu_LC = njtakeDTO.fuzhu_lc;
                    task.dispatchTime = DateTime.Now;
                    task.startTime = DateTime.Now;
                }
                else
                {
@@ -181,6 +153,7 @@
                    task.fuZhu_DQ = njtakeDTO.fuzhu_dq;
                    task.fuZhu_LC = njtakeDTO.fuzhu_lc;
                    task.dispatchTime = DateTime.Now;
                    task.startTime = DateTime.Now;
                }
@@ -313,30 +286,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
                //先根据id判断是否有该任务
@@ -348,7 +298,7 @@
                task.Taskstatus = "已派工";
                     task.NJtaskID = CustomizeID;
                    task.TakeName = notempDTO.takename;
                    task.jiShuYuan = notempDTO.jishuyuan;
                    task.zhiJianYuan_DG = notempDTO.zhijianyuan_dg;
@@ -362,8 +312,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;
               
@@ -461,6 +410,112 @@
            }
        }
        //添加信息
        public WebResponseContent AddNJinfom(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,例如 KH030601, KH030602...
                string CustomizeID = $"{todayPrefix}{nextNumber:D2}";
                #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,
                   Taskstatus="未派工",
                    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 };
            }
        }
        //查看详情 è¿”回整个表的数据(更具id)
        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 };
            }
        }
    }
}