using iWareSAP.IDOC.Entity;
using SAP.Middleware.Connector;
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
namespace iWareSAP.PARAM.Entity
{
[DataContract]
public class PurchaseOrderEntity
{
///
/// 1采购单号
///
[DataMember]
public string PoNumber { get; set; }
///
/// 2采购项
///
[DataMember]
public string CoCode { get; set; }
///
/// 3删除标志
///
[DataMember]
public string DeletionIndicator { get; set; }
///
/// 4文档类型
///
[DataMember]
public string DocType { get; set; }
///
/// 5状态
///
[DataMember]
public string Status { get; set; }
///
/// 6创建日期
///
[DataMember]
public DateTime CreatedOn { get; set; }
///
/// 7创建人
///
[DataMember]
public string CreatedBy { get; set; }
///
/// 8供应商代码
///
[DataMember]
public string VendorCode { get; set; }
///
/// 9采购部门
///
[DataMember]
public string PurchaseOrg { get; set; }
///
/// 10采购组
///
[DataMember]
public string PurchaseGroup { get; set; }
///
/// 11交易货币
///
[DataMember]
public string Currency { get; set; }
///
/// 12供应商名称
///
[DataMember]
public string VendorName { get; set; }
///
/// 13 国家
///
[DataMember]
public string Country { get; set; }
///
/// 14最大行号
///
[DataMember]
public string LastItem { get; set; }
///
/// 采购单物料
///
[DataMember]
public List Materials { get; set; }
///
/// 27销售订单
///
[DataMember]
public string SalesOrder { get; set; }
///
/// 28销售订单项
///
[DataMember]
public string SalesOrderItem { get; set; }
///
/// 构造函数
///
public PurchaseOrderEntity()
{
Materials = new List();
}
///
/// 构造函数
///
public PurchaseOrderEntity(PurchaseOrder purchaseOrder)
: this()
{
PoNumber = purchaseOrder.PO_NUMBER;
CoCode = purchaseOrder.CO_CODE;
DeletionIndicator = purchaseOrder.DOC_CAT;
DocType = purchaseOrder.DOC_TYPE;
Status = purchaseOrder.STATUS;
CreatedOn = string.IsNullOrEmpty(purchaseOrder.CREATED_ON) ? DateTime.Now : Convert.ToDateTime(purchaseOrder.CREATED_ON);
CreatedBy = purchaseOrder.CREATED_BY;
VendorCode = purchaseOrder.VENDOR;
PurchaseOrg = purchaseOrder.PURCH_ORG;
PurchaseGroup = purchaseOrder.PUR_GROUP;
Currency = purchaseOrder.CURRENCY;
VendorName = purchaseOrder.VEND_NAME;
Country = purchaseOrder.TAXR_CNTRY;
LastItem = purchaseOrder.LAST_ITEM;
SalesOrder = purchaseOrder.SD_DOC;
SalesOrderItem = purchaseOrder.SDOC_ITEM;
purchaseOrder.Materials.ForEach(x => Materials.Add(new PurchaseOrderMaterialEntity(x)));
}
public override string ToString()
{
var materialsStr = "";
foreach (var material in Materials)
{
materialsStr += material.ToString() + "\r\n";
}
return string.Format("PoNumber(采购单号)={0},CoCode(采购项)={1},DeletionIndicator(删除标志)={2},DocType(文档类型)={3},Status(状态)={4},CreatedOn(创建日期)={5},CreatedBy(创建人)={6},VendorCode(供应商代码)={7},PurchaseOrg(采购部门)={8},PurchaseGroup(采购组)={9},Currency(交易货币)={10},VendorName(供应商名称)={11},Country(国家)={12},LastItem={13}, SalesOrder(销售订单)={14},SalesOrderItem(销售订单项)={15},Materials=\r\n{16}", PoNumber, CoCode, DeletionIndicator, DocType, Status, CreatedOn, CreatedBy, VendorCode, PurchaseOrg, PurchaseGroup, Currency, VendorName, Country, LastItem, SalesOrder, SalesOrderItem, materialsStr);
}
}
}