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

namespace OASystem.Domain.Dtos.Financial
{





    /// <summary>
    /// 已收款项 del Dto
    /// </summary>
    public class ProceedsReceivedDelDto : PortDtoBase
    {
        /// <summary>
        /// 用户Id
        /// </summary>
        public int UserId { get; set; }

        /// <summary>
        /// id
        /// </summary>
        public int Id { get; set; }
    }

    /// <summary>
    /// 已收款项 Dto
    /// </summary>
    public class ProceedsReceivedDto : PortDtoBase
    {
        /// <summary>
        /// 用户Id
        /// </summary>
        public int UserId { get; set; }

        /// <summary>
        /// 团组Id
        /// </summary>
        public int DiId { get; set; }

        /// <summary>
        /// 已收款项infos
        /// </summary>
        public List<ProceedsReceivedInfo>? _ProceedsReceivedInfos { get; set; }

    }

    /// <summary>
    /// 已收款项info
    /// </summary>
    public class ProceedsReceivedInfo
    {
        /// <summary>
        /// 主键
        /// id == 0 Add
        /// 其他值时 Updata
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// 到款时间
        /// </summary>
        public string? SectionTime { get; set; }

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

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

        /// <summary>
        /// 收款类型
        /// </summary>
        public int ReceivablesType { get; set; }

        /// <summary>
        /// 收款单位
        /// </summary>
        public string? Client { get; set; }

        /// <summary>
        /// 收款单位 负责人 姓名
        /// </summary>
        public string? CustomerName { get; set; }

        /// <summary>
        /// 收款单位 负责人 姓名
        /// </summary>
        public string? CustomerTel { get; set; }

        /// <summary>
        /// 应付项id
        /// </summary>
        public int FID { get; set; }

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

    }

    /// <summary>
    /// 分配已收款项 dto
    /// </summary>
    public class AllocateAmountReceivedDto:PortDtoBase
    {
        /// <summary>
        /// 用户Id
        /// </summary>
        public int UserId { get; set; }

        /// <summary>
        /// 应收款项Id
        /// </summary>
        public int ParentId { get; set; }

        /// <summary>
        /// 子 Id
        /// </summary>
        public List<int>? SubIds { get; set; }
    }
  
    #region word Download

    /// <summary>
    /// 收款账单 word Download
    /// </summary>
    public class AccountReceivableWordExportDto
    {
        /// <summary>
        /// 团组Id
        /// </summary>
        public int DiId { get; set; }

        /// <summary>
        /// 模板类型
        /// 1 四川 2 北京
        /// </summary>
        public int TemplateType { get; set; }
    }

    #endregion

    #region 已收款项
    /// <summary>
    /// 已收款项 Dto
    /// </summary>
    public class AmountReceivedDto:PortDtoBase
    {
        /// <summary>
        /// 团组Id
        /// </summary>
        public int DiId { get; set; }
    }


    /// <summary>
    /// 已收款项 Dto
    /// </summary>
    public class AmountReceivedAddOrEditDto : PortDtoBase
    {
        /// <summary>
        /// 用户Id
        /// </summary>
        public int UserId { get; set; }

        /// <summary>
        /// 团组Id
        /// </summary>
        public int DiId { get; set; }

        /// <summary>
        /// 已收款项infos
        /// </summary>
        public List<ProceedsReceived1Info>? _ProceedsReceivedInfos { get; set; }

    }

    /// <summary>
    /// 已收款项info
    /// </summary>
    public class ProceedsReceived1Info
    {
        /// <summary>
        /// 主键
        /// id == 0 Add
        /// 其他值时 Updata
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// 到款时间
        /// </summary>
        public string? SectionTime { get; set; }

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

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

        /// <summary>
        /// 收款类型
        /// </summary>
        public int ReceivablesType { get; set; }

        /// <summary>
        /// 收款单位
        /// </summary>
        public string? Client { get; set; }

        /// <summary>
        /// 收款单位 负责人 姓名
        /// </summary>
        public string? CustomerName { get; set; }

        /// <summary>
        /// 收款单位 负责人 姓名
        /// </summary>
        public string? CustomerTel { get; set; }

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

    }

    /// <summary>
    /// 已收款项 
    /// 删除
    /// </summary>
    public class AmountReceivedDelDto
    {
        /// <summary>
        /// 当前用户操作Id
        /// </summary>
        public int UserId { get; set; }

        public int Id { get; set; }
    }
    #endregion
}