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

namespace XYY.Model.Standard.Finance
{

    public class FinanceBillDetailWeightDifference
    {
        public string 跟踪号
        {
            get; set;
        }

        public string 渠道名称
        {
            get; set;
        }

        public string 实际渠道
        {
            get; set;
        }

        public string 所属客户
        {
            get; set;
        }

        public decimal 称重重量
        {
            get; set;
        }

        public decimal 收入
        {
            get; set;
        }

        public DateTime 称重时间
        {
            get; set;
        }

        public decimal 末端派送差异
        {
            get; set;
        }

        public decimal 营运成本差异
        {
            get; set;
        }

        public decimal 一级中转差异
        {
            get; set;
        }

        public decimal 二级中转差异
        {
            get; set;
        }

        public decimal 出口报关差异
        {
            get; set;
        }
        public decimal 空运成本差异
        {
            get; set;
        }
        public decimal 海外清关差异
        {
            get; set;
        }
        public decimal 关税差异
        {
            get; set;
        }
        public decimal 海外中转差异
        {
            get; set;
        }
        public decimal 补贴差异
        {
            get; set;
        }
        public decimal 毛利差异
        {
            get; set;
        }
        public decimal 预估末端派送
        {
            get; set;
        }
        public decimal 预估营运成本
        {
            get; set;
        }
        public decimal 预估一级中转
        {
            get; set;
        }
        public decimal 预估二级中转
        {
            get; set;
        }
        public decimal 预估出口报关
        {
            get; set;
        }
        public decimal 预估空运成本
        {
            get; set;
        }
        public decimal 预估海外清关
        {
            get; set;
        }
        public decimal 预估关税
        {
            get; set;
        }
        public decimal 预估海外中转
        {
            get; set;
        }
        public decimal 预估补贴
        {
            get; set;
        }
        public decimal 预估毛利
        {
            get; set;
        }

        public decimal 末端派送
        {
            get; set;
        }
        public decimal 营运成本
        {
            get; set;
        }
        public decimal 一级中转
        {
            get; set;
        }
        public decimal 二级中转
        {
            get; set;
        }
        public decimal 出口报关
        {
            get; set;
        }
        public decimal 空运成本
        {
            get; set;
        }
        public decimal 海外清关
        {
            get; set;
        }
        public decimal 关税
        {
            get; set;
        }
        public decimal 海外中转
        {
            get; set;
        }
        public decimal 补贴
        {
            get; set;
        }
        public decimal 毛利
        {
            get; set;
        }
    }

    public class FinanceBillDetailWeightDifferenceGroup
    {
        public decimal 末端派送差异_票
        {
            get; set;
        }

        public decimal 营运成本差异_票
        {
            get; set;
        }
        public decimal 一级中转差异_票
        {
            get; set;
        }
        public decimal 二级中转差异_票
        {
            get; set;
        }
        public decimal 出口报关差异_票
        {
            get; set;
        }
        public decimal 空运成本差异_票
        {
            get; set;
        }
        public decimal 海外清关差异_票
        {
            get; set;
        }
        public decimal 关税差异_票
        {
            get; set;
        }
        public decimal 海外中转差异_票
        {
            get; set;
        }
        public decimal 补贴差异_票
        {
            get; set;
        }

        public decimal 末端派送差异_KG
        {
            get; set;
        }
        public decimal 营运成本差异_KG
        {
            get; set;
        }
        public decimal 一级中转差异_KG
        {
            get; set;
        }
        public decimal 二级中转差异_KG
        {
            get; set;
        }
        public decimal 出口报关差异_KG
        {
            get; set;
        }
        public decimal 空运成本差异_KG
        {
            get; set;
        }
        public decimal 海外清关差异_KG
        {
            get; set;
        }
        public decimal 关税差异_KG
        {
            get; set;
        }
        public decimal 海外中转差异_KG
        {
            get; set;
        }

        public decimal 补贴差异_KG
        {
            get; set;
        }
        public decimal 末端派送差异_比例
        {
            get; set;
        }
        public decimal 营运成本差异_比例
        {
            get; set;
        }
        public decimal 一级中转差异_比例
        {
            get; set;
        }
        public decimal 二级中转差异_比例
        {
            get; set;
        }
        public decimal 出口报关差异_比例
        {
            get; set;
        }
        public decimal 空运成本差异_比例
        {
            get; set;
        }
        public decimal 海外清关差异_比例
        {
            get; set;
        }
        public decimal 关税差异_比例
        {
            get; set;
        }
        public decimal 海外中转差异_比例
        {
            get; set;
        }
        public decimal 补贴差异_比例
        {
            get; set;
        }
    }

