Browse Source

修改 注塑发料

dev_DY_CC
郑勃旭 1 year ago
parent
commit
b144e3444b
  1. 7
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Jobs/IssueJobs/InjectionJobs/Inputs/InjectionJobEditInput.cs
  2. 6
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/MaterialRequests/InjectionRequests/DTOs/InjectionRequestDTO.cs
  3. 7
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/MaterialRequests/InjectionRequests/Inputs/InjectionRequestEditInput.cs
  4. 84
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionJobs/InjectionJobAppService.cs
  5. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferLibNotes/ITransferLibCallback.cs
  6. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/MaterialRequests/InjectionRequests/InjectionRequestAppService.cs
  7. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/MaterialRequests/InjectionRequests/InjectionRequestAutoMapperProfile.cs
  8. 509
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Notes/TransferLibNotes/TransferLibNoteDetail.cs
  9. 6
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/MaterialRequests/InjectionRequests/InjectionRequest.cs
  10. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Requests/MaterialRequests/InjectionRequests/InjectionRequestDbContextModelCreatingExtensions.cs
  11. 3
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/AutoMapperProfiles/Requests/TransferLibRequestAutoMapperProfile.cs
  12. 40
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/InjectionJobEventHandler.cs
  13. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/InjectionRequestEventHandler.cs
  14. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/TransferLibRequestEventHandler.cs

7
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Jobs/IssueJobs/InjectionJobs/Inputs/InjectionJobEditInput.cs

