南骏 池
2025-06-05 0010dd10c41c5c990bf6cc1b40ad857a6c956cbe
1.其他入库优化
2.推荐库位函数优化
已修改7个文件
92 ■■■■■ 文件已修改
Controllers/Warehouse/MesItemQtrkController.cs 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
appsettings.json 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/MesCgthSqManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/MesItemBlManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/MesItemQtrkManager.cs 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Warehouse/MesSctkManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service/Wom/WomdaaManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Controllers/Warehouse/MesItemQtrkController.cs
@@ -116,10 +116,36 @@
    [HttpPost("GetQtckDetailList")]
    public ResponseResult GetQtckDetailList([FromBody] WarehouseQuery query)
    {
        //try
        //{
        //    dynamic resultInfos = new ExpandoObject();
        //    resultInfos.tbBillList = _manager.GetQtckDetailList(query);
        //    return new ResponseResult
        //    {
        //        status = 0,
        //        message = "OK",
        //        data = resultInfos
        //    };
        //}
        //catch (Exception ex)
        //{
        //    return ResponseResult.ResponseError(ex);
        //}
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = _manager.GetQtckDetailList(query);
            //if(resultInfos.tbBillList.Count < 1)
            //{
            //    return new ResponseResult
            //    {
            //        status = 1,
            //        message = "该申请单号不存在或未审核!!!",
            //        data = ""
            //    };
            //}
            return new ResponseResult
            {
                status = 0,
appsettings.json
@@ -9,6 +9,7 @@
  "AppSettings": {
    "TestErpUrl": "http://192.168.1.149:8066/WebService1.asmx/MesToErpinfoTest",
    "ProductionErpUrl": "http://192.168.1.149:8066/WebService1.asmx/MesToErpinfoTest",
    "DataBaseConn": "Data Source=192.168.1.146;Initial Catalog=GS_MES;User ID=sa;Password =qixi123;Encrypt=True;TrustServerCertificate=True;"
    "DataBaseConn": "Data Source=192.168.1.146;Initial Catalog=TEST_MES;User ID=sa;Password =qixi123;Encrypt=True;TrustServerCertificate=True;"
    //"DataBaseConn": "Data Source=192.168.1.146;Initial Catalog=GS_MES;User ID=sa;Password =qixi123;Encrypt=True;TrustServerCertificate=True;"
  }
}
service/Warehouse/MesCgthSqManager.cs
@@ -27,7 +27,7 @@
        if (mesInvItemOuts == null) throw new Exception("采购退货申请单不存在");
        var sql = string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,A.SQ_NUM FQty,A.YS_NUM SQty,A.SQ_NUM - A.YS_NUM DSQty,
       dbo.F_QX_GETRECODEPOTSE(A.ITEM_ID) as RecoKw
       dbo.F_QX_GETRECODEPOTSE(A.ITEM_ID,'','','') as RecoKw
fROM MES_CGTH_SQ_DETAIL A
         LEFT JOIN MES_CGTH_SQ B ON A.MID = B.ID
         LEFT JOIN MES_ITEMS C ON A.ITEM_ID = C.item_id
service/Warehouse/MesItemBlManager.cs
@@ -69,7 +69,7 @@
        //return (mesItemBl.Bl001, blDetails);
        var sql = string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,A.BLD007 FQty,A.BLD008 SQty,A.BLD007 - A.BLD008 DSQty,
       dbo.F_QX_GETRECODEPOTSE(A.bld012) as RecoKw,D.daa001
       dbo.F_QX_GETRECODEPOTSE(A.bld012,'','','') as RecoKw,D.daa001
fROM MES_ITEM_BL_DETAIL A
         LEFT JOIN MES_ITEM_BL B ON A.MID = B.ID
         LEFT JOIN MES_ITEMS C ON A.bld012 = CAST(C.item_id AS VARCHAR(50))
service/Warehouse/MesItemQtrkManager.cs
@@ -1,6 +1,7 @@
using NewPdaSqlServer.DB;
using NewPdaSqlServer.Dto.service;
using NewPdaSqlServer.entity;
using NewPdaSqlServer.entity.Base;
using NewPdaSqlServer.util;
using SqlSugar;
using System.Text.RegularExpressions;
@@ -17,42 +18,36 @@
            .ToList();
    }
    public List<MesItemQtrrDetail> GetQtckDetailList(WarehouseQuery query)
    public ProductionPickDto GetQtckDetailList(WarehouseQuery query)
    {
        // 1. 验证申请单是否存在
        var qtrk = Db.Queryable<MesItemQtrk>()
            .Where(x => x.Qtck == query.billNo)
            .First();
        if (qtrk == null)
            throw new Exception($"未查询到此其他入库申请单 {query.billNo}");
        // 关联查询物料表、物料明细表和物料基础信息表
        if (string.IsNullOrEmpty(query.billNo)) throw new Exception("申请单号为空");
        // 2. 验证申请单状态
        if (qtrk.Qt015 != 1)
            throw new Exception($"其他入库申请单 {query.billNo} 未审核,请确认!");
        var mesInvItemOuts = base.GetSingle(it => it.Qtck == query.billNo);
        if (mesInvItemOuts == null) throw new Exception("其他入库申请单不存在");
        if (qtrk.Qt014 == 1)
            throw new Exception($"其他入库申请单 {query.billNo} 已完结,请确认!");
        var sql = string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,A.qd007 FQty,A.qd008 SQty,A.qd007 - A.qd008 DSQty
fROM MES_ITEM_QTRR_DETAIL A
         LEFT JOIN MES_ITEM_QTRK B ON A.qtrkGuid = B.guid
         LEFT JOIN MES_ITEMS C ON A.itemId = C.item_id
WHERE B.qtck = '{0}'", query.billNo);
        // 3. 查询申请单明细
        var details = Db.Queryable<MesItemQtrk, MesItemQtrrDetail, MesItems>(
                (a, b, c) => new JoinQueryInfos(
                    JoinType.Left, a.Guid == b.QtrkGuid,
                    JoinType.Left, c.Id.ToString() == b.ItemId))
            .Where((a, b, c) =>
                a.Qtck == query.billNo &&
                (b.Qd007 ?? 0) - (b.Qd008 ?? 0) > 0)
            .OrderBy((a, b, c) => b.Qd002)
            .Select((a, b, c) => new MesItemQtrrDetail
        var womdabs = Db.Ado.SqlQuery<ItemDetailModel>(sql);
        var DS_list = womdabs.Where(s => s.DSQty > 0).ToList();
        var YS_list = womdabs.Where(s => s.SQty > 0).ToList();
        var dto = new ProductionPickDto
            {
                Qtck = a.Qtck,
                ItemNo = c.ItemNo,
                ItemName = c.ItemName,
                Qd007 = b.Qd007 ?? 0,
                Qd008 = b.Qd008 ?? 0
            })
            .ToList();
            //daa001 = womdaa.Daa001,
            //PlanNo = womcaa.Caa020,
            items = DS_list,
            Ysitems = YS_list
        };
        return details;
        return dto;
    }
    public string ScanInDepotsQT(WarehouseQuery query)
