schangxiang@126.com
2024-09-06 2a19504209e763a7c0e957e4ee265dd419486ef1
入库优化
已修改5个文件
103 ■■■■ 文件已修改
iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWara.SCADA.Code/iWare.Wms.Application/iWare.Wms.Application.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/OutboundOperationType.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWara.SCADA.Code/iWare.Wms.EntityFramework.Core/dbsettings.json 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs
@@ -492,7 +492,7 @@
            }
            if (input.WorkPieceInfoLst.Count < 1)
            {
                throw Oops.Oh("工件出库失败:数据不能为空!");
                throw Oops.Oh("工件入库失败:数据不能为空!");
            }
            List<OutBoundDetailsInput> WorkPieceInfoLst = input.WorkPieceInfoLst;
@@ -504,9 +504,11 @@
            List<WorkPieceInfo> db_WorkPieceInfoList = await _workPieceInfoRep.Where(w => queryOP80NewCodeList.Contains(w.OP80NewCode) && w.IsDeleted == false).ToListAsync();
            var addOutBoundLogList = new List<WorkPieceOutboundRecord>();
            foreach (var item in WorkPieceInfoLst)
            {
                var itemModel = db_itemModelList.FirstOrDefault(w => w.OP80NewCode == item.OP80NewCode);
                var itemModel = db_itemModelList.FirstOrDefault(w => w.OP80NewCode == item.OP80NewCode && w.IsDeleted == false);
                if (itemModel != null)
                {
                    //itemModel.IsDeleted = true;
@@ -526,7 +528,7 @@
                if (workPiece != null)
                {
                    workPiece.OutPerson = CurrentUserInfo.Name;
                    workPiece.OutRemark = "撤销工件出库";
                    workPiece.OutRemark = "撤销工件入库";
                    workPiece.OutTime = DateTime.Now;
                    workPiece.IsOut = false;
@@ -544,9 +546,28 @@
                };
                addOutBoundList.Add(outBoundLog);
                var outBoundLogRecord = new WorkPieceOutboundRecord
                {
                    OperationType = OutboundOperationType.入库.ToString(),
                    WorkPieceID = workPiece?.WorkPieceID,
                    OP80NewCode = item.OP80NewCode,
                    CreatedUserId = CurrentUserInfo.UserId,
                    CreatedUserName = CurrentUserInfo.Name,
                    //CarNo = input.CarNo,
                    Remark = "工件入库",
                };
                addOutBoundLogList.Add(outBoundLogRecord);
            }
            await _workPieceOutboundRep.InsertAsync(addOutBoundList);
            await _workPieceOutboundRecordRep.InsertAsync(addOutBoundLogList);
            return "出库成功";
        }
iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs
@@ -8,6 +8,7 @@
using Mapster;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using SharpYaml;
using System.Linq.Dynamic.Core;
namespace iWare.Wms.Application
@@ -23,12 +24,15 @@
    {
        private readonly IRepository<WorkPieceOutbound, MasterDbContextLocator> _workPieceOutboundRep;
        private readonly IRepository<WorkPieceInfo, MasterDbContextLocator> _workPieceInfoRep;
        private readonly IRepository<WorkPieceOutboundRecord, MasterDbContextLocator> _workPieceOutboundRecordRep;
        public WorkPieceOutboundService(
              IRepository<WorkPieceOutboundRecord, MasterDbContextLocator> workPieceOutboundRecordRep,
            IRepository<WorkPieceInfo, MasterDbContextLocator> workPieceInfoRep,
            IRepository<WorkPieceOutbound, MasterDbContextLocator> workPieceOutboundRep
        )
        {
            _workPieceOutboundRecordRep = workPieceOutboundRecordRep;
            _workPieceInfoRep = workPieceInfoRep;
            _workPieceOutboundRep = workPieceOutboundRep;
        }
@@ -52,6 +56,27 @@
                                     .ToADPagedListAsync(input.PageNo, input.PageSize);
            return workPieceOutbounds;
        }
        /// <summary>
        /// 分页查询工件出库历史信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpGet("pageForRecord")]
        public async Task<PageResult<WorkPieceOutboundRecord>> PageForRecord([FromQuery] WorkPieceOutboundSearch input)
        {
            var workPieceOutbounds = await _workPieceOutboundRecordRep.DetachedEntities
                                     .Where(!string.IsNullOrEmpty(input.WorkPieceID), u => u.WorkPieceID.Contains(input.WorkPieceID))
                                     .Where(!string.IsNullOrEmpty(input.OP80NewCode), u => u.OP80NewCode.Contains(input.OP80NewCode))
                                     .Where(!string.IsNullOrEmpty(input.WorkPieceOutboundUserName), u => u.CreatedUserName.Contains(input.WorkPieceOutboundUserName))
                                     .Where(!string.IsNullOrEmpty(input.StartTimeBeginTime.ToString()), u => u.CreatedTime >= input.StartTimeBeginTime)
                                     .Where(!string.IsNullOrEmpty(input.StartTimeEndTime.ToString()), u => u.CreatedTime <= input.StartTimeEndTime)
                                     .OrderBy(PageInputOrder.OrderBuilder<WorkPieceOutboundSearch>(input))
                                     .ProjectToType<WorkPieceOutboundRecord>()
                                     .ToADPagedListAsync(input.PageNo, input.PageSize);
            return workPieceOutbounds;
        }
        /// <summary>
        /// 增加工件出库信息