@ -60,13 +60,6 @@ public class InjectionJobEditInput : SfsJobCreateUpdateInputBase, ISfsJobCreateI
[Required(ErrorMessage = "{0}是必填项")]
public List<InjectionJobDetailInput> Details { get; set; } = new();
/// <summary>
/// 生产线
/// </summary>
[Display(Name = "生产线")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ProdLine { get; set; }
/// <summary>
/// 使用在途库
/// </summary>

6
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/MaterialRequests/InjectionRequests/DTOs/InjectionRequestDTO.cs

@ -10,12 +10,6 @@ public class InjectionRequestDTO : SfsStoreRequestDTOBase<InjectionRequestDetail
[Display(Name = "叫料类型")]
public string Type { get; set; }
/// <summary>
/// 生产线
/// </summary>
[Display(Name = "生产线")]
public string ProdLine { get; set; }
/// <summary>
/// 是否使用在途库
/// </summary>

7
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/MaterialRequests/InjectionRequests/Inputs/InjectionRequestEditInput.cs

@ -14,13 +14,6 @@ public class InjectionRequestEditInput : SfsStoreRequestCreateOrUpdateInputBase
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string Workshop { get; set; }
/// <summary>
/// 生产线
/// </summary>
[Display(Name = "生产线")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ProdLine { get; set; }
/// <summary>
/// 使用在途库
/// </summary>

84
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionJobs/InjectionJobAppService.cs

@ -30,13 +30,15 @@ public class InjectionJobAppService
{
private readonly IInjectionJobManager _injectionJobManager;
private readonly ILocationAppService _locationAppService;
private readonly ITransferLibJobAppService _transferLibJobAppService;
public InjectionJobAppService(
IInjectionJobRepository repository, IInjectionJobManager injectionJobManager,
ILocationAppService locationAppService) : base(repository, injectionJobManager)
ILocationAppService locationAppService, ITransferLibJobAppService transferLibJobAppService) : base(repository, injectionJobManager)
{
_injectionJobManager = injectionJobManager;
_locationAppService = locationAppService;
_transferLibJobAppService = transferLibJobAppService;
}
public override async Task<List<InjectionJobDTO>> CreateManyAsync(List<InjectionJobEditInput> inputs)
@ -57,24 +59,48 @@ public class InjectionJobAppService
}
/// <summary>
/// 判断是不是在最底层 如果不是则把状态变更为等待
/// 判断是不是在最底层 如果不是则把状态变更为等待 并把库移推荐的From和To赋值
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
private async Task CheckMinRowAndSetStatusAsync (InjectionJobEditInput input)
private async Task CheckMinRowAndSetStatusAsync(InjectionJobEditInput input)
{
var detail = input.Details.FirstOrDefault();
var jobDetailInputdetail = input.Details.FirstOrDefault();
var loctionDto = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode)
var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
if (loctionDto.RowCode != 1)
{
input.JobStatus = EnumJobStatus.Wait;
var locationDtos = await _locationAppService.GetListByGroupsAsync(new List<string>() { loctionDto.LocationGroupCode }).ConfigureAwait(false);
var minLocation = locationDtos.First(p => p.ColumnCode == 1);
detail.OnTheWayLocationCode = minLocation.Code;
jobDetailInputdetail.TransferLibFromArriveDate = jobDetailInputdetail.RecommendFromArriveDate;
jobDetailInputdetail.TransferLibFromContainerCode = jobDetailInputdetail.RecommendFromContainerCode;
jobDetailInputdetail.TransferLibFromExpireDate = jobDetailInputdetail.RecommendFromExpireDate;
jobDetailInputdetail.TransferLibFromLocationArea = jobDetailInputdetail.RecommendFromLocationArea;
jobDetailInputdetail.TransferLibFromLocationCode = jobDetailInputdetail.RecommendFromLocationCode;
jobDetailInputdetail.TransferLibFromLocationErpCode = jobDetailInputdetail.RecommendFromLocationErpCode;
jobDetailInputdetail.TransferLibFromLocationGroup = jobDetailInputdetail.RecommendFromLocationGroup;
jobDetailInputdetail.TransferLibFromLot = jobDetailInputdetail.RecommendFromLot;
jobDetailInputdetail.TransferLibFromPackingCode = jobDetailInputdetail.RecommendFromPackingCode;
jobDetailInputdetail.TransferLibFromProduceDate = jobDetailInputdetail.RecommendFromProduceDate;
jobDetailInputdetail.TransferLibFromQty = jobDetailInputdetail.RecommendFromQty;
jobDetailInputdetail.TransferLibFromSupplierBatch = jobDetailInputdetail.RecommendFromSupplierBatch;
jobDetailInputdetail.TransferLibFromWarehouseCode = jobDetailInputdetail.RecommendFromWarehouseCode;
jobDetailInputdetail.TransferLibToArriveDate = jobDetailInputdetail.RecommendToArriveDate;
jobDetailInputdetail.TransferLibToContainerCode = jobDetailInputdetail.RecommendToContainerCode;
jobDetailInputdetail.TransferLibToExpireDate = jobDetailInputdetail.RecommendToExpireDate;
jobDetailInputdetail.TransferLibToLocationArea = jobDetailInputdetail.RecommendToLocationArea;
jobDetailInputdetail.TransferLibToLocationCode = jobDetailInputdetail.RecommendToLocationCode;
jobDetailInputdetail.TransferLibToLocationErpCode = jobDetailInputdetail.RecommendToLocationErpCode;
jobDetailInputdetail.TransferLibToLocationGroup = jobDetailInputdetail.RecommendToLocationGroup;
jobDetailInputdetail.TransferLibToLot = jobDetailInputdetail.RecommendToLot;
jobDetailInputdetail.TransferLibToPackingCode = jobDetailInputdetail.RecommendToPackingCode;
jobDetailInputdetail.TransferLibToProduceDate = jobDetailInputdetail.RecommendToProduceDate;
jobDetailInputdetail.TransferLibToQty = jobDetailInputdetail.RecommendToQty;
jobDetailInputdetail.TransferLibToSupplierBatch = jobDetailInputdetail.RecommendToSupplierBatch;
jobDetailInputdetail.TransferLibToWarehouseCode = jobDetailInputdetail.RecommendToWarehouseCode;
}
}
@ -112,10 +138,48 @@ public class InjectionJobAppService
[HttpPost("Do-Call-Back")]
public async Task<Tuple<bool?, string>> DoTransferLibCallbackAsync(string businessType, string requestNum, string jobNum)
{
var job= await _repository.FindAsync(p=>p.Number==jobNum).ConfigureAwait(false);
var job = await _repository.FindAsync(p => p.Number == jobNum).ConfigureAwait(false);
//todo 等云峰写好换成真实的
var transferLibJobDto= await _transferLibJobAppService.GetByNumberAsync("AAA").ConfigureAwait(false);
var transferLibNote = new TransferLibNote();
var transferLibNoteDetail=transferLibNote.Details.First();
var jobDetail = job.Details.First();
job.JobStatus = EnumJobStatus.Open;
jobDetail.TransferLibFromArriveDate = transferLibNoteDetail.HandledFromArriveDate;
jobDetail.TransferLibFromContainerCode=transferLibNoteDetail.HandledFromContainerCode;
jobDetail.TransferLibFromExpireDate=transferLibNoteDetail.HandledFromExpireDate;
jobDetail.TransferLibFromLocationArea=transferLibNoteDetail.HandledFromLocationArea;
jobDetail.TransferLibFromLocationCode=transferLibNoteDetail.HandledFromLocationCode;
jobDetail.TransferLibFromLocationErpCode = transferLibNoteDetail.HandledFromLocationErpCode;
jobDetail.TransferLibFromLocationGroup=transferLibNoteDetail.HandledFromLocationGroup;
jobDetail.TransferLibFromLot=transferLibNoteDetail.HandledFromLot;
jobDetail.TransferLibFromPackingCode = transferLibNoteDetail.HandledFromPackingCode;
jobDetail.TransferLibFromProduceDate = transferLibNoteDetail.HandledFromProduceDate;
jobDetail.TransferLibFromQty=transferLibNoteDetail.HandledFromQty;
jobDetail.TransferLibFromSupplierBatch=transferLibNoteDetail.HandledFromSupplierBatch;
jobDetail.TransferLibFromWarehouseCode = transferLibNoteDetail.HandledFromWarehouseCode;
jobDetail.TransferLibToArriveDate = transferLibNoteDetail.HandledToArriveDate;
jobDetail.TransferLibToContainerCode = transferLibNoteDetail.HandledToContainerCode;
jobDetail.TransferLibToExpireDate = transferLibNoteDetail.HandledToExpireDate;
jobDetail.TransferLibToLocationArea = transferLibNoteDetail.HandledToLocationArea;
jobDetail.TransferLibToLocationCode = transferLibNoteDetail.HandledToLocationCode;
jobDetail.TransferLibToLocationErpCode = transferLibNoteDetail.HandledToLocationErpCode;
jobDetail.TransferLibToLocationGroup = transferLibNoteDetail.HandledToLocationGroup;
jobDetail.TransferLibToLot = transferLibNoteDetail.HandledToLot;
jobDetail.TransferLibToPackingCode = transferLibNoteDetail.HandledToPackingCode;
jobDetail.TransferLibToProduceDate = transferLibNoteDetail.HandledToProduceDate;
jobDetail.TransferLibToQty = transferLibNoteDetail.HandledToQty;
jobDetail.TransferLibToSupplierBatch = transferLibNoteDetail.HandledToSupplierBatch;
jobDetail.TransferLibToWarehouseCode = transferLibNoteDetail.HandledToWarehouseCode;
await _repository.UpdateAsync(job).ConfigureAwait(false);
return Tuple.Create<bool?, string>(true,string.Empty);
return new Tuple<bool?, string>(true,"s");
}
[HttpPost("test")]

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferLibNotes/ITransferLibCallback.cs

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Win_in.Sfs.Wms.Inventory.Application.Contracts;
namespace Win_in.Sfs.Wms.Store.Notes;
public interface ITransferLibCallback
@ -16,7 +17,8 @@ public class TestTransferLibCallback : ITransferLibCallback
{
}
public async Task<Tuple<bool?, string>> DoTransferLibCallbackAsync(string businessType, string requestNum, string jobNum)
public async Task<Tuple<bool?, string>> DoTransferLibCallbackAsync(string businessType, string requestNum,
string jobNum)
{
return Tuple.Create<bool?, string>(true, "调用新移库回调方法成功!");

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/MaterialRequests/InjectionRequests/InjectionRequestAppService.cs

@ -95,6 +95,7 @@ public class InjectionRequestAppService : SfsStoreRequestAppServiceBase<Injectio
detailInput.ToWarehouseCode= toLocationDto.WarehouseCode;
detailInput.ProdLine = detailInput.ToLocationCode;
detailInput.ToLocationErpCode = toLocationDto.ErpLocationCode;
detailInput.Status = EnumStatus.Open;
//因为是刚创建的 所以发料数一定是0
detailInput.IssuedQty = 0;

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/MaterialRequests/InjectionRequests/InjectionRequestAutoMapperProfile.cs

@ -26,7 +26,6 @@ public partial class StoreApplicationAutoMapperProfile : Profile
CreateMap<InjectionRequestImportInput, InjectionRequest>()
.IgnoreAuditedObjectProperties()
.ForMember(x => x.Type, y => y.MapFrom(t => t.Type.ToString()))
.Ignore(x => x.ProdLine)
.Ignore(x => x.UseOnTheWayLocation)
.Ignore(x => x.Details)
.Ignore(x => x.Remark)

509
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Notes/TransferLibNotes/TransferLibNoteDetail.cs

@ -1,3 +1,6 @@
using System;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
using Win_in.Sfs.Shared.Domain.Shared;
namespace Win_in.Sfs.Wms.Store.Domain;
@ -44,4 +47,510 @@ public class TransferLibNoteDetail : SfsStoreDetailWithFromToEntityBase
public string CallJobNumber { get; set; }
#endregion
#region 库存基础信息
/// <summary>
/// 物品代码
/// </summary>
public string ItemCode { get; set; }
/// <summary>
/// 物品名称
/// </summary>
public string ItemName { get; set; }
/// <summary>
/// 物品描述1
/// </summary>
public string ItemDesc1 { get; set; }
/// <summary>
/// 物品描述2
/// </summary>
public string ItemDesc2 { get; set; }
/// <summary>
/// 标包数量
/// </summary>
[Display(Name = "标包数量")]
[Column(TypeName = "decimal(18,6)")]
public decimal StdPackQty { get; set; }
/// <summary>
/// 库存状态
/// </summary>
public EnumInventoryStatus Status { get; set; }
/// <summary>
/// 计量单位
/// </summary>
public string Uom { get; set; }
#endregion
#region 请求信息
/// <summary>
/// 请求库位
/// </summary>
public string RequestLocationCode { get; set; }
/// <summary>
/// 到库区
/// </summary>
public string RequestLocationArea { get; set; }
/// <summary>
/// 到库位组
/// </summary>
public string RequestLocationGroup { get; set; }
/// <summary>
/// 到ERP库位
/// </summary>
public string RequestLocationErpCode { get; set; }
/// <summary>
/// 到仓库
/// </summary>
public string RequestWarehouseCode { get; set; }
/// <summary>
/// 生产线
/// </summary>
public string ProdLine { get; set; }
/// <summary>
/// 位置码
/// </summary>
public string PositionCode { get; set; }
/// <summary>
/// 推荐的类型
/// </summary>
public EnumRecommendType RecommendType { get; set; }
/// <summary>
/// 需求数量
/// </summary>
public decimal RequestQty { get; set; }
#endregion
#region 推荐来源
/// <summary>
/// 推荐来源托标签
/// </summary>
public string RecommendFromContainerCode { get; set; }
/// <summary>
/// 推荐来源箱标签
/// </summary>
public string RecommendFromPackingCode { get; set; }
/// <summary>
/// 推荐来源批次供应商批次
/// </summary>
public string RecommendFromSupplierBatch { get; set; }
/// <summary>
/// 推荐来源批次到货时间
/// </summary>
public DateTime RecommendFromArriveDate { get; set; }
/// <summary>
/// 推荐来源批次生产时间
/// </summary>
public DateTime RecommendFromProduceDate { get; set; }
/// <summary>
/// 推荐来源批次过期时间
/// </summary>
public DateTime RecommendFromExpireDate { get; set; }
/// <summary>
/// 推荐来源批次排序
/// </summary>
public string RecommendFromLot { get; set; }
/// <summary>
/// 推荐来源库位
/// </summary>
public string RecommendFromLocationCode { get; set; }
/// <summary>
/// 推荐来源库区
/// </summary>
public string RecommendFromLocationArea { get; set; }
/// <summary>
/// 推荐来源库位组
/// </summary>
public string RecommendFromLocationGroup { get; set; }
/// <summary>
/// 推荐来源ERP库位
/// </summary>
public string RecommendFromLocationErpCode { get; set; }
/// <summary>
/// 推荐来源仓库
/// </summary>
public string RecommendFromWarehouseCode { get; set; }
/// <summary>
/// 推荐来源数量
/// </summary>
public decimal RecommendFromQty { get; set; }
#endregion
#region 推荐目标
/// <summary>
/// 推荐目标托标签
/// </summary>
public string RecommendToContainerCode { get; set; }
/// <summary>
/// 推荐目标箱标签
/// </summary>
public string RecommendToPackingCode { get; set; }
/// <summary>
/// 推荐目标批次供应商批次
/// </summary>
public string RecommendToSupplierBatch { get; set; }
/// <summary>
/// 推荐目标批次到货时间
/// </summary>
public DateTime RecommendToArriveDate { get; set; }
/// <summary>
/// 推荐目标批次生产时间
/// </summary>
public DateTime RecommendToProduceDate { get; set; }
/// <summary>
/// 推荐目标批次过期时间
/// </summary>
public DateTime RecommendToExpireDate { get; set; }
/// <summary>
/// 推荐目标批次排序
/// </summary>
public string RecommendToLot { get; set; }
/// <summary>
/// 推荐目标库位
/// </summary>
public string RecommendToLocationCode { get; set; }
/// <summary>
/// 推荐目标库区
/// </summary>
public string RecommendToLocationArea { get; set; }
/// <summary>
/// 推荐目标库位组
/// </summary>
public string RecommendToLocationGroup { get; set; }
/// <summary>
/// 推荐目标ERP库位
/// </summary>
public string RecommendToLocationErpCode { get; set; }
/// <summary>
/// 推荐目标仓库
/// </summary>
public string RecommendToWarehouseCode { get; set; }
/// <summary>
/// 推荐目标数量
/// </summary>
public decimal RecommendToQty { get; set; }
#endregion
#region 库移来源
/// <summary>
/// 库移来源托标签
/// </summary>
public string TransferLibFromContainerCode { get; set; }
/// <summary>
/// 库移来源箱标签
/// </summary>
public string TransferLibFromPackingCode { get; set; }
/// <summary>
/// 库移来源批次供应商批次
/// </summary>
public string TransferLibFromSupplierBatch { get; set; }
/// <summary>
/// 库移来源批次到货时间
/// </summary>
public DateTime TransferLibFromArriveDate { get; set; }
/// <summary>
/// 库移来源批次生产时间
/// </summary>
public DateTime TransferLibFromProduceDate { get; set; }
/// <summary>
/// 库移来源批次过期时间
/// </summary>
public DateTime TransferLibFromExpireDate { get; set; }
/// <summary>
/// 库移来源批次排序
/// </summary>
public string TransferLibFromLot { get; set; }
/// <summary>
/// 库移来源库位
/// </summary>
public string TransferLibFromLocationCode { get; set; }
/// <summary>
/// 库移来源库区
/// </summary>
public string TransferLibFromLocationArea { get; set; }
/// <summary>
/// 库移来源库位组
/// </summary>
public string TransferLibFromLocationGroup { get; set; }
/// <summary>
/// 库移来源ERP库位
/// </summary>
public string TransferLibFromLocationErpCode { get; set; }
/// <summary>
/// 库移来源仓库
/// </summary>
public string TransferLibFromWarehouseCode { get; set; }
/// <summary>
/// 库移来源数量
/// </summary>
public decimal TransferLibFromQty { get; set; }
#endregion
#region 库移目标
/// <summary>
/// 库移目标托标签
/// </summary>
public string TransferLibToContainerCode { get; set; }
/// <summary>
/// 库移目标箱标签
/// </summary>
public string TransferLibToPackingCode { get; set; }
/// <summary>
/// 库移目标批次供应商批次
/// </summary>
public string TransferLibToSupplierBatch { get; set; }
/// <summary>
/// 库移目标批次到货时间
/// </summary>
public DateTime TransferLibToArriveDate { get; set; }
/// <summary>
/// 库移目标批次生产时间
/// </summary>
public DateTime TransferLibToProduceDate { get; set; }
/// <summary>
/// 库移目标批次过期时间
/// </summary>
public DateTime TransferLibToExpireDate { get; set; }
/// <summary>
/// 库移目标批次排序
/// </summary>
public string TransferLibToLot { get; set; }
/// <summary>
/// 库移目标库位
/// </summary>
public string TransferLibToLocationCode { get; set; }
/// <summary>
/// 库移目标库区
/// </summary>
public string TransferLibToLocationArea { get; set; }
/// <summary>
/// 库移目标库位组
/// </summary>
public string TransferLibToLocationGroup { get; set; }
/// <summary>
/// 库移目标ERP库位
/// </summary>
public string TransferLibToLocationErpCode { get; set; }
/// <summary>
/// 库移目标仓库
/// </summary>
public string TransferLibToWarehouseCode { get; set; }
/// <summary>
/// 库移目标数量
/// </summary>
public decimal TransferLibToQty { get; set; }
#endregion
#region 实际来源
/// <summary>
/// 实际目标托标签
/// </summary>
public string HandledFromContainerCode { get; set; }
/// <summary>
/// 实际箱标签
/// </summary>
public string HandledFromPackingCode { get; set; }
/// <summary>
/// 实际批次供应商批次
/// </summary>
public string HandledFromSupplierBatch { get; set; }
/// <summary>
/// 实际批次到货时间
/// </summary>
public DateTime HandledFromArriveDate { get; set; }
/// <summary>
/// 实际批次生产时间
/// </summary>
public DateTime HandledFromProduceDate { get; set; }
/// <summary>
/// 实际批次过期时间
/// </summary>
public DateTime HandledFromExpireDate { get; set; }
/// <summary>
/// 实际批次排序
/// </summary>
public string HandledFromLot { get; set; }
/// <summary>
/// 实际库位
/// </summary>
public string HandledFromLocationCode { get; set; }
/// <summary>
/// 实际库区
/// </summary>
public string HandledFromLocationArea { get; set; }
/// <summary>
/// 实际库位组
/// </summary>
public string HandledFromLocationGroup { get; set; }
/// <summary>
/// 实际ERP库位
/// </summary>
public string HandledFromLocationErpCode { get; set; }
/// <summary>
/// 实际仓库
/// </summary>
public string HandledFromWarehouseCode { get; set; }
/// <summary>
/// 实际数量
/// </summary>
public decimal HandledFromQty { get; set; }
#endregion
#region 实际目标
/// <summary>
/// 实际目标托标签
/// </summary>
public string HandledToContainerCode { get; set; }
/// <summary>
/// 实际箱标签
/// </summary>
public string HandledToPackingCode { get; set; }
/// <summary>
/// 实际批次供应商批次
/// </summary>
public string HandledToSupplierBatch { get; set; }
/// <summary>
/// 实际批次到货时间
/// </summary>
public DateTime HandledToArriveDate { get; set; }
/// <summary>
/// 实际批次生产时间
/// </summary>
public DateTime HandledToProduceDate { get; set; }
/// <summary>
/// 实际批次过期时间
/// </summary>
public DateTime HandledToExpireDate { get; set; }
/// <summary>
/// 实际批次排序
/// </summary>
public string HandledToLot { get; set; }
/// <summary>
/// 实际库位
/// </summary>
public string HandledToLocationCode { get; set; }
/// <summary>
/// 实际库区
/// </summary>
public string HandledToLocationArea { get; set; }
/// <summary>
/// 实际库位组
/// </summary>
public string HandledToLocationGroup { get; set; }
/// <summary>
/// 实际ERP库位
/// </summary>
public string HandledToLocationErpCode { get; set; }
/// <summary>
/// 实际仓库
/// </summary>
public string HandledToWarehouseCode { get; set; }
/// <summary>
/// 实际数量
/// </summary>
public decimal HandledToQty { get; set; }
#endregion
}

