啊鑫
2024-09-23 54445846644d77fb7a89f736f2c5bfe673ce3653
MES.Service/service/QC/RKJService.cs
@@ -106,31 +106,36 @@
            string LEV = null;
            switch (item.FcheckLevel)
            {
                case string s when s.Contains("S1"):
                case null:
                    LEV = ""; // 默认值
                    break;
                case { } s when s.Contains("S1"):
                    LEV = "B.FLEVEL_S1";
                    break;
                case string s when s.Contains("S2"):
                case { } s when s.Contains("S2"):
                    LEV = "B.FLEVEL_S2";
                    break;
                case string s when s.Contains("S3"):
                case { } s when s.Contains("S3"):
                    LEV = "B.FLEVEL_S3";
                    break;
                case string s when s.Contains("S4"):
                case { } s when s.Contains("S4"):
                    LEV = "B.FLEVEL_S4";
                    break;
                case string s when s.Contains("(I)"):
                case { } s when s.Contains("(I)"):
                    LEV = "B.FLEVEL_I";
                    break;
                case string s when s.Contains("(II)"):
                case { } s when s.Contains("(II)"):
                    LEV = "B.FLEVEL_II";
                    break;
                case string s when s.Contains("(III)"):
                case { } s when s.Contains("(III)"):
                    LEV = "B.FLEVEL_III";
                    break;
                default:
                    LEV = ""; // 默认值
                    break;
            }
            if (string.IsNullOrEmpty(LEV)) throw new Exception(item.QsCode+"下的检验水平维护的不正确");
            var sql =
                "SELECT " + LEV +
@@ -140,9 +145,13 @@
            var maxBillNo = db.Ado.SqlQuerySingle<string>(sql);
            if (string.IsNullOrEmpty(maxBillNo))
                throw new Exception(item.QsCode+"下没有" + quantity + "这个范围的抽样基准");
            var result = ExtractSubstring(item.FacLevel, '(', ')');
            if (string.IsNullOrEmpty(result))
                throw new Exception(item.QsCode+"维护的接收水平不正确,应该是0.010---(AQL_0_0010)这样");
            sql = "SELECT FSAMPLE_SIZE_WORD, " + result +
                  " Result FROM MES_QM_AQL1 A LEFT JOIN MES_QM_AQL3 C ON C.AQL1_ID=A.ID WHERE A.SAMPLE_SIZE_NO= '" +
@@ -402,9 +411,9 @@
                .ExecuteCommand();
        });
        if (FcheckResu.Equals("不合格"))
            //自动生成入库检异常对策
            saveDetect02(detail.Gid, detail.CreateBy);
        // if (FcheckResu.Equals("不合格"))
        //     //自动生成入库检异常对策
        //     saveDetect02(detail.Gid, detail.CreateBy);
        return useTransactionWithOracle;
    }
@@ -454,11 +463,12 @@
    }
    public (List<QsItemOqcReq> items, int TotalCount) getPage(XJPageResult queryObj)
    public (List<QsItemOqcReq> items, int TotalCount) getPage(
        XJPageResult queryObj)
    {
        var db = SqlSugarHelper.GetInstance();
        int totalCount = 0;
        var totalCount = 0;
        var qsItemOqcReqs = db
            .Queryable<QsItemOqcReq, MesItems, MesInvItemIns, MesInvTransaction,
@@ -498,12 +508,13 @@
                ItemName = b.ItemName,
                ItemModel = b.ItemModel,
                Dab001 = m.LotNo,
                ItemInId = m.ItemInId,
                Daa015 = da.Daa015,
                LineNo = c.LineNo,
                Quantity = m.Quantity
            })
            .OrderBy(a => a.CreateDate, OrderByType.Desc)
            .ToPageList(queryObj.PageIndex, queryObj.Limit,ref totalCount);
            .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount);
        return (qsItemOqcReqs, totalCount);
    }
@@ -568,6 +579,8 @@
    public int UpdateQSItemDetail(QsItemOqcItemDetail detail)
    {
        if (isRk(detail.ItemInId)) throw new Exception("已有条码入库,不允许修改检验结果");
        var withOracle = SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            return db.Updateable<QsItemOqcItemDetail>()
@@ -588,6 +601,14 @@
        return withOracle;
    }
    //修改结果前验证是否入库
    private bool isRk(decimal? ItemInId)
    {
        var db = SqlSugarHelper.GetInstance();
        return db.Queryable<MesInvItemInCDetails>()
            .Where(s => s.ItemInId == ItemInId).Count() > 0;
    }
    //主表修改备注字段
    public int saveRemarksGid(RKJDto dto)