using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OASystem.Domain.Dtos.PersonnelModule
{
    /// 
    /// 人事模块
    /// 工资表单 Dto
    /// 
    public class WageSheetDto
    {
    }
    public class WageYearDto
    {
        /// 
        /// 年
        /// 
        public int Year { get; set; }
    }
    /// 
    /// 工资表单List Dto
    /// 
    public class WageSheetListDto : PortDtoBase
    {
        /// 
        /// 年月
        /// 
        public string? YearMonth { get; set; }
        ///// 
        ///// 开始日期
        ///// 
        //public string? StartDt { get; set; }
        ///// 
        ///// 结束日期
        ///// 
        //public string? EndDt { get; set; }
    }
    /// 
    /// 工资表单Info Dto
    /// 
    public class WageSheetInfoDto : PortDtoBase
    {
        /// 
        /// id
        /// 
        public int Id { get; set; }
    }
    /// 
    /// 添加或者修改
    /// 
    public class WageAddOrEditDto : OpBaseDto
    {
        /// 
        /// 用户Id
        /// 
        public int UserId { get; set; }
        /// 
        /// 年月
        /// 
        public string? YearMonth { get; set; }
        /// 
        /// 工资日期 起
        /// 
        public string? StartDate { get; set; }
        /// 
        /// 工资日期 止
        /// 
        public string? EndDate { get; set; }
        /// 
        /// 应出勤天数
        /// 
        public int WorkDays { get; set; }
        /// 
        /// 正常出勤天数
        /// 
        public int RegularDays { get; set; }
        /// 
        /// 基本工资
        /// 
        public decimal Basic { get; set; }
        /// 
        /// 绩效工资
        /// 
        public decimal Floats { get; set; }
        /// 
        /// 岗位津贴
        /// 
        public decimal PostAllowance { get; set; }
        /// 
        /// 保密费
        /// 
        public decimal InformationSecurityFee { get; set; }
        /// 
        /// 其他应发
        /// 
        public decimal OtherHandle { get; set; }
        /// 
        /// 月度补贴/其他补贴
        /// 
        public decimal OtherSubsidies { get; set; }
        /// 
        /// 餐补
        /// 
        public decimal Mealsupplement { get; set; }
        /// 
        /// 代扣保险
        /// 
        public decimal WithholdingInsurance { get; set; }
        /// 
        /// 代扣公积金
        /// 
        public decimal ReservedFunds { get; set; }
        /// 
        /// 代扣个税
        ///                                      
        public decimal WithholdingTax { get; set; }
        /// 
        /// 病假
        /// 
        public decimal SickLeave { get; set; }
        /// 
        /// 事假
        /// 
        public decimal SomethingFalse { get; set; }
        /// 
        /// 迟到 
        /// 计算次数
        /// 
        public decimal LateTo { get; set; }
        /// 
        /// 早退 
        /// 计算次数
        /// 
        public decimal LeaveEarly { get; set; }
        /// 
        /// 旷工 
        /// 小时计算 7.5小时一天
        /// 
        public decimal Absenteeism { get; set; }
        /// 
        /// 未打卡
        /// 
        public decimal NotPunch { get; set; }
        /// 
        /// 其他扣款
        /// 
        public decimal OtherDeductions { get; set; }
        /// 
        /// 假勤 / 打卡补卡 明细
        /// 
        public string? Ex_ItemsRemark { get; set; }
    }
    /// 
    /// 删除
    /// 
    public class WageDelDto
    {
        /// 
        /// 用户Id
        /// 
        public int UserId { get; set; }
        /// 
        /// 
        /// 
        public int Id { get; set; }
    }
    /// 
    /// 计算工资 Dto
    /// 
    public class SalaryCalculatorDto
    {
        /// 
        /// 员工Id
        /// 
        public int UserId { get; set; }
        /// 
        /// 年月
        /// eg 2023-10
        /// 
        public string? yearMonth { get; set; }
        /// 
        ///开始日期
        /// eg 2023-10-01
        /// 
        public string? startDt { get; set; }
        /// 
        /// 结束日期
        /// eg 2023-10-01
        /// 
        public string? endDt { get; set; }
    }
    /// 
    /// 计算工资 单个 Dto
    /// 
    public class SalaryCalculatorSingleDto
    {
        /// 
        /// 用户Id
        /// 
        public int UserId { get; set; }
        /// 
        /// 年月
        /// 
        public string? YearMonth { get; set; }
        /// 
        /// 工资日期 起
        /// 
        public string? StartDate { get; set; }
        /// 
        /// 工资日期 止
        /// 
        public string? EndDate { get; set; }
        /// 
        /// 基本工资
        /// 
        public decimal Basic { get; set; }
        /// 
        /// 绩效工资
        /// 
        public decimal Floats { get; set; }
        /// 
        /// 岗位津贴
        /// 
        public decimal PostAllowance { get; set; }
        /// 
        /// 保密费
        /// 
        public decimal InformationSecurityFee { get; set; }
        /// 
        /// 其他应付
        /// 主要用来填比如补发工资之类
        /// 
        public decimal otherHandle { get; set; }
        /// 
        /// 月度补贴/其他补贴
        /// 
        public decimal OtherSubsidies { get; set; }
        /// 
        /// 餐补
        /// 
        public decimal Mealsupplement { get; set; }
        /// 
        /// 个税
        /// 
        public decimal WithholdingTax { get; set; }
        /// 
        /// 代扣公积金
        ///                                      
        public decimal ReservedFunds { get; set; }
        /// 
        /// 代扣保险
        ///                             
        public decimal WithholdingInsurance { get; set; }
        /// 
        /// 其他扣款
        ///                                  
        public decimal OtherDeductions { get; set; }
    }
}