2
schangxiang@126.com
2024-06-20 90b264c675155d6fb921d256f2de48ad398845c6
2
已修改3个文件
74 ■■■■■ 文件已修改
iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs
@@ -447,6 +447,16 @@
                    OP80NewCode = OP80NewCode,
                };
            }
            //判断是否已经出库
            List<WorkPieceOutbound> db_itemModelList = await _workPieceOutboundRep.DetachedEntities.Where(w => (w.WorkPieceID == OP80NewCode || w.OP80NewCode == OP80NewCode) && w.IsDeleted == false).ToListAsync();
            if (db_itemModelList != null && db_itemModelList.Count > 0)
            {
                var itemModel = db_itemModelList.First();
                var createitme = itemModel.CreatedTime == null ? "" : (((DateTimeOffset)itemModel.CreatedTime).UtcDateTime.ToString("yyyy-MM-dd HH:mm:ss"));
                throw Oops.Oh($"工件{itemModel.WorkPieceID}已出库,出库时间:{createitme}");
            }
            return workPieceInfo;
        }
@@ -456,6 +466,7 @@
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost("outBoundWorkPiece")]
        [UnitOfWork]
        public async Task<string> outBoundWorkPiece([FromBody] OutBoundInput input)
        {
@@ -474,6 +485,8 @@
            var queryWorkPieceIDList = WorkPieceInfoLst.Select(x => x.WorkPieceID).ToList();
            List<WorkPieceOutbound> db_itemModelList = await _workPieceOutboundRep.Where(w => queryWorkPieceIDList.Contains(w.WorkPieceID) && w.IsDeleted == false).ToListAsync();
            List<WorkPieceInfo> db_WorkPieceInfoList = await _workPieceInfoRep.Where(w => queryWorkPieceIDList.Contains(w.WorkPieceID) && w.IsDeleted == false).ToListAsync();
            foreach (var item in WorkPieceInfoLst)
            {
@@ -497,6 +510,17 @@
                    CreatedUserName = CurrentUserInfo.Name,
                };
                addOutBoundList.Add(outBoundLog);
                var workPiece = db_WorkPieceInfoList.FirstOrDefault(w => w.WorkPieceID == item.WorkPieceID);
                if (workPiece != null)
                {
                    workPiece.OutPerson = CurrentUserInfo.Name;
                    workPiece.OutRemark = "撤销工件出库";
                    workPiece.OutTime = DateTime.Now;
                    workPiece.IsOut = false;
                    await _workPieceInfoRep.UpdateAsync(workPiece);
                }
            }
            await _workPieceOutboundRep.InsertAsync(addOutBoundList);
            return "出库成功";
iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs
@@ -22,12 +22,14 @@
    public class WorkPieceOutboundService : IWorkPieceOutboundService, IDynamicApiController, ITransient
    {
        private readonly IRepository<WorkPieceOutbound,MasterDbContextLocator> _workPieceOutboundRep;
        private readonly IRepository<WorkPieceInfo, MasterDbContextLocator> _workPieceInfoRep;
        public WorkPieceOutboundService(
            IRepository<WorkPieceInfo, MasterDbContextLocator> workPieceInfoRep,
            IRepository<WorkPieceOutbound,MasterDbContextLocator> workPieceOutboundRep
        )
        {
            _workPieceInfoRep = workPieceInfoRep;
            _workPieceOutboundRep = workPieceOutboundRep;
        }
@@ -117,9 +119,11 @@
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost("revoke")]
        [UnitOfWork]
        public async Task Revoke(List<DeleteWorkPieceOutboundInput> input)
        {
            foreach (var item in input) {
            foreach (var item in input)
            {
                var workPieceOutbound = await _workPieceOutboundRep.FirstOrDefaultAsync(u => u.Id == item.Id);
                if (workPieceOutbound == null)
                {
@@ -128,6 +132,17 @@
                workPieceOutbound.IsDeleted = true;
                workPieceOutbound.Remark = workPieceOutbound.Remark??""+"撤销发货";
                await _workPieceOutboundRep.UpdateAsync(workPieceOutbound);
                var workPiece = await _workPieceInfoRep.FirstOrDefaultAsync(u => u.WorkPieceID == workPieceOutbound.WorkPieceID);
                if (workPiece != null)
                {
                    workPiece.OutPerson = CurrentUserInfo.Name;
                    workPiece.OutRemark = "撤销工件出库";
                    workPiece.OutTime = DateTime.Now;
                    workPiece.IsOut = false;
                    await _workPieceInfoRep.UpdateAsync(workPiece);
                }
            }
            
        }
iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs
@@ -231,5 +231,36 @@
        /// </summary>
        [Comment("完成时间")]
        public DateTime? CompleteTime { get; set; }
        #region 出库相关
        /// <summary>
        /// 是否出库
        /// </summary>
        [Comment("是否出库")]
        public bool? IsOut { get; set; }
        /// <summary>
        /// 出库人
        /// </summary>
        [Comment("出库人")]
        [MaxLength(255)]
        public string OutPerson { get; set; }
        /// <summary>
        /// 出库备注
        /// </summary>
        [Comment("出库备注")]
        [MaxLength(255)]
        public string OutRemark { get; set; }
        /// <summary>
        /// 出库时间
        /// </summary>
        [Comment("出库时间")]
        public DateTime? OutTime { get; set; }
        #endregion
    }
}