yanjinhui
2025-03-22 2f0c81709876d76b6b120cf6ac43f05cda6dfe4c
ÏîÄ¿´úÂë/WIDESEAWCS_Server Õýʽ/SerialPortService/ProcessServer.cs
@@ -42,16 +42,18 @@
    
        //获取套筒数量
        public WebResponseContent GetSleeveandStep(string gruops)
        public WebResponseContent GetSleeveandStep()
        {
            try
            {
                var result = BaseDal.QueryData(x => x.CraftType == gruops) // å…ˆç­›é€‰ CraftType
                var result = BaseDal.QueryData() // å…ˆæŸ¥å‡ºå…¨éƒ¨
                    .GroupBy(x => x.CraftType) // æŒ‰ CraftType åˆ†ç»„
                    .Select(g => new
                    {
                        maxNodal = g.Max(a => a.Nodal),
                        sumTorqueSum = g.Sum(a => a.TorqueSum)
                        //尽量后端数据给前端的数据,调一次接口就可以拿到,不要让前端多次调用
                        CraftType = g.Key, // æ·»åŠ  CraftType
                        maxNodal = g.Max(a => a.Nodal),//最大步骤
                        sumTorqueSum = g.Sum(a => a.TorqueSum),//套筒数量
                    }).ToList();
                
                return new WebResponseContent { Status = true, Data = result };
@@ -155,13 +157,13 @@
                if (addProcessDTO.id == 0) // æ·»åŠ 
                {
                    // æ£€æŸ¥æ˜¯å¦å·²ç»å­˜åœ¨ç›¸åŒçš„ setnum
                    if (allProcesses.Any(x => x.SetpNum == addProcessDTO.setnum && x.CraftType == addProcessDTO.craftstype))
                    if (allProcesses.Any(x => x.SetpNum == addProcessDTO.setpNum && x.CraftType == addProcessDTO.craftstype))
                    {
                        return new WebResponseContent { Status = false, Message = $"步骤 {addProcessDTO.setnum} å·²å­˜åœ¨ï¼Œä¸èƒ½é‡å¤æ·»åŠ ï¼" };
                        return new WebResponseContent { Status = false, Message = $"步骤 {addProcessDTO.setpNum} å·²å­˜åœ¨ï¼Œä¸èƒ½é‡å¤æ·»åŠ ï¼" };
                    }
                    // éœ€è¦è°ƒæ•´åŽç»­æ­¥éª¤çš„序号
                    foreach (var process in allProcesses.Where(x => x.SetpNum >= addProcessDTO.setnum))
                    foreach (var process in allProcesses.Where(x => x.SetpNum >= addProcessDTO.setpNum))
                    {
                        process.SetpNum++; // åŽç§»ä¸€ä½
                        BaseDal.UpdateData(process);
@@ -170,7 +172,8 @@
                    // åˆ›å»ºæ–°å·¥è‰ºæ­¥éª¤
                    var proces = new Dt_Process
                    {
                        SetpNum = addProcessDTO.setnum,
                        Nodal=addProcessDTO.Nodal,
                        SetpNum = addProcessDTO.setpNum,
                        CraftType = addProcessDTO.craftstype,
                        CraftsStep = addProcessDTO.craftsstep,
                        CraftContent = addProcessDTO.craftcontent,
@@ -180,8 +183,11 @@
                        ArticleOne = addProcessDTO.articleone,
                        ArticleTowid = addProcessDTO.aritcletowid,
                        ArticleTwo = addProcessDTO.articletwo,
                        CreateDate = DateTime.Now
                        CreateDate = DateTime.Now,
                        //为空就是0,不为空就是1
                        TorqueSum = (string.IsNullOrEmpty(addProcessDTO.articleone) ? 0 : 1) + (string.IsNullOrEmpty(addProcessDTO.articletwo) ? 0 : 1)
                    };
                    BaseDal.AddData(proces);
                    return new WebResponseContent { Status = true, Data = proces };
@@ -195,7 +201,7 @@
                    }
                    int oldSetNum = existingProcess.SetpNum;
                    int newSetNum = addProcessDTO.setnum;
                    int newSetNum = addProcessDTO.setpNum;
                    if (oldSetNum == newSetNum) // å¦‚果没改顺序,直接更新其他内容
                    {
@@ -210,10 +216,15 @@
                        existingProcess.ArticleTowid = addProcessDTO.aritcletowid;
                        existingProcess.ArticleTwo = addProcessDTO.articletwo;
                        existingProcess.CreateDate = DateTime.Now;
                        existingProcess.TorqueSum = (string.IsNullOrEmpty(addProcessDTO.articleone) ? 0 : 1) + (string.IsNullOrEmpty(addProcessDTO.articletwo) ? 0 : 1);
                        BaseDal.UpdateData(existingProcess);
                        return new WebResponseContent { Status = true, Data = existingProcess };
                    }
                    // æ›´æ–° TorqueSum
                    // è°ƒæ•´é¡ºåº
                    if (newSetNum < oldSetNum) // å‘前移动,后续数据往后移
@@ -387,6 +398,34 @@
                return new WebResponseContent { Status = false, Message = "查询失败:" + ex.Message };
            }
        }
        /// <summary>
        /// è¯»å–当前工艺步骤的扭力值与次数
        /// </summary>
        /// <param name="grop"></param>
        /// <param name="setnum"></param>
        /// <returns></returns>
        /// <exception cref="NotImplementedException"></exception>
        public WebResponseContent GetValueandNumber(string grop, int setnum)
        {
            try
            {
                var result = BaseDal.QueryData(x => x.CraftType == grop && x.SetpNum == setnum)
                    .Select(g => new
                    {
                        g.TorqueOne,
                        g.TorqueOneQuantity,
                        g.TorqueTwo,
                        g.TorqueTwoQuantity
                    });
                return new WebResponseContent { Status = true, Data = result };
            }
            catch (Exception ex)
            {
                return new WebResponseContent { Status = false,Message="错误:"+ex }; throw;
            }
        }
    }