wbc
2024-08-24 1caf2d9d3f6c2ee8d58d182078d0a8468f6dbfc4
物料接收
已添加1个文件
已修改10个文件
255 ■■■■■ 文件已修改
MES.Service/Dto/service/MaterialReceipt.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/bin/Debug/net8.0/MES.Service.dll 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/bin/Debug/net8.0/MES.Service.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/service/Warehouse/MesInvItemOutCDetailsManager.cs 138 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/Controllers/Warehouse/MesInvItemOutCDetailsController.cs 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MES.Service.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MES.Service.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MESApplication.dll 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MESApplication.exe 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MESApplication.pdb 补丁 | 查看 | 原始文档 | blame | 历史
MESApplication/bin/Debug/net8.0/MESApplication.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/service/MaterialReceipt.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
using MES.Service.Modes;
namespace MES.Service.Dto.service;
public class MaterialReceipt
{
    public List<MesInvItemOutCDetails>? InvItemoutCDetails { get; set; }
    public MesInvItemOuts? ItemOuts { get; set; }
}
MES.Service/bin/Debug/net8.0/MES.Service.dll
Binary files differ
MES.Service/bin/Debug/net8.0/MES.Service.pdb
Binary files differ
MES.Service/service/Warehouse/MesInvItemOutCDetailsManager.cs
@@ -1,4 +1,5 @@
using MES.Service.DB;
using MES.Service.Dto.service;
using MES.Service.Modes;
using SqlSugar;
@@ -38,7 +39,8 @@
        conModels.Add(new ConditionalModel
        {
            FieldName = typeof(MesInvItemOutCDetails).GetProperties()[0].Name,
            ConditionalType = ConditionalType.Equal, FieldValue = "1"
            ConditionalType = ConditionalType.Equal,
            FieldValue = "1"
        }); //id=1
        var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom());
