Browse Source

Merge branch 'dev_DY_CC' of http://dev.ccwin-in.com:3000/BoXu.Zheng/WZC2 into dev_DY_CC

dev_DY_CC
lvzb 11 months ago
parent
commit
3f1f77b6eb
  1. 23
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/InjectionPlanRequestController.cs
  2. 56
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRecManager.cs
  3. 6
      be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumIssueRequestType.cs
  4. 28
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/InjectionPlanRequests/InjectionPlanRequestAppService.cs
  5. 9
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs

23
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/InjectionPlanRequestController.cs

@ -17,14 +17,16 @@ namespace Win_in.Sfs.Wms.Pda.Controllers.Stores;
public class InjectionPlanRequestController : AbpController public class InjectionPlanRequestController : AbpController
{ {
private readonly IInjectionPlanRequestAppService _injectionRequestAppService; private readonly IInjectionPlanRequestAppService _injectionRequestAppService;
private readonly IItemContainerAppService _itemContainerAppService;
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
/// <param name="InjectionPlanRequestAppService"></param> /// <param name="InjectionPlanRequestAppService"></param>
public InjectionPlanRequestController(IInjectionPlanRequestAppService InjectionPlanRequestAppService) public InjectionPlanRequestController(IInjectionPlanRequestAppService InjectionPlanRequestAppService, IItemContainerAppService itemContainerAppService)
{ {
_injectionRequestAppService = InjectionPlanRequestAppService; _injectionRequestAppService = InjectionPlanRequestAppService;
_itemContainerAppService = itemContainerAppService;
} }
/// <summary> /// <summary>
@ -75,7 +77,24 @@ public class InjectionPlanRequestController : AbpController
{ {
var entities = await _injectionRequestAppService.GetItemCategoryListAsync().ConfigureAwait(false); var entities = await _injectionRequestAppService.GetItemCategoryListAsync().ConfigureAwait(false);
return entities.Where(p=>p.Category== categoryName).ToList(); var itemEntities = entities.Where(p => p.Category == categoryName).ToList();
foreach (var item in itemEntities)
{
var itemContainerDto = await _itemContainerAppService.GetByItemCodeAsync(item.Code).ConfigureAwait(false);
if(itemContainerDto != null)
{
item.StdPackQty = itemContainerDto.Qty;
item.BasicUom = itemContainerDto.BasicUom;
}
else
{
item.StdPackQty = 1;
}
}
return itemEntities;
} }
} }

56
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/SplitPackings/SplitPackingRecManager.cs

