namespace F9WebAiTest.Application.Dtos.PayRoll;
/// 挡车车头产量计算-列表行
public class CalcLdcctListItemDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public long EmployeeId { get; set; }
public string EmployeeName { get; set; } = "";
public long DepId { get; set; }
public string DepName { get; set; } = "";
public long WorktypeId { get; set; }
public string WorktypeName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public string Guige { get; set; } = "";
public string Chetai { get; set; } = "";
public int Jizu { get; set; }
public int Banci { get; set; }
public string BanciName { get; set; } = "";
public decimal HoursKantai { get; set; } // 看台时长
public decimal Dangcheshu { get; set; } // 挡车数
public string Dengji { get; set; } = ""; // 等级
public decimal Dengjifen { get; set; } // 等级分
// 产量
public decimal GyzkTaichan { get; set; } // 薪资台产(来自工艺庄口配置)
public decimal ClDanjiaBase { get; set; }
public decimal ClDanjiaDengji { get; set; }
public decimal ClDanjiaActual { get; set; }
public decimal ClSiliang { get; set; }
// 质量
public decimal GyzkSaozhe { get; set; } // 薪资缫折(工艺指标缫折)
public decimal ZlSaozhe { get; set; }
public decimal ZlCenterxd { get; set; }
public decimal ZlYexiannum { get; set; }
public decimal ZlQingjie { get; set; }
public decimal ZlJiejing { get; set; }
public decimal ZlErdu { get; set; }
public decimal ZlSandu { get; set; }
// 金额
public decimal JineCl_Original { get; set; }
public decimal Xishu_JineCl { get; set; }
public decimal JineCl { get; set; }
public decimal JineZlSaozhe { get; set; }
public decimal JineZlCenterxd { get; set; }
public decimal JineZlYexian { get; set; }
public decimal JineZlQingjie { get; set; }
public decimal JineZlJiejing { get; set; }
public decimal JineZlErdu { get; set; }
public decimal JineZlSandu { get; set; }
/// 质量金额合计(负数为扣款)
public decimal JineZlTotal { get; set; }
}
/// 挡车车头产量计算-保存行(整账期 + 部门 + 工种全量覆盖)
public class CalcLdcctSaveItemDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public long EmployeeId { get; set; }
public long DepId { get; set; }
public long WorktypeId { get; set; }
public int Jizu { get; set; }
public int Banci { get; set; }
public long GyzkId { get; set; }
public string Guige { get; set; } = "";
public string Chetai { get; set; } = "";
public decimal HoursKantai { get; set; }
public decimal Dangcheshu { get; set; }
public string Dengji { get; set; } = "";
public decimal Dengjifen { get; set; }
public decimal ClDanjiaBase { get; set; }
public decimal ClDanjiaDengji { get; set; }
public decimal ClDanjiaActual { get; set; }
public decimal ClSiliang { get; set; }
public decimal ZlSaozhe { get; set; }
public decimal ZlCenterxd { get; set; }
public decimal ZlYexiannum { get; set; }
public decimal ZlQingjie { get; set; }
public decimal ZlJiejing { get; set; }
public decimal ZlErdu { get; set; }
public decimal ZlSandu { get; set; }
public decimal JineCl_Original { get; set; }
public decimal Xishu_JineCl { get; set; }
public decimal JineCl { get; set; }
public decimal JineZlSaozhe { get; set; }
public decimal JineZlCenterxd { get; set; }
public decimal JineZlYexian { get; set; }
public decimal JineZlQingjie { get; set; }
public decimal JineZlJiejing { get; set; }
public decimal JineZlErdu { get; set; }
public decimal JineZlSandu { get; set; }
}
/// 整账期保存请求
public class CalcLdcctSaveDto
{
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public long DepId { get; set; }
public long WorktypeId { get; set; }
public List Items { get; set; } = new();
}
/// 计算请求(一键计算)
public class CalcLdcctCalcDto
{
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public long DepId { get; set; }
public long WorktypeId { get; set; }
}
/// 计算结果
public class CalcLdcctResultDto
{
public int Count { get; set; } // 生成条数
public decimal SumSiliang { get; set; } // 丝量合计(g)
public decimal SumJineCl { get; set; } // 产量金额合计
public decimal SumJineZl { get; set; } // 质量金额合计
public List Warnings { get; set; } = new();
}