yanjinhui
2025-03-18 5c465adb6748bfac0bccab66f1587b4ff2b6695a
ÏîÄ¿´úÂë/WIDESEAWCS_Server Õýʽ/SerialPortService/ProcessServer.cs
@@ -34,42 +34,18 @@
            OrderByParameters = new Dictionary<string, OrderByType>
            {
                { nameof(Dt_Process.SetpNum), OrderByType.Asc },//按什么字段排序
                 { nameof(Dt_Process.CraftType), OrderByType.Asc }
            };
            return base.GetPageData(options);
        }
        public WebResponseContent GetProcess(string gruop)
        {
            try
            {
                _unitOfWorkManage.BeginTran();
                var proce = BaseDal.QueryData(i => i.CraftType == gruop);
                _unitOfWorkManage.CommitTran();
                if (proce != null)
                {
                    return new WebResponseContent { Status = true, Data = proce };
                }
                else
                {
                    return new WebResponseContent { Status = false, Message = "数据为空" };
                }
            }
            catch (Exception ex)
            {
                _unitOfWorkManage.RollbackTran();
                return new WebResponseContent { Status = false, Message = "失败" + ex.Message };
            }
        }
        //获取套筒数量
        public WebResponseContent GetSleeveandStep(string gruops)
        {
            try
            {
                _unitOfWorkManage.BeginTran();
                var result = BaseDal.QueryData(x => x.CraftType == gruops) // å…ˆç­›é€‰ CraftType
                    .GroupBy(x => x.CraftType) // æŒ‰ CraftType åˆ†ç»„
                    .Select(g => new
@@ -77,12 +53,11 @@
                        maxNodal = g.Max(a => a.Nodal),
                        sumTorqueSum = g.Sum(a => a.TorqueSum)
                    }).ToList();
                _unitOfWorkManage.CommitTran();
                return new WebResponseContent { Status = true, Data = result };
            }
            catch (Exception ex)
            {
                _unitOfWorkManage.RollbackTran();
                return new WebResponseContent { Status = false, Message = "查询失败:" + ex.Message };
            }
        }
@@ -93,14 +68,12 @@
        {
            try
            {
                _unitOfWorkManage.BeginTran(); // å¼€å¯äº‹åŠ¡
                var allProcesses = BaseDal.QueryData(); // ä»…查询一次所有数据
                // åˆ¤æ–­æ˜¯æ·»åŠ è¿˜æ˜¯æ›´æ–°
                if (addProcessDTO.id == 0)//添加
                if (addProcessDTO.id == 0) // æ·»åŠ 
                {
                    // æ£€æŸ¥æ˜¯å¦å·²ç»å­˜åœ¨ç›¸åŒçš„ setnum
                    bool isExist = BaseDal.QueryData(x => x.SetpNum == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype).Any();
                    if (isExist)
                    if (allProcesses.Any(x => x.SetpNum == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype))
                    {
                        return new WebResponseContent { Status = false, Message = $"步骤 {addProcessDTO.setnum} å·²å­˜åœ¨ï¼Œä¸èƒ½é‡å¤æ·»åŠ ï¼" };
                    }
@@ -118,34 +91,29 @@
                        ArticleOne = addProcessDTO.articleone,
                        ArticleTowid = addProcessDTO.aritcletowid,
                        ArticleTwo = addProcessDTO.articletwo,
                        Creater = "admin",
                        CreateDate = DateTime.Now
                    };
                    BaseDal.AddData(proces);
                    _unitOfWorkManage.CommitTran(); // æäº¤äº‹åŠ¡
                    return new WebResponseContent { Status = true, Data = proces };
                }
                else
                else // æ›´æ–°
                {
                    // æŸ¥è¯¢å½“前要更新的记录
                    var existingProcess = BaseDal.QueryFirst(x => x.CraftID == addProcessDTO.id);
                    var existingProcess = allProcesses.FirstOrDefault(x => x.CraftID == addProcessDTO.id);
                    if (existingProcess == null)
                    {
                        return new WebResponseContent { Status = false, Message = "未找到该工艺步骤,无法更新!" };
                    }
                    // åªæœ‰å½“ setnum å‘生变化时,才进行重复性检查
                    if (existingProcess.Nodal != addProcessDTO.setnum)
                    if (existingProcess.SetpNum != addProcessDTO.setnum &&
                        allProcesses.Any(x => x.SetpNum == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype && x.CraftID != addProcessDTO.id))
                    {
                        bool isExist = BaseDal.QueryData(x => x.Nodal == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype && x.CraftID != addProcessDTO.id).Any();
                        if (isExist)
                        {
                            return new WebResponseContent { Status = false, Message = $"步骤 {addProcessDTO.setnum} å·²å­˜åœ¨ï¼Œä¸èƒ½é‡å¤ï¼" };
                        }
                        return new WebResponseContent { Status = false, Message = $"步骤 {addProcessDTO.setnum} å·²å­˜åœ¨ï¼Œä¸èƒ½é‡å¤ï¼" };
                    }
                    // æ›´æ–°æ•°æ®
                    existingProcess.Nodal = addProcessDTO.Nodal;
                    existingProcess.SetpNum = addProcessDTO.setnum;
                    existingProcess.CraftType = addProcessDTO.craftstype;
                    existingProcess.CraftsStep = addProcessDTO.craftsstep;
@@ -157,15 +125,13 @@
                    existingProcess.ArticleTowid = addProcessDTO.aritcletowid;
                    existingProcess.ArticleTwo = addProcessDTO.articletwo;
                    existingProcess.CreateDate = DateTime.Now;
                    BaseDal.UpdateData(existingProcess);
                    _unitOfWorkManage.CommitTran(); // æäº¤äº‹åŠ¡
                    BaseDal.UpdateData(existingProcess);
                    return new WebResponseContent { Status = true, Data = existingProcess };
                }
            }
            catch (Exception ex)
            {
                _unitOfWorkManage.RollbackTran(); // äº‹åŠ¡å›žæ»š
                return new WebResponseContent { Status = false, Message = "操作失败:" + ex.Message };
            }
        }
@@ -184,6 +150,7 @@
                //获取Modifier  ="true"  è¡¨ç¤ºæ˜¯å¼ºåˆ¶æ‰§è¡Œ
                var Mod = torp.Select(x => x.Modifier).FirstOrDefault();
                //查出工艺表
                var process = BaseDal.QueryData(x => x.CraftType == group);