@ -42,14 +42,6 @@ public class SplitPackingRecManager : DomainService, ISplitPackingRecManager
{ {
throw new UserFriendlyException("操作类型不是拆箱或合箱状态,源箱码和目标箱码必须相同!"); throw new UserFriendlyException("操作类型不是拆箱或合箱状态,源箱码和目标箱码必须相同!");
} }
if (item.FromTopPackingCode.IsNullOrEmpty())
{
item.FromTopPackingCode = item.FromPackingCode;
}
if (item.ToTopPackingCode.IsNullOrEmpty())
{
item.ToTopPackingCode = item.FromPackingCode;// ToPackingCode;
}
} }
#endregion #endregion
@ -91,6 +83,14 @@ public class SplitPackingRecManager : DomainService, ISplitPackingRecManager
} }
else else
{ {
if (item.FromTopPackingCode.IsNullOrEmpty())
{
item.FromTopPackingCode = item.FromPackingCode;
}
if (item.ToTopPackingCode.IsNullOrEmpty())
{
item.ToTopPackingCode = item.FromPackingCode;// ToPackingCode;
}
SplitPackingRec newEntity = CommonHelper.CloneObj(item); SplitPackingRec newEntity = CommonHelper.CloneObj(item);
newEntity.SetId(GuidGenerator.Create()); newEntity.SetId(GuidGenerator.Create());
var ret = await _repository.InsertAsync(newEntity, true).ConfigureAwait(false); var ret = await _repository.InsertAsync(newEntity, true).ConfigureAwait(false);
@ -202,24 +202,42 @@ public class SplitPackingRecManager : DomainService, ISplitPackingRecManager
/// 取顶级箱码 /// 取顶级箱码
/// </summary> /// </summary>
/// <param name="historyQuery">箱码历史</param> /// <param name="historyQuery">箱码历史</param>
/// <param name="item">当前箱码</param> /// <param name="packingCode">箱码,from to时都传入from</param>
/// <returns></returns> /// <returns></returns>
private static string GetTopPackingCode(IQueryable<SplitPackingRec> historyQuery, string packingCode) private static string GetTopPackingCode(IQueryable<SplitPackingRec> historyQuery, string packingCode)
{ {
var historyRec = historyQuery.Where(itm => itm.FromPackingCode == packingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault(); var qry = historyQuery.Where(itm => itm.OprType == OprTypeEnum.SplitBox || itm.OprType == OprTypeEnum.MergeBox);
if (historyRec != null) string ret = null;
{ SplitPackingRec? firstObj = null;
return historyRec.FromTopPackingCode; string toCode = packingCode;
} while (1 == 1)
else
{ {
historyRec = historyQuery.Where(itm => itm.ToPackingCode == packingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault(); firstObj = qry.FirstOrDefault(itm => itm.ToPackingCode == toCode);
if (historyRec != null) if (firstObj == null)
{
ret = toCode;
break;
}
else
{ {
return historyRec.ToTopPackingCode; toCode = firstObj.FromPackingCode;
} }
} }
return null; return ret;
//var historyRec = historyQuery.Where(itm => itm.FromPackingCode == packingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault();
//if (historyRec != null)
//{
// return historyRec.FromTopPackingCode;
//}
//else
//{
// historyRec = historyQuery.Where(itm => itm.ToPackingCode == packingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault();
// if (historyRec != null)
// {
// return historyRec.ToTopPackingCode;
// }
//}
//return null;
} }
private static void SetBillNumber(IQueryable<SplitPackingRec> historyQuery, SplitPackingRec obj) private static void SetBillNumber(IQueryable<SplitPackingRec> historyQuery, SplitPackingRec obj)

6
be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/EnumIssueRequestType.cs

@ -39,4 +39,10 @@ public enum EnumIssueRequestType
/// </summary> /// </summary>
[Display(Name = "EXCEL导入")] [Display(Name = "EXCEL导入")]
ExcelImport=5, ExcelImport=5,
/// <summary>
/// 注塑计划
/// </summary>
[Display(Name = "EXCEL导入")]
InjectionPlan = 6,
} }

28
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/InjectionPlanRequests/InjectionPlanRequestAppService.cs

@ -99,20 +99,22 @@ public class InjectionPlanRequestAppService : SfsStoreRequestAppServiceBase<Inje
detailInput.ItemDesc1 = itemBasicDto.Desc1; detailInput.ItemDesc1 = itemBasicDto.Desc1;
detailInput.ItemDesc2 = itemBasicDto.Desc2; detailInput.ItemDesc2 = itemBasicDto.Desc2;
detailInput.ItemName = itemBasicDto.Name; detailInput.ItemName = itemBasicDto.Name;
detailInput.StdPackQty = itemBasicDto.StdPackQty;
//var itemContainerDto = await _itemContainerAppService.GetByItemCodeAsync(detailInput.ItemCode).ConfigureAwait(false);
//if (itemContainerDto != null)
//{
// detailInput.Uom = itemContainerDto.BasicUom;
// detailInput.Qty = itemContainerDto.Qty;
// detailInput.BoxQty = itemContainerDto.Qty;
// detailInput.StdPackQty = itemBasicDto.StdPackQty;
//}
//else
//{
// throw new UserFriendlyException($"ERP料号【{detailInput.ItemCode}】未配置收容数");
//}
var itemContainerDto = await _itemContainerAppService.GetByItemCodeAsync(detailInput.ItemCode).ConfigureAwait(false);
if (itemContainerDto != null)
{
detailInput.Uom = itemContainerDto.BasicUom;
detailInput.Qty = itemContainerDto.Qty;
detailInput.BoxQty = itemContainerDto.Qty;
detailInput.StdPackQty = itemBasicDto.StdPackQty;
}
else
{
throw new UserFriendlyException($"ERP料号【{detailInput.ItemCode}】未配置收容数");
}
detailInput.Status = EnumStatus.Open; detailInput.Status = EnumStatus.Open;
detailInput.IssuedQty = 0; detailInput.IssuedQty = 0;
detailInput.RecommendType = EnumRecommendType.None; detailInput.RecommendType = EnumRecommendType.None;

9
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs

@ -9,7 +9,6 @@ using Volo.Abp.Domain.Entities;
using Volo.Abp.ObjectMapping; using Volo.Abp.ObjectMapping;
using Volo.Abp.Uow; using Volo.Abp.Uow;
using Win_in.Sfs.Basedata.Application.Contracts; using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Basedata.Domain;
using Win_in.Sfs.Basedata.Domain.Shared; using Win_in.Sfs.Basedata.Domain.Shared;
using Win_in.Sfs.Label.Application.Contracts; using Win_in.Sfs.Label.Application.Contracts;
using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared;
@ -31,20 +30,20 @@ public class PurchaseReceiptRequestAppService :
{ {
private readonly IPurchaseReceiptRequestManager _purchaseReceiptRequestManager; private readonly IPurchaseReceiptRequestManager _purchaseReceiptRequestManager;
private readonly ISplitPackingRecManager _splitPackingRecManager; private readonly ISplitPackingRecAppService _splitPackingRecAppService;
public PurchaseReceiptRequestAppService( public PurchaseReceiptRequestAppService(
IPurchaseReceiptRequestRepository repository, IPurchaseReceiptRequestRepository repository,
IPurchaseReceiptRequestManager purchaseReceiptRequestManager, IPurchaseReceiptRequestManager purchaseReceiptRequestManager,
ISplitPackingRecManager splitPackingRecManager) : base(repository, purchaseReceiptRequestManager) ISplitPackingRecAppService splitPackingRecAppService) : base(repository, purchaseReceiptRequestManager)
{ {
_purchaseReceiptRequestManager = purchaseReceiptRequestManager; _purchaseReceiptRequestManager = purchaseReceiptRequestManager;
base.CreatePolicyName = PurchaseReceiptRequestPermissions.Create; base.CreatePolicyName = PurchaseReceiptRequestPermissions.Create;
base.UpdatePolicyName = PurchaseReceiptRequestPermissions.Update; base.UpdatePolicyName = PurchaseReceiptRequestPermissions.Update;
base.DeletePolicyName = PurchaseReceiptRequestPermissions.Delete; base.DeletePolicyName = PurchaseReceiptRequestPermissions.Delete;
_splitPackingRecManager = splitPackingRecManager; _splitPackingRecAppService = splitPackingRecAppService;
} }
#region 东阳使用 #region 东阳使用
@ -103,7 +102,7 @@ public class PurchaseReceiptRequestAppService :
public virtual async Task<PurchaseReceiptRequestDetailDTO> GetDetailByItemAndRootPackingAsync(string itemCode, public virtual async Task<PurchaseReceiptRequestDetailDTO> GetDetailByItemAndRootPackingAsync(string itemCode,
string packingCode) string packingCode)
{ {
var topObj = await _splitPackingRecManager.GetTopPackingCode(packingCode).ConfigureAwait(false); var topObj = await _splitPackingRecAppService.GetTopPackingCode(packingCode).ConfigureAwait(false);
if (topObj == null || string.IsNullOrEmpty(topObj.ToTopPackingCode)) if (topObj == null || string.IsNullOrEmpty(topObj.ToTopPackingCode))
{ {
throw new UserFriendlyException($"根据箱码{packingCode}到拆箱记录表中没有取到顶级箱码!"); throw new UserFriendlyException($"根据箱码{packingCode}到拆箱记录表中没有取到顶级箱码!");

Loading…
Cancel
Save