@@ -75,4 +77,138 @@
    }
    #endregion
    public MesInvItemOutCDetails GetOutList(WarehouseQuery query)
    {
        var mesInvItemBarcodes = Db.Queryable<MesInvItemBarcodes>()
            .Where(s => s.ItemBarcode == query.barcode).Count();
        if (mesInvItemBarcodes <= 0)
        {
            throw new Exception("条码不存在");
        }
        var mesInvItemOutCDetails = Db.Queryable<MesInvItemOutCDetails>()
            .Where(s => s.ItemBarcode == query.barcode && s.Receive == 0).Count();
        if (mesInvItemOutCDetails <= 0)
        {
            throw new Exception("条码不符合接收条件,请检查!");
        }
        var entity = Db.Queryable<MesInvItemOutCDetails, MesInvItemOuts, MesItems>((a, b, c) =>
                  new JoinQueryInfos(JoinType.Left, a.ItemOutId == b.Id,
                                    JoinType.Left, a.ItemNo == c.ItemNo))
              .Where((a, b, c) => a.ItemBarcode == query.barcode)
              .Select((a, b, c) => new MesInvItemOutCDetails
              {
                  PbillNo = b.ItemOutNo,
                  WorkNo = a.WorkNo,
                  ItemNo = a.ItemNo,
                  ItemName = c.ItemName,
                  Quantity = a.Quantity
              }).First();
        if (entity == null)
        {
            throw new Exception("出库条码" + query.barcode + " ä¸å­˜åœ¨ï¼Œè¯·ç¡®è®¤!");
        }
        return entity;
    }
    public MaterialReceipt GetFormList(WarehouseQuery query)
    {
        var mesInvItemBarcodes = Db.Queryable<MesInvItemBarcodes>()
            .Where(s => s.ItemBarcode == query.barcode).Count();
        if (mesInvItemBarcodes <= 0)
        {
            throw new Exception("条码不存在");
        }
        var mesInvItemOutCDetails = Db.Queryable<MesInvItemOutCDetails>()
            .Where(s => s.ItemBarcode == query.barcode).First();
        MaterialReceipt entity = new MaterialReceipt
        {
            InvItemoutCDetails = GetMesInvItemOutCDetails(mesInvItemOutCDetails.PbillNo),
            ItemOuts = GetMesInvItemOuts(mesInvItemOutCDetails.PbillNo)
        };
        return entity;
    }
    public MesInvItemOutCDetails confirmReceipt(WarehouseQuery query)
    {
        if (string.IsNullOrWhiteSpace(query.barcode))
        {
            throw new Exception("请扫出库条码!");
        }
        if (string.IsNullOrWhiteSpace(query.billNo))
        {
            throw new Exception("出库单据不能为空!");
        }
        var barcodeInfo = GetBarcodeInfo(query.barcode);
        if (barcodeInfo.Receive == 1)
        {
            throw new Exception("此条码已经接收,请检查!");
        }
        UseTransaction(db =>
        {
            var count = db.Updateable<MesInvItemOutCDetails>()
             .SetColumns(s => s.Receive == 1)
             .Where(s => s.ItemBarcode == barcodeInfo.ItemBarcode).ExecuteCommand();
            return 1;
        });
        return barcodeInfo;
    }
    public List<MesInvItemOutCDetails> GetMesInvItemOutCDetails(string billno)
    {
        return Db.Queryable<MesInvItemOutCDetails>()
            .Where(s => s.PbillNo == billno).ToList();
    }
    public MesInvItemOuts GetMesInvItemOuts(string billno)
    {
        return Db.Queryable<MesInvItemOuts>()
            .Where(a => a.ItemOutNo == billno).Single();
    }
    private MesInvItemOutCDetails GetBarcodeInfo(string itemBarcode)
    {
        // Get barcode information
        return Db.Queryable<MesInvItemOutCDetails>()
            .First(b => b.ItemBarcode == itemBarcode);
    }
}
MESApplication/Controllers/Warehouse/MesInvItemOutCDetailsController.cs
@@ -1,4 +1,5 @@
using System.Dynamic;
using MES.Service.Dto.service;
using MES.Service.Modes;
using MES.Service.service.Warehouse;
using MES.Service.util;
@@ -12,6 +13,87 @@
{
    private readonly MesInvItemOutCDetailsManager m = new();
    /// <summary>
    /// èŽ·å–ç‰©æ–™æŽ¥æ”¶ä¿¡æ¯
    /// </summary>
    /// <returns></returns>
    [HttpPost("GetOutItemList")]
    public ResponseResult GetOutItemList(WarehouseQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = m.GetOutList(query);
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    /// <summary>
    /// èŽ·å–æ˜Žç»†èœå•
    /// </summary>
    /// <param name="query"></param>
    /// <returns></returns>
    [HttpPost("GetFormList")]
    public ResponseResult GetFormList(WarehouseQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = m.GetFormList(query);
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    /// <summary>
    /// ç¡®è®¤æŽ¥æ”¶
    /// </summary>
    /// <param name="query"></param>
    /// <returns></returns>
    [HttpPost("ConfirmReceipt")]
    public ResponseResult ConfirmReceipt(WarehouseQuery query)
    {
        try
        {
            dynamic resultInfos = new ExpandoObject();
            resultInfos.tbBillList = m.confirmReceipt(query);
            return new ResponseResult
            {
                status = 0,
                message = "OK",
                data = resultInfos
            };
        }
        catch (Exception ex)
        {
            return ResponseResult.ResponseError(ex);
        }
    }
    /***进入模版管理可以修改模版***/
MESApplication/bin/Debug/net8.0/MES.Service.dll
Binary files differ
MESApplication/bin/Debug/net8.0/MES.Service.pdb
Binary files differ
MESApplication/bin/Debug/net8.0/MESApplication.dll
Binary files differ
MESApplication/bin/Debug/net8.0/MESApplication.exe
Binary files differ
MESApplication/bin/Debug/net8.0/MESApplication.pdb
Binary files differ
MESApplication/bin/Debug/net8.0/MESApplication.xml
@@ -1049,6 +1049,26 @@
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.Warehouse.MesInvItemOutCDetailsController.GetOutItemList(MES.Service.Dto.service.WarehouseQuery)">
            <summary>
            èŽ·å–ç‰©æ–™æŽ¥æ”¶ä¿¡æ¯
            </summary>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.Warehouse.MesInvItemOutCDetailsController.GetFormList(MES.Service.Dto.service.WarehouseQuery)">
            <summary>
            èŽ·å–æ˜Žç»†èœå•
            </summary>
            <param name="query"></param>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.Warehouse.MesInvItemOutCDetailsController.ConfirmReceipt(MES.Service.Dto.service.WarehouseQuery)">
            <summary>
            ç¡®è®¤æŽ¥æ”¶
            </summary>
            <param name="query"></param>
            <returns></returns>
        </member>
        <member name="M:MESApplication.Controllers.Warehouse.MesInvItemOutCDetailsController.GetList">
            <summary>
                èŽ·å–æ‰€æœ‰