service/Warehouse/MesSctkManager.cs
@@ -28,7 +28,7 @@
        if (mesInvItemOuts == null) throw new Exception("采购退货申请单不存在");
        var sql = string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,A.SQ_NUM FQty,A.YS_NUM SQty,A.SQ_NUM - A.YS_NUM DSQty,
       dbo.F_QX_GETRECODEPOTSE(A.ITEM_ID) as RecoKw
       dbo.F_QX_GETRECODEPOTSE(A.ITEM_ID,'','','') as RecoKw
fROM MES_SCTH_SQ_DETAIL A
         LEFT JOIN MES_SCTH_SQ B ON A.MID = B.ID
         LEFT JOIN MES_ITEMS C ON A.ITEM_ID = C.item_id
service/Wom/WomdaaManager.cs
@@ -204,7 +204,7 @@
        //    .ToList();
        var sql =string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,b.dab006 FQty,b.dab007 SQty,b.dab006 - b.dab007 DSQty ,
       dbo.F_QX_GETRECODEPOTSE(B.dab003) as RecoKw
       dbo.F_QX_GETRECODEPOTSE(B.dab003,'','','') as RecoKw
    FROM WOMDAB B
    LEFT JOIN WOMDAA A ON A.guid = B.daaGuid
    LEFT JOIN MES_ITEMS C ON  B.dab003 = C.item_id