6
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/MaterialRequests/InjectionRequests/InjectionRequest.cs

@ -16,12 +16,6 @@ public class InjectionRequest : SfsStoreRequestAggregateRootBase<InjectionReques
[IgnoreUpdate]
public string Type { get; set; }
/// <summary>
/// 生产线
/// </summary>
[IgnoreUpdate]
public string ProdLine { get; set; }
/// <summary>
/// 使用在途库
/// </summary>

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Requests/MaterialRequests/InjectionRequests/InjectionRequestDbContextModelCreatingExtensions.cs

@ -20,7 +20,6 @@ public static class InjectionRequestDbContextModelCreatingExtensions
//Properties
b.Property(q => q.Type).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.ProdLine).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.RequestStatus).HasMaxLength(SfsPropertyConst.NameLength).HasConversion<string>();
//Relations

3
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/AutoMapperProfiles/Requests/TransferLibRequestAutoMapperProfile.cs

@ -18,9 +18,6 @@ public partial class StoreEventAutoMapperProfile : Profile
.Ignore(x => x.Number)
.Ignore(x => x.Id);
CreateMap<TransferLibRequestDetail, TransferLibNoteDetail>()
.Ignore(x => x.OnTheWayLocationCode);
CreateMap<TransferLibRequest, TransferLibJob>()
.IgnoreAuditedObjectProperties()
.ForMember(x => x.RequestNumber, y => y.MapFrom(d => d.Number))