@@ -128,17 +153,33 @@
                var workPieceOutbound = await _workPieceOutboundRep.FirstOrDefaultAsync(u => u.Id == item.Id);
                if (workPieceOutbound == null)
                {
                    throw Oops.Oh("工件出库信息不存在");
                    throw Oops.Oh("工件入库信息不存在");
                }
                workPieceOutbound.IsDeleted = true;
                workPieceOutbound.Remark = workPieceOutbound.Remark ?? "" + "撤销发货";
                await _workPieceOutboundRep.UpdateAsync(workPieceOutbound);
                //workPieceOutbound.IsDeleted = true;
                //workPieceOutbound.Remark = workPieceOutbound.Remark ?? "" + "撤销入库";
                //await _workPieceOutboundRep.UpdateAsync(workPieceOutbound);
                await _workPieceOutboundRep.DeleteAsync(workPieceOutbound);
                var outBoundLog = new WorkPieceOutboundRecord
                {
                    OperationType = OutboundOperationType.撤销入库.ToString(),
                    WorkPieceID = workPieceOutbound?.WorkPieceID,
                    OP80NewCode = workPieceOutbound?.OP80NewCode,
                    CreatedUserId = CurrentUserInfo.UserId,
                    CreatedUserName = CurrentUserInfo.Name,
                    // CarNo = itemModel.CarNo,
                    Remark = "撤销入库",
                };
                await _workPieceOutboundRecordRep.InsertAsync(outBoundLog);
                var workPiece = await _workPieceInfoRep.FirstOrDefaultAsync(u => u.WorkPieceID == workPieceOutbound.WorkPieceID);
                if (workPiece != null)
                {
                    workPiece.OutPerson = CurrentUserInfo.Name;
                    workPiece.OutRemark = "撤销工件出库";
                    workPiece.OutRemark = "撤销入库";
                    workPiece.OutTime = DateTime.Now;
                    workPiece.IsOut = false;
iWara.SCADA.Code/iWare.Wms.Application/iWare.Wms.Application.xml
@@ -15224,6 +15224,13 @@
            <param name="input"></param>
            <returns></returns>
        </member>
        <member name="M:iWare.Wms.Application.WorkPieceOutboundService.PageForRecord(iWare.Wms.Application.WorkPieceOutboundSearch)">
            <summary>
            分页查询工件出库历史信息
            </summary>
            <param name="input"></param>
            <returns></returns>
        </member>
        <member name="M:iWare.Wms.Application.WorkPieceOutboundService.Add(iWare.Wms.Application.AddWorkPieceOutboundInput)">
            <summary>
            增加工件出库信息
iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/OutboundOperationType.cs
@@ -31,5 +31,18 @@
        [Description("撤销出库")]
        撤销出库 = 4,
        /// <summary>
        /// 入库
        /// </summary>
        [Description("入库")]
        入库 = 5,
        /// <summary>
        /// 撤销入库
        /// </summary>
        [Description("撤销入库")]
        撤销入库 = 6,
    }
}
iWara.SCADA.Code/iWare.Wms.EntityFramework.Core/dbsettings.json
@@ -15,10 +15,7 @@
    //"MultiTenantConnection": "Data Source=localhost;Database=Admin.NET_SaaS;User ID=root;Password=123456;pooling=true;port=3306;sslmode=none;CharSet=utf8;"
    //MSSQL连接字符串
    //"DefaultConnection": "Server=.;Database=iWare.WMS;User=sa;Password=123abc.com;MultipleActiveResultSets=True;"
    //"DefaultConnection": "Server=82.156.32.44;Database=iWare.WMS;User=sa;Password=123abc.com;MultipleActiveResultSets=True;"
    //"DefaultConnection": "Server=192.168.216.203;Database=iWare.SCADA;User=sa;Password=123abc.com;MultipleActiveResultSets=True;"
    "DefaultConnection": "Server=.;Database=iWare.SCADA;User=sa;Password=123abc.com;MultipleActiveResultSets=True;"
    "DefaultConnection": "Server=192.168.216.203;Database=iWare.SCADA;User=sa;Password=123abc.com;MultipleActiveResultSets=True;"
    //"MultiTenantConnection": "Server=localhost;Database=Admin.NET_SaaS;User=sa;Password=123456;MultipleActiveResultSets=True;"
  }
}