using System;
using DataModel.Helpers;
using DataModel.ViewModels;
namespace DataModel.Models
{
///
/// JDE work order model
///
public class WorkOrder
{
///
/// Work order unique number
///
public long WorkOrderNumber { get; set; }
///
/// Work order branch code
///
public string BranchCode { get; set; }
///
/// Work order assigned lot number
///
public string LotNumber { get; set; }
///
/// Work order item number
///
public string ItemNumber { get; set; }
///
/// Work order short item number
///
public long ShortItemNumber { get; set; }
///
/// Work order's parent unique number
///
public string ParentWorkOrderNumber { get; set; }
///
/// Order quantity
///
public decimal OrderQuantity { get; set; }
///
/// Quantity on hold
///
public decimal HeldQuantity { get; set; }
///
/// Quantity shipped
///
public decimal ShippedQuantity { get; set; }
///
/// Work order status code
///
public string StatusCode { get; set; }
///
/// Date of last update to status code
///
public DateTime? StatusCodeUpdateDT { get; set; }
///
/// Date work order was issued
///
public DateTime IssueDate { get; set; }
///
/// Date work order was started
///
public DateTime StartDate { get; set; }
///
/// Work order routing type
///
public string RoutingType { get; set; }
///
/// Date of last update to record
///
private int LastUpdateDate { get; }
///
/// Time of day of last update to record
///
private int LastUpdateTime { get; }
///
/// Timestamp of last update to record
///
public DateTime LastUpdateDT => LastUpdateDate.FromJDEDate().FromJDEDateTime(LastUpdateTime);
///
/// Converts object to view model
///
/// Projected view model for object
public WorkOrderViewModel ToViewModel()
{
return new WorkOrderViewModel()
{
WorkOrderNumber = WorkOrderNumber,
ItemNumber = ItemNumber
};
}
}
}