40
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Jobs/InjectionJobEventHandler.cs

@ -94,31 +94,27 @@ public class InjectionJobEventHandler :
var expectOutEditInputs = new List<ExpectOutEditInput>();
foreach (var detail in entity.Details)
{
var balanceDto = await _balanceAppService
.GetRealQtyByPackingCodeAndItemCodeAndLocationCodeAndStatusAsync(detail.RecommendFromPackingCode,
detail.ItemCode, detail.RecommendFromLocationCode, EnumInventoryStatus.OK).ConfigureAwait(false);
var inputoExpectOutEditInput = new ExpectOutEditInput();
inputoExpectOutEditInput.JobNumber = entity.Number;
inputoExpectOutEditInput.ItemCode = detail.ItemCode;
inputoExpectOutEditInput.Qty = balanceDto.Qty;
inputoExpectOutEditInput.LocationCode = balanceDto.LocationCode;
inputoExpectOutEditInput.ArriveDate = balanceDto.ArriveDate;
inputoExpectOutEditInput.ContainerCode = balanceDto.ContainerCode;
inputoExpectOutEditInput.ExpireDate = balanceDto.ExpireDate;
inputoExpectOutEditInput.ItemDesc1 = balanceDto.ItemDesc1;
inputoExpectOutEditInput.ItemDesc2 = balanceDto.ItemDesc2;
inputoExpectOutEditInput.ItemName = balanceDto.ItemName;
inputoExpectOutEditInput.LocationArea = balanceDto.LocationArea;
inputoExpectOutEditInput.LocationGroup = balanceDto.LocationGroup;
inputoExpectOutEditInput.LocationErpCode = balanceDto.LocationErpCode;
inputoExpectOutEditInput.PackingCode = balanceDto.PackingCode;
inputoExpectOutEditInput.Lot = balanceDto.Lot;
inputoExpectOutEditInput.ProduceDate = balanceDto.ProduceDate;
inputoExpectOutEditInput.Status = balanceDto.Status;
inputoExpectOutEditInput.Uom = balanceDto.Uom;
inputoExpectOutEditInput.SupplierBatch = balanceDto.SupplierBatch;
inputoExpectOutEditInput.WarehouseCode = balanceDto.WarehouseCode;
inputoExpectOutEditInput.Qty = detail.RecommendFromQty;
inputoExpectOutEditInput.LocationCode = detail.RecommendFromLocationCode;
inputoExpectOutEditInput.ArriveDate =detail.RecommendFromArriveDate;
inputoExpectOutEditInput.ContainerCode = detail.RecommendFromContainerCode;
inputoExpectOutEditInput.ExpireDate = detail.RecommendFromExpireDate;
inputoExpectOutEditInput.ItemDesc1 = detail.ItemDesc1;
inputoExpectOutEditInput.ItemDesc2 = detail.ItemDesc2;
inputoExpectOutEditInput.ItemName = detail.ItemName;
inputoExpectOutEditInput.LocationArea = detail.RecommendFromLocationArea;
inputoExpectOutEditInput.LocationGroup = detail.RecommendFromLocationGroup;
inputoExpectOutEditInput.LocationErpCode = detail.RecommendFromLocationErpCode;
inputoExpectOutEditInput.PackingCode = detail.RecommendFromPackingCode;
inputoExpectOutEditInput.Lot = detail.RecommendFromLot;
inputoExpectOutEditInput.ProduceDate = detail.RecommendFromProduceDate;
inputoExpectOutEditInput.Status = detail.Status;
inputoExpectOutEditInput.Uom = detail.Uom;
inputoExpectOutEditInput.SupplierBatch = detail.RecommendFromSupplierBatch;
inputoExpectOutEditInput.WarehouseCode = detail.RecommendFromWarehouseCode;
expectOutEditInputs.Add(inputoExpectOutEditInput);
}

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/InjectionRequestEventHandler.cs

