From 90b264c675155d6fb921d256f2de48ad398845c6 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周四, 20 6月 2024 13:25:38 +0800
Subject: [PATCH] 2
---
iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs | 29 +++++++++++---
iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs | 24 ++++++++++++
iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs | 43 ++++++++++++++++++---
3 files changed, 83 insertions(+), 13 deletions(-)
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 655cbdd..7aed2ca 100644
--- a/iWara.SCADA.Code/iWare.Wms.Application/Service/Pda/PdaService.cs
+++ b/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 "鍑哄簱鎴愬姛";
diff --git a/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs b/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs
index a3c2b34..141c83c 100644
--- a/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs
+++ b/iWara.SCADA.Code/iWare.Wms.Application/Service/WorkPieceOutbound/WorkPieceOutboundService.cs
@@ -21,13 +21,15 @@
[DisableOpLog]
public class WorkPieceOutboundService : IWorkPieceOutboundService, IDynamicApiController, ITransient
{
- private readonly IRepository<WorkPieceOutbound,MasterDbContextLocator> _workPieceOutboundRep;
-
+ private readonly IRepository<WorkPieceOutbound, MasterDbContextLocator> _workPieceOutboundRep;
+ private readonly IRepository<WorkPieceInfo, MasterDbContextLocator> _workPieceInfoRep;
public WorkPieceOutboundService(
- IRepository<WorkPieceOutbound,MasterDbContextLocator> workPieceOutboundRep
+ IRepository<WorkPieceInfo, MasterDbContextLocator> workPieceInfoRep,
+ IRepository<WorkPieceOutbound, MasterDbContextLocator> workPieceOutboundRep
)
{
+ _workPieceInfoRep = workPieceInfoRep;
_workPieceOutboundRep = workPieceOutboundRep;
}
@@ -86,7 +88,7 @@
if (!isExist) throw Oops.Oh(ErrorCode.D3000);
var workPieceOutbound = input.Adapt<WorkPieceOutbound>();
- await _workPieceOutboundRep.UpdateAsync(workPieceOutbound,ignoreNullValues:true);
+ await _workPieceOutboundRep.UpdateAsync(workPieceOutbound, ignoreNullValues: true);
}
/// <summary>
@@ -117,19 +119,32 @@
/// <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)
{
throw Oops.Oh("宸ヤ欢鍑哄簱淇℃伅涓嶅瓨鍦�");
}
workPieceOutbound.IsDeleted = true;
- workPieceOutbound.Remark = workPieceOutbound.Remark??""+"鎾ら攢鍙戣揣";
+ 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);
+ }
}
-
+
}
}
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 3003246..d34e15a 100644
--- a/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs
+++ b/iWara.SCADA.Code/iWare.Wms.Core/Entity/SCADA/WorkPieceInfo.cs
@@ -79,12 +79,12 @@
[Comment("宸ュ簭寮�濮嬫椂闂�")]
public DateTime? WorkingProcedureStartTime { get; set; }
[Comment("宸ュ簭缁撴潫鏃堕棿")]
- public DateTime? WorkingProcedureEndTime{get; set;}
+ public DateTime? WorkingProcedureEndTime { get; set; }
- /// <summary>
- /// 褰撳墠宸ュ簭鍔犲伐鏃堕暱
- /// </summary>
- [Comment("褰撳墠宸ュ簭鍔犲伐鏃堕暱")]
+ /// <summary>
+ /// 褰撳墠宸ュ簭鍔犲伐鏃堕暱
+ /// </summary>
+ [Comment("褰撳墠宸ュ簭鍔犲伐鏃堕暱")]
public int? ProcessingDurationForCurrent { get; set; }
/// <summary>
@@ -103,7 +103,7 @@
/// 宸ュ簭涓嬬嚎鏃堕棿
/// </summary>
[Comment("宸ュ簭涓嬬嚎鏃堕棿")]
- public DateTime? WorkPieceLastOfflineTime { get; set; }
+ public DateTime? WorkPieceLastOfflineTime { get; set; }
/// <summary>
/// 鏁伴噺
@@ -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
}
}
--
Gitblit v1.9.3