啊鑫
2025-07-24 8a53164b2ff75612596a7c65eda284b5a03e01f1
StandardPda/MES.Service/service/QC/SJService.cs
@@ -34,14 +34,16 @@
    }
    //获取所有数据分页
    public List<SJPageResult> getPage(SJPageResult queryObj)
    public (List<SJPageResult> item, int TotalCount) getPage(SJPageResult queryObj)
    {
        var db = SqlSugarHelper.GetInstance();
        string[]? lineNo = null;
        if (StringUtil.IsNotNullOrEmpty(queryObj.StatusUser))
            lineNo = _baseService.getUserLineNo(queryObj.StatusUser);
        // if (StringUtil.IsNotNullOrEmpty(queryObj.StatusUser))
        //     lineNo = _baseService.getUserLineNo(queryObj.StatusUser);
        var totalCount = 0;
        var data = db.Queryable<SJPageResult>()
            .WhereIF(lineNo != null && lineNo.Length > 0,
@@ -49,18 +51,26 @@
            .WhereIF(queryObj.Id != null, a => a.Id == queryObj.Id)
            .WhereIF(StringUtil.IsNotNullOrEmpty(queryObj.BillNo),
                a => a.BillNo == queryObj.BillNo)
            // .WhereIF(
            //     StringUtil.IsNotNullOrEmpty(queryObj.Result) &&
            //     "未完成".Equals(queryObj.Result),
            //     a => a.Result == queryObj.Result && (a.FSubmit == 0 || a.FSubmit == null))
            .WhereIF(
                StringUtil.IsNotNullOrEmpty(queryObj.Result) &&
                "未完成".Equals(queryObj.Result),
                a => a.Result == queryObj.Result)
                a => a.FSubmit == 0 || a.FSubmit == null)
            // .WhereIF(
            //     StringUtil.IsNotNullOrEmpty(queryObj.Result) &&
            //     !"未完成".Equals(queryObj.Result),
            //     a => a.Result != "未完成" && a.FSubmit == 1)
            .WhereIF(
                StringUtil.IsNotNullOrEmpty(queryObj.Result) &&
                !"未完成".Equals(queryObj.Result),
                a => a.Result != "未完成")
                a =>   a.FSubmit == 1)
            .OrderBy(a => a.BillNo, OrderByType.Desc)
            .ToPageList(queryObj.PageIndex, queryObj.Limit);
            .ToPageList(queryObj.PageIndex, queryObj.Limit, ref totalCount);
        return data;
        return (data, totalCount);
    }
@@ -103,8 +113,8 @@
        return db
            .Queryable<MesQualityStandard>()
            .Where(b => b.QsType == "1" && b.ItemNo == itemNo).Select(
                b => new QsItemIpiItem
            .Where(b => b.QsType == "1" && b.ItemNo == itemNo).Select(b =>
                new QsItemIpiItem
                {
                    ProjName = b.ProjName,
                    ItemMod = b.ItemMod,
@@ -188,21 +198,20 @@
    {
        var qsItemIpiReq = item.From;
        var qsItemIpiItems = item.Items;
        SqlSugarHelper.UseTransactionWithOracle(
            db =>
            {
                qsItemIpiReq.StatusDate = DateTime.Now;
                var pid = db.Insertable(qsItemIpiReq)
                    .ExecuteReturnIdentity();
                qsItemIpiReq.Id = pid;
        SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            qsItemIpiReq.StatusDate = DateTime.Now;
            var pid = db.Insertable(qsItemIpiReq)
                .ExecuteReturnIdentity();
            qsItemIpiReq.Id = pid;
                item.gid = pid;
            item.gid = pid;
                qsItemIpiItems.ForEach(s => s.Pid = pid);
            qsItemIpiItems.ForEach(s => s.Pid = pid);
                return db.Insertable(qsItemIpiItems)
                    .ExecuteCommand();
            });
            return db.Insertable(qsItemIpiItems)
                .ExecuteCommand();
        });
        item.Items = getQSItems(qsItemIpiReq.Id, null);
        //没有上下限的检验项目自动盘点为合格
@@ -223,7 +232,8 @@
        item.Items = getQSItems(qsItemIpiReq.Id, null);
        var sjPageResult = new SJPageResult
            { Id = item.From.Id, Limit = 1, PageIndex = 1 };
        item.Result = getPage(sjPageResult)[0];
        var pageResult = getPage(sjPageResult);
        item.Result = pageResult.item[0];
        return item;
    }
@@ -231,14 +241,13 @@
    public QsItem SaveItem(QsItem item)
    {
        var qsItemIpiItems = item.Items;
        SqlSugarHelper.UseTransactionWithOracle(
            db =>
            {
                qsItemIpiItems.ForEach(s => s.Pid = item.gid);
        SqlSugarHelper.UseTransactionWithOracle(db =>
        {
            qsItemIpiItems.ForEach(s => s.Pid = item.gid);
                return db.Insertable(qsItemIpiItems)
                    .ExecuteCommand();
            });
            return db.Insertable(qsItemIpiItems)
                .ExecuteCommand();
        });
        item.Items = getQSItems(item.gid, null);
        //没有上下限的检验项目自动盘点为合格
@@ -322,8 +331,8 @@
        if (count == passCount) result = 1;
        var useTransactionWithOracle = SqlSugarHelper.UseTransactionWithOracle(
            db =>
        var useTransactionWithOracle =
            SqlSugarHelper.UseTransactionWithOracle(db =>
            {
                var commit = 0;
                commit += db.Updateable<QsItemIpiItem>()
@@ -358,8 +367,8 @@
            //合格的检验结果等于总检验数视为合格
            if (icount == passCount) result = 1;
            useTransactionWithOracle += SqlSugarHelper.UseTransactionWithOracle(
                db =>
            useTransactionWithOracle +=
                SqlSugarHelper.UseTransactionWithOracle(db =>
                {
                    return db.Updateable<QsItemIpiReq>()
                        .SetColumns(s => s.IsPass == result)
@@ -455,4 +464,20 @@
        return withOracle;
    }
    public bool SJQaSubmit(LLJDto rkjDto)
    {
        var useTransactionWithOracle =
            SqlSugarHelper.UseTransactionWithOracle(db =>
            {
                return db.Updateable<QsItemIpiReq>()
                    .SetColumns(s => s.Fsubmit == 1)
                    .SetColumns(s => s.FsubmitBy == rkjDto.userNo)
                    .SetColumns(s => s.FsubmitDate == DateTime.Now)
                    .Where(s => s.Id == rkjDto.gid)
                    .ExecuteCommand();
            });
        return useTransactionWithOracle > 0;
    }
}