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

namespace OASystem.Domain.Dtos.Financial
{
    /// <summary>
    /// 财务模块
    /// 对外收款
    /// </summary>
    public class ForForeignReceivablesNewDto : PortDtoBase
    {
        /// <summary>
        /// 团组Id
        /// </summary>
        public int DiId { get; set; }
    }

    /// <summary>
    /// 财务模块
    /// 收款账单
    /// Add or Update Info
    /// </summary>
    public class ForeignReceivablesSaveDto : PortDtoBase
    {
        /// <summary>
        /// 团组Id
        /// </summary>
        public int DiId { get; set; }

        /// <summary>
        /// 用户Id
        /// </summary>
        public int UserId { get; set; }

        /// <summary>
        /// 财务模块
        /// Add or Update Info
        /// </summary>
        public List<ForeignReceivablesInfoNew>? foreignReceivablesInfos { get; set; }
    }

    /// <summary>
    /// 财务模块
    /// Add or Update Info
    /// </summary>
    public class ForeignReceivablesInfoNew
    {
        /// <summary>
        /// 主键编号
        /// id=0 时添加
        /// 其他值时 修改
        /// </summary>
        public int Id { get; set; }
        /// <summary>
        /// 费用名称
        /// </summary>
        public string? PriceName { get; set; }

        /// <summary>
        /// 费用
        /// </summary>
        public decimal Price { get; set; }

        /// <summary>
        /// 数量
        /// </summary>
        public int Count { get; set; }

        /// <summary>
        /// 单位
        /// </summary>
        public string? Unit { get; set; }

        /// <summary>
        /// 单项总和
        /// </summary>
        public decimal ItemSumPrice { get; set; }

        /// <summary>
        /// 汇率
        /// </summary>
        public decimal Rate { get; set; }

        /// <summary>
        /// 币种
        /// </summary>
        public int Currency { get; set; }

        /// <summary>
        /// 添加方式   
        /// 0 - 账单模块 1 - 成本预算模块 2 - 实际报价 3 - 超支费用
        /// </summary>
        public int AddingWay { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string? Remark { get; set; }
    }

    /// <summary>
    /// 财务模块
    /// 收款账单
    /// Audit
    /// </summary>
    public class FeeAuditDto : PortDtoBase
    {
        /// <summary>
        /// 用户Id
        /// </summary>
        public int UserId { get; set; }

        public int Id { get; set; }

        public int Status { get; set; } = 1;

    }


    /// <summary>
    /// 财务模块
    /// 收款账单
    /// Del
    /// </summary>
    public class ForeignReceivablesDelDto : PortDtoBase
    {
        /// <summary>
        /// 用户Id
        /// </summary>
        public int UserId { get; set; }


        public int Id { get; set; }

    }

    public class OverSpSeteceivablesDto
    {
        public int DiId { get; set; }

        public int CreateUserId { get; set; }

    }

    /// <summary>
    /// 文件下载 Dto
    /// </summary>
    public class ForeignReceivablesFeilDownloadDto
    {
        public int DiId { get; set; }

        /// <summary>
        /// 文件类型
        /// 1 生成收款单(四川)
        /// 2 生成收款单(北京)
        /// 3 汇款账单
        /// </summary>
        public int FileType { get; set; }
    }
}