@ -210,7 +210,6 @@ public class InjectionRequestEventHandler
job.JobStatus = EnumJobStatus.Open;
job.WorkGroupCode = fromLocation.WorkGroupCode;
job.WarehouseCode = fromLocation.WarehouseCode;
job.ProdLine = fromLocation.LocationGroupCode;
job.Worker = injectionRequest.Worker;
if (string.IsNullOrEmpty(job.Worker))
{
@ -422,12 +421,11 @@ public class InjectionRequestEventHandler
InjectionRequest injectionRequest,
InjectionRequestDetail injectionRequestDetail, BalanceDTO balanceDtos)
{
InjectionJobEditInput job = ObjectMapper.Map<InjectionRequest, InjectionJobEditInput>(injectionRequest);
var job = ObjectMapper.Map<InjectionRequest, InjectionJobEditInput>(injectionRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
job.WorkGroupCode = injectionRequestDetail.ToLocationGroup;
job.WarehouseCode = injectionRequestDetail.ToWarehouseCode;
job.ProdLine = injectionRequestDetail.ProdLine;
job.Worker = injectionRequest.Worker;
job.InjectionRequestNumber = injectionRequest.Number;

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/TransferLibRequestEventHandler.cs

@ -54,7 +54,9 @@ public class TransferLibRequestEventHandler
if (entity.DirectCreateNote)
{
var input = ObjectMapper.Map<TransferLibRequest, TransferLibNote>(entity);
//todo 等云峰做完处理
var input = new TransferLibNote()
{ };
//获取在途库
var locationDto = await _locationAppService.GetFirstByTypeAsync(EnumLocationType.TRANSPORT)

Loading…
Cancel
Save