using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Runtime.Serialization;
using System.Xml.Serialization;
using Volo.Abp.Application.Dtos;
using Win_in.Sfs.Scp.WebApi.Domain.Shared;
namespace Win_in.Sfs.Scp.WebApi;
///
/// 采购订单DTO(Purchase order DTO)
///
public class PurchaseOrderCreateDTO : EntityDto,ICanTrace
{
///
/// 订单号(PoNumber)
///
[XmlElement("poNumber")]
[Display(Name = "订单号(PoNumber)")]
public string PoNumber { set; get; }
///
/// 供应商代码(SupplierCode)
///
[XmlElement("supplierCode")]
[Display(Name = "供应商代码(SupplierCode)")]
public string SupplierCode { set; get; }
///
/// 订单类型(PoType)
///
[XmlElement("poType")]
[Display(Name = "订单类型(PoType)")]
public string PoType { set; get; }
///
/// 订单状态(Status)
///
[XmlElement("status")]
[Display(Name = "订单状态(Status)")]
public int Status { set; get; }
///
/// 是否寄存订单(IsConsignment)
///
[XmlElement("isCosignment")]
[Display(Name = "是否寄存订单(IsConsignment)")]
public bool IsConsignment { set; get; }
///
/// 订单日期(OrderDate)
///
[XmlElement("orderDate")]
[Display(Name = "订单日期(OrderDate)")]
public DateTime OrderDate { set; get; }
///
/// 截止日期(DueDate)
///
[XmlElement("dueDate")]
[Display(Name = "截止日期(DueDate)")]
public DateTime DueDate { set; get; }
///
/// 税率(TaxRate)
///
[XmlElement("taxRate")]
[Display(Name = "税率(TaxRate)")]
public decimal TaxRate { set; get; }
///
/// 版本(version)
///
[XmlElement("version")]
[Display(Name = "版本")]
public string Version { get; set; }
///
/// 联系人(ContactName)
///
[XmlElement("contactName")]
[Display(Name = "联系人(ContactName)")]
public string ContactName { set; get; }
///
/// 联系电话(ContactPhone)
///
[XmlElement("contactPhone")]
[Display(Name = "联系电话(ContactPhone)")]
public string ContactPhone { set; get; }
///
/// 备注(Remark)
///
[XmlElement("remark")]
[Display(Name = "备注(Remark)")]
public string Remark { set; get; }
///
/// 地点(Site)
///
[XmlElement("site")]
[Display(Name = "地点(Site)")]
public string Site { set; get; }
///
/// 公司(Company)
///
[XmlElement("company")]
[Display(Name = "公司(Company)")]
public string Company { set; get; }
[XmlArray(elementName: "details")]
[XmlArrayItem(elementName: nameof(PurchaseOrderDetailCreateDTO))]
public virtual List Details { get; set; }
///
/// 跟踪编号(Trace ID)
///
[Display(Name = "跟踪编号")]
[XmlElement("traceId")]
public Guid TraceId { get; set; }
}