You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

85 lines
2.7 KiB

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Threading.Tasks;
using Win_in.Sfs.Shared.Domain.Entities;
namespace Win_in.Sfs.Wms.Job.Domain;
/// <summary>
/// 发货任务
/// </summary>
[Display(Name = "发货任务")]
public class DeliverJob : SfsJobAggregateRootBase<DeliverJobDetail>
{
/// <summary>
/// 发货请求单号
/// </summary>
[IgnoreUpdate]
public string DeliverRequestNumber { get; set; }
/// <summary>
/// 客户代码
/// </summary>
[IgnoreUpdate]
public string CustomerCode { get; set; }
/// <summary>
/// 客户地址
/// </summary>
[IgnoreUpdate]
public string CustomerAddressCode { get; set; }
/// <summary>
/// 发货日期
/// </summary>
[IgnoreUpdate]
public DateTime DeliverTime { get; set; }
/// <summary>
/// 发货计划单号
/// </summary>
[IgnoreUpdate]
public string DeliverPlanNumber { get; set; }
/// <summary>
/// 任务明细
/// </summary>
[IgnoreUpdate]
public override List<DeliverJobDetail> Details { get; set; } = new List<DeliverJobDetail>();
/// <summary>
/// 设置任务明细的实际库位和实际数量
/// </summary>
/// <param name="id"></param>
/// <param name="handledLocationCode"></param>
/// <param name="handledLocationErpCode"></param>
/// <param name="handledWarehouseCode"></param>
/// <param name="handledQty"></param>
/// <param name="handledBatch"></param>
/// <param name="handledContainerCode"></param>
/// <param name="handledLot"></param>
/// <param name="handledPackingCode"></param>
/// <returns></returns>
public virtual async Task SetDetail(Guid id, string handledLocationCode, string handledLocationErpCode,
string handledWarehouseCode, decimal handledQty,
string handledSupplierBatch, DateTime handledArriveDate, DateTime handledProduceDate, DateTime handledExpireDate
, string handledContainerCode, string handledLot, string handledPackingCode)
{
var detail = GetDetail(id);
detail.HandledLocationCode = handledLocationCode;
detail.HandledLocationErpCode = handledLocationErpCode;
detail.HandledWarehouseCode = handledWarehouseCode;
detail.HandledQty = handledQty;
detail.HandledSupplierBatch = handledSupplierBatch;
detail.HandledArriveDate = handledArriveDate;
detail.HandledProduceDate = handledProduceDate;
detail.HandledExpireDate = handledExpireDate;
detail.HandledContainerCode = handledContainerCode;
detail.HandledLot = handledLot;
detail.HandledPackingCode = handledPackingCode;
await Task.CompletedTask.ConfigureAwait(false);
}
}