From 120e7a933c675b5587db9db17bb202075cacee00 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周五, 30 8月 2024 09:33:55 +0800 Subject: [PATCH] 1 --- iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/Dto/WorkPieceOutboundOutput.cs | 49 ++++ iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceOutBound.cs | 59 ++++ iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/OutboundOperationType.cs | 35 ++ iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/UnLineRoolbackInput.cs | 31 ++ iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/UnLineInput.cs | 45 +++ iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs | 304 +++++++++++++++++++++++++ iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/PieceUnLineStage.cs | 23 + iWara.SCADA.Code/iWare.Wms.Application/iWare.Wms.Application.xml | 103 ++++++++ iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/OutStoreInput.cs | 27 ++ iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs | 37 +++ 10 files changed, 707 insertions(+), 6 deletions(-) diff --git a/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/OutStoreInput.cs b/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/OutStoreInput.cs new file mode 100644 index 0000000..eb87583 --- /dev/null +++ b/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/OutStoreInput.cs @@ -0,0 +1,27 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using iWare.Wms.Core; +using iWare.Wms.Core.Enum; + +namespace iWare.Wms.Application +{ + + + /// <summary> + /// 鍑哄簱鎵ц杈撳叆鍙傛暟 + /// </summary> + public class OutStoreInput + { + + /// <summary> + /// 灏忚溅鐮� + /// </summary> + public string CarNo { get; set; } + + } + + +} diff --git a/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/UnLineInput.cs b/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/UnLineInput.cs new file mode 100644 index 0000000..32f1949 --- /dev/null +++ b/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/UnLineInput.cs @@ -0,0 +1,45 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using iWare.Wms.Core; +using iWare.Wms.Core.Enum; + +namespace iWare.Wms.Application +{ + + + /// <summary> + /// 涓嬬嚎鎵ц杈撳叆鍙傛暟 + /// </summary> + public class UnLineInput + { + + /// <summary> + /// 宸ヤ欢鏁版嵁 + /// </summary> + public List<UnBoundDetailsInput> WorkPieceInfoLst { get; set; } + + + /// <summary> + /// 灏忚溅鐮� + /// </summary> + public string CarNo { get; set; } + + } + + /// <summary> + /// 涓嬬嚎鎵ц杈撳叆鏄庣粏鍙傛暟 + /// </summary> + public class UnBoundDetailsInput + { + /// <summary> + /// 宸ヤ欢OP80鐮� + /// </summary> + public string OP80NewCode { get; set; } + + } + + +} diff --git a/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/UnLineRoolbackInput.cs b/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/UnLineRoolbackInput.cs new file mode 100644 index 0000000..e090a9f --- /dev/null +++ b/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/Dto/UnLineRoolbackInput.cs @@ -0,0 +1,31 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using iWare.Wms.Core; +using iWare.Wms.Core.Enum; + +namespace iWare.Wms.Application +{ + + + /// <summary> + /// 涓嬬嚎鎾ゅ洖鎵ц杈撳叆鍙傛暟 + /// </summary> + public class UnLineRoolbackInput + { + /// <summary> + /// 鏍囪 1锛氫笅绾挎挙鍥� 2锛氬嚭搴撴挙鍥� + /// </summary> + public int Flag { get; set; } + + /// <summary> + /// 宸ヤ欢鏁版嵁 + /// </summary> + public List<UnBoundDetailsInput> WorkPieceInfoLst { get; set; } + + } + + +} diff --git a/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs b/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs index 48ddb7f..b7f4f72 100644 --- a/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs +++ b/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs @@ -32,6 +32,7 @@ private readonly IRepository<SysDictType, MasterDbContextLocator> _sysDictTypeRep; private readonly IRepository<WorkPieceInfoLog, MasterDbContextLocator> _workPieceInfoLogRep; private readonly IRepository<WorkPieceOutbound, MasterDbContextLocator> _workPieceOutboundRep; + private readonly IRepository<WorkPieceOutboundRecord, MasterDbContextLocator> _workPieceOutboundRecordRep; private readonly IRepository<WorkPieceUnLine, MasterDbContextLocator> _workPieceUnLineRep; /// <summary> @@ -39,6 +40,7 @@ /// </summary> /// <param name="equipmentBaseInfoRep"></param> public PdaService( + IRepository<WorkPieceOutboundRecord, MasterDbContextLocator> workPieceOutboundRecordRep, IRepository<WorkPieceUnLine, MasterDbContextLocator> workPieceUnLineRep, IRepository<EquipmentBaseInfo, MasterDbContextLocator> equipmentBaseInfoRep, IRepository<V_GetEquipmentAlert, MasterDbContextLocator> v_GetEquipmentAlert, @@ -52,6 +54,7 @@ IRepository<WorkPieceOutbound, MasterDbContextLocator> workPieceOutboundRep ) { + _workPieceOutboundRecordRep = workPieceOutboundRecordRep; _workPieceUnLineRep = workPieceUnLineRep; _equipmentBaseInfoRep = equipmentBaseInfoRep; _v_GetEquipmentAlertRep = v_GetEquipmentAlert; @@ -560,7 +563,308 @@ #region 鏂扮増 涓嬬嚎銆佸嚭搴撴墽琛� + /// <summary> + /// 涓嬬嚎鎵ц + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost("unLineWorkPiece")] + [DisableOpLog] + [UnitOfWork] + public async Task<string> unLineWorkPiece([FromBody] UnLineInput input) + { + if (input.WorkPieceInfoLst.Count < 1) + { + throw Oops.Oh("鏁版嵁涓嶈兘涓虹┖锛�"); + } + if (input.CarNo == null || input.CarNo.Equals("")) + { + throw Oops.Oh("灏忚溅鐮佸繀椤昏緭鍏ワ紒"); + } + List<UnBoundDetailsInput> WorkPieceInfoLst = input.WorkPieceInfoLst; + + var addOutBoundList = new List<WorkPieceOutbound>(); + var addOutBoundLogList = new List<WorkPieceOutboundRecord>(); + + var queryOP80NewCodeList = WorkPieceInfoLst.Select(x => x.OP80NewCode).ToList(); + List<WorkPieceOutbound> db_WorkPieceOutboundList = await _workPieceOutboundRep.Where(w => queryOP80NewCodeList.Contains(w.OP80NewCode) && w.IsDeleted == false).ToListAsync(); + + List<WorkPieceInfo> db_WorkPieceInfoList = await _workPieceInfoRep.Where(w => queryOP80NewCodeList.Contains(w.OP80NewCode) && w.IsDeleted == false).ToListAsync(); + + foreach (var item in WorkPieceInfoLst) + { + var itemModel = db_WorkPieceOutboundList.FirstOrDefault(w => w.OP80NewCode == item.OP80NewCode); + if (itemModel != null) + { + if (itemModel.UnLineStage == PieceUnLineStage.宸插嚭搴�) + { + var createitme = itemModel.WorkPieceOutboundTime == null ? "" : (((DateTimeOffset)itemModel.WorkPieceOutboundTime).UtcDateTime.ToString("yyyy-MM-dd HH:mm:ss")); + throw Oops.Oh($"鎴愬搧鐮亄itemModel.OP80NewCode}宸插嚭搴擄紝鍑哄簱鏃堕棿:{createitme}"); + } + if (itemModel.UnLineStage == PieceUnLineStage.宸蹭笅绾�) + { + var createitme = itemModel.WorkPieceUnLineTime == null ? "" : (((DateTimeOffset)itemModel.WorkPieceUnLineTime).UtcDateTime.ToString("yyyy-MM-dd HH:mm:ss")); + throw Oops.Oh($"鎴愬搧鐮亄itemModel.OP80NewCode}宸蹭笅绾匡紝涓嬬嚎鏃堕棿:{createitme}"); + } + } + var workPiece = db_WorkPieceInfoList.FirstOrDefault(w => w.OP80NewCode == item.OP80NewCode); + if (workPiece != null) + { + + workPiece.OutRemark = "宸ヤ欢涓嬬嚎"; + workPiece.UnLineStage = PieceUnLineStage.宸蹭笅绾�; + workPiece.UnLineStageName = PieceUnLineStage.宸蹭笅绾�.ToString(); + workPiece.WorkPieceUnLineTime = DateTime.Now; + workPiece.WorkPieceUnLineUserId = CurrentUserInfo.UserId; + workPiece.WorkPieceUnLineUserName = CurrentUserInfo.Name; + + await _workPieceInfoRep.UpdateAsync(workPiece); + } + var outBound = new WorkPieceOutbound + { + WorkPieceID = workPiece?.WorkPieceID, + OP80NewCode = item.OP80NewCode, + WorkPieceOutboundTime = DateTime.Now, + WorkPieceOutboundUserId = CurrentUserInfo.UserId, + WorkPieceOutboundUserName = CurrentUserInfo.Name, + CreatedUserId = CurrentUserInfo.UserId, + CreatedUserName = CurrentUserInfo.Name, + + UnLineStage = PieceUnLineStage.宸蹭笅绾�, + UnLineStageName = PieceUnLineStage.宸蹭笅绾�.ToString(), + WorkPieceUnLineTime = DateTime.Now, + WorkPieceUnLineUserId = CurrentUserInfo.UserId, + WorkPieceUnLineUserName = CurrentUserInfo.Name, + CarNo = input.CarNo, + Remark = "宸ヤ欢涓嬬嚎", + + }; + addOutBoundList.Add(outBound); + + var outBoundLog = new WorkPieceOutboundRecord + { + OperationType = OutboundOperationType.涓嬬嚎.ToString(), + WorkPieceID = workPiece?.WorkPieceID, + OP80NewCode = item.OP80NewCode, + + CreatedUserId = CurrentUserInfo.UserId, + CreatedUserName = CurrentUserInfo.Name, + + + CarNo = input.CarNo, + Remark = "宸ヤ欢涓嬬嚎", + + }; + addOutBoundLogList.Add(outBoundLog); + + + + } + await _workPieceOutboundRep.InsertAsync(addOutBoundList); + await _workPieceOutboundRecordRep.InsertAsync(addOutBoundLogList); + + return "涓嬬嚎鎴愬姛"; + } + + + + + /// <summary> + /// 鍑哄簱鎵ц + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost("outStoreWorkPiece")] + [DisableOpLog] + [UnitOfWork] + public async Task<string> outStoreWorkPiece([FromBody] OutStoreInput input) + { + if (input.CarNo == null || input.CarNo.Equals("")) + { + throw Oops.Oh("灏忚溅鐮佸繀椤昏緭鍏ワ紒"); + } + + + var updateOutBoundList = new List<WorkPieceOutbound>(); + var addOutBoundLogList = new List<WorkPieceOutboundRecord>(); + + List<WorkPieceOutbound> db_WorkPieceOutboundList = await _workPieceOutboundRep.Where(w => + w.CarNo == input.CarNo + && w.UnLineStage == PieceUnLineStage.宸蹭笅绾� + && w.IsDeleted == false).ToListAsync(); + + var queryOP80NewCodeList = db_WorkPieceOutboundList.Select(x => x.OP80NewCode).ToList(); + + List<WorkPieceInfo> db_WorkPieceInfoList = await _workPieceInfoRep.Where(w => queryOP80NewCodeList.Contains(w.OP80NewCode) && w.IsDeleted == false).ToListAsync(); + + foreach (var item in db_WorkPieceOutboundList) + { + var itemModel = db_WorkPieceOutboundList.FirstOrDefault(w => w.OP80NewCode == item.OP80NewCode); + if (itemModel != null) + { + if (itemModel.UnLineStage == PieceUnLineStage.宸插嚭搴�) + { + var createitme = itemModel.WorkPieceOutboundTime == null ? "" : (((DateTimeOffset)itemModel.WorkPieceOutboundTime).UtcDateTime.ToString("yyyy-MM-dd HH:mm:ss")); + throw Oops.Oh($"鎴愬搧鐮亄itemModel.OP80NewCode}宸插嚭搴擄紝鍑哄簱鏃堕棿:{createitme}"); + } + } + else + { + throw Oops.Oh($"鎴愬搧鐮亄itemModel.OP80NewCode}娌℃湁涓嬬嚎鏁版嵁"); + } + var workPiece = db_WorkPieceInfoList.FirstOrDefault(w => w.OP80NewCode == item.OP80NewCode); + if (workPiece != null) + { + + workPiece.OutRemark = "宸ヤ欢鍑哄簱"; + workPiece.UnLineStage = PieceUnLineStage.宸插嚭搴�; + workPiece.UnLineStageName = PieceUnLineStage.宸插嚭搴�.ToString(); + workPiece.OutTime = DateTime.Now; + workPiece.OutPerson = CurrentUserInfo.Name; + + await _workPieceInfoRep.UpdateAsync(workPiece); + } + + item.UnLineStage = PieceUnLineStage.宸插嚭搴�; + item.UnLineStageName = PieceUnLineStage.宸插嚭搴�.ToString(); + item.WorkPieceUnLineTime = DateTime.Now; + item.WorkPieceUnLineUserId = CurrentUserInfo.UserId; + item.WorkPieceUnLineUserName = CurrentUserInfo.Name; + updateOutBoundList.Add(item); + + var outBoundLog = new WorkPieceOutboundRecord + { + OperationType = OutboundOperationType.鍑哄簱.ToString(), + WorkPieceID = workPiece?.WorkPieceID, + OP80NewCode = item.OP80NewCode, + + CreatedUserId = CurrentUserInfo.UserId, + CreatedUserName = CurrentUserInfo.Name, + + + CarNo = input.CarNo, + Remark = "宸ヤ欢鍑哄簱", + + }; + addOutBoundLogList.Add(outBoundLog); + + + + } + await _workPieceOutboundRep.UpdateAsync(updateOutBoundList); + await _workPieceOutboundRecordRep.InsertAsync(addOutBoundLogList); + + return "鍑哄簱鎴愬姛"; + } + + + /// <summary> + /// 涓嬬嚎鎾ゅ洖/鍑哄簱鎾ゅ洖 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost("unLineWorkPieceRollback")] + [DisableOpLog] + [UnitOfWork] + public async Task<string> unLineWorkPieceRollback([FromBody] UnLineRoolbackInput input) + { + if (input.WorkPieceInfoLst.Count < 1) + { + throw Oops.Oh("鏁版嵁涓嶈兘涓虹┖锛�"); + } + if (!(input.Flag == 1 || input.Flag == 2)) + { + throw Oops.Oh("鏍囪涓嶆纭紒"); + } + var remark = "宸ヤ欢涓嬬嚎鎾ゅ洖"; + if (input.Flag == 2) + { + remark = "宸ヤ欢鍑哄簱鎾ゅ洖"; + } + + List<UnBoundDetailsInput> WorkPieceInfoLst = input.WorkPieceInfoLst; + + var removeOutBoundList = new List<WorkPieceOutbound>(); + var addOutBoundLogList = new List<WorkPieceOutboundRecord>(); + + var queryOP80NewCodeList = WorkPieceInfoLst.Select(x => x.OP80NewCode).ToList(); + List<WorkPieceOutbound> db_WorkPieceOutboundList = await _workPieceOutboundRep.Where(w => queryOP80NewCodeList.Contains(w.OP80NewCode) && w.IsDeleted == false).ToListAsync(); + + List<WorkPieceInfo> db_WorkPieceInfoList = await _workPieceInfoRep.Where(w => queryOP80NewCodeList.Contains(w.OP80NewCode) && w.IsDeleted == false).ToListAsync(); + + foreach (var item in WorkPieceInfoLst) + { + var itemModel = db_WorkPieceOutboundList.FirstOrDefault(w => w.OP80NewCode == item.OP80NewCode); + if (itemModel != null) + { + if (input.Flag == 1 && itemModel.UnLineStage == PieceUnLineStage.宸插嚭搴�) + { + var createitme = itemModel.WorkPieceOutboundTime == null ? "" : (((DateTimeOffset)itemModel.WorkPieceOutboundTime).UtcDateTime.ToString("yyyy-MM-dd HH:mm:ss")); + throw Oops.Oh($"鎴愬搧鐮亄itemModel.OP80NewCode}宸插嚭搴擄紝鍑哄簱鏃堕棿:{createitme}"); + } + if (input.Flag == 2 && itemModel.UnLineStage == PieceUnLineStage.宸蹭笅绾�) + { + var createitme = itemModel.WorkPieceUnLineTime == null ? "" : (((DateTimeOffset)itemModel.WorkPieceUnLineTime).UtcDateTime.ToString("yyyy-MM-dd HH:mm:ss")); + throw Oops.Oh($"鎴愬搧鐮亄itemModel.OP80NewCode}宸蹭笅绾匡紝涓嬬嚎鏃堕棿:{createitme}"); + } + } + else + { + throw Oops.Oh($"鎴愬搧鐮亄itemModel.OP80NewCode}娌℃湁涓嬬嚎鍑哄簱鏁版嵁"); + } + var workPiece = db_WorkPieceInfoList.FirstOrDefault(w => w.OP80NewCode == item.OP80NewCode); + if (workPiece != null) + { + workPiece.OutRemark = remark; + + if (input.Flag == 1) + { + workPiece.UnLineStage = null; + workPiece.UnLineStageName = ""; + workPiece.WorkPieceUnLineTime = null; + workPiece.WorkPieceUnLineUserId = null; + workPiece.WorkPieceUnLineUserName = ""; + } + else + { + workPiece.UnLineStage = PieceUnLineStage.宸蹭笅绾�; + workPiece.UnLineStageName = PieceUnLineStage.宸蹭笅绾�.ToString(); + workPiece.WorkPieceUnLineTime = DateTime.Now; + workPiece.WorkPieceUnLineUserId = CurrentUserInfo.UserId; + workPiece.WorkPieceUnLineUserName = CurrentUserInfo.Name; + } + + + await _workPieceInfoRep.UpdateAsync(workPiece); + } + + + removeOutBoundList.Add(itemModel); + + var outBoundLog = new WorkPieceOutboundRecord + { + OperationType = input.Flag == 1 ? OutboundOperationType.鎾ら攢涓嬬嚎.ToString() : OutboundOperationType.鎾ら攢鍑哄簱.ToString(), + WorkPieceID = workPiece?.WorkPieceID, + OP80NewCode = item.OP80NewCode, + + CreatedUserId = CurrentUserInfo.UserId, + CreatedUserName = CurrentUserInfo.Name, + + CarNo = itemModel.CarNo, + Remark = remark, + + }; + addOutBoundLogList.Add(outBoundLog); + + + + } + await _workPieceOutboundRep.DeleteAsync(removeOutBoundList); + await _workPieceOutboundRecordRep.InsertAsync(addOutBoundLogList); + + return "鎿嶄綔鎴愬姛"; + } #endregion diff --git a/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/Dto/WorkPieceOutboundOutput.cs b/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/Dto/WorkPieceOutboundOutput.cs index 1db715a..78f202f 100644 --- a/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/Dto/WorkPieceOutboundOutput.cs +++ b/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/Dto/WorkPieceOutboundOutput.cs @@ -1,5 +1,8 @@ 锘縰sing iWare.Wms.Core.Util.LowCode.Dto; using System; +using Microsoft.EntityFrameworkCore; +using System.ComponentModel.DataAnnotations; +using iWare.Wms.Core; namespace iWare.Wms.Application { @@ -8,6 +11,52 @@ /// </summary> public class WorkPieceOutboundOutput { + + /// <summary> + /// 灏忚溅鐮� + /// </summary> + [Comment("灏忚溅鐮�")] + [MaxLength(32)] + public string CarNo { get; set; } + + /// <summary> + /// 闃舵 + /// </summary> + [Comment("闃舵")] + public PieceUnLineStage? UnLineStage { get; set; } + + /// <summary> + /// 闃舵鍚嶇О + /// </summary> + [Comment("闃舵鍚嶇О")] + public String UnLineStageName { get; set; } + + + + #region 涓嬬嚎 + + /// <summary> + /// 涓嬬嚎鏃堕棿 + /// </summary> + [Comment("涓嬬嚎鏃堕棿")] + public DateTime? WorkPieceUnLineTime { get; set; } + + + /// <summary> + /// 涓嬬嚎浜篒d + /// </summary> + [Comment("涓嬬嚎浜篒d")] + public long? WorkPieceUnLineUserId { get; set; } + + /// <summary> + /// 涓嬬嚎浜哄悕绉� + /// </summary> + [Comment("涓嬬嚎浜哄悕绉�")] + [MaxLength(32)] + public string WorkPieceUnLineUserName { get; set; } + + #endregion + /// <summary> /// 宸ヤ欢鍙� /// </summary> diff --git a/iWara.SCADA.Code/iWare.Wms.Application/iWare.Wms.Application.xml b/iWara.SCADA.Code/iWare.Wms.Application/iWare.Wms.Application.xml index ce2aa13..8b285a1 100644 --- a/iWara.SCADA.Code/iWare.Wms.Application/iWare.Wms.Application.xml +++ b/iWara.SCADA.Code/iWare.Wms.Application/iWare.Wms.Application.xml @@ -296,7 +296,7 @@ 璁惧鍩虹淇℃伅绠$悊鏈嶅姟 </summary> </member> - <member name="M:iWare.Wms.Application.Service.Pda.PdaService.#ctor(Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceUnLine,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.EquipmentBaseInfo,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.V_GetEquipmentAlert,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.EquipmentCurrentMonitor,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceProcess,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceInfo,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceInfo,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.SysDictData,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.SysDictType,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceInfoLog,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceOutbound,Furion.DatabaseAccessor.MasterDbContextLocator})"> + <member name="M:iWare.Wms.Application.Service.Pda.PdaService.#ctor(Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceOutboundRecord,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceUnLine,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.EquipmentBaseInfo,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.V_GetEquipmentAlert,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.EquipmentCurrentMonitor,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceProcess,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceInfo,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceInfo,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.SysDictData,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.SysDictType,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceInfoLog,Furion.DatabaseAccessor.MasterDbContextLocator},Furion.DatabaseAccessor.IRepository{iWare.Wms.Core.WorkPieceOutbound,Furion.DatabaseAccessor.MasterDbContextLocator})"> <summary> 璁惧鍩虹淇℃伅鏋勯�犲嚱鏁� </summary> @@ -365,6 +365,27 @@ <member name="M:iWare.Wms.Application.Service.Pda.PdaService.GetOutBoundWorkPieceInfoCount"> <summary> 鍑哄簱缁熻 + </summary> + <param name="input"></param> + <returns></returns> + </member> + <member name="M:iWare.Wms.Application.Service.Pda.PdaService.unLineWorkPiece(iWare.Wms.Application.UnLineInput)"> + <summary> + 涓嬬嚎鎵ц + </summary> + <param name="input"></param> + <returns></returns> + </member> + <member name="M:iWare.Wms.Application.Service.Pda.PdaService.outStoreWorkPiece(iWare.Wms.Application.OutStoreInput)"> + <summary> + 鍑哄簱鎵ц + </summary> + <param name="input"></param> + <returns></returns> + </member> + <member name="M:iWare.Wms.Application.Service.Pda.PdaService.unLineWorkPieceRollback(iWare.Wms.Application.UnLineRoolbackInput)"> + <summary> + 涓嬬嚎鎾ゅ洖/鍑哄簱鎾ゅ洖 </summary> <param name="input"></param> <returns></returns> @@ -5082,6 +5103,56 @@ </summary> <param name="input"></param> <returns></returns> + </member> + <member name="T:iWare.Wms.Application.OutStoreInput"> + <summary> + 鍑哄簱鎵ц杈撳叆鍙傛暟 + </summary> + </member> + <member name="P:iWare.Wms.Application.OutStoreInput.CarNo"> + <summary> + 灏忚溅鐮� + </summary> + </member> + <member name="T:iWare.Wms.Application.UnLineInput"> + <summary> + 涓嬬嚎鎵ц杈撳叆鍙傛暟 + </summary> + </member> + <member name="P:iWare.Wms.Application.UnLineInput.WorkPieceInfoLst"> + <summary> + 宸ヤ欢鏁版嵁 + </summary> + </member> + <member name="P:iWare.Wms.Application.UnLineInput.CarNo"> + <summary> + 灏忚溅鐮� + </summary> + </member> + <member name="T:iWare.Wms.Application.UnBoundDetailsInput"> + <summary> + 涓嬬嚎鎵ц杈撳叆鏄庣粏鍙傛暟 + </summary> + </member> + <member name="P:iWare.Wms.Application.UnBoundDetailsInput.OP80NewCode"> + <summary> + 宸ヤ欢OP80鐮� + </summary> + </member> + <member name="T:iWare.Wms.Application.UnLineRoolbackInput"> + <summary> + 涓嬬嚎鎾ゅ洖鎵ц杈撳叆鍙傛暟 + </summary> + </member> + <member name="P:iWare.Wms.Application.UnLineRoolbackInput.Flag"> + <summary> + 鏍囪 1锛氫笅绾挎挙鍥� 2锛氬嚭搴撴挙鍥� + </summary> + </member> + <member name="P:iWare.Wms.Application.UnLineRoolbackInput.WorkPieceInfoLst"> + <summary> + 宸ヤ欢鏁版嵁 + </summary> </member> <member name="T:iWare.Wms.Application.WorkPieceByOP80NewCodeInputSearch"> <summary> @@ -14964,6 +15035,36 @@ 宸ヤ欢鍑哄簱淇℃伅杈撳嚭鍙傛暟 </summary> </member> + <member name="P:iWare.Wms.Application.WorkPieceOutboundOutput.CarNo"> + <summary> + 灏忚溅鐮� + </summary> + </member> + <member name="P:iWare.Wms.Application.WorkPieceOutboundOutput.UnLineStage"> + <summary> + 闃舵 + </summary> + </member> + <member name="P:iWare.Wms.Application.WorkPieceOutboundOutput.UnLineStageName"> + <summary> + 闃舵鍚嶇О + </summary> + </member> + <member name="P:iWare.Wms.Application.WorkPieceOutboundOutput.WorkPieceUnLineTime"> + <summary> + 涓嬬嚎鏃堕棿 + </summary> + </member> + <member name="P:iWare.Wms.Application.WorkPieceOutboundOutput.WorkPieceUnLineUserId"> + <summary> + 涓嬬嚎浜篒d + </summary> + </member> + <member name="P:iWare.Wms.Application.WorkPieceOutboundOutput.WorkPieceUnLineUserName"> + <summary> + 涓嬬嚎浜哄悕绉� + </summary> + </member> <member name="P:iWare.Wms.Application.WorkPieceOutboundOutput.WorkPieceID"> <summary> 宸ヤ欢鍙� diff --git a/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs b/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs index 60d148a..2f51e3d 100644 --- a/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs +++ b/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs @@ -243,6 +243,43 @@ public DateTime? CompleteTime { get; set; } + + /// <summary> + /// 涓嬬嚎闃舵 + /// </summary> + [Comment("涓嬬嚎闃舵")] + public PieceUnLineStage? UnLineStage { get; set; } + + /// <summary> + /// 涓嬬嚎闃舵鍚嶇О + /// </summary> + [Comment("涓嬬嚎闃舵鍚嶇О")] + public String UnLineStageName { get; set; } + + #region 涓嬬嚎 + + /// <summary> + /// 涓嬬嚎鏃堕棿 + /// </summary> + [Comment("涓嬬嚎鏃堕棿")] + public DateTime? WorkPieceUnLineTime { get; set; } + + + /// <summary> + /// 涓嬬嚎浜篒d + /// </summary> + [Comment("涓嬬嚎浜篒d")] + public long? WorkPieceUnLineUserId { get; set; } + + /// <summary> + /// 涓嬬嚎浜哄悕绉� + /// </summary> + [Comment("涓嬬嚎浜哄悕绉�")] + [MaxLength(32)] + public string WorkPieceUnLineUserName { get; set; } + + #endregion + #region 鍑哄簱鐩稿叧 /// <summary> diff --git a/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceOutBound.cs b/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceOutBound.cs index 93d6434..082ea9b 100644 --- a/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceOutBound.cs +++ b/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceOutBound.cs @@ -20,19 +20,65 @@ [Comment("宸ヤ欢鍑哄簱琛�")] public class WorkPieceOutbound : DEntityBase { + + /// <summary> + /// 宸ヤ欢OP80鎵撶殑鐮�-鍞竴绱㈠紩 + /// </summary> + [Comment("OP80鎵撶爜")] + [Required] + [MaxLength(255)] + public string OP80NewCode { get; set; } + + /// <summary> + /// 灏忚溅鐮� + /// </summary> + [Comment("灏忚溅鐮�")] + [MaxLength(32)] + public string CarNo { get; set; } + + /// <summary> + /// 闃舵 + /// </summary> + [Comment("闃舵")] + public PieceUnLineStage? UnLineStage { get; set; } + + /// <summary> + /// 闃舵鍚嶇О + /// </summary> + [Comment("闃舵鍚嶇О")] + public String UnLineStageName { get; set; } + /// <summary> /// 宸ヤ欢鍙� /// </summary> [Comment("宸ヤ欢鍙�")] public string WorkPieceID { get; set; } + #region 涓嬬嚎 + /// <summary> - /// 宸ヤ欢OP80鎵撶殑鐮� + /// 涓嬬嚎鏃堕棿 /// </summary> - [Comment("OP80鎵撶爜")] - [Required] - [MaxLength(255)] - public string OP80NewCode { get; set; } + [Comment("涓嬬嚎鏃堕棿")] + public DateTime? WorkPieceUnLineTime { get; set; } + + + /// <summary> + /// 涓嬬嚎浜篒d + /// </summary> + [Comment("涓嬬嚎浜篒d")] + public long? WorkPieceUnLineUserId { get; set; } + + /// <summary> + /// 涓嬬嚎浜哄悕绉� + /// </summary> + [Comment("涓嬬嚎浜哄悕绉�")] + [MaxLength(32)] + public string WorkPieceUnLineUserName { get; set; } + + #endregion + + #region 鍑哄簱 /// <summary> /// 鍑哄簱鏃堕棿 @@ -53,6 +99,9 @@ [Comment("鍑哄簱浜哄悕绉�")] [MaxLength(32)] public string WorkPieceOutboundUserName { get; set; } + + #endregion + /// <summary> /// 澶囨敞 /// </summary> diff --git a/iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/OutboundOperationType.cs b/iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/OutboundOperationType.cs new file mode 100644 index 0000000..ba5f7e0 --- /dev/null +++ b/iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/OutboundOperationType.cs @@ -0,0 +1,35 @@ +锘縰sing System.ComponentModel; + +namespace iWare.Wms.Core +{ + /// <summary> + /// 鎿嶄綔绫诲瀷 + /// </summary> + public enum OutboundOperationType + { + /// <summary> + /// 涓嬬嚎 + /// </summary> + [Description("涓嬬嚎")] + 涓嬬嚎 = 1, + + /// <summary> + /// 鎾ら攢涓嬬嚎 + /// </summary> + [Description("鎾ら攢涓嬬嚎")] + 鎾ら攢涓嬬嚎 = 2, + + /// <summary> + /// 鍑哄簱 + /// </summary> + [Description("鍑哄簱")] + 鍑哄簱 = 3, + + /// <summary> + /// 鎾ら攢鍑哄簱 + /// </summary> + [Description("鎾ら攢鍑哄簱")] + 鎾ら攢鍑哄簱 = 4, + + } +} \ No newline at end of file diff --git a/iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/PieceUnLineStage.cs b/iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/PieceUnLineStage.cs new file mode 100644 index 0000000..7eecc76 --- /dev/null +++ b/iWara.SCADA.Code/iWare.Wms.Core/Enum/WMS/PieceUnLineStage.cs @@ -0,0 +1,23 @@ +锘縰sing System.ComponentModel; + +namespace iWare.Wms.Core +{ + /// <summary> + /// 宸ヤ欢闃舵 + /// </summary> + public enum PieceUnLineStage + { + /// <summary> + /// 宸蹭笅绾� + /// </summary> + [Description("宸蹭笅绾�")] + 宸蹭笅绾� = 1, + + /// <summary> + /// 宸插嚭搴� + /// </summary> + [Description("宸插嚭搴�")] + 宸插嚭搴� = 2 + + } +} \ No newline at end of file -- Gitblit v1.9.3