using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace UFIDA.ISV.CreateCheckDiffDoc
{
    public class CreateCheckDiffDocAPIModel
    {
        public string OtherID { get; set; }
        public string CurrencyCode { get; set; }
        public string DepartmentCode { get; set; }
        public string Operators { get; set; }
        public string SOBAccountPeriod { get; set; }
        public int WFCurrentState { get; set; }
        public int WFOriginalState { get; set; }
        public DateTime GLCloseDate { get; set; }
        public bool IsGLClose { get; set; }
        public int Status { get; set; }
        public string DocumentType_Code { get; set; }
        public DateTime BusinessDate { get; set; }

        public DescFlexField DescFlexField { get; set; }
        public List<LineData> CheckDiffBilLineRData { get; set; }
    }

    public class LineData
    {
        public string CostBUOM_Code { get; set; }
        public string CostUOM_Code { get; set; }
        public decimal CUtoCBURate { get; set; }
        public bool IsGL { get; set; }
        public bool IsNeedGL { get; set; }
        public string OwnerOrg_Code { get; set; }
        public int StorageType { get; set; }
        public string Wh_Code { get; set; }
        public string Org_Code { get; set; }
        public decimal SBUtoCBURate { get; set; }
        public decimal SUtoSBURate { get; set; }
        public string StoreBUOM_Code { get; set; }
        public decimal StoreQtySU { get; set; }
        public string StoreUOM_Code { get; set; }
        public string BinCode { get; set; }
        public int AdjustType { get; set; }
        public int AdjMoney { get; set; }
        public decimal AdjPrice { get; set; }
        public decimal AdjQtyCU { get; set; }
        public decimal MinusQtySU { get; set; }
        public decimal MinusQtyCU { get; set; }
        public decimal AdjQtySU { get; set; }
        public decimal PlusQtyCU { get; set; }
        public decimal PlusQtySU { get; set; }

        public ItemInfo ItemInfo { get; set; }

        public DescFlexField DescFlexField { get; set; }

        public string LotCode { get; set; }
    }

    public class ItemInfo
    {
        public long ItemID { get; set; }
        public string ItemCode { get; set; }
        public string ItemName { get; set; }
        public int ItemGrade { get; set; }
        public int ItemPotency { get; set; }
        public string ItemVersion { get; set; }
        public string ItemOpt1_Code { get; set; }
        public string ItemOpt2_Code { get; set; }
        public string ItemOpt3_Code { get; set; }
        public string ItemOpt4_Code { get; set; }
        public string ItemOpt5_Code { get; set; }
        public string ItemOpt6_Code { get; set; }
        public string ItemOpt7_Code { get; set; }
        public string ItemOpt8_Code { get; set; }
        public string ItemOpt9_Code { get; set; }
        public string ItemOpt10_Code { get; set; }
    }

    public class DescFlexField
    {
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg1 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg2 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg3 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg4 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg5 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg6 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg7 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg8 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg9 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg10 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg11 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg12 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg13 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg14 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg15 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg16 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg17 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg18 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg19 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg20 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg21 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg22 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg23 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg24 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg25 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg26 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg27 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg28 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg29 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg30 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg31 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg32 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg33 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg34 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg35 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg36 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg37 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg38 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg39 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg40 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg41 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg42 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg43 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg44 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg45 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg46 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg47 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg48 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg49 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PubDescSeg50 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg1 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg2 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg3 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg4 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg5 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg6 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg7 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg8 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg9 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg10 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg11 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg12 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg13 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg14 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg15 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg16 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg17 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg18 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg19 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg20 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg21 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg22 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg23 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg24 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg25 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg26 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg27 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg28 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg29 { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string PrivateDescSeg30 { get; set; }
    }

    public class SubmtiOrApproveCheckDiffModel
    {
        public string OtherID { get; set; }
        public long ID { get; set; }
        public string Code { get; set; }
    }

    public class CreateCheckDiffWebApiReturnModel
    {
        /// <summary>
        /// 
        /// </summary>
        public int ResCode { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public bool Success { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string ResMsg { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public List<DataItem> Data { get; set; }

    }

    public class DataItem
    {
        /// <summary>
        /// 
        /// </summary>
        public bool IsSucess { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string U9CVersion { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string OtherID { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public long ID { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string Code { get; set; }

        /// <summary>
        /// 未将对象引用设置到对象的实例。
        /// </summary>
        public string ErrorMsg { get; set; }

    }
}