    public class CompletionRate
    {
        public decimal 末端派送
        {
            get; set;
        }

        public decimal 营运成本
        {
            get; set;
        }

        public decimal 一级中转
        {
            get; set;
        }

        public decimal 二级中转
        {
            get; set;
        }

        public decimal 出口报关
        {
            get; set;
        }

        public decimal 空运成本
        {
            get; set;
        }

        public decimal 海外清关
        {
            get; set;
        }

        public decimal 关税
        {
            get; set;
        }

        public decimal 海外中转
        {
            get; set;
        }

        public decimal 补贴
        {
            get; set;
        }
    }
    public class EFFinanceGroupBill : EFFinanceBill
    {
        public List<EFFinanceBill> EveryDayBill
        {
            get; set;
        }
        public decimal 预计收入
        {
            get; set;
        }

        public int 收货单量
        {
            get; set;
        }

        public decimal 收货重量
        {
            get; set;
        }

        public decimal 单件毛利
        {
            get; set;
        }



    }

    public class EFFinanceBill : View_FinanceBill2
    {
        public new decimal 毛利
        {
            get; set;
        }

        public decimal 毛利占比
        {
            get; set;
        }
        public decimal 成本
        {
            get; set;
        }
        public string 业务员 { get; set; }
    }

    public class View_FinanceBill2
    {
        public string 系统单号
        {
            get; set;
        }
        public string 跟踪号
        {
            get; set;
        }

        public string 实际渠道
        {
            get; set;
        }

        public string 渠道名称
        {
            get; set;
        }
        public string 发货渠道
        {
            get; set;
        }
        public string 实际派送渠道
        {
            get; set;
        }

        public string 分区
        {
            get; set;
        }

        public string 提单号
        {
            get; set;
        }

        public string 所属客户
        {
            get; set;
        }

        public decimal 收入
        {
            get; set;
        }


        public decimal 末端派送
        {
            get; set;
        }

        public decimal 营运成本
        {
            get; set;
        }

        public decimal 一级中转
        {
            get; set;
        }

        public decimal 二级中转
        {
            get; set;
        }

        public decimal 出口报关
        {
            get; set;
        }

        public decimal 空运成本
        {
            get; set;
        }


        public decimal 海外清关
        {
            get; set;
        }

        public decimal 关税
        {
            get; set;
        }

        public decimal 海外中转
        {
            get; set;
        }

        public decimal 补贴
        {
            get; set;
        }

        public decimal 总成本
        {
            get
            {
                return 营运成本 + 末端派送 + 一级中转 + 二级中转 + 出口报关 + 空运成本 + 海外清关 + 关税 + 海外中转 + 补贴;
            }
        }

        public decimal 毛利
        {
            get; set;
        }

        public string 称重时间
        {
            get; set;
        }

        public int 称重重量
        {
            get; set;
        }

        public int CustomerId
        {
            get; set;
        }

        public int CreateOrderChannelId
        {
            get; set;
        }
        public int PublicChannelId { get; set; }
        public int ChannelId { get; set; }

        public int OrderId { get; set; }
        public string 分公司名称 { get; set; }
        public decimal 实际重量 { get; set; }
        public string 订单号 { get; set; }
        public string 订单状态 { get; set; }
        public string 派送渠道 { get; set; }
        public string 尾程报价生效时间 { get; set; }

        public decimal? 关税汇率 { get; set; }
        public decimal? 海外清关汇率 { get; set; }
        public decimal? 末端派送汇率 { get; set; }

    }

    public class View_FinanceBill
    {
        public string TrackingNumber
        {
            get; set;
        }
        public string PublicName
        {
            get; set;
        }

        public string CompanyName
        {
            get; set;
        }

        public decimal CustomerAmount
        {
            get; set;
        }

        public decimal ServiceAmount
        {
            get; set;
        }

        public decimal ClareFee
        {
            get; set;
        }

        public decimal FristFee
        {
            get; set;
        }

        public decimal ProfitAndLoss
        {
            get
            {
                return CustomerAmount - ServiceAmount - ClareFee - FristFee;
            }
        }


    }

    public class ExportDetailDataModel: View_FinanceBill2
    {
        public decimal 实际称重 { get { return ((decimal)称重重量 / (decimal)1000); } }
        public string 转单号 { get; set; }
        public decimal 称重计费 { get; set; }
        public decimal 附加费 { get; set; }
        public decimal 金额 { get; set; }
        public decimal 结算价 { get; set; }
        public decimal 结算价运费 { get; set; }
        public decimal 税费 { get; set; }
        public decimal 毛利占比 { get; set; }
        public string 客户单号 { get; set; }
        public string 业务员 { get; set; }
        public string 目的国家 { get; set; }